Upload
richard-hutchison
View
215
Download
0
Tags:
Embed Size (px)
Citation preview
Synergy Distributed Synergy Distributed Meeting Meeting
Scheduler(SDMS)Scheduler(SDMS)TEAM:4TEAM:4
Rutvij MehtaRutvij Mehta
Shruti MehtaShruti Mehta
Shveta MupparapuShveta Mupparapu
Meghna Swetha Raguraman Meghna Swetha Raguraman Rakesh SanapalaRakesh Sanapala
Venkata Jaganadh Sandeep SistlaVenkata Jaganadh Sandeep Sistla
Sabareesan Soundarapandian Sabareesan Soundarapandian
Instructor: Dr. Lawrence Chung
AgendaAgenda• Introduction• Why? -Enterprise Requirements• What? -System Functional Requirements• How? -System Non-Functional Requirements• Prototype• Next step
Introduction to RE Introduction to RE Process Process
ROLES
Understandproblem
Establishoutline
requirements
Selectprototyping
system
Developprototype
Evaluateprototype
ACTIONS
Req. engineerDomain expert
End-user
Req. engineerEnd-user
Softwareengineer
Project manager
Req. engineerSoftwareengineer
End-userDomain expertReq. engineer
Software engineer
for prototypingfor prototyping [Kotonya&Sommerville98]
StakeholdersStakeholders• End users• Participants in meetings• Meeting schedulers/initiators• Project management teams• Requirement engineers• Test Engineers• Developers Network support group• Potential customers who will use the
system
Team RolesTeam RolesTeam member Role FunctionSabareesan Soundarapandian
Shveta Mupparapu
User World:End-UserMeeting ParticipantProject ManagerMeeting Initiator
Describe functions from the enterprise perspective.Describe constraints from the enterprise perspective.Describe user interface.Make project plan.
Shruti Mehta
Subject World:Domain ExpertCustomer
Describe functions from the enterprise and system perspectiveDescribe constraints from the enterprise and system perspectiveDescribe the market position of the system
Sandeep Sistla
Rakesh Sanapala
System World:Requirements EngineerSoftware Engineer
Specify requirements and dependency graphsValidate requirements with customers and users, talk about open issues and improve understanding
Rutvij Mehta
Meghna Swetha Raguraman
Developer World:Product ManagerDeveloper
Review Product Development Process.Build prototype
Why?Why?Problems• Interactions Complex multiple interactions leads to
conflicts.
• Time consuming Initiator has to perform many activities: -To invite the participants. -To resolve conflicts.
• Traveling costs Participants from different locations.
Why?Why?Solutions• Personalize – Give your Availability Share your available and busy time with others, vastly
simplifying the meeting scheduling process.
• Resource Utilization & Management Reserve conference rooms, Audio/Video equipment or
other shared resources for your meeting. • Simplified Scheduling Just plan the available dates and the system takes care of
the priorities and schedules the meeting along with the necessary reminders.
Dependency Diagram:Dependency Diagram:
Initial Understanding of Enterprise Requirements Initial Understanding of Enterprise Requirements DependencyDependency
*As many preference sets as possible
*Earliest Possible DateInitiator
Active participants
Meeting participants Date Range Proposed Date
Important participants
Date Conflict
Meeting Place
Virtual Meeting Place
Equipment
Flexibility
Conflict resolution
Preference Set
Exclusion Set
WeakDate
Conflict
StrongDate
Conflict
Meeting Place conflict
*Fast Conflict Resolution*Minimal Negotiation
Modify Exclusion orPreference Set
Conflict resolution Re-propose Meeting
Some Participants Withdraw
Extend Date RangeInitiator
Meeting participants
*Maximum Preference by important participants* Room Availability
What?What?• System - Functional Requirements• Monitor Meetings • Plan Meeting
- Scheduling - location ,date • Re-plan Meeting
- Rescheduling –date , location - Cancel
• Conflict Resolution- Client Resolution Policy
What?What?
• Manage Interactions- Communicate Requests - Replies- Informing and Awareness
Dependency Diagram:Dependency Diagram:
Initial Understanding of System Functional Req.Initial Understanding of System Functional Req.
Plan Parallel MeetingMeeting Request2 Meeting Request3
Manage InteractionsRe-plan Meeting
Changing User Constraints
New Date and Location
Inform & Create Awareness
Communicate requests
Get Replies
SDMS
Conflict resolution
Resolution Policies
Client
Monitor Meeting
Cancel Meeting
Modify Exclusion Set
Modify Preference Set
Modify Preferred location
External Constraint changes
Meeting Request1
How?How?• System Non-Functional Requirements• Performance -Quick Meeting Proposal• Efficiency - Fast Conflict Resolution, Minimal
Negotiations• Flexibility – Virtual Meeting • Uniqueness – Participants ,Locations ,
Resources• Reliability – Trustable Communication• Concurrency – Parallel Meetings• Accuracy – Virtual Meeting Monitoring
How ? How ? • Dependability – Manage Varying Participant
data • Security – Login• Dynamic – Replanning Meeting• Reduce Overhead – Distributed Meeting• Convenience - Meeting Date and Location• Privacy - Participant constraints kept secret
Dependency Diagram: Dependency Diagram: Initial Understanding of System Initial Understanding of System Non-Functional RequirementsNon-Functional Requirements
Plan Parallel MeetingMeeting Request2
Meeting Request1
Meeting Request3
Manage InteractionsRe-plan Meeting
Changing User Constraints
New Date and Location
Inform & Create Awareness
Communicate requests
Get Replies
SDMS
Conflict resolution
Resolution Policies
Client
Monitor Meeting
Cancel Meeting
Modify Exclusion Set
Modify Preference Set
Modify Preferred location
External Constraint changes
Customizability
*Minimal Interaction*User friendliness
*Availability * Convenient and as early as possible
Dynamically and with as much flexibility as possible
Monitor Accurately
Privacy
*Usable by Non-experts*Private/Professional Meeting
*Physical constraints should not be broken
*Flexible *Extensible
IssuesIssues - Enterprise Requirements - Enterprise Requirements
• Ambiguous
1. “A meeting date shall be defined perhaps by a pair (calendar date, time period).”
Issue: The word ‘perhaps’ adds to the ambiguity.
Solution: Remove the word perhaps“A meeting date shall be defined by a pair (Calendar date and time period)
Issues - Issues - Enterprise RequirementsEnterprise Requirements
• Incomplete
1. Issue: The meaning of the terms ‘potential attendances’, ‘active participants’, ‘important participants’ is not specified.
Solution: The meeting initiator specifies the role for each of the participants (potential, active and important) for the meeting.
Issues - Issues - Enterprise RequirementsEnterprise Requirements • Inconsistent / Redundancy
1. “It is absolutely necessary, however, to allow each meeting to take place in a virtual place, e.g., through teleconferencing using laptop computers.”
Issue: The word ‘absolutely necessary’ is problematic
Solution: Remove the word ‘absolutely’
“It is necessary to allow each meeting to take place in a virtual place, e.g., through teleconferencing using laptop computers.”
Issues - Issues - Software System Functional Software System Functional RequirementsRequirements
• Ambiguous
1. ”To make them confident about the {\it reliability} of the communications.”
Issue: How to make them confident about the reliability?
Solution: The System will have to send timely and accurate updates about the change in schedule of meeting.
Issues - Issues - Software System Functional Software System Functional RequirementsRequirements
• Incomplete
1. “In all cases some bound on re-planning should be set up.”Issue: The requirement doesn’t specify the bounds on re-planning the meeting
Solution: Define a limit of number of times a meeting can be re-planned.
Issues - Issues - Software System Software System Functional RequirementsFunctional Requirements
• Inconsistent/ Redundancy
1. “to make participants aware of what's going on during the planning process;” and “to keep participants informed about schedules and their changes;”
Issue: Redundant statements
Solution: Maintain only 1 statementKeep participants informed about schedule and any changes in their schedules.
IssuesIssues - Software System Non-Functional - Software System Non-Functional RequirementsRequirements
• 1. Ambiguous
Issue: The meaning of “Monitor Meeting” is not clear
Solution: Decide who will monitor all the meetings. Clarify what the word ‘Monitor’ implies in this context.
Issue: Re-planning of meeting “dynamically” and with “flexibility” is not clear.
Solution: Throw more light into how the words ‘dynamically’ and ‘flexibility’ imply in the above issue.
• 2. Incomplete
Issue: Nomadicity has no definition.Solution: Get more information from stakeholders
Dependency Diagram: Dependency Diagram:
Improved Understanding of Enterprise Req.Improved Understanding of Enterprise Req.
*As many preference sets as possible
*Earliest Possible DateInitiator
Active participants
Meeting participants Date Range Proposed Date
Important participants
Date Conflict
Meeting Place
Virtual Meeting Place
Equipment
Flexibility
Conflict resolution
Preference Set
Exclusion Set
WeakDate
Conflict
StrongDate
Conflict
Non Privileged Meeting
participants
Meeting Place conflict
*Fast Conflict Resolution*Minimal Negotiation
*Maximum Preference by important participants
* Room Availability
Conflict resolution Re-propose Meeting
Some Participants Withdraw
Extend Date RangeInitiator
Non-privilegedparticipants
Modify Exclusion orPreference Set
Important participantsActive participants
Dependency Diagram:Dependency Diagram:
Improved Understanding of Improved Understanding of System System
RequirementsRequirements
Plan Parallel Meeting Meeting Request 1
Manage Interactions
Re-plan Meeting
Changing User Constraints
New Date and Location
Inform & Create Awareness
Communicate requests
Get Replies
SDMSConflict resolution
Resolution Policies
Client
Monitor Meeting
Cancel MeetingModify Exclusion Set
Modify Preference Set
Modify Preferred location
Customizability
*Minimal Interaction*User friendliness
*Availability * Convenient and as early as possible
Dynamically and with as much flexibility as possible
Monitor Accurately
Privacy
Performance, Reduce amt of Overhead
Accommodate de-centralized requests
Meeting Request n
External Constraint changes
Demo Mock UpDemo Mock Up
Demo Mock UpDemo Mock Up
Demo Mock UpDemo Mock Up