1.2.3 Software Development Flashcards
SDLC
The various stages in designing and implementing a new computer system. These stages – typically analysis, design, implementation, testing and installation – are part of the systems life cycle performed by the main design team. Not be too confused with the Software Development Cycle which is part of the implementation stage of the systems life cycle.
Waterfall Model
An earlier abstract description of the system lifecycle where each identified stage of development flows from the previous one and down to the next one. Feedback from each to the previous takes place independently of the forward flow.
Agile Methodologies
Describes the responsive development of a system made of small software modules (often web-based applications) by a group of collaborators who work concurrently and closely under a leader who ensures engineering best practice and delivery of the customer requirements.
Extreme Programming
A software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. It is a form of agile development, and as such advocated frequent releases in short development cycles, which is intended to improve productivity and introduce checkpoints at which new customer requirements can be adopted. Other common elements of XP include: programming in pairs or doing extensive code review, flat management structures and avoiding programming of features until they are actually needed.
Spiral Model
An abstract description of the systems life cycle where there are four defined quadrants – planning, risk analysis, use of design methods, client and management evaluation. Once one stage of development has gone full circle, the next please takes place, and so on until completion.
Rapid Application Development
A design strategy that includes online development and repeated prototyping and repeated prototyping and evaluation. It is particularly suited to interactive systems.