PowerPoint Presentation - System Development Life Cycle

Developing a VR
System
Mei Yii Lim
System Development Life
Cycle - Spiral Model
•
•
•
•
•
•
•
Problem definition
Preliminary study
System Analysis and Design
System Development
System Testing
System Evaluation
Refinement
Case Study: MY Virtual
Graffiti System
Introduction
• ‘graffiti’ - Greek word ‘graphein’
• Modern graffiti - New York, tagging using
water resistant marker
• Today - using aerosol spray
• Rude, humorous, political or constituting
vandalism and are generally illegal
Problem Objectives
• What do you aim to achieve?
–
–
–
–
–
–
Solution to the problem of illegality
Preserves and documents art works
Virtual spray on virtual buildings
Flexibility and natural interaction
Realistic reproduction of the spray
User-friendly and intuitive interface
CAVE
Problem Definition
Problem Definition
• Define the problem you are trying to solve
• What are the major issues?
Project Benefits
• What are the benefits of the project?
• Why is it so important?
– Expression of opinions, creativity lawfully
– Coping with society’s problems
– London councils - £13m and graffiti committee
- £100m spent annually on cleaning up graffiti
– New type of art, uncover hidden talent
Project Management
• Project scheduling
– Divides work into smaller chunks - Gantt Chart
• Risk Analysis
– Degree of uncertainty or potential problems
– Eg. lack of knowledge , inappropriate or
difficult to use interaction devices, simulation
algorithm, underestimation of time
Project Management
continued…
• Risk Planning
– Best way for project with users as target involve them
– Trial and error
– Project schedule must be realistic
Preliminary Study
Literature Review
•
•
•
•
Find out the state-of-the-art
Who has done what
What can be improve
What should be avoided
Literature Review of
MYVG
• Eschler & Stricker 03 (Fraunhofer IGD)
– projection filled totally by a 2D wall
• Dave Pape - ‘Vandalism’
– alter existing artworks, 3D paintings and
sculptures
• Lang
– Virtual Graffiti Painter and Light bombing
• MobSpray (mobile application)
– http://www.mobspray.com/indexphp
System Analysis
System Analysis
• Understand the requirements of the
system you are going to develop
• Determine ‘what’ is to be accomplished
• To ensure successful system development
• Human Computer Interaction concepts
Rapid Iterative
Prototyping
• Offers the best approach for system
which accurate requirements can not be
defined at its early stage
• Prototype – a mechanism for identifying
the actual requirements
• Iterative and corrective cycle
Rapid Prototyping
Development Cycle
Requirements Elicitation
• Fact-gathering – active manipulation of
conditions or passive observation of people
–
–
–
–
–
Researching and reviewing existing documents
Individual interviews
Mailing list
Observation – demonstration from experts
Questionaires - evaluation
Analysis with
Justification
• Every choice must be justified
• Why a particular device or methodology is
chosen and not the others?
Analysis Result of the
MYVG system
MY Virtual Graffiti
System
• CAVE Environment
• Graffiti using VR technologies
– 2 sensor gloves (pinch gloves)
sensors
MY Virtual Graffiti
System
– Space Orb 360º
(6 degree of freedom)
– Stereo glasses
– Tracking system
– Dummy spray can with
sensor
Object-Oriented Model
• Use cases – scenarios
of usage
• Analysis model –
subsystems of the end
product
System Requirements
Specification
•
•
•
•
•
•
•
Hardware requirements
Software requirements
Functionality description
Non-functional requirements
Interface specification
Design constraints
System validation and verification criteria
System Design
System Design
• How to accomplish the proposed
functionality?
• How are all the VR devices linked
together?
• Representation of the system
Architectural Design
• UML class diagrams - shows all available
classes
Architectural Design …
• Object-relationship model – static model,
reflects the object classes and their
relationship
Architectural Design …
• State diagram – dynamic model
• Describes the behavior of the system,
events
Architectural Design …
• Sequence diagram – illustrate each
significant interaction between objects
Algorithm Design
• Pseudocode – description of the program
• Example – a method to create scene
METHOD createScene char*(filename) returns pfScene*
Generate scene state
Add lighting
Set traversal mask
Load file
RETURN scene
END
Scenegraph
User Interface Design
• A useful system with a poor user interface
= non-functional system
• HCI golden rules
–
–
–
–
Know the user population
Reduce cognitive load
Engineer for errors
Maintain consistency and clarity
WELCOME TO VIRTUAL GRAFFITI !
SPRAY MODE
BUTTON A / LEFT PINKIE
CLEAR
BUTTON B
SAVE
BUTTON C / LEFT MIDDLE
NAVIGATE
BUTTON D, PS / RIGHT INDEX
RESET
BUTTON E
EXIT
BUTTON F
CLOSE MENU
RIGHT PINKIE
SPRAYING MODE
SPRAYING
RIGHT MIDDLE
COLOUR
LEFT MIDDLE
NOZZLE
LEFT RING
MAIN MENU
LEFT PINKIE
NAVIGATE
RIGHT INDEX
CLEAR
RIGHT RING / BUTTON B
CLOSE MENU
RIGHT PINKIE
3D icon that appears
while spraying
• Denote the size of
the nozzle
• Denote the color
of the nozzle
System Development
and Testing
System Development
• Programming
• Example of Challenges
– Format incompatibility
– Incorrect hit points
Correct Ray
Plane A
Bounding
box
Number of rays
• Single ray
• Multiple rays
System Testing
• Tedious but essential for quality
assurance
• Formal technical review
• Unit testing
• Integration testing
Risk Monitoring
• Throughout the whole life cycle to
ensure that everything is under
control
• Users’ opinions were checked
• Project progress was monitored
System Implementation
and Evaluation
System Implementation
• Putting the system into operation
• Prototyping approach – implementation is
parallel with the development and testing
phases
System Evaluation
• Acquire feedback for eventual
improvement
• Formative evaluation – usability evaluation
• Can be repetitive
• Each evaluation process serves as guide
for changes in subsequent iterations
Example – Initial
Evaluation
Bar Chart Representing Result of Initial Evaluation
7.00
• Half a dozen
subjects
6.00
Engagement to
environment
Interaction
devices
Menus
5.00
Commands
Spraying action
Rating
4.00
Navigation
Spray paint
simulation
Speed of
adjustment
Real-time
response
Comfortable
interaction
Resemblance
to real graffiti
3.00
2.00
1.00
0.00
Evaluation Attributes
Refinement
• Menu shift and simplification
• User manual was provided
• More flexible interaction – Space Orb or
pinch gloves
• Dummy spray can
• Allow deactivation of menu
• Bigger paint particles for wider coverage
Evlauation Attributes
Resemblance to real graffiti
Comfortable interaction
Real-time response
Speed of adjustment
Spray paint simulation
Navigation
Spraying action
User manual
Commands
Menus
Interaction devices
Engagement to environment
Rating
Comparison Between Initial Evaluation Result and
Final Evaluation Result
7.00
6.00
5.00
4.00
Initial
Evaluation
3.00
Final
Evaluatian
2.00
1.00
0.00
Final System
Evaluation
• Twenty subjects
Conclusion and Future
Work
Achievements
•
•
•
•
On schedule
Improvement of skills
Expansion of knowledge
Chance to experiment with VR devices
Lessons Learned and
Experiences
• Every development cycle should account
for unexpected events
– Eg. Tools unavailability, lack of knowledge,
system failure, power failure
Future Enhancements
• Wireless and pressure sensitive devices
• More attractive and user-friendly menu –
entails more extensive user involvement
• Collision detection and sound feedback
The System in Action
Further information
• http://www.macs.hw.ac.uk/~myl/MSC
_DISSERTATION.htm