0% found this document useful (0 votes)
583 views13 pages

Corrupted Document Analysis

This document discusses the Rapid Application Development (RAD) methodology. It defines RAD and explains its key characteristics including methodology, people, management, and tools. The document outlines the RAD lifecycle and some of the techniques used in RAD such as prototyping, workshops, time-boxing, and active customer participation. It also discusses the potential milestones of RAD projects, including reduced development time, lower costs, increased quality, and high flexibility. Finally, the document notes some challenges of RAD, like a potential bias towards system needs over user needs, reduced scalability, and fewer features.

Uploaded by

Royal Khuphe
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
583 views13 pages

Corrupted Document Analysis

This document discusses the Rapid Application Development (RAD) methodology. It defines RAD and explains its key characteristics including methodology, people, management, and tools. The document outlines the RAD lifecycle and some of the techniques used in RAD such as prototyping, workshops, time-boxing, and active customer participation. It also discusses the potential milestones of RAD projects, including reduced development time, lower costs, increased quality, and high flexibility. Finally, the document notes some challenges of RAD, like a potential bias towards system needs over user needs, reduced scalability, and fewer features.

Uploaded by

Royal Khuphe
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

à 

à 

à 



à 



à 
à 

à 

J  
  

à 

Scope, Lifecycle, Milestones, Challenges

à 
à

à 



à 

à 

à 
à 

à 

à 

à 


à 

c 

à 


CONTENTS

Y Synopsis 4
2 Introduction 5
3 Background Study 6
3 Y Scope 6
3 Y Y Methodology 6
3YYY Development Techniques 6
3YY2 Prototyping 6
3YY3 Workshops 7
3YY4 Development Tools 7
3YY5 Time-boxing 7
3YY6 Active Customer Participation 7
3YY7 RAD Lifecycle 8
3 Y 2 People 9
3 Y 3 Management 9
3 Y 4 Tools Y
3 2 Rapid Application Development Milestones Y
3 2 Y Reduced Development Time Y
3 2 2 Less Costs Y
3 2 3 Increased Quality Y
3 2 4 High Flexibility YY
3 3 Rapid Application Development Challenges YY
3 3 Y Bias towards System Needs YY
3 3 2 Scalability Reduction YY
3 3 3 Reduction of Features YY
4 Conclusion Y2
5 References Y3
6 Appendix Y4

c 

Y SYNOPSIS

The process of developing a software system is very complex and demands a


considerable amount of time to be invested Moreover, software requirements continue
to evolve and are becoming more complex with each day that passes This is because
users worldwide have now particularly become more demanding when it comes to
quality, expenditure and the time-frame allocated towards the development of a
particular software product Keeping in mind the three (quality, cost, time), the software
development process can be optimized by adopting a sound software development
method such as Rapid Application Development (RAD) Severson (26) states that a
method of this type provides a framework that gives guidelines as to how the software
development process can be optimized In that respect, the ultimate objective of this
discussion is to deliberate on RAD Precisely, the discussion attempts to clearly define
the scope, lifecycle, milestones and challenges that are associated with IT projects
which use the RAD methodology

c 

 INTJO CTION

Hughes and Cotterell (26) define RAD as an object oriented, team-based software
development method that fuses customers, new and existing project management
strategies, various developmental practices and development tools in an effort to create
high quality systems within a fixed space of time It was introduced by IBM during the
Y98s and its ultimate goal is cutting down on time and costs incurred in a project by
ensuring constant customer participation in all stages of the system development
lifecycle In essence, the RAD methodology dictates that as soon as the requirements
gathering process is completed, developers should swiftly move on to start creating a
fully operational model (prototype) of the intended system The model is then used as a
demonstration tool to the users and also serves to solicit feedback from customers
about the system What actually happens is that the users get a chance to examine the
model at the earliest possible time and establish if the system meets their requirements
The feedback that the customers provide is used in the amendment and enhancement
of the prototype with the aim of refining the prototype to produce a deliverable that will
cater to as much customer requirements as possible This process is done iteratively
until the developers and clients agree on a final solution, thus RAD is a continuous
developmental process (Futrell et al, 26)

c 

è CKGJON ST Y

è YS  
RAD is aimed at producing high quality software in a reasonably short space of time
(normally between 2 - 6 months) To achieve this, processes and guidelines have been
formulated to help provide a standard and systematic approach to rapid software
development RAD has four elementary characteristics which include methodology,
people, management and tools as illustrated in appendix Y (Beynon-Davies et al, Y999)

è Y Y    
The ultimate challenge facing most organizations that develop software is being able to
produce high quality software, faster and at less cost According to Severson (26),
RAD addresses these challenges by providing a methodology that makes it possible to
speed up the development time whilst not compromising on quality and cost The
essentials of this methodology will be discussed throughout this document and they
include the following:

3 Y Y Y Development Techniques
RAD merges the finest techniques available and also dictates how best those
techniques can effectively be used to achieve optimum results in systems development
For example concepts like iteratively developing systems and prototyping have been
inherited from other methodologies such as the spiral model of development However,
RAD goes further to put more emphasis on shorter time-frames and reducing costs and
increasing quality (Beynon-Davies et al, Y999)

