Rapid application Development (RAD) Technique
June 1, 2011
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting and have a nice day!
General RAD Concepts
Background
RAD refers to development lifecycle designed to give much faster development and high quality results than the traditional lifecycle.
It is designed to take maximum advantage of powerful development tools that have evolved in record years.
Need to apply RAD Technique
-Speeding up of development process which is very important in today’s business environment.
-To speedily create and amend info systems in organization in order to support the continuous changing business environment
NB: There is need to harness the characteristics of RAD so that most flexible and quality systems are delivered in the shortest time scale possible.
Characteristics of RAD
-Use of evolutionary prototyping techniques operating in an environment of high delivery time scales.
-To focus upon the identification of important users and involving them in workshops at early stages of development.
-Obtaining commitment from the business users
-The use of CASE integrated development environment
Concepts of RAD
RAD was traditionally viewed as quick fix approach but not a technique to deliver quality systems.
It was seen as a way of setting up a system quickly using a 4GL tools and DBMS products without the quality controls associated with other development projects.
The two common approaches used are:
1) The work of James Martin (1991)
Context of Information Engineering
2) Dynamic System Development Method (DSDM)
Is a framework and standards of RAD formed by a consortium of UK companies in January 1994.
Phases of RAD
a) Requirement Analysis
This concerns the definition of requirements. The techniques used in this phase are:
i. Joint Requirements Planning (JRP)
ii. Joint Application Development (JAD)
Both of these techniques are based on workshops or structured meetings.
i. Joint Requirements Planning (JRP)
The role of JRP is to identify the high level management requirements of the system at a strategic level. The participants are senior managers who have visions and understanding of the overall objective of the system and how it can contribute to the goals and strategies of the organization.
The workshops may be used to help determine those goals when they are not well understood.
JRP is a creative workshop that helps to:
Identify and create commitment to the goals of the system .
Identify priorities
Eliminate unnecessary functions
The difference between JRP & JAD is that different people are involved.
In JRP the participants need to have a contribution of overall business knowledge and specific knowledge about the proposed system with its requirements.
They also need to have the necessary authority and seniority to be able to make decisions and commitments.
It is suggested that if the right people are not available without referring to their seniors negates the RAD objectives which is to get requirements identified agreed in the shortest time possible.
b) User design
The main technique used in this phase is JAD in reality, user design is both analysis and design. Thus the JRP workshops may be combined with JAD in situations where the overall requirements are well established.
Normally, however JAD would follow on from JRP
c) Construction Phase
The construction phase in RAD concerns taking of the user design through detailed design and code generation.This phase is carried out by the IS professionals using CASE tools.
The construction highly depends on the uses of info engineering based case tools and prototyping.
The prototype are reviewed by the key users for approval where they are not approved, the requested changes are effected through series of interaction which are achieved quickly and testing enabled by use of CASE tools and prototyping.
Construction is performed by small teams of 3 to 4 experts in the use of CASE tools. The teams are kept small so as to reduce the number of interfaces and interactions between people in the teams.
They are required to work quickly, making maximum possible use of re-usable designs already in existence.
Large teams of developers would require large communication network and a number of communication resulting in low productivity as in the traditional development.
There should be a developer for each part of the system so as to reduce the number of potential interactions with other developers.
Using this approach the system can be viewed as quickly as 4-6 weeks and progressively refined and integrated with other aspects developed by other team members.
Once the detailed designs are agreed upon the code generated using the CASE tool and then the system is tested and approved.
All associated documentation is then produced and database optimization is then performed.
d) Cut-over:
This is the final phase that involves testing and the use of realistic data in operational situations. The users are trained on the system. The organization changes.
Implied by the system is implemented. The cut-over is finally effected by running the old and the new system in particular until the new system has proved itself. The old system is then phased out.
Dynamic System Development Method (DSDM)
June 1, 2011
Background
DSDM is a set of standards and framework for controls for building and maintaining systems, which meet tight time constraints and provide a recipe for repeatable RAD success.
It was initially defined by a consortium of UK RAD users and suppliers. The consortium consisted of many large organizations that had used the concept of RAD and now wanted to develop a generic framework that could be used.
The initial framework was approved and version one was published in Feb 95. Version 1 of DSDM consisted of
1) 13 Principles
2) Project Management
3) Team Structures
4) Prototyping
Feedback from the early users of DSDM led to the release of subsequent versions. In December 1995 version 2 was published. In version 2 the 13 principles were reduced to 9 principles.
In October 1997 version 3 was published.
These developments reflected the increasing use of DSDM in business process change projects.
Since then DSDM has been used successfully by organizations in public and private sectors.
Applications built using DSDM approach address the current and imminent needs for the business rather than the traditional approach of attacking all the perceived possibilities.
The resulting computer system is, therefore, expected to be a better fit in the true business needs, easier to test and more likely to be accepted to the users working practices.
DSDM provides a holistic approach to software development in a RAD project environment.
Many software development methods focus purely on one activity even as analysis and design or project management.
DSDM provides a development life cycle supported by all the necessary controls.
Overview
There are 4 philosophies behind the development of DSDM namely:
a) Mode of Development:
Development should be a team effort consisting of the users and IT professionals with the following roles
Users: Provide the good understanding of the business requirements
IT professionals: Provide the technical know-how
b) Quality Demands
High development quality is demanded in order for it to suit the users needs as well as technical competence and robustness.
c) Deadline for Delivery
Development can be delivered in incremental stages. It is better to deliver part of the development in time rather than everything way past the acceptable deadline.
In deed, a fundamental assumption of DSDM is that noting is built perfectly for the first time, but that a usable and useful 80% of the proposed system can be produced in 20% of the time it would take to produce the total system.
d) Resources Requirement:
It has to be accepted that resources will be spent if development of IS of value to the organization is to be realized in time.
It should be noted that DSDM is viewed as a framework of controls for the development of IT systems to tight time scales and a guidance of how to apply the controls and concepts of RAD rather than the view of method/methodology.
DSDM is independent of any particular set of tools and techniques and could be used by object oriented and structured analysis and design approaches in environment ranging from the individual PC to global distributed system.
DSDM defines set of process and products at a high level to give flexibility to the approach.
Developers may choose any technique, but conform to the DSDM guidelines and controls.
In a RAD environment DSDM addresses the following. These factors are:
- Project management - Testing
- Estimation - Quality Assurance
- Time boxing - Team structures
- Prototyping - Tools
- Configuration Management - Risk management
SUMMARY:
DSDM: Note:
Tools and techniques: The tools and techniques of DSDM should enable:
- Rapid development
- Users to be involved
- Support of interactive development
- The building of acceptable user interface
- Support of …… and provide good documentations.
People and Teams:
- Involve users all through
- Empower teams
- Establish key roles
Management:
- Plan for interactive delivery ie. Deliver things in bits
- Plant for continuous testing
- Plan for constant review of prototypes and progress.
Time-boxing:
- is a technique to make RAD more measurable and controllable.


