RAD Model in Software Engineering

RAD Model is an incremental process model and was developed by IBM in the 1980s and described in the book of James Martin entitled Rapid Application Development. Hence, user involvement is essential from the requirement phase to the delivery of the product. Continuous user participation ensures that the design of the system is made according to user expectations.

The RAD (Rapid Application Development) model is based on iterative prototyping and iterative development without involving any specific planning. The process of developing the software itself requires the planning necessary for product development. Rapid application development aims to gather customer needs through workshops or focus teams, initial testing of iterations, using iterative models, reusing existing designs, continuous integration, and faster delivery.

RAD Model in Software Engineering

RAD Model Design

The RAD model distributes the stages of analysis, modeling, construction, and testing into a series of short iterative development cycles.

The following stages of the RAD model are:-

Business Modeling

The business model for the product under development was structured for the flow of information and the distribution of information across different business channels. Complete business analysis is done to get information that is important for business, how it can be obtained, how and when the information is processed, and what are the factors that drive the successful flow of information.

Data Modeling

The information collected in the business modeling phase is reviewed, and the set of data objects important to the business is analyzed. The characteristics of all data sets are identified and defined. The relationship between these data objects is established and defined in detail in the relevance of business models.

Process Modeling

The data object set defined in the data modeling phase is transformed according to the business model to establish the business information flow necessary to achieve specific business objectives. The process model is defined in this step for any changes or enhancements to the data object set. Procedure details for adding, deleting, retrieving, or modifying data objects are given.

Application Generation

The system is built in this phase, and coding is done by using the automation tools to convert the process models and data into actual prototypes.

Testing and Turnover

In the RAD model, the total testing time is reduced because the prototype is independently tested at each iteration. However, the data stream and all component interfaces must fully cover the test. Because most programming components have already been tested, this reduces the risk of any major issues.

Advantages of RAD Model

  1. Changing requirements can be adjusted.
  2. Progress can be measured.
  3. Iteration time may be reduced with the use of powerful RAD tools.
  4. It requires fewer people and less time to develop the software.
  5. Increases component reusability.
  6. Instant initial reviews occur.
  7. It encourages feedback from the customer.
  8. Integration solves a lot of integration issues from the very beginning.

Disadvantages of RAD Model

  1. Reliance on technically strong team members to identify business needs.
  2. Only modular systems can be built using RAD.
  3. Highly skilled developers/designers are required.
  4. Unsuitable for inexpensive projects as the cost of modeling and automated code generation is too high.
  5. Suitable for systems based on components and scalable.
  6. It requires user participation throughout the life cycle.
  7. Suitable for projects with a short period of development