Saturday, 15 August 2015

MT - 55 - Spiral Model !

Spiral model is one of the best models that may be used for risk-based projects. In this model more emphasis is given on risk analysis. The spiral model is favored for large, expensive, and complicated projects.The spiral model combines the idea of iterative development with the systematic, controlled aspects of the waterfall model.It has basically following four phases :

Planning Phase/Determine Objective: Requirements are gathered during the planning phase. Requirements like ‘BRS’ that is ‘Bussiness Requirement Specifications’ and ‘SRS’ that is ‘System Requirement specifications’. This phase starts with gathering the business requirements in the baseline spiral. In the subsequent spirals as the product matures, identification of system requirements, subsystem requirements and unit requirements are all done in this phase.This also includes understanding the system requirements by continuous communication between the customer and the system analyst. At the end of the spiral the product is deployed in the identified market.

Risk Analysis: In the risk analysis phase, a process is undertaken to identify risk and alternate solutions. Risk Analysis includes identifying, estimating, and monitoring technical feasibility and management risks, such as schedule slippage and cost overrun. A prototype is produced at the end of the risk analysis phase. If any risk is found during the risk analysis then alternate solutions are suggested and implemented.

Engineering/Design Phase: In this phase software is developed, along with testing at the end of the phase. Hence in this phase the development and testing is done. Design phase starts with the conceptual design in the baseline spiral and involves architectural design, logical design of modules, physical product design and final design in the subsequent spirals.

Evaluation phase: This phase allows the customer to evaluate the output of the project to date before the project continues to the next spiral.after testing the build, at the end of first iteration, the customer evaluates the software and provides feedback.

These all phases keeps on rotating in spiral.After one spiral the planning includes the plans for next iterations and so on. Although this is a complex model but can be used to risk-based projects.




Advantages : 

- Changing requirements can be accommodated.

- Allows for extensive use of prototypes

- Requirements can be captured more accurately.

- Users see the system early.

- Development can be divided into smaller parts and more risky parts can be developed earlier which helps better risk management.

- A highly customized product can be developed using this.

Friday, 14 August 2015

MT - 54 - SOAK/Endurance Testing !

Also known as endurance testing , soak testing is done to see the behaviour of the system after giving load for a prolonged period of time.Soak Testing is the form of Performance Testing, which incorporate testing a system with expressive load extended over an expressive period of time, to discover how the system and product behaves under repeated use.

As an example we can take the closing of the banks that are done at the end of year. At this time there is a huge load on the server for a prolonged period of time. At this time we would not want the application to crash or show slow response time, so endurance testing is done.

 A soak test would generally execute some times more transactions in an entire (full) day (or night) that intend be expected in a busy day, to distinguish any performance issues that appear after a immense number of transactions have been executed.A soak test also called an endurance test is generally done to originate whether an application can handle with the continuous expected load. A soak test is also used to audit whether there is any performance degradation afterwards a long period of activity.The goal is to discover how the system behaves under sustained use. That is, to ensure that the throughput and/or response times after some long period of sustained activity are as good or better than at the beginning of the test.It may also be used to check memory leaks and failure of the application over a long period of time.

MT - 53 - Spike Testing !

Spike Testing is a form of load testing process in which an application is tested with unusual increment and decrements in the load. The system is unexpectedly loaded and unloaded. It is done to notice how actually the system reacts with unexpected rise and decline of users.

Spike testing is mechanism of testing which means when in a web page frequent number of visitor access the page unexpectedly increases to maximum then obviously performance of the page breaks down. So the mechanism of testing a performance about web page due to unexpected sort of traffic on the page is always called as Spike testing.

Spike testing is usually done by unexpectedly increasing the number of loads generated by users by a very enormous amount and observing the dramatic behavior of the system.The goal of spike testing is to regulate whether performance will deteriorate, the system will always fail, or it will be able to hold dramatic changes in load.




Spikes represent the sudden rise and fall of number of users


As an example we can take the exam results declaration. Suppose the results will be declared at 9.00 A.M. So exactly at 9.00 A.M. the load will increase suddenly for a particular period of time. So this sudden rise and file needs to be tested for an application .