Tuesday, October 7, 2014

What is Incremental model- advantages, disadvantages and when to use it?

 In incremental model the whole requirement is divided into various builds. Multiple development cycles take place here, making the life cycle a “multi-waterfall” cycle.  Cycles are divided up into smaller, more easily managed modules.  Each module passes through the requirements, design, implementation and testing phases. A working version of software is produced during the first module, so you have working software early on during the software life cycle. Each subsequent release of the module adds function to the previous release. The process continues till the complete system is achieved.

     For example:

Example of Incremental model in software testing 

In the diagram above when we work incrementally we are adding piece by piece but expect that each piece is fully finished. Thus keep on adding the pieces until it’s complete. As in the image above a person has thought of the application. Then he started building it and in the first iteration the first module of the application or product is totally ready and can be demoed to the customers. Likewise in the second iteration the other module is ready and integrated with the first module. Similarly, in the third iteration the whole product is ready and integrated. Hence, the product got ready step by step.

Diagram of Incremental model:

Incremental lifecycle model in software testing
Advantages of Incremental model:

  • Generates working software quickly and early during the software life cycle.
  • This model is more flexible – less costly to change scope and requirements.
  • It is easier to test and debug during a smaller iteration.
  • In this model customer can respond to each built.
  • Lowers initial delivery cost.
  • Easier to manage risk because risky pieces are identified and handled during it’d iteration.
Disadvantages of Incremental model:

  • Needs good planning and design.
  • Needs a clear and complete definition of the whole system before it can be broken down and built incrementally.
  • Total cost is higher than waterfall.
When to use the Incremental model:

  • This model can be used when the requirements of the complete system are clearly defined and understood.
  • Major requirements must be defined; however, some details can evolve with time.
  • There is a need to get a product to the market early.
  • A new technology is being used
  • Resources with needed skill set are not available
  • There are some high risk features and goals.

 

Monday, May 28, 2012

Traceability Matrix :

Traceability Matrix: A document showing the relationship between Test Requirements and Test Cases. From Traceability Matrix, we can check that which requirements are covered in which test cases and "particular test case covers which requirements" In this matrix, we can also cover that a particular requirement is covered in which section of code etc.

In this matrix, the rows will have the requirements. For every document {HLD, LLD etc}, there will be a separate column. So, in every cell, we need to state, what section in HLD addresses a particular requirement. Ideally, if every requirement is addressed in every single document, all the individual cells must have valid section ids or names filled in. Then we know that every requirement is addressed. In case of any missing of requirement, we need to go back to the document and correct it, so that it addressed the requirement.

In a nutshell, requirements traceability is the process of ensuring that one or more test cases address each requirement.


Example of a Traceability Matrix document:

Req ID          Req Description           TC001          TC002         TC003

R1.1                  ………                     Yes                                  Yes

R1.2                  ………                      Yes

R2.1                   …….                                           Yes

Above table shows –

Requirement R1.1 is covered in TC001 and TC003.

R1.2 is covered in TC001.

R2.1 is covered in TC002

Above table also provides the test coverage. From Traceability Matrix document, we can ensure that all the requirements are addressed in the test cases.