Upload
rafe-lynch
View
218
Download
3
Embed Size (px)
Citation preview
CS6361 Project, Part 1Fall 2006
The Design Firm ofBouchier, Fischer, Herschbach, & Nina
Agenda
Vision & ScopeRequirements ProcessUse CasesRequirements Dependency AnalysisExample Requirements TracingUI DesignNext Steps
Team Roles
Paul Bouchier: System World repJon Fischer: User World repShaun Herschbach: Domain repChris Nina: Developer rep
Vision & Scope
A web-based tool that eases meeting scheduling activities between participants who have previously entered their availability data
Usability goal: effort for each user to maintain availability is substantially less than effort to schedule meetings without this system
System is self-contained – no external calendar, email or other interfaces
Process
Incremental lifecycleEach increment goes through phases:
Visioning based on customer requirementsElicitation with “World” representativesUse case analysisUI designRequirements specificationValidation (with class)Software design
Use Case Analysis
Goal: Understand the functional aspects of the enterprise requirements in order to understand the stated requirements (the “why”)
1st Iteration: analyzed 2 use cases1. Respond to meeting invitations
2. Create meeting invitation
Respond to meeting invitation
Most common use case described by fully-dressed use case description:
User goal: respond to meeting notification by accepting or denying an invitation (if one has been sent) and potentially to update their preference and/or exclusion-set
1. System shows outstanding invitations + calendar
2. User accepts/declines outstanding invitations
3. System shows calendar & allows modifying exclusion/prefs
4. User updates exclusion/prefs. System returns to step 3
Preliminary Semiformal Definition
Enterprise RequirementsInitiator
Active Participants
Important Participants
Equipment Location
Preference
Potential Attendees
Date RangeExclusion Set Inclusion Set
Date ConflictMeeting DateMeeting Location
Meeting Room
Conflict Resolution
? ?
NonFunctional Requirement
Functional Requirement
B
A Depends on B
Legend
A
Minimal Interaction
Performed Quickly
Preliminary Semiformal Definition
Functional RequirementsIniator
ParticipantsMeeting Request
Bounds on Replanning Resolution
Policies
Meeting Replanning
Meeting Location
Meeting Date
Conflict Resolution
Client?Meeting
Monitoring?
Changing User
Constraints
Participant Constraints
Functional Requirement
A B
Legend
A Depends on B
Preliminary Semiformal Definition
Non-Functional Requirements
Initiate a Meeting
Respond to an Invitation
Meeting Calculation
Decentralized
Minimal Interaction
Reduced Overhead
User Friendly
Customizable
Flexible to changing Data
Quick Communication to
Participants
Minimal Time to determine Meeting
Info
Convenient Meetings
Lower Bound on time between calculation and meeting date
Extensible?
Meeting Monitoring
Accurate
Dynamic Replanning
Flexible Replanning
Physical Constraints Not
Broken
Appropriate Level of Performance
Privacy
NonFunctional Requirement
Functional Requirement
Use Case A B
A Depends on B
Legend
Issues - Preliminary Requirements
Conflicts and ResolutionsAdmin FunctionalityDistributionInteraction and Interfacing
Scheduler Home
My Schedule
My Preferences
Next Steps
Analyze requirements for inconsistencies & resolve. Update requirements database.
References
Alistair Cockburn – Writing effective use cases
Summer project: pk-wp-iw.ppt