570 likes | 836 Views
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.
E N D
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
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
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
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 • 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
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?
MY Virtual Graffiti System • CAVE Environment • Graffiti using VR technologies • 2 sensor gloves (pinch gloves) sensors
Space Orb 360º (6 degree of freedom) Stereo glasses Tracking system Dummy spray can with sensor MY Virtual Graffiti System
Use cases – scenarios of usage Analysis model – subsystems of the end product Object-Oriented Model
System Requirements Specification • Hardware requirements • Software requirements • Functionality description • Non-functional requirements • Interface specification • Design constraints • System validation and verification criteria
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
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
Denote the size of the nozzle Denote the color of the nozzle 3D icon that appears while spraying S
System Development • Programming • Example of Challenges • Format incompatibility • Incorrect hit points Correct Ray Bounding Plane A box
Single ray Multiple rays Number of 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 • 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 • Half a dozen subjects
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