Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
Chapter 6Rapid Prototyping Methodology for Systems Design
page 1Copyright 2005, Merrill Warkentin
Prototyping Methodology
Professor Merrill WarkentinMississippi State University
© Copyright, Merrill Warkentin, 20042
Major Topics
prototyping concepts
types of prototypes (approaches)
prototyping and the SDLC
prototype development guidelines
prototype evaluation
rapid application development (RAD)
© Copyright, Merrill Warkentin, 20043
Today’s Topics
four approaches
development
advantages
disadvantages
users’ role
© Copyright, Merrill Warkentin, 20044
Prototyping
information-gathering techniqueuseful in seeking user reactions
user suggestionsinnovationsrevision plans
alternative to SDLC
© Copyright, Merrill Warkentin, 20045
Kinds of Information Sought
user reactionsuser suggestionspossible innovationsrevision plansnext steps
© Copyright, Merrill Warkentin, 20046
System Prototypes
alternative to pre-specification
typically faster than traditional SDLC
“quick and dirty” system
best suited for user uncertainty
first look leads to exact specification
iterative, incremental approach
Chapter 6Rapid Prototyping Methodology for Systems Design
page 2Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 20047
Prototyping Process
quickly develop working modelget users’ feedback and inputcan be tweaked and revised
incremental iterations, user involvementshortens systems development backlogcan increase risk of incompatibility and other unforeseen mishaps
© Copyright, Merrill Warkentin, 20048
Prototyping
© Copyright, Merrill Warkentin, 20049
Prototyping
Figure 15.13 When to prototype and when not to prototype
© Copyright, Merrill Warkentin, 200410
Prototyping Categories
“throw-away prototypes” (discovery prototypes)using rapid prototyping tools or VB or othersget initial feedback from user(s)then switch to actual development language
“version 0 prototypes” (reusable prototypes)get initial feedback from user(s)iterate (incrementally add new features)then get more feedback and revise again
© Copyright, Merrill Warkentin, 200411
Four Approaches
patched-upworking model of the systeminefficient
non-operationalnon working scale modeltest certainaspects ofdesign
first-of-a-seriesfirst full-scale modelpilot
selected featuresoperational modelIncludes certain features
© Copyright, Merrill Warkentin, 200412
Formal vs. Informal Prototyping
Informal Prototypingusually from user walk-throughpen and paper sketches/drawings/diagramsinput or output “mock-ups” (not working)
Formal Prototyping - electronicusing programming languages (VB, etc.)using 4GL tools for rapid app developmentusing CASE tools
Chapter 6Rapid Prototyping Methodology for Systems Design
page 3Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200413
Patched-up Prototype
working model with all the features
users can interact with the system
data storage & retrieval inefficient
workable but inefficient
may contain onlybasic features
© Copyright, Merrill Warkentin, 200414
Nonoperational Scale Models
not operational,except for certain featuresto be tested
prototype input andoutput
© Copyright, Merrill Warkentin, 200415
First Full-Scale Models
create a pilot systemoperation modeluseful when many installationsof the same IS are plannedexample: a system to be installed in one location, tested and modified as necessary, and later implemented in other locations
© Copyright, Merrill Warkentin, 200416
Selected Features Prototype
operational model that includes some, not all, final system featuresexcept these features, later essential features are addedsome menu items are availablesystem built in modulespart of the actual system
© Copyright, Merrill Warkentin, 200417
Alternative to SDLC?
Should prototyping be consideredas an alternative to the systems development life cycle (SDLC)
© Copyright, Merrill Warkentin, 200418
Complaints about SDLC
time requirements / costmany lengthy steps in life cycle
user requirements change
prototyping alternative?
Chapter 6Rapid Prototyping Methodology for Systems Design
page 4Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200419
Risk of prototyping over SDLC
premature shaping of system
lack of formal requirements analysisoverlook important features
system adequate forinvolved users butnot for overall needs
© Copyright, Merrill Warkentin, 200420
Integration
best bet is to integrate prototypinginto SDLC life cycle
© Copyright, Merrill Warkentin, 200421
Suitability of prototypeLess Suitable for
PrototypingMore Suitable for
Prototyping
Similar Design Experience few times beforemany times before
Environment uncertaincertain
Decision Making unstructuredstructured
© Copyright, Merrill Warkentin, 200422
Development Guidelines
work in manageable modules
build the prototype rapidly
modify in successive iterations
stress the user interface
© Copyright, Merrill Warkentin, 200423
Prototyping Advantages
saves moneygreater user involvement
designed for users needshelps train users early
early testing of performancesystem can be changed early
in its developmenteasy to scrapundesirable system
© Copyright, Merrill Warkentin, 200424
Prototyping Disadvantages
discourages careful documentation
adopting an incomplete system as complete
difficult to manage the project (rapid, iterative)
requires feedback
Chapter 6Rapid Prototyping Methodology for Systems Design
page 5Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200425
Practice Question - THINK
Prototyping is more appropriate when:
a. the environment is stable.b. the problem is semistructured.c. the problem is structured.d. the system is complex.
© Copyright, Merrill Warkentin, 200426
Users’ Role in Prototyping
honest involvement vital
types of involvementexperimentation with prototypeopen reactionsadditions/deletions suggestions
© Copyright, Merrill Warkentin, 200427
Rapid Application Development
also known as RAD
object-oriented approach tosystems development
includes method of development
includes software tools
© Copyright, Merrill Warkentin, 200428
RAD Phases
requirements planning
RAD design workshop
implementation
© Copyright, Merrill Warkentin, 200429
Requirements Planning Phase
users and analysts meet to identify objectives of the application or system
oriented toward solving business problems
© Copyright, Merrill Warkentin, 200430
RAD Design Workshop
design and refine phaseuse group decision support systemsto help users agree on designsprogrammers and analysts can build and show visual representations of thedesigns and workflow to usersusers respond to actual working prototypesanalysts refine designed modulesbased on user responses
Chapter 6Rapid Prototyping Methodology for Systems Design
page 6Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200431
Implementation Phase
as the systems are built and refined, the new systems or partial systems are tested and introduced to the organization
when creating new systems, there is no need to run old systems in parallel
© Copyright, Merrill Warkentin, 200432
RAD and the SDLC
RAD tools are used to generate screens and exhibit the overall flow of the application
users approve the design and sign offon the visual model
implementation is less stressful sinceusers helped to design the business aspects of the system
© Copyright, Merrill Warkentin, 200433
When to Use RAD
team includes programmers and analysts who are experienced with RAD
pressing reasons for speeding upapplication development
project involves a novel ecommerce application and needs quick results
users are sophisticated and highlyengaged with company goals
© Copyright, Merrill Warkentin, 200434
Disadvantages of RAD
may try and hurry the project too much
loosely documented
may not address pressingbusiness problems
potentially steep learning curve for programmers inexperienced with RAD tools
© Copyright, Merrill Warkentin, 200435
Extreme Programming (XP)
takes good systems development practices to the extreme four values of extreme programming are:
communicationsimplicityfeedbackcourage
© Copyright, Merrill Warkentin, 200436
Five XP Principles
providing rapid feedback
assuming simplicity
changing incrementally
embracing change
encouraging quality work
Chapter 6Rapid Prototyping Methodology for Systems Design
page 7Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200437
Five XP Principles
© Copyright, Merrill Warkentin, 200438
Four Basic Activities of XP
coding
testing
listening, to the programming partner and customer
designing
© Copyright, Merrill Warkentin, 200439
Four XP Resource Control Variables
time
cost
scope
quality
© Copyright, Merrill Warkentin, 200440
Four XP Core Practices
short releases, work with the most important features first
having a 40-hour work week
having an onsite customer
pair programming with another programmer
© Copyright, Merrill Warkentin, 200441
XP Relationships
© Copyright, Merrill Warkentin, 200442
XP Development Process
exploration
planning
iterations to the first release
productionizing
maintenance
Chapter 6Rapid Prototyping Methodology for Systems Design
page 8Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200443
XP Stories
XP stories are a spoken interaction between developers and users
not written communication
the goal is prevention of misunderstanding or misinterpretations of user requirements
© Copyright, Merrill Warkentin, 200444
XP Lessons
The six lessons that can be drawn from the XP development approach are:
short releases allow the system to evolve
pair programming enhances overall quality
onsite customers are mutually beneficial to the business and the XP team
© Copyright, Merrill Warkentin, 200445
XP Lessons
The six lessons that can be drawn from the XP development approach (continued)
the 40-hour work week improves worker effectiveness
balanced resources and activities support project goals
XP values are crucial to success
© Copyright, Merrill Warkentin, 200446
XP Lessons
© Copyright, Merrill Warkentin, 200447
Agile Modeling
similar to XP
in addition to the values of communication, simplicity feedback and courage, has a fifth value of humility
© Copyright, Merrill Warkentin, 200448
Agile Modeling (Continued)
listen to user stories
draw a logical workflow model
create new user stories based on the workflow
develop some prototypes
use feedback from the prototypes and logical workflow to create physical model
Chapter 6Rapid Prototyping Methodology for Systems Design
page 9Copyright 2005, Merrill Warkentin
© Copyright, Merrill Warkentin, 200449
Scrum
an Agile approach that has an emphasis on teamwork
team success is of primary importance
individual success is secondary
the team works within a strict time frame
the project leader has some but not much influence on detail
© Copyright, Merrill Warkentin, 200450
Summary
four approachesdevelopmentadvantagesdisadvantagesusers’ roleRADXPAgile
Copyright NoticeThis document may not, in whole or part,
be copied, photocopied, reproduced, translated, transmitted,
or reduced to any electronic medium or machine readable form without explicit permission and written authorization
from Dr. Merrill Warkentin.
MISProfessor.com