In: Computer Science
Discuss whether the spiral model is appropriate for each of the following software projects or not. If not, suggest a better model and provide justifications for your choice.
Project 1: a software team were asked to develop a large-scale human resource software. The project manager identified several major technical risks that need to be mitigated.
Project 2: a software team were asked to develop a small web application for older people to help them apply for health insurance. The team are not sure about how to make it easy for older people to interact with the application.
For the first project Spiral model should be used because of the following points:
1. Since the project involves large scale development, Spiral model will be an ideal choice.
2. In this model each phase is divided as follows: Planning, Risk Analysis, Software Engineering and Evaluation.
2. In this project continuous feedback is required because of the risks involved. These feedback will continuously help optimizing the software with multiple iterations.
3. Here we can break down the requirements into small sets or
modules and then gather the client specific requirement
accordingly.
4. Identification of potential risk is done while risk mitigation
strategy is planned and finalized.
5. Post this the coding and testing can be started in parallel followed by the deployment activities.
6. Then continuous user acceptance testing phases can take place where in the feedback can be implemented accordingly.
7. These iterations can be repeated which can reduce schedule slippage and overall cost over-run.
For the second scenario Spiral model is not appropriate because this is small project and there is minimum risk involved. In this case, Waterfall model can be an optimal SDLC choice because of the following points:
1. Since the requirement is very well known, hence this model can be used here.
2. Since the project is short hence using a waterfall model will increase productivity.
3. Product definition for this project is stable.
4. There is no ambiguous requirement.
5. Appropriate phase needs to be schedule to make sure the web application is Old age user friendly, for example: Using bigger fonts and images, using Simple Forms and navigational gestures, etc.
6. This can also help for early design changes as per the users requirements.
7. Finally the overall milestones can be easily met using this model.