Tuesday, 29 May 2012

Software Development Models


 Software Development Models

1.V-model (Sequential Development Model)
Although variants of the V-model exist, a common type of V-model uses four test levels, corresponding to the four development levels.

The four levels used in this syllabus are:
o  Component (unit) testing
o  Integration testing
o  System testing
o  Acceptance testing

In practice, a V-model may have more, fewer or different levels of development and testing, depending on the project and the software product. For example, there may be component integration testing after component testing, and system integration testing after system testing.

Software work products (such as business scenarios or use cases, requirements specifications, design documents and code) produced during development is often the basis of testing in one or more test levels. References for generic work products include Capability Maturity Model Integration (CMMI) or ‘Software life cycle processes’ (IEEE/IEC 12207). Verification and validation (and early test design) can be carried out during the development of the software work products.



2.Iterative-incremental Development Models
Iterative-incremental development is the process of establishing requirements, designing, building and testing a system in a series of short development cycles. Examples are: prototyping, Rapid Application Development (RAD), Rational Unified Process (RUP) and agile development models. A system that is produced using these models may be tested at several test levels during each iteration. An increment, added to others developed previously, forms a growing partial system, which should also be tested. Regression testing is increasingly important on all iterations after the first one. Verification and validation can be carried out on each increment.

3.Testing within a Life Cycle Model
In any life cycle model, there are several characteristics of good testing:
o  For every development activity there is a corresponding testing activity
o  Each test level has test objectives specific to that level
o  The analysis and design of tests for a given test level should begin during the corresponding
development activity
o  Testers should be involved in reviewing documents as soon as drafts are available in the development life cycle

Test levels can be combined or reorganized depending on the nature of the project or the system architecture. For example, for the integration of a Commercial Off-The-Shelf (COTS) software product into a system, the purchaser may perform integration testing at the system level (e.g.,
integration to the infrastructure and other systems, or system deployment) and acceptance testing
(functional and/or non-functional, and user and/or operational testing).

2 comments:

  1. Pls give me detailed explanation about ECP, with examples.


    Regards,
    Vijay.

    ReplyDelete
  2. Thank you for visited my blog..

    ReplyDelete