0% found this document useful (0 votes)
39 views26 pages

Pro To Typing

The document discusses the concept of prototyping in human-computer interaction, outlining its definition, importance, types, and methodologies. It highlights the advantages and disadvantages of prototyping, including user feedback and the potential for scope creep. Additionally, it emphasizes the role of prototyping in system development, particularly for user interfaces, and the risks associated with it.

Uploaded by

coachld2805
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views26 pages

Pro To Typing

The document discusses the concept of prototyping in human-computer interaction, outlining its definition, importance, types, and methodologies. It highlights the advantages and disadvantages of prototyping, including user feedback and the potential for scope creep. Additionally, it emphasizes the role of prototyping in system development, particularly for user interfaces, and the risks associated with it.

Uploaded by

coachld2805
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Prototyping

Human Computer Interaction


Loida F. Hermosura, CoE; MSIT
Agenda for discussion

⚫Define Prototyping
⚫Need/Importance for prototyping
⚫Types of prototypes
⚫Prototyping as methodology
⚫User interface prototyping
⚫Advantages and disadvantages of prototyping
⚫Lessons learnt
Prototyping Defined
Prototyping is the process of quickly putting together a working
model (a prototype) in order to test various aspects of a design,
illustrate ideas or features and gather early user feedback.-
Wikipedia

IEEE defines prototyping as “ A type of development in which


emphasis is placed on developing prototypes early in the
development process to permit early feedback and analysis in
support of the development process.”
Need for prototyping
⚫ Enables us to explore the problem space with the
stakeholders.
⚫ As a requirements artifact to initially envision the system.
⚫ As a design artifact that enables us to explore the solution
space of your system.
⚫ A vehicle for you to communicate the possible UI
design(s) of your system.
⚫ A potential foundation from which to continue
developing the system
Advantages & Disadvantages of Prototyping
Advantages Disadvantages

Users can try the system and provide Each iteration builds on the previous iteration
constructive feedback during development and further refines the solution. This makes it
difficult to reject the initial solution as
inappropriate and start over.

An operational prototype can be produced in Formal end-of-phase reviews do not occur. Thus,
weeks its is very difficult to contain the scope of the
prototype.
Users become more positive about implementing System documentation is often absent or
the system as they see a solution emerging that incomplete, since the primary focus is on
will meet their needs development of the prototype.

Prototyping enables early detection of errors System backup and recovery, performance, and
security issues can be overlooked.

Reference: [Link]
Journey of the Prototyping process

Functionality Evaluate

Goals
Develop
Types of prototyping

⚫Throw-away Prototyping
⚫Evolutionary Prototyping
⚫Low Fidelity Prototyping
⚫High Fidelity Prototyping
Throw Away Prototype
⚫ Throw Away Prototype is developed from the initial requirements but
is not used for the final project.

⚫ Written specifications of the requirements

⚫ Some developers believe that this type is a waste of time because you
don’t use it.

⚫ Regardless if prototype is discarded or kept for production, you must


use a easy to use language.
Advantages & Disadvantages
Advantages Disadvantages

Significantly reduce project risk The prototype actually does


nothing, its just presentational.

Has a short project timeline Only for a limited purpose

Starting become a thing of the


past. Not getting used as much
now.
Evolutionary Prototype
⚫ Evolutionary prototyping is consider the most fundamental form of
prototyping.

⚫ Evolutionary prototyping main concept is to build a robust prototype


and constantly improve it.

⚫ Objective to deliver a working system to the end user.

⚫ According to Steve McConnell, "evolutionary delivery is a lifecycle


model that straddles the ground between evolutionary prototyping
and staged delivery."
Evolutionary Delivery

Rapid Development, Taming Wild Software Schedules, by Steven McConnell, Press 1996
Evolutionary Prototyping phases
Advantages
⚫ You are always looking for new ways to improve the
system.
⚫ This model increases the chance of having the client
satisfied with the working system.
⚫ The model can be used even when the requirements are
not defined.
⚫ Quicker delivery of the system
Disadvantages
⚫ This method can be used to avoid documenting the requirements of
the system.

⚫ Management is required

⚫ Long term maintenance can be expensive

⚫ Uncertain design idea’s

⚫ Information can be lost through so many improvement changes


Low-fidelity Prototyping
⮚ Low-fidelity prototyping is generally limited function, limited
interaction prototyping effort.

⮚ They are constructed to depict concepts, design alternatives and


screen layouts. They are intended to demonstrate general look and
feel of the interface.

⮚ They are created to educate , communicate and inform, but not to


train, test or serve as a basis for which to code.

⮚ Low fidelity prototyping is used early in the design cycle to show


general conceptual approaches without much investment in
development.

Low vs. High Fidelity Prototyping Debate, Rudd J., Stern K.,Isensee S., ACM Interactions, Jan. 1996
High-Fidelity Prototyping
⚫ High-fidelity prototypes represent the core functionality of the products
user interface.

⚫ High fidelity prototypes are fully interactive systems. Users can enter
data in entry fields, respond to messages, select icon to open windows
and interact with user interface as if it were a real system.

⚫ They trade-off speed for accuracy.

⚫ Building high fidelity prototypes consume resources and have high cost.

Low vs. High Fidelity Prototyping Debate, Rudd J., Stern K.,Isensee S., ACM Interactions, Jan. 1996
Comparison of two prototyping
efforts

Low vs. High Fidelity Prototyping Debate, Rudd J., Stern K.,Isensee S., ACM Interactions, Jan. 1996
Prototyping-based Methodology

An Introduction to Rapid System Prototyping, Fabrice Kordon and Luqi, IEEE Transactions on Software Engineering, Vol.28, No.9, Sep 2002
Prototyping as methodology for
systems development
❖ A preliminary design of the system is built using throw-away prototyping.

❖ Demonstrations to end users, as well as investigations on this prototype,


allows for the design of more precise requirements as well as the evaluation of
techniques to be used in the final system.

❖ Refinements on throw-away prototype concerning the requirements are


done.

❖ Evolutionary prototyping used to build a model prototype (an accurate and


complete description of the system). These prototypes can be studied under
various simulated conditions.

❖ Refinement on model prototype, concerning the actual system, is done and


final system is rolled out after testing.
An Introduction to Rapid System Prototyping, Fabrice Kordon and Luqi, IEEE Transactions on Software Engineering, Vol.28, No.9, Sep 2002
User Interface Prototyping
Development of highly interactive software system
with graphical user interfaces (GUI) has become
increasingly common and acceptance of such a
system depends highly on the quality of GUI.

Prototyping is an excellent means of generating ideas


about how the GUI can be designed and it helps to
evaluate quality of solution at an early stage.
Classification of user interface prototypes
⚫Presentation Prototypes
⚫Functional Prototypes
⚫Breadboards
⚫Pilot Systems
Risks in Prototyping
▪ Client may believe that system is real.
⮚ Unrealistic expectations of the progress

▪ Implementers make poor choice


⮚ Justified in prototype but not in real system
⮚ Tempting to build real system same way

▪ Prototype is not identical to the real system


⮚ Users may interact differently due to different response
characteristics
⮚ Must interpret prototype experience with care
Do we need prototyping??
Two “points of interest” for companies to adopt prototyping based methodologies
are:

⚫ Point 1: They allow us to reduce the cost and time-to-market of a system.

⚫ Point 2: For companies building critical systems, prototyping would help them
perform formal verification when required. These methodologies provide high
level of reliability in the system design and implementation.
Key Learning

⚫A prototype can be used to give end-users a concrete


impression of the system’s capabilities
⚫Prototyping is becoming increasingly used for system
development where rapid development is essential
⚫Throw-away prototyping is used to understand the
system requirements
⚫In evolutionary prototyping, the system is developed
by evolving an initial version to the final version
Key Points
⚫Rapid development of prototypes is essential. This
may require leaving out functionality or relaxing non-
functional constraints
⚫Prototyping techniques include the use of very high-
level languages, database programming and prototype
construction from reusable components
⚫Prototyping is essential for parts of the system such as
the user interface which cannot be effectively pre-
specified. Users must be involved in prototype
evaluation
Bibliography
⚫ Baumer, B. (1996). User Interface prototyping- Concepts,
Tools, and Experience. Proceedings of ICSE , 18, 532-541.
⚫ Hoffer, J. J. (2007). Modern Systems Analysis and Design.
Reading,MA: Prentice Hall Publishing Company.
⚫ Luqui, V. Berzins (1988).Rapidly prototyping Real-Time
[Link] Software, September 1998, 25-36.
⚫ SoftDevTeam. (2006). Evoutionary Prototyping Model.
Retrieved 04 12, 2008, from [Link]
⚫ Sommerville, I. (2000). Software Engineering. Pearson
publications.

You might also like