Skip to main content

Software Engineering - RAD (Rapid Application Development) Model | VCMIT


RAD (Rapid Application Development) Model

RAD is a linear sequential software development process model that emphasizes a concise development cycle using an element based construction approach. If the requirements are well understood and described, and the project scope is a constraint, the RAD process enables a development team to create a fully functional system within a concise time period.

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 refers design improvements to the next product version
  • Less formality in reviews and other team communication


The various phases of RAD are as follows:

1.Business Modelling: The information flow among business functions is defined by answering questions like what data drives the business process, what data is generated, who generates it, where does the information go, who process it and so on.

2. Data Modelling: The data collected from business modeling is refined into a set of data objects (entities) that are needed to support the business. The attributes (character of each entity) are identified, and the relation between these data objects (entities) is defined.

3. Process Modelling: The information object defined in the data modeling phase are transformed to achieve the data flow necessary to implement a business function. Processing descriptions are created for adding, modifying, deleting, or retrieving a data object.

4. Application Generation: Automated tools are used to facilitate construction of the software; even they use the 4th GL techniques.

5. Testing & Turnover: Many of the programming components have already been tested since RAD emphasis reuse. This reduces the overall testing time. But the new part must be tested, and all interfaces must be fully exercised.

When to use RAD Model?


  • When the system should need to create the project that modularizes in a short span time (2-3 months).
  • When the requirements are well-known.
  • When the technical risk is limited.
  • When there's a necessity to make a system, which modularized in 2-3 months of period.
  • It should be used only if the budget allows the use of automatic code generating tools.


Advantage of RAD Model


  • This model is flexible for change.
  • In this model, changes are adoptable.
  • Each phase in RAD brings highest priority functionality to the customer.
  • It reduced development time.
  • It increases the reusability of features.


Disadvantage of RAD Model


  • It required highly skilled designers.
  • All application is not compatible with RAD.
  • For smaller projects, we cannot use the RAD model.
  • On the high technical risk, it's not suitable.
  • Required user involvement.




Comments

Popular posts from this blog

Types Of Software | VCMIT

Types Of Softwares The two main types of software are system software and application software. System software is a type of computer program designed to run a computer's hardware and application programs. System software coordinates the activities and functions of the hardware and software. In addition, it controls the operations of the computer hardware and provides an environment or platform for all the other types of software to work in. The best-known example of system software is the operating system (OS), which manages all the other programs in a computer. Application software is a computer software package that performs a specific function for an end user or, in some instances, for another application. An application can be self-contained or a group of programs. The program is a set of operations that runs the application for the user. Applications use the computer's OS and other supporting programs, typically system software, to function. Application software is differ...

Software Requirements In Software Engineering | VCMIT

Software Requirements The software requirements are description of features and functionalities of the target system. Requirements convey the expectations of users from the software product. The requirements can be obvious or hidden, known or unknown, expected or unexpected from client’s point of view. Requirement Engineering The process to gather the software requirements from client, analyze and document them is known as requirement engineering. The goal of requirement engineering is to develop and maintain sophisticated and descriptive ‘System Requirements Specification’ document. Requirement Engineering Process It is a four step process, which includes – Feasibility Study Requirement Gathering Software Requirement Specification Software Requirement Validation Let us see the process briefly - Feasibility study When the client approaches the organization for getting the desired product developed, it comes up with rough idea about what all functions the software must perform and which...

A Brief History Of Software | VCMIT

History Of Software The Early Days of Software Computer scientist Tom Kilburn is responsible for writing the world’s very first piece of software, which was run at 11 a.m. on June 21, 1948, at the University of Manchester in England. Kilburn and his colleague Freddie Williams had built one of the earliest computers, the Manchester Small-Scale Experimental Machine (also known as the “Baby”). The SSEM was programmed to perform mathematical calculations using machine code instructions. This first piece of software took “only” 52 minutes to correctly compute the greatest divisor of 2 to the power of 18 (262,144). For decades after this groundbreaking event, computers were programmed with punch cards in which holes denoted specific machine code instructions. Fortran, one of the very first higher-level programming languages, was originally published in 1957. The next year, statistician John Tukey coined the word “software” in an article about computer programming. Other pioneering programmin...