Rapid Application Development (RAD) was first proposed by computer consultant James Martin in 1991. It is a structured development method that attempts to quickly generate systems without sacrificing quality. RAD has the same goal as the prototype method—to respond quickly to user needs, but it has a broader scope. This method is now widely used in advanced IT fields around the world. Integrating with low code technology, Yeeflow is a famous RAD tools applied to many enterprises.
RAD’s goal is to build business software that meets user requirements in a short period, that is, 60 to 90 days. This model allows developers to make multiple iterations and updates to software quickly, and they do not need to restart a development schedule from scratch every time. In the absence of business and IT consensus on the project and goals, rapid application development is an effective software development model.
The rapid application development model
It is a kind of incremental model that emphasizes extremely short development cycles. This model is a high-speed variant of the waterfall model. It has won rapid development through the extensive use of reusable components and component-based construction methods.
If developers can understand the requirements correctly and constrain the scope of the project at the same time, they can quickly create a fully functional information system by using rapid application development model. The process starts with business modeling, followed by data modeling, process modeling, application generation, testing, and iteration.
Identify the information that drives the operation of the business process, , how to generate the information, the direction of the information flow and its processing, etc. They can be supplemented by the data flow diagram.
In order to support the data flow of the business process, find the data collection and define the data attributes. Then form a data model with other data, which can be supplemented by E-R diagrams
Data objects complete various business functions in the information flow, creating a process to describe the addition, modification, deletion, and search of data. That is, to refine the processing frame in the data flow diagram.
Use the fourth-generation language (4GL, such as Delphi, VB, etc.) to write out processing programs. Reuse existing components or create new reusable components, and use the tools to construct the entire application system
Testing and delivery
Test the newly created system.
Rapid application development life cycle
The RAD life cycle mainly has four stages: demand planning, user design, construction and cutover. The names of the various stages of the life cycle are different from other structured development methods, but the order of work involved is generally similar.
In other structured development methods, the main body is the information system department (R&D). The customer only needs to involve in it during the demand stage and the acceptance stage. In the RAD approach, except for the demand phase, the customer plays a major role in each phase.
Basic elements of RAD
Management: The RAD approach needs to be promoted by managers willing to try new development methods
Personnel: RAD believes that it is more efficient to divide the personnel into multiple teams than to be responsible for the entire system.
Method: RAD adopts demand planning, user design, creating and cutover.
Tools: mainly including the fourth-generation programming language (Delphi, C#, VB), CASE tools for prototyping and code generation.
In addition, rapid application development combines five technologies, namely, evolutionary prototypes, CASE tools, specialized personnel with advanced tools, interactive JAD, and schedules.
The application of RAD
The RAD is particularly effective for the development of information systems. But like all other development methods, it also has some drawbacks that make it ineffective in some situations. The following table lists the analysis of the applicability of the RAD.
|Suitable for RAD||Not suitable for RAD|
|The software can utilize many existing class libraries (APIs)||There are few ready-to-use components.|
|System operating performance (such as speed) is not a critical consideration||The program has high operating performance indicators|
|Application development can use high-end tools||System development cannot use high-end tools|
|Narrow coverage of system users (for internal use or for vertical markets)||a wide coverage and a large number (for horizontal market or mass market)|
|The scope and time limit of the project are strictly controlled||BAD deviates from its goal and becomes a fast but crude development|
|System reliability is not a critical consideration||High system reliability target requirements|
|The system can be decomposed into multiple independent modules||The system cannot be modularized (multi-group simultaneous development is not possible)|
|The relatively mature technology (it has been used for more than one year)||Overly advanced technology with high risk|
Rapid application development case study
A large regional utility service provider in China needs to address key IT issues including system flexibility and shortening the time about new product launches. To this end, the company found Yeeflow company to jointly develop a flexible support system. Through RAD, the company clarified key business requirements and conditions for users to fully accept the new software. Then a practical prototype was built in just 30 days.
Subsequently, the group further collects users’ opinions on new features, user-friendliness, and increased data segments, and then improved the prototype accordingly. In less than a month, the project team completed and delivered a user prototype that contained approximately 400 user screens and accurately reflected business requirements. In addition, the project also strengthened the overall collaboration and mutual understanding between IT and business departments.
After the completion of RAD, the development team took only a few months to convert the prototype into the final operating system. Compared with the traditional software development cycle, RAD shortens the entire development process (from collecting requirements to system delivery) to six months
The above example makes it clear how RAD is embodied, so when do you need to use rapid application development.
When can you use rapid application development?
1. When you need to complete a project in a shorter period, choosing RAD can save you time.
2. When there is enough budget. Sometimes RAD can be expensive since you need to hire professional staff to design. Thus, it is important to have sufficient funds.
3. It is crucial to have reliable feedback from dependable sources.