Title: Prototyping
1Prototyping
- Keng Siau
- Department of Management
- University of Nebraska-Lincoln
2Obstacles in Systems Analysis and Design
- Users do not know what they want
- unfamiliar with information technology
- unfamiliar with the objectives of the projects
- Users keep changing their minds
- Analyst-User communication
- different background and training
- SDLC takes a long time
3Prototyping
- A technique for quickly gathering specific
information about users information requirements - Useful in seeking
- user reactions
- suggestions
- innovations
- revision plans
4Types of Prototypes
- Patched-up prototype
- Nonoperational prototype
- First-of-a-series prototype
- Selected features prototype
5Patched-Up Prototype
- Constructing a system that works but is patched
up or patched together - Problems
- programs are written rapidly with the objective
of being workable - Has the necessary features but is inefficient
- retrieval and storage of information may be
inefficient
6Nonoperational Prototype
- A nonworking scale model for the purposes of
testing certain aspects of the design - Example
- prototyping the input and output of the system
only - Problem
- it is a nonworking model
7First-of-a-Series Prototype
- Creating a first full-scale model of a system
- known as a pilot
- installing the system in a branch to work through
the problems before full-scale installation - Problem
- compared to other prototyping approaches, this
approach is quite costly and time-consuming
8Selected Features Prototype
- Building an operational model that includes some,
but not all, of the features that the final
system will have - Prototypes are part of the actual system
- System is built in modules
9Guidelines for Prototyping
- Work in manageable modules
- Build the prototype rapidly
- Modify the prototype in successive iterations
- Stress the user interface
10Prototyping-- An Alternative to SDLC
- Advantages
- shortens the time between information
requirements phase and delivery of a workable
system - overcome some problems of accurately identifying
users information requirements - users can see what is possible and what is not
11Prototyping-- An Alternative to SDLC
- Disadvantages
- prematurely shaping a system
- producing a system inadequate for overall
organizational needs
12Prototyping-- An Alternative to SDLC
- Remedy
- use prototyping as a part of SDLC
- use prototyping to get users information
requirements
13Systems Suitable for Prototyping
- Design Experience
- only a few times
- Environment
- uncertain and unstable
- Decision Making
- unstructured or semi-structured
14Advantages of Prototyping
- Change the system early in its development
- Scrap undesirable systems
- Design a system for users needs and expectations
15Disadvantages of Prototyping
- Manage the project
- danger of overtaking other phases in SDLC
- Adopt an incomplete system as complete
- Documentation might be incomplete
16Users Role in Prototyping
- Experiment with the prototype
- Give open reactions to the prototype
- Suggest changes to the prototype
17Rapid Application Development (RAD)
- RAD, or rapid application development, is an
approach to systems development that includes a
method of development as well as software tools
18RAD Phases
- The three broad phases to RAD are
- Requirements planning
- RAD design workshop
- Implementation
19Requirements Planning Phase
- Users and analysts meet to identify objectives of
the application or system - Oriented toward solving business problems
20RAD Design Workshop
- Design and refine phase
- Use group decision support systems to help users
agree on designs - Programmers and analysts can build and show
visual representations of the designs and
workflow to users - Users respond to actual working prototypes
- Analysts refine designed modules based on user
responses
21Implementation 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
22Martin Approach to RAD
23RAD and the SDLC
- RAD tools are used to generate screens and
exhibit the overall flow of the application - Users approve the design and sign off on the
visual model - Implementation is less stressful because users
helped to design the business aspects of the
system
24When to Use RAD
- RAD is used when
- The team includes programmers and analysts who
are experienced with it - There are pressing reasons for speeding up
application development - The project involves a novel ecommerce
application and needs quick results - Users are sophisticated and highly engaged with
the goals of the company
25Disadvantages of RAD
- May try and hurry the project too much
- Loosely documented
26Agile Modeling
- Agile modeling is similar to XP
- In addition to the values of communication,
simplicity, feedback and courage, a fifth value,
humility, is added - Agile modelers do not insist that they are always
right
27Agile Modeling (Continued)
- Agile modeling process is
- 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