3 Y Y 2 Prototyping
RAD is heavily dependent on incremental prototyping methods that in the end produce
a final product Prototypes play a pivotal role in ensuring that the customer¶s
expectations are met before a solution is finalized What actually happens is that
developers carry out investigations, create a fully functional model and then discusses
the model with the customer Refinements are then made and more reviews take place
until an agreement is reached about the final solution (Fitzgerald et al, 22)

c  

3 Y Y 3 Workshops
Traditional methods of development used methods like interviewing to gather
requirements RAD uses Joint Application Development (JAD) workshops as a means
of collecting requirements and design review feedback During such workshops, the
customer, key users and developers lock themselves into discussions, and establish the
requirements and the scope of the system The workshops are however not limited to
the requirements planning phase only and is therefore used in the various stages of the
project lifecycle (Fitzgerald et al, 22)

3 Y Y 4 Development Tools
It goes without saying that RAD heavily relies on Computer Aided Software Engineering
(CASE) tools to speed-up the activities that involve tasks like system modeling, the
creation of prototypes, and the provision for support of features like re-use of code
Therefore a right selection of these modern tools like Database Management Systems
(DBMS) and GUI builders is very important in the successful completion of RAD
projects (Fitzgerald et al, 22)

3 Y Y 5 Time-boxing
RAD allows the rapid construction of systems through a technique called time-boxing A
time-box can simply be defined as a deadline for delivering the final working deliverable
What this means is that, during a project, more priority is given to developmental
activities and in the event that the project starts to lag behind; requirements are reduced
so that the project activities do not go beyond the stated deadline In short, instead of
extending the deadline to allow more time for the project, requirements are reduced so
that the project fits into the specified time-box (Fitzgerald et al, 22)

3 Y Y 6Active Customer Participation


Traditional approaches to software development like the waterfall model compromised
the issue of user involvement during the process of developing a software system
However the RAD approach views the aspect of active customer participation as a basic
necessity for successfully completing a project The reasons for this perspective include
practical reasons (for example reducing costs associated with eliciting requirements)

c 


and opinionated reasons (for example customers may not accept a system that is
developed without their constant contribution) (Hughes and Cotterell, 26)

3 Y Y 7 RAD Lifecycle
According to Aggarwal and Singh (28), RAD has a lifecycle that a software
development organization can follow to develop their products Thus the structure of the
lifecycle is crafted to make sure that the end product of a project caters for almost all the
users¶ needs It consists of four phases which are namely requirements planning, user
description, construction and cut over Appendix 2 illustrates the interaction amongst the
phases

Requirements Planning
This phase is also referred to as the Concept Definition phase It is characterized by
intensive meetings between key customers and a team responsible for planning
requirements The purpose of the meetings is to scope the project as well as capturing
the initial high level requirements for the intended system The phase typically lasts
between Y ± 4 weeks and its end result is a number of action diagrams which explicitly
define the relationships that exist between business processes and other data
elements Structured tools like Microsoft Visio may be used in this phase for
requirements modeling purposes (Beynon-Davies et al, Y999)

User Design
In this Functional Design phase, an interaction between users and system analysts
happens through JAD workshops During the workshops, models and prototypes are
developed to capture critical processes involved in the system This stage is very crucial
because it allows the users a chance to understand the system through a working
prototype, suggest modifications and eventually accept a functional model that
addresses their business requirements (Beynon-Davies et al, Y999)

Construction
This is the phase that focuses on developing the actual system It compresses the
detailed design, coding and testing stages that are found in the waterfall model into this
one phase However, unlike in other SDLC models, RAD dictates that users must

c  

continue their participation throughout the entire project Therefore, the users continue
to post their suggestions at the same time the system is being developed Once a
product is developed, it is released to the user so as to gather feedback on how best to
refine the system (Beynon-Davies et al, Y999)

Cut over
This is the final stage of the lifecycle The activities involved in this stage are analogous
to those of the implementation phase of the SDLC Some of the activities involved are
acceptance tests by users, installing the system, and training of users (Beynon-Davies
et al, Y999)

è Y P  
RAD is dependent on exceptional tools to achieve rapid system development However
exceptional these tools can be, they cannot on their own, warrant success They require
people with the right skill-set and the ability to use these tools to achieve optimum
results in projects Therefore, RAD commands that the people involved in projects
should be well trained and greatly motivated Most importantly they must be able to
work as part of a team and complement other members¶ skills (Fitzgerald et al, 22)
The key stakeholders in RAD projects include sponsors, requirements planning team,
user design team, project manager, training manager, workshop manager, and
construction team

è Y è
 

It is very difficult to rapidly develop and deploy a system if there are administrative
obstacles hindering the smooth flow of a project Therefore a sound administrative
system is needed to oversee the project from conception to completion To achieve this,
those involved in the management of the project must be fully dedicated to RAD They
should ensure that all stakeholders involved in the project play their roles to the best of
their abilities Most importantly, they should ensure that everyone involved understands
the RAD methodology and hence adapt to the new culture that comes with the
methodology For example, members should be intensively trained on how to use tools
so as to gain the much needed experience in RAD (Beynon-Davies et al, Y999)

c  

è Y T 
At this point in the discussion, it is undoubtedly clear that RAD employs computer-based
tools and people to meet the objective of high quality products at high speeds RAD,
however, primarily depends on the type of tools used in a project to determine the
success of that project The tools help in ensuring that repetitive tasks like code
generation and project documentation are automated This greatly reduces the time
consumed by these activities and thereby speeding up the development Examples of
tools that can be used in RAD projects are CASE tools These tools play a pivotal role in
eradicating some problems that exist in other models of software development For
example, CASE tools can be used to develop models (using e g UML diagrams) and
directly generate code based on those models instead of hard coding (Beynon-Davies
et al, Y999)

è J  
  
 


è  YJ    
T 
The use of power tools ensures that a system is developed faster and thereby reducing
the product cycle time This means that the system is delivered to the customer in a
lesser time-frame compared to the other development models like the waterfall model
This resultantly brings business value to the customer (Futrell et al, 22)

è   C 


Since project teams consist of members who are skilled and experienced in their project
domain, fewer developers (typically 2 ± 6) are needed to work on a RAD project
Therefore this reduction in the number of developers, coupled with a reduction in the
development time means less expenditure for the customer (Hughes and Cotterell,
26)

è  èI
   
Constant customer participation increases the chances of producing a product that
satisfies almost all the requirements of the customer That in-turn means that the risks
of developing a system that does not bring business value are greatly reduced and
hence a product of highest quality is produced (Severson, 26)

c  

è   
By virtue of being able to build prototypes as early as possible in the RAD lifecycle, it is
possible to make amendments to the system at an earlier stage of development It is
also possible to stop and abort development in the case of a system that is unworkable
Most importantly early prototyping and demonstration ensure that the final deliverable
meets almost all specified requirements (Futrell et al, 22)

è èJ  
  
C 
 

è è Y   S N 


RAD places more emphasis on the dynamics of the system only and it fails to address
needs at the business level The disadvantage of this is the higher risk of producing a
functional system which is capable of serving the business in the short term and fail to
address the long-term goals of the system (Futrell et al, 22)

è è S  J 



As previously noted, RAD focuses on developing prototypes that are refined iteratively
to end up becoming a fully functional system The problem with this approach is that a
product developed in this fashion may lack the scalability that exists on a system that
was developed from start as a full application using traditional methods like waterfall
model (Severson, 26)

è è èJ 
   
As noted earlier in the discussion, time-boxing sacrifices certain application features in
place of producing a deliverable within the specified time-box This means that RAD has
the likelihood to produce an application that has fewer features when compared to a
product which is developed using some traditional methods like the spiral model
(Severson, 26)

c 

 CONCSION

The conclusions emanating from the findings of this deliberation are suggestive of the
fact that Rapid Application Development has brought about a new dimension in the
software system development The main points to be noted include the following:

RAD has successfully achieved the objective of reducing costs on projects whilst not
compromising on quality by effectively reducing the project time-frame and the
number of people involved in such project
It has also been successful in encouraging the involvement of customers in the
entire process of its development lifecycle This proves advantages in many
respects but most importantly this improves the development process by ensuring
full acceptance from the customer whilst the system is still being created
RAD has also demonstrated strength in being able to speed up the development
process by appropriately fusing its methodology, people, management and high-tech
computer-aided tools
RAD has also proven to have challenges Amongst these challenges are the fact
that it tends to lean too much on emphasizing more on delivery deadlines and then
compromising on other features that could have been added if there was not a
deadline set

Having said all that, it can be noted that the advantages of RAD outweigh the
disadvantages and hence that means RAD has successfully met its objective to create
quality systems, faster and at minimum cost

c 

Ñ JEEJENCES

Aggarwal, K K and Singh, Y (28), ¦  



, 3rd Ed , New Delhi: New
Age International Publishers

Beynon-Davies, P et al,                  


[[Link] stockton-press co uk/ejis] Y999 Accessed Y9/9/2Y

Fitzgerald, B ; Russo, N and Stolterman, E (22)    ¦  


    New Delhi: McGraw-Hill

Futrell, R T et al (22),    ¦  ! "  


 , Low Price Ed , New
Delhi: Pearson Education

Hughes, B and Cotterell, M (26), S ! " 


 , 4th Ed , New Delhi:
Tata McGraw-Hill Publishing Company

Severson, R,           


   # $
[[Link] atmel com] 26 Accessed Y7/9/2Y

c 

PPEN IXY

Typical Design Structure for RAD (Courtesy of Beynon-Davies et al, Y999)

PPEN IX

RAD Lifecycle Phases (Courtesy of Beynon-Davies et al, Y999)

c 


You might also like