The software design process consists of a number of stages each with an expected result contributing to the overall success of the application to be made. Below some of these stages are discussed.
- Requirement stage: This stage is very important and determines the end result of other stages. This stage involves the identification of the requirements for the proposed software. It includes deciding what is feasible and what is not. Some methodologies incorporate the requirement stage as part of the analysis stage.
- Design and Implementation: This stage can sometimes be separated depending on the methodology in play, this stage involves the lay out of already gotten system specification (Design) and converting them into an executable system (Implementation). Software design involves using of data models and diagram to represent structures and outlines as well as the working principle of the system. Expected Output: The actual software.
- Testing: This stage involves checking the components of the system and the system as a whole to see if it meets up to requirements. It can be done by end users and then feedback is generated or it can be done by the developer team. There are mainly 3 types of testing. Development testing, Acceptance and system testing.
- System Testing: This stage occurs when system development has been concluded and launched, it involves updates and checks on the system to maintain efficient function or improvement to meet new requirements.