RAD (rapid application development) is a concept that products can be developed faster and of higher quality through:
- Gathering requirements using workshops or focus groups
- Prototyping and early, reiterative user testing of designs
- The re-use of software components
- A rigidly paced schedule that defers design improvements to the next product version
- Less formality in reviews and other team communication
RAD is best used when you are developing something which is basically being built upon the foundations of an existing prototype. The reason being that a key part of this methodology is the re-use of prototypes which reduces both the process of software development and the testing time required.
Advantages of RAD Software Development
- The time required to develop the software is drastically reduced due to a reduced requirement analysis business requirement documenetation and software requirement specification) and planning stage.
- All the software prototypes produced can be kept in a repository for future use. The reusability of the components also enhances the speediness of the process of software development.
- It is much easier for a project manager to be accurate in estimating project costs which of course means that project cost controls are easier to implement and manage as well.
- It is a big cost saver in terms of project budget as well as project time and cost due to reusability of the prototypes.
- If a component is being picked for the repository, it is already tested and hence need not be tested again. This helps in saving time required for testing.
- The project management requirements are collected in a dynamic manner. Every time there is a prototype ready, requirements are studied and matched. If there are any additional requirements, these are then included in the next prototype built.
- There is a strong and continuous participation of the project sponsor who keeps giving feedback in the whole process. Hence the end user satisfaction level is higher when the end result is produced.
- It promotes better documentation through written test cases.
Disadvantages of RAD Software Development
- This method may not be useful for large, unique or highly complex projects
- This method cannot be a success if the team is not sufficiently motivated and nor is unable to work cohesively together.
- Success depends on the extremely high technical skills of the developers.
- There are times when the team ignores necessary quality parameters such as consistency, reliability and standardization. Hence this can make project quality management hard to implement during the project management life cycle.
Definition of Waterfall (Traditional)
- The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to the systems development life cycle, the waterfall model describes a development method that is linear and sequential.
- Waterfall development has distinct goals for each phase of development.
- The advantage of waterfall development is that it allows for departmentalization and managerial control.
- One great advantage of the waterfall model is that documentation is produced at every stage of the waterfall model development. This makes the understanding of the product designing procedure simpler.
- The disadvantage of waterfall development is that it does not allow for much reflection or revision. Once an application is in the testing stage, it is very difficult to go back and change something that was not well-thought out in the concept stage.
- Small changes or errors that arise in the completed software may cause a lot of problem.
- The greatest disadvantage of the waterfall model is that until the final stage of the development cycle is complete, a working model of the software does not lie in the hands of the client. Thus, he is hardly in a position to mention if what has been designed is exactly what he had asked for.
Waterfall or RAD? The application may dictate your choice
See You Next Time!!References:
Waterfall or RAD?
What is RAD
What is Waterfall
Pengertian RAD dan Prototype