SDLC RAD model is a new approach of software development life cycle. RAD model stands for Rapid Application Development model. It is a software development methodology that uses minimal planning in support of rapid prototyping approach. This model is an upgrade version of incremental model i.e. a RAD model is based on prototyping and iterative development modelling approach with no specific planning involved. The prototyping approach is a working model that is functionally equivalent to a component of the product.
In RAD model the components and/or system functionalities are developed in parallel similar as the development of mini projects. The process of design components and writing the code for function the software involves itself and the planning required for developing the final fully functional system product. The developments under RAD model are time boxed, delivered and then assembled into a working prototype. This can quickly give the customer something to see and use and to provide feedback regarding the delivery and their requirements.
Design phases of SDLC RAD Model:
The design phases of any of the software life cycle define the sequences of steps to build a successful software project. RAD model is one of them that used as a standard software development life cycle by all software application development companies. This software modelling approach is easy to use, reliable to ensure success of the software development projects.
This SDLC model has several successive phases used under software application development. RAD model distributes the analysis, design, build, and test phases into a series of short, iterative development cycles. Following phases are shown in the general phases of RAD Model are explain in detail below;
- Business Modeling:
Business modeling phase of the RAD model consider the flow of data and/or information among different channels of business. This flow of information among various business channels provide identification by connected channels. In other words, this phase of RAD model cover the product under development is designed in terms of flow of information and the distribution of information between various business channels. A complete business analysis is performed to find the vital information for business, how it can be obtained, how and when is the information processed and what are the factors driving successful flow of information.
- Data Modeling:
In data modeling phase all the information gathered in the above phase of RAD model of software life cycle i.e. Business Modeling phase is reviewed, and analyzed to form sets of data objects vital for the business. The attributes of all data sets are identified and defined in data modeling phase. Obtained a relationship among these data objects in such a way that these all are seemed relevance to the business model.
- Process Modeling:
Data object sets that are defined in the Data Modeling phase are converted to achieve the business information flow needed to achieve specific business objectives as per the business model. The process model for any changes or enhancements to the data object sets is defined in process modeling phase of RAD model. Process descriptions are identified and created a CRUD of data objects that following functionality adding, deleting, retrieving or modifying data objects.
- Application Generation:
The actual system is built and control passes to the automated tools. These automated tools are used to convert process models and data models into code and actual system prototypes.
- Testing and Turnover:
In this phase the developer tests the new components and the interfaces that are connected those components. The overall testing time is reduced in RAD model as the prototypes are independently tested during each successive iteration process. However the data flow and the interfaces between all the components need to be thoroughly tested with complete test coverage. Since most of the programming components have already been tested, it reduces the risk of any major issues.
Advantages and disadvantages of SDLC RAD model:
Every software development model has its own advantages and disadvantages that decide the working area of the model. Here we are listing all the advantage and disadvantages of RAD model:
Advantages of RAD Model:
In the positive aspects of RAD model according to the present requirement of the software developer industries includes that RAD model has no detailed pre-planning that makes it easier to incorporate the changes within the development process.
RAD model enables rapid delivery as it reduces the overall development time due to provide functionality to reuse the prototype or components as well as enables the parallel development. RAD projects follow iterative and incremental model and have small teams comprising of developers, domain experts, customer representatives and other IT resources working progressively on their component or prototype.
Disadvantages of RAD Model:
The RAD model works well if only if high skilled engineers and experienced developers and system analyst are available. In this model the customer is also committed to achieve the targeted prototype in the given time frame. If there is commitment lacking on either side the model may fail.
Pros and Cons of SDLC RAD Model:
There are many pros and cons of RAD model. In the following list we are trying to cover all pros and cons of RAD model, follow us;
|Pros of RAD Model||Cons of RAD Model|
|Requirements changes can be accommodated.||It is suitable for project requiring shorter development times.|
|Iteration time can be short with use of powerful RAD tools.||Dependency on technically strong team members for identifying business requirements.|
|Integration from very beginning solves a lot of integration issues.||Requires user involvement throughout the life cycle.|
|Productivity with fewer people in short time.||Only system that can be modularized can be built using RAD.|
|Increases reusability of components||Inapplicable to cheaper projects as cost of modeling and automated code generation is very high.|
|Progress can be measured.||It is suitable for systems that are component based and scalable.|
|Encourages customer feedback||Requires highly skilled developers/designers.|
|Quick initial reviews occur||High dependency on modeling skills.|
|Reduced development time||Management complexity is more|
Application of RAD Model:
A RAD model can be applied successively to the complex and very large functional projects which have clear possibility of modularization the project. If modularization process not successfully applicable on the project than it may happen the RAD becomes frailer condition. Following are the typical scenarios where RAD can be successfully applied and gives batter results:
- RAD model should be used where the requirements change during the course of the project and working prototypes are to be presented to customer in small iterations of 2-3 months.
- RAD model will be successfully applied when a system can be modularized to be delivered in incremental manner.
- It should be used if there is high availability of designers for modeling and the budget is high enough to afford their cost along with the cost of automated code generating tools.
- It should be used only if the budget permits use of automated code generating tools.
- RAD SDLC model should be chosen only if resources with high business knowledge are available with domain expertise team members and there is a need to produce the system in a short span of time (2-3 months).