Rapid Application Development (RAD) which is also known as Rapid Application Building (RAB). Software that is driven by user interface requirements is well suited to use by applying Rapid Application Development. To the plan-driven waterfall model, RAD is developed in the 1970s and 1980s. RAD mainly focused on an adaptive process and less emphasis on planning.
What is Rapid Application Development?
RAD is a prototyping technique employing various tools and techniques to quickly produce software using minimal codes.
JAMES MARTIN RAD Model
James Martin’s RAD model has 4 phases:
- Requirement Planning Phase- System planning and system analysis phases of the Software Development Life Cycle (SDLC) has to be combined in the requirement planning phase of RAD model. Managers, IT staff members, and users agreed on the business requirement, project scope, available constraints, and system requirements. This phase the last step is the team agrees on the key issues and obtains the authorization of management to continue.
- User Design Phase- In this phase, the user communicates with the system analysts and develops models and prototypes to represents all system processes, inputs, and outputs. Then the RAD team uses a typical combination of Joint Application Development Technique (JAD) and CASE tools to convert the needs of a user into working models. This phase allows the user to understand, modify, and eventually approve the working model that meets their requirements, therefore, this is a continuous working process.
- Construction Phase- This phase is similar to SDLC which focuses on program and application development task. The difference is that in RAD however, the user can continue to participate in changes and modification. The user can still suggest for improvements as actual screens or reports are developed. The task includes in this phase are programming and application development, coding, unit integration, and system testing.
- Cutover Phase- In this phase, it resembles the final tasks in the SDLC implementation phase. This includes the task of data conversion, testing, the changeover to the new system, and user training.
If we compare this with the traditional approach, the whole process is compressed in the RAD model. In the end, a new system is built, delivered and placed in operation much sooner than before.
[su_button url=”http://www.techgeekbuzz.com/sdlc-methodologies/” background=”#3b6394″ wide=”yes” center=”yes” radius=”round”]8 BASIC SDLC METHODOLOGIES: WHICH ONE IS BEST?[/su_button]
RAD Model vs SDLC Approach
In SDLC method, high emphasis is on the requirement analysis and information gathering before the project coding starts. That’s why the user gets pressurize and doesn’t get the feel of their product as there is no working and building for a long time. Maybe customers need to change something after they get to see the software. So the traditional approach is the rigid process and it is not feasible to do the major changes in the project is required.
The RAD model is an ongoing process with the user involvement that increases the delivery of the working model. This result in fast delivery and user involvement decrease the risk of non-conformity with the actual requirement given by the user.
RAD model is very efficient to get the required project with rapid delivery. This is due to the reusability of components and parallel development. RAD will result better if high skilled engineers are available to work on the projects and customer is also committed to the project with the on-time delivery. If both sides is not strong, the model may fail in the result.
Advantages of RAD Model
These are the following advantages of the RAD model-
- Changes in the requirements can be accommodated.
- RAD increases the reusability of components.
- Focuses on the customer needs and encourages their feedbacks.
- RAD reduced the project development time.
- RAD gives higher productivity fewer people in a short time.
- Progress can be measured in each phase of the RAD model.
- A working product is ready very quickly.
- Use powerful RAD tools to shorten the iteration time.
- Initial reviews are quicker than others.
- A project can be divided into small and more achievable parts.
- This provides integration from the very beginning of the process and that solves a lot of integration issues.
Disadvantages of RAD Model
There are disadvantages also present with every technique. These are the few-
- RAD can be performed only on those systems that can be modularized.
- Highly skilled developers/designers are required to perform RAD.
- Management is an important part of RAD. Management complexity is also more than others.
- User involvement is the must for throughout the life cycle.
- Technically strong or skilled team members are necessary for identifying the business requirements of the user.
- RAD highly depends on modeling skills.
- Cost of modeling and automated code generation cost is very high. Therefore this is not possible for cheaper projects.
- RAD model suits the systems that are scalable and component based.
When RAD Model can be applied?
RAD model can be successfully applied where a project can be broken into modules. Modularization is the most important task to perform in RAD model to reduce the time of project working. Unfortunately, James Martin was unable to solve that where RAD model can be applied. RAD only can be applied in some particular conditions.
RAD can be used in the following typical scenarios-
- Budget is the main factor to apply RAD model, so only if the budget is sufficient to apply the automated code generating tool then it can be used.
- Only skilled developers and domain experts are available with the relevant business knowledge than RAD SDLC method should be chosen.
- Modeling is the one phase of this model so high availability od designers will decide to choose this model.
- This can be used if the requirements change during the project and this is to be present to the user in small iterations of 2-3 months.
Alternatives to Rapid Application Development (RAD):-
There are lots of different methods for the software development process. But there are mainly 2 methods which address main criticism of RAD.
The only difference in the SDLC RAD model and Waterfall model is the structured environment which waterfall model has. So when you want to work with the large corporation, waterfall might be a good choice for getting the project done smoothly. Although RAD was created in response to the inadequacy of waterfall, whenever a user is focused with the structured way of designing they can always go back with the waterfall methodology. While waterfall is not the preferred choice of modern developers, you may go with this if you are working in a very structured environment.
Lean development methodologies are the solution if you think RAD is expensive to afford for your project development. This reduces the waste throughout the project. This can be made possible to scrapping the unwanted or unneeded features in the development. Lean development allows using the part of RAD o other methods when implementing it. The main focus of lean development is to work in the thin budget rather than creating a high-quality project.