Information Technology Reference
In-Depth Information
Table 12.2
Advantages
Disadvantages
Advantages and Disadvantages
of Prototyping
Users can try the system and provide
constructive feedback during
development.
Each iteration builds on the previous one. The
final solution might be only incrementally better
than the initial solution.
An operational prototype can be
produced in weeks.
Formal end-of-phase reviews might not occur.
Thus, it is very difficult to contain the scope of
the prototype, and the project never seems to end.
As solutions emerge, users become
more positive about the process and
the results.
System documentation is often absent or
incomplete because the primary focus is on
development of the prototype.
Prototyping enables early detection
of errors and omissions.
System backup and recovery, performance, and
security issues can be overlooked in the haste
to develop a prototype.
Rapid Application Development, Agile Development, Joint
Application Development, and Other Systems
Development Approaches
Rapid application development (RAD) employs tools, techniques, and methodologies de-
signed to speed application development. Vendors, such as Computer Associates Interna-
tional, IBM, and Oracle, market products targeting the RAD market. Rational Software, a
division of IBM, has a RAD tool, called Rational Rapid Developer, to make developing large
Java programs and applications easier and faster. Locus Systems, a program developer, used
a RAD tool called OptimalJ to generate more than 60 percent of the computer code for three
applications it developed. Royal Bank of Canada used OptimalJ to develop some customer-
based applications. According to David Hewick, group manager of application architecture
for the bank, “It was an opportunity to improve the development life cycle, reduce costs, and
bring consistency.” Advantage Gen, formerly known as COOL:Gen, is a RAD tool from
Computer Associates International. It can be used to rapidly generate computer code from
business models and specifications. 35
Other approaches to rapid development, such as agile development or extreme program-
ming ( XP ), allow the systems to change as they are being developed. Agile development
requires frequent face-to-face meetings with the systems developers and users as they modify,
refine, and test how the system meets users' needs and what its capabilities are. Microsoft,
for example, has adopted a more agile development process in its server development divi-
sion. 36 According to a Microsoft senior vice president, “We just realized that we're building
products for customers, not just for technology's sake. So the sooner we could engage with
our customers, the better we could make it from an architecture, feature, quality, and scala-
bility perspective.” BT Group, a large British telecommunications company, uses agile
systems development to substantially reduce development time and increase customer satis-
faction. 37 According to BT's managing director of service design, “BT's shift from traditional
waterfall development techniques to an agile approach has led to significant productivity and
business benefits, but it didn't happen overnight, nor was it easy for a company as massive
and widespread as BT.” Extreme programming (XP) uses pairs of programmers who work
together to design, test, and code parts of the systems they develop. 38 The iterative nature of
XP helps companies develop robust systems with fewer errors. Sabre Airline Solutions, a $2
billion computer company serving the airline travel industry, used XP to eliminate program-
ming errors and shorten program development times.
RAD makes extensive use of the joint application development (JAD) process for data
collection and requirements analysis. Originally developed by IBM Canada in the 1970s,
JAD involves group meetings in which users, stakeholders, and IS professionals work together
to analyze existing systems, propose possible solutions, and define the requirements of a new
or modified system. Today, JAD often uses group support systems (GSS) software to foster
positive group interactions, while suppressing negative group behavior. Boeing, for example,
used RAD and JAD to help develop software for its airplanes. 39 Group support systems were
introduced in Chapter 10.
rapid application development
(RAD)
A systems development approach
that employs tools, techniques, and
methodologies designed to speed
application development.
joint application development
(JAD)
A process for data collection and
requirements analysis in which
users, stakeholders, and IS
professionals work together to
analyze existing systems, propose
possible solutions, and define the
requirements of a new or modified
system.
 
 
Search WWH ::




Custom Search