Software Development Models Flashcards
Software process
Defines way to produce software, includes
Software life cycle model
Tools to use
Individuals building software
Software life cycle model
Defines how different phases of the life cycle are managed
Phases of software development
1)requirements gathering
2)specification
3)design
4)code
5)testing
6)implement
Build and fix model
Why is it bad needs life cycle model, phases, milestones
Waterfall method
Output from one phase put on next phase
One phase completed before next begins
Advantage each phase well documented
Disadvantage if mismatch between what client wanted and what was built will not know until delivered
Iterative development models
Process of establishing requirements designing building and testing a system done as a series of smaller developments
Regression testing important
Incremental model
Break system into small components
Construct partial implementation of system
Then gradually increase functionality
Each release adds functions to previous release until it’s built
Testing within a life cycle model
Divide and conquer task of testing
Testers should be involved in reviewing documents as soon as drafts available
Ad hoc test - component test - integration test - system test - acceptance test
V model levels
1)component testing
2)integration testing
3)system testing
4)acceptance testing
Tooling
Doesn’t replace existing lifecycles
Sometimes integrated into a life cycle model
Speeds up software engineering
Tooling support for all lifecycle phases
Influences on the test process
Nature and type of faults to test for
Object under test
Capabilities of developers, testers, users
Different purposes of testing
-detect faults
-provide evidence software works
Staged testing moves from small to large
Start by testing each component individually
Then test groups of programs
Then combine subsystems and test systems
Then combine single systems with other systems and test
Levels of testing have different objectives
Individual components tested for conformance to their specification
Groups tested for conformance to physical design
Sub systems tested for conformance to functional specifications and requirements