Monday, September 10, 2007

Rapid Application Development (RAD):

Rapid application development (RAD) is a software development process that involves iterative development, the construction of prototypes, and the use of Computer-aided software engineering (CASE) tools. It is described as a process through which the development cycle of an application is expedited. Rapid Application Development thus enables quality products to be developed faster, saving valuable resources.

Pros
1. Increased speed of development through methods including rapid prototyping, virtualization of system related routines, the use of CASE tools, and other techniques.
2. Decreased end-user functionality (arising from narrower design focus), hence reduced complexity
3. Larger emphasis on simplicity and usability of GUI design
Cons
1. Reduced Scalability, and reduced features when a RAD developed application starts as a prototype and evolves into a finished application
2. Reduced features occur due to time boxing when features are pushed to later versions in order to finish a release in a short amount of time
Some companies offer products that provide some or all of the tools for RAD software development. (The concept can be applied to hardware development as well.) These products include requirements gathering tools, prototyping tools, computer-aided software engineering tools, language development environments such as those for the Java platform, groupware for communication among development members, and testing tools. RAD usually embraces object-oriented programming methodology, which inherently fosters software re-use.

No comments: