![Page 1: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/1.jpg)
From problems to a prototype
Bob-Antoine J. MENELAS, Ph.D.
![Page 2: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/2.jpg)
Objectives• Know the problem • Prototype the solution
![Page 3: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/3.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution
![Page 4: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/4.jpg)
Definitions Root Cause – Deepest underlying cause(s) of positive or negative
symptoms within any process that, if resolved, would eliminate or substantially reduce the symptom.
Root Cause Analysis (RCA) – a tool used both reactively, to investigate an adverse event that already has occurred, and proactively, to analyze and improve processes and systems before they break down (Preuss, 2003).
Data Analysis – the process of gathering, reviewing, and evaluating data.
Symptoms – the noticeable gap between expectations and reality; the “red flag” that draws attention to the issue.
4
![Page 5: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/5.jpg)
Root Cause Analysis (RCA)? • Helps identify the problem or challenge • Helps resolve the Problem • Eliminates Patching
• Conserves Resources • Facilitates Discussion (leading to solutions) • Provides Rationale for Strategy Selection
5
![Page 6: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/6.jpg)
The RCA process • The process of determining root cause was used most
notably in the business sector o Toyota, in particular, used the system for their production. o The process is being used in other sectors as well.
• We will see two ways to implement this approach.
6
![Page 7: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/7.jpg)
Determining the Root Cause What is the underlying cause(s) of symptoms, that if resolved, would
eliminate or reduce the symptom?
Two ways are possible : • The Five Whys. A process to seek root cause by asking “why” five
times in succession.
• System Planning Process. Problem solving approach asks 4 questions: Where are we now? Where are we going? How will we get there? What is holding us back?
7
![Page 8: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/8.jpg)
The Five Whys
8
Asking the question ‘Why’ 5 times, will lead you to the root cause of the problem.
Steps: 1. Write down the specific problem. Writing the problem helps team
focus on the same problem. 2. Ask why the problem happens and write down the answer. Repeat 5
times – 5 ‘Whys’, until team is in agreement that problem is identified.
See web resource:
http://www.isixsigma.com/index.php?option=com_k2&view=item&id=1308:&Itemid=49
![Page 9: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/9.jpg)
5 Whys: Example.
9
Why• Why did the user failed to log in?
• She typed the wrong password.
Why• Why she typed the wrong password?
• She forgot it.
Why• Why she forgot it?
• We have a constraint making passwords.
Why• Why she didn’t used the reset process?
• She tried but did not get the email before 30s.
Why• Why such a delay in the process?
• Because, we are using a third party plugin
![Page 10: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/10.jpg)
System Planning Process
10
� System Planning Process. Problem solving approach asks 4 questions: v Where are we now? v Where are we going? v How will we get there? v What is holding us back?
![Page 11: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/11.jpg)
Problem Solving Approach
11
• What are the facts (current data)?• What worked well? What can be improved?
Where are we now?
• What do we want to achieve (goal)?• What is the expected outcome?
Where are we going?
• What steps must we take to ensure we reach the outcome?
• Who are the key members of team (teachers, staff, administrators)?
How will we get there?
• Is there support for improvement planning and implementation?
• What roadblocks must we overcome in order to reach the expected outcome?
What is holding us back?
![Page 12: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/12.jpg)
� Agreement on a root cause. � Cause is logical, makes sense, and
provides clarity to the problem. � Cause is something you can influence
and control � If cause is resolved, there is realistic
hope that the problem can be reduced or prevented in the future.
12
Indicators that you have found Root Cause
![Page 13: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/13.jpg)
Practice• Apply the root cause analysis to understand why
you do not have better grades
![Page 14: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/14.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 15: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/15.jpg)
The Task-Centered Design Process • figure out who's going
to use the system to do what
• Create personas • choose representative
tasks for task-centered design
• rough out a design • think about it • create a mock-up or
prototype
• test it with users• iterate• build it• track it• change it
![Page 16: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/16.jpg)
What is a prototype?
In other design fields a prototype is a small-scale model:
a miniature car a miniature building or town
![Page 17: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/17.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 18: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/18.jpg)
What is a prototype? In interaction design it can be (among other things):
a series of screen sketches a storyboard, i.e. a cartoon-like series of scenes a Powerpoint slide show a video simulating the use of a system a lump of wood (e.g. iphone) a cardboard mock-up a piece of software with limited functionality written in the target language or in another language
![Page 19: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/19.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 20: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/20.jpg)
Why prototype? • Evaluation and feedback are central to interaction design • Stakeholders can see, hold, interact with a prototype more easily than a document or a drawing • Team members can communicate effectively • You can test out ideas for yourself • It encourages reflection: very important aspect of design • Prototypes answer questions, and support designers in choosing between alternatives
![Page 21: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/21.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 22: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/22.jpg)
Prototyping benefits• Misunderstandings between software users and
developers are exposed • Missing services may be detected and confusing
services may be identified • A working system is available early in the process • The prototype may serve as a basis for deriving a
system specification • The system can support user training and system
testing
![Page 23: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/23.jpg)
Prototyping benefits• Improved system usability • Closer match to the system needed • Improved design quality • Improved maintainability • Reduced overall development effort
![Page 24: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/24.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 25: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/25.jpg)
Prototyping objectives• The objective of evolutionary prototyping is to
deliver a working system to end-users. The development starts with those requirements which are best understood.
• The objective of throw-away prototyping is to validate or derive the system requirements. The prototyping process starts with those requirements which are poorly understood
![Page 26: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/26.jpg)
Prototyping in the software process
• Evolutionary prototyping o An approach to system development where an
initial prototype is produced and refined through a number of stages to the final system
• Throw-away prototyping o A prototype which is usually a practical
implementation of the system is produced to help discover requirements problems and then discarded. The system is then developed using some other development process
![Page 27: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/27.jpg)
Approaches to prototyping
Evolutionaryprototyping
Throw-awayPrototyping
Deliveredsystem
Executable Prototype +System Specification
OutlineRequirements
![Page 28: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/28.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 29: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/29.jpg)
Prototyping process
Establishprototypeobjectives
Defineprototypefunctionality
Developprototype
Evaluateprototype
Prototypingplan
Outlinedefinition
Executableprototype
Evaluationreport
![Page 30: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/30.jpg)
What to prototype?
• Technical issues
• Work flow, task design
• Screen layouts and information display
• Difficult, controversial, critical areas
![Page 31: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/31.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 32: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/32.jpg)
Low-fidelity Prototyping
• Uses a medium (support) which is unlike the final medium, e.g. paper, cardboard
• Is quick, cheap and easily changed • You focus on the content
• Examples: sketches of screens, task sequences, etc ‘Post-it’ notes storyboards ‘Wizard-of-Oz’
![Page 33: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/33.jpg)
![Page 34: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/34.jpg)
![Page 35: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/35.jpg)
Sketching
• Sketching is important to low-fidelity prototyping
• Don’t be inhibited about drawing ability. Practice simple symbols
![Page 36: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/36.jpg)
Storyboards (User journey)
• Often used with scenarios, bringing more detail, and a chance to role play
• It is a series of sketches showing how a user might progress through a task using the device
• Used early in design
![Page 37: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/37.jpg)
• Index cards (3 X 5 inches)
• Each card represents one screen
• Often used in website development
Using index cards
![Page 38: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/38.jpg)
‘Wizard-of-Oz’ prototyping • The user thinks they are interacting with a computer, but a developer is responding to output rather than the system. • Usually done early in design to understand users’ expectations • What is ‘wrong’ with this approach?
>Blurb blurb >Do this >Why?
User
![Page 39: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/39.jpg)
High-fidelity prototyping • Uses materials that you would expect to be in the final product.
• Prototype looks more like the final system than a low-fidelity version.
• Danger that users think they have a full system…….see compromises
![Page 40: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/40.jpg)
Compromises in prototyping • All prototypes involve compromises • For software-based prototyping maybe there is a slow response? sketchy icons? limited functionality? • Two common types of compromise
• ‘horizontal’: provide a wide range of functions, but with little detail • ‘vertical’: provide a lot of detail for only a few functions
• Compromises in prototypes mustn’t be ignored. Product needs engineering
![Page 41: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/41.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 42: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/42.jpg)
Evolutionary prototyping• Must be used for systems where the specification
cannot be developed in advance e.g. o AI systems and user interface systems
• Based on techniques which allow rapid system iterations
• Verification is impossible as there is no specification. Validation means demonstrating the adequacy of the system
![Page 43: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/43.jpg)
Evolutionary prototyping
Build prototypesystem
Develop abstractspecification
Use prototypesystem
Deliversystem
Systemadequate?
YES
N
![Page 44: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/44.jpg)
Evolutionary prototyping advantages• Accelerated delivery of the system
o Rapid delivery and deployment are sometimes more important than functionality or long-term software maintainability
• User engagement with the system o Not only is the system more likely to meet user
requirements, they are more likely to commit to the use of the system
![Page 45: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/45.jpg)
Evolutionary prototyping• Specification, design and implementation are inter-
twined • The system is developed as a series of increments
that are delivered to the customer • Techniques for rapid system development are used
such as Agile • User interfaces are usually developed using a GUI
development toolkit
![Page 46: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/46.jpg)
Evolutionary prototyping problems• Management problems
o Existing management processes assume a waterfall model of development
o Specialist skills are required which may not be available in all development teams
• Maintenance problems o Continual change tends to corrupt system
structure so long-term maintenance is expensive • Contractual problems
![Page 47: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/47.jpg)
Prototypes as specifications
• Some parts of the requirements (e.g. safety-critical functions) may be impossible to prototype and so don’t appear in the specification
• An implementation has no legal standing as a contract
• Non-functional requirements cannot be adequately tested in a system prototype
![Page 48: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/48.jpg)
Incremental development• System is developed and delivered in increments
after establishing an overall architecture • Requirements and specifications for each
increment may be developed • Users may experiment with delivered increments
while others are being developed. therefore, these serve as a form of prototype system
• Intended to combine some of the advantages of prototyping but with a more manageable process and better system structure
![Page 49: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/49.jpg)
Incremental development process
Validateincrement
Build systemincrement
Specify systemincrement
Design systemarchitecture
Define systemdeliverables
Systemcomplete?
Integrateincrement
Validatesystem
Deliver finalsystem
YES
NO
![Page 50: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/50.jpg)
Outline• The Root Cause Analysis approach
o The approach o Implementations
• Prototype the solution • What is a prototype? • Why prototype? • Prototyping benefits • Prototyping objectives • Prototyping process • What to prototype • Different kinds of prototyping
low fidelity high fidelity
• Evolutionary prototype • Throw away prototype
![Page 51: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/51.jpg)
Throw-away prototyping• Used to reduce requirements risk • The prototype is developed from an initial
specification, delivered for experiment then discarded
• The throw-away prototype should NOT be considered as a final system o Some system characteristics may have been left out o There is no specification for long-term maintenance o The system will be poorly structured and difficult to
maintain
![Page 52: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/52.jpg)
Throw-away prototypingOutline
requirementsDevelopprototype
Evaluateprototype
Specifysystem
Developsoftware
Validatesystem
Deliveredsoftwaresystem
Reusablecomponents
![Page 53: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/53.jpg)
Prototype delivery• Developers may be pressurised to deliver a throw-
away prototype as a final system • This is not recommended
o It may be impossible to tune the prototype to meet non-functional requirements
o The prototype is inevitably undocumented o The system structure will be degraded through
changes made during development o Normal organisational quality standards may not
have been applied
![Page 54: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/54.jpg)
Rapid prototyping techniques
• Various techniques may be used for rapid development o Dynamic high-level language development o Database programming o Component and application assembly
• These are not exclusive techniques - they are often used together
• Visual programming is an inherent part of most prototype development systems
![Page 55: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/55.jpg)
User interface prototyping• It is impossible to pre-specify the look and feel of a
user interface in an effective way. prototyping is essential
• UI development consumes an increasing part of overall system development costs
• User interface generators may be used to ‘draw’ the interface and simulate its functionality with components associated with interface entities
• Web interfaces may be prototyped using a web site editor
![Page 56: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/56.jpg)
Key points• 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
![Page 57: From problems to a prototype - UQAC€¦ · Evolutionary prototyping advantages • Accelerated delivery of the system o Rapid delivery and deployment are sometimes more important](https://reader034.vdocuments.site/reader034/viewer/2022042320/5f0a33f07e708231d42a8251/html5/thumbnails/57.jpg)
Conclusion• Regarding high fidelity prototypes
o We need for information about designing UI and UX