Unit 3 : Software development Flashcards
What takes place in the analysis stage
- Stakeholders state what they require from the finished product. This information is used to clearly define the problem and the system
requirements. Requirements may be defined by: - Analyzing strengths and weaknesses with current way this problem is being solved
- Considering types of data involved including inputs, outputs, stored data and amount of data
What takes place in the design stage
The different aspects of the new system are designed, such as:
- Inputs: volume, methods, frequency
- Outputs: volume, methods, frequency
- Security features: level required, access levels
- Hardware set-up: compatibility
- User interface: menus, accessibility, navigation
A test plan may also be designed at this stage.
What happens in the development stage
- The design from the previous stage is used to split the project into individual, self-contained modules, which are allocated to teams for programming
What are the different methods of testing
- Alpha testing
- Beta testing
- White box testing
- Black box testing
What is Alpha testing
- Alpha testing is carried out in-house by the software development teams within the company. Bugs are pinpointed and fixed
What is Beta testing
- Beta testing is carried out by end-users after alpha testing has been completed. Feedback from users is used to inform the next stage of development.
What is white box testing
- This is a form of testing carried out by software development teams in which the test plan is based on the internal structure of the program. All of the possible routes through the program are tested
What is black box testing
- This is a form of testing where the software is tested without the testers being aware of the internal structure of the software and can be carried out both within the company and by end-users. The test plan traces through inputs and outputs within the software
What takes place in the testing stage
- The program is tested against the test plan formed in the Design stage
What takes place in the implementation stage
- Once the testing stage has been used to make the appropriate changes to the software, it is installed onto the users’ systems
What takes place in the evaluation stage
- After the implementation stage, the effectiveness of the software is evaluated against the system requirements defined at the analysis stage to evaluate its suitability in solving the problem. Different criteria are considered, including robustness, reliability, portability and maintainability
What takes place in the maintenance stage
- Any errors or improvements that could be made to the software are flagged up by the end-users. Programmers will regularly send out software updates to fix any bugs, security issues or make any needed improvements
What is the waterfall model
- As in the lifecycle model, each stage is completed
and documented before the next is begun - The customer does not see the end product until it is completed
- Any change to be made often means the project has to be started again
What are the pros of the waterfall method
- The model is simple to understand and use
- Each stage is separate and self-contained with well defined outcomes and written documentation
- This makes the project relatively straightforward to manage
- The model works well for smaller projects where requirements are very well understood
What are the cons of the waterfall method
- There is not much user involvement after the Analysis stage, when the Specification document is agreed
- No working software is produced until late in the cycle
- The user is presented with the finished product and if it is not quite what was required, it is generally too late to make changes
When would you use the waterfall method
- The requirements are very clear and fixed
- There are no ambiguous requirements
- The technology is well understood
- The project is short
What is the spiral method
- The four basic steps of analysis, design, implementation (i.e. programming and testing) and evaluation are followed
- The software project passes through these phases repeatedly
- Each successive loop round the spiral generates a new, more refined prototype until the software meets all the requirements
What are the pros of the Spiral method
- The well-defined steps make the project easy to manage
- Software is produced at an early stage so problems and issues can be identified early
- The user gives feedback on each prototype and any required changes can be made early in the process
- Added functionality can be added during the process
- The end result is more likely to be what the user wants