Software Development Life Cycle

ISTQB CTFL — Software Development Life Cycle
ISTQB CTFL

Software Development Life Cycle

Interactive study map covering software development models, verification and validation, test types, confirmation and regression testing, maintenance testing, migration, conversion testing and impact analysis.

Nine Sections Interactive Study Map Knowledge Check
CTFL
A

Software Development Models

A software development life cycle moves from customer needs through specification, coding, testing and release. The chapter contrasts sequential and iterative approaches.

Waterfall Model

A linear or sequential model. Requirements are progressively refined through functional, technical and program specifications before coding. Each activity is completed before the next. Testing occurs after the code has been fully developed.

V-Model

A sequential extension of waterfall that associates development work-products with corresponding test activities. Test planning starts early, alongside specification work.

Iterative–Incremental

Requirements do not need to be fully defined before coding starts. Working versions are built through repeated cycles, each containing requirements, design, code and test.

Key Point

Finding problems close to the point where a work-product is created can make correction cheaper than discovering them late in the life cycle.

B

Verification, Validation & V-Model

The V-model introduces early work-product evaluation and links specifications to corresponding test levels.

V-Model Mapping

Requirement specification ↔ Acceptance testing

Functional specification ↔ System testing

Technical specification ↔ Integration testing

Program specification ↔ Unit testing

Early Test Planning

Acceptance testing can be planned when the requirement specification is created. The same principle applies to the other specification/test-level pairs.

C

Iterative–Incremental Development

Iterative development produces working software in repeated cycles or time-boxes and involves user representatives throughout.

D

Test Types

The chapter groups testing into functional, non-functional, structural, and testing related to changes.

Functional

Tests specific functionality against a specification: what the system does. Examples include flight search and payroll calculation. Security and interoperability are treated as functional in this syllabus.

Non-functional

Tests behavioural qualities: how the system performs in use. Examples include usability, performance, load, stress, portability, recovery and reliability.

Structural

Focuses on the implemented structure, such as code or architecture, and the thoroughness of testing. Code coverage is a common measure. It can be applied at any test level.

Related to Changes

Confirmation testing checks the specific fix. Regression testing checks whether the change or environment change caused unintended defects elsewhere.

E

Confirmation, Regression & Debugging

These concepts are closely related but answer different questions.

Change-testing workflow

Defect detected → Debugging fixes itConfirmation testing checks the fixRegression testing checks for side effects

Confirmation / Retesting

Retest the changed software to confirm that the original problem has been successfully removed.

Regression Testing

Retest unchanged or potentially affected software to ensure the change has not introduced additional defects. Repeated execution makes regression testing suitable for automation.

Do Not Confuse

Testing finds defects; debugging fixes defects. Debugging is not a testing activity.

F

Maintenance Testing

Maintenance testing is testing performed on a system that is already operating in the live environment.

G

Interactive Explorer

Switch between the major development models and change-related testing concepts.

H

Key Takeaways

High-yield revision points from both parts of the Chapter 2 notes.

Development Models

Waterfall = sequential and late testing. V-model = sequential with early test planning and specification-to-test-level pairing. Iterative = repeated cycles producing working versions with user involvement.

Test Types

Functional = what it does. Non-functional = how it behaves. Structural = how thoroughly its structure is exercised. Confirmation = check the fix. Regression = check unintended effects.

Maintenance

Operational changes require testing. Migration may require new-environment testing and data transfer may require conversion testing. Impact analysis identifies areas potentially affected by change.

I

Knowledge Check

Twenty questions covering development models, test types and maintenance testing.

Score: 0 / 0
ISTQB CTFL Interactive Learning Guide