1/14
A set of flashcards covering key terms and definitions related to the software development process, including models like Waterfall and techniques like prototyping.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Software
A collection of instructions and data that tell the computer how to work, in contrast to physical hardware.
Software Engineering
A means of understanding the structure of the design process, assessed for effectiveness in interactive system design.
Software Development Life Cycle (SDLC)
A process used by the software industry to design, develop and test high quality software for customer satisfaction.
Waterfall Model
The first Process Model introduced, characterized by linear-sequential phases where each phase must be completed before the next begins.
Requirement Analysis
Phase in the Waterfall model where all possible requirements are captured and documented.
System Design
Phase where requirement specifications are studied, and the system design is prepared, defining hardware and system requirements.
Implementation
Phase where the system is developed in small programs called units, tested for functionality in Unit Testing.
Integration and Testing
Phase where all units are integrated into a system and tested for faults after individual unit testing.
Deployment
Phase where the system is released into the customer environment after functional and non-functional testing.
Maintenance
Phase where issues are fixed and enhancements are released to deliver changes in the customer environment.
Throwaway Prototyping
Prototyping approach that discards the prototype after its purpose is served to develop a clearer understanding of user requirements.
Evolutionary Prototyping
A prototyping approach that builds upon existing prototypes as the basis for the final product, evolving through design iterations.
Design Rationale
The reasoning behind design decisions that explains how design intent is achieved and justifies design choices.
Advantages of Prototyping
Increased user involvement, better understanding of systems, early defect detection, quicker feedback, and easier identification of missing functionality.
Disadvantages of Prototyping
Risks insufficient requirement analysis, can confuse users between prototype and actual systems, may increase complexity, and can lead to excessive effort investment.