Requirements Analysis Review Modeling Team Matt Weyant 26 Oct 1999
Goals Create model of airplane and its components Develop API for virtually navigating the airplane model Provide API for graphically manipulating “Stickies” Build a web-based navigation tool
What is this model? CAD-generated 3D model Data structure is a component tree
View of Model (rendered)
Functional Requirements Provide navigation methods for navigation through a 3D model of an airplane and its components Provide location information in a 3D coordinate system for the airplane and its components Map locations (x,y,z) to specific parts of the airplane and back
Functional Requirements, cont… Locate Stickies associated with components or the whole airplane Provide a GUI and manipulation methods for Stickies in a Sticky database owned by Workflow
Nonfunctional Requirements User interface and human factors Documentation Hardware considerations Performance characteristics Error handling and extreme conditions System interface Quality issues
Nonfunctional Requirements, cont... System modifications Physical environment Security issues Resources issues
User Interface and Human Factors Web-based user interface –Built on API’s –Intuitive –Restricted access Access rights –Web users will have “read” access to database –View/navigate through existing data
Documentation Describe features and operation of Web- based navigation tool –Help pages –Demos Javadoc of implementation Extensive additional docs available to other subsystems
Hardware Considerations Large storage space Lots of memory Graphics acceleration not available Web availability on remote machine
Performance Characteristics Real time requests –AR –Authoring Non-real time requests –Workflow Java3D
Error Handling and Extreme Conditions Error Handling –Method calls between subsystems –Dialogue with Web user –Examples Extreme Conditions –Multiple uses on same CPU –Memory shortage
System Interface Augmented Reality Maintenance/Workflow Authoring
Augmented Reality System Interface AR’s event-based model –AR publishes a Vector event with a reference to an empty frame –Modeling fills the frame and returns it API holds methods for rotating, translating and scaling that view Web-UI will use AR’s event- and UI-model
Maintenance/Workflow System Interface Modeling provides API for Sticky manipulation –Place –Remove –Review –Modify Must interface with Sticky database owned by Workflow
Authoring System Interface Same methods provided to Authoring as AR Generate IETMs using these methods
Quality Issues System overload Another system unavailable Accurate output for given input Platform-independent
System Modifications Extending system for some other weapons system Abstract Factory pattern means minimal changes
Physical Environment Never comes in contact with physical surroundings
Security Issues Shared memory –Each subsystem must limit access Data encryption to prevent “eavesdropping”
Resources Issues No permanent Workflow data Navigation information must be stored
Constraints Platform-independence Speed of Java Together/J
System Model Scenarios Use case models Object models Dynamic models Navigational paths and screen mockup
Scenarios System Model Inspection Repair Browser
Use Case Models System Model
NavigateComponent Use Case Use Case Models NavigateComponent –Actors: Authoring, AR, RemoteUser –Entry: Actor wants to view/manipulate model –Flow of Events 1. Request entry of system if not already in 2. Call method to use for model manipulation 3. Exit system if done –Exit: Actor is done manipulating model –Special Requirements: Is system on local machine? Speed?
Object Models System Model
Dynamic Models System Model
Navigational Text System Model NavigateComponent Sequence Diagram –Actor initializes display of the model; a wireframe is returned. –Actor could draw components of the model; a new wireframe is returned. –Actor could rotate and zoom model/components; a new wireframe is returned.
Screen Mockup System Model
Questions?