Object Design Review

Overview
Maintenance Scenarios
Maintenance Object Model
STARS Subsystem Decomposition
Maintenance API
Services Maintenance provides
Services Maintenance expects from other subsystems
Status
Timeline
Open Issues

Maintenance Subsystem Scenarios
Initialize
Perform Inspection
Report Discrepancy

Scenario - Report Discrepancy
Inspector Joe finds rust spots on the right wing of the airplane during a 14-day periodic rust inspection and reports it.
pushButton()
Joe is presented with a screen on which he can enter the sticky information. He presses a ‘Done’ button when he is finished.
enterStickyInfo()

Report Discrepancy (cont)
After the sticky information has been entered, a set of crosshairs will be displayed for Joe to identify the location of the sticky.
putSticky()
getStickyPosition()
A new sticky will be instantiated and submitted to the database.
submitDocument()

Report Discrepancy Sequence Diagram

Maintenance Object Model

STARS Subsystem Decomposition

API - Services provided by Maintenance
Sticky pickSticky()
void attachSticky(Sticky s)
functions to get and set the Workorder and Sticky attributes (void setStatus(int status) )
Javadoc: http://www.contrib.andrew.cmu.edu/~wortham/SE/index.html

API - Services needed by Maintenance
Database Client:
int submitDocument(Document data)
Document retrieveDocument(int docID, boolean forReading)
int updateDocument(int docID, Document data)

API - Services needed by Maintenance (cont.)
User Interface:
int addUI(UI newui, int frame)
Position getPosition()

API - Services needed by Inspection (cont.)
Modeling:
void addSticky(Position stickylocation, ID stickyID)
void removeAllStickies()
void highlightSticky(ID stickyID)
WebManual API

Status of Maintenance Subsystem
Requirements Analysis is done
System design is done
Object design is done
Working on implementation
Figuring out how to use the WebManual IETM viewer

Timeline

Open Issues
How much memory do we need for the Maintenance subsystem?
What is the API for the WebManual IETM viewer?