A.Team Software (.DMS) Dynamic Meeting Scheduler Vision Document Aaron Turrie - 10451675 - at.nelret@gmail.com Eric Meyer - 10829232 - eric.meyer@utdallas.edu Mario Medina - 2010809959 - mariomedina.se@gmail.com Jordan Savant - 10493282 - jjs074000@utdallas.edu Tyler Smith - 10460113 - tyler@tyler-smith.net Tim Caswell 11124414 - creationix@gmail.com David Granado - davidjgranado@gmail.com http://dms.jordansavant.com Vision Document for: Professor Lawrence Chung CS 4351.001 Phase 2
Table of Contents 1. Introduction 3 1.1 Purpose 3 1.2 Scope 3 1.3 Definitions, Acronyms, and Abbreviations 1.4 References 3 4 1.5 Overview 4 2. Positioning 4 2.1 Business Opportunity 4 2.2 Problem Statement 4 2.3 Product Position Statement 5 3. Stakeholder and User Descriptions 5 3.1 Market Demographics 5 3.2 Stakeholder Summary 5 3.3 User Summary 6 3.4 User Environment 6 3.5 Key Stakeholder or User Needs 6 3.6 Alternatives and Competition 6 4. Product Overview 6 4.1 Product Perspective 6 4.2 Summary of Capabilities 6 4.3 Assumptions and Dependencies 7 4.4 Cost and Pricing 7 4.5 Licensing and Installation 7 5. Product Features 7 5.1 <afeature> 7 5.2 <anotherfeature> 7 6. Constraints 8 7. Quality Ranges 8 8. Precedence and Priority 8 9. Other Product Requirements 9 9.1 Applicable Standards 9 9.2 System Requirements 9 9.3 Performance Requirements 9 9.4 Environmental Requirements 10 10. Documentation Requirements 10 10.1 User Manual 10 10.2 Online Help 10 2
1. Introduction Vision 1.1 Purpose The purpose of this document is to analyze and define the features of the Dynamic Meeting Scheduler. It is focused on the needs of those who use the application. The details on how the application fulfills the needs of the users are outlined in use-case and supplementary specifications. 1.2 Scope This document has been written to describe what the Dynamic Meeting Scheduler is and the process to its creation. This application is a solution for scheduling meetings. It will be able to take in user input, such as their preferences for the meeting, and help solve any conflict that might arise. The domain of the application is the company or place of implementation where the place has multiple meeting areas, both formally and informally defined by the users, and importance values for users and meeting types. The Dynamic Meeting Scheduler does not limit the usage of the system to companies or organizations, but is applicable to private use as well. 1.3 Definitions, Acronyms, and Abbreviations Date Range Proposed range of dates given by meeting initiator to potential meeting attendees for a particular meeting..dms Dynamic Meeting Scheduler, a meeting scheduling system which this document is focused on. Exclusion Set Range of dates and locations specified by every user that they are unable to attend any meeting. Important Participants for whom location and equipment details matter. As well, Participants this user has higher values preference set score. Invited Participant Person who has been invited to a meeting but has not provided a response to the meeting. Location Place where the meeting is held. Monitor User type that can validate user attendance, and meeting duration. Participant Person who has been invited and has responded to initiation by providing an exclusion and/or preference set. Preference Set Set of most liked dates and locations specified by meeting potential participants. Proposed Date Date proposed for a meeting. Re-planning When a meeting's date, time, or location have to be changed after it has already been set. Strong Date No date can be found within the date range and outside all exclusion sets. Conflict Weak Date Conflict Dates are found in the date range and outside all exclusion sets, but not at the intersection of all preference sets. 3
1.4 References Web Reference Prof. Lawrence Chung IEEE Standard 830-1998 URL http://utdallas.edu/~chung/cs4351/syllabus.htm http://standards.ieee.org/reading/ieee/std_public/description/se /830-1998_desc.html 1.5 Overview This document will discuss business opportunity through the Positioning section, describe different types of users and stakeholders, gives an overall product overview, list product features and various other areas of product description. 2. Positioning 2.1 Business Opportunity Meetings are an essential part of running a successful business. The process of scheduling these meetings can be quite complicated as organizing a meeting with many participants can lead to many conflicts with time, date, the place of the meeting, and the desires of the invitees. This application is a solution to this scheduling problem and will be usable in any company, regardless of magnitude, to make scheduling a meeting automated and managed by a centralized software system. 2.2 Problem Statement The problem of: Affects: The impact of which is: A successful solution is: Scheduling meetings. Employees and guests at a workplace. Plan the best meeting time and place with the least amount of conflict. A web-based application that can be used by the any invited user to input their best time and location for a meeting. The application would be able to support any conflict that should arise with the date and location. 4
2.3 Product Position Statement For: Organizations or individuals Who: The (product name): That: Unlike: Our product: Would like to automate the meeting scheduling process Dynamic Meeting Scheduler Automates meeting scheduling and notifies all invitees of the meeting Personal scheduling programs and calendars, i.e. Outlook, Google Calendar Supports user input and conflict resolution. Participants of a meeting can come up with the best possible date, time, and place for the meeting to take place. 3. Stakeholder and User Descriptions 3.1 Market Demographics The target market for.dms is a large one. Since.DMS includes options for online meetings with notetaking and video conferencing capabilities, it need not be restricted to single-site groups. The goal is to eventually make.dms available to companies and other groups of any size around the world by including multiple languages. 3.2 Stakeholder Summary NanoSoft, Inc. Project Manager- Agent of NanoSoft Inc. who requested the the assistance of a consulting firm to analyze a list of provided non-functional, functional, and domain requirements and to create a detailed project description and prototype. A Team Project Team- Requirements engineering consulting firm. System Administrator- Sets the initial configuration of.dms and makes changes as they are needed. The system administrators are also charged with creating user accounts and setting their privileges, as well as entering meeting room names and addresses in the system. Meeting Initiator- Creates meetings and determines who will be invited to the meeting, the importance level of the invitees, the date frame of the meeting, and possible locations for the meeting. Meeting Invitee- A potential meeting participant. Important Invitee- A potential meeting participant whose input on location and time are weighed more heavily than others. NanoSoft Development Team- Software team who will develop the system. 5
3.3 User Summary Name Description Responsibilities Stakeholder Meeting Initiator Meeting Invitee Administrator People who create meetings. People invited to a meeting. People who manage the system and user accounts. Plan meetings and input meeting information, invitee information, potential locations, and potential times into the system. Reply to meetings with preferred dates, excluded dates, and possibly preferred locations for the meeting. Attend the meeting and possibly provide equipment. Create accounts and set their privileges and input locations into the system. Self Self Self 3.4 User Environment Users of.dms can access it using any computer, phone, or other electronic device with web access. For software requirements see section 9.2. 3.5 Key Stakeholder or User Needs See functional and non-functional requirements in the SRS document. 3.6 Alternatives and Competition Competition includes but is not limited to: Microsoft Outlook, Google Calendar, and Lotus Notes. 4. Product Overview 4.1 Product Perspective This meeting scheduler system is an internet-based application that is run on centralized servers. With access available from any internet capable device, the system is easily accessible and convenient for the users. 4.2 Summary of Capabilities Accessibility - The system is internet based and can be accessed from any internetenabled device. Flexibility - The system takes every meeting participants availability into account and provides the most convenient meeting time for all participants as a whole. 6
Secure - The system requires users to log in with a username and password to access their account and will only show them meetings that they are either initiators or participants of. Convenience - The system provides a central source for all participants to share information and requests prior to, during, and after the meeting. 4.3 Assumptions and Dependencies If a company does not have reliable internet access, the system may be set up on a server on the company's local network instead of being hosted by a third-party service. 4.4 Cost and Pricing TBD 4.5 Licensing and Installation A company must purchase a license for each copy of the system that is requested and set up. The system has no installation requirements for client software needed to operate with the system. The system is set up on a server with internet access and is accessed via an internet browser already installed on the internet-enabled device. 5. Product Features 5.1 Secure login A DMS user logs in to the system through a web portal with a valid username and password. 5.2 Create a Meeting The meeting initiator creates a meeting and specifies all required fields (e.g. date range, location, attendees, monitors, comments, etc.) before submitting the meeting to be scheduled by the system. A notification will be sent to each participant that they have a message or invitation waiting for them. 5.3 Change Meeting Location The meeting initiator will be able to change the meeting location if the meeting can not be scheduled due to location conflicts. A notification will be sent to all participants. 5.4 Change Meeting Date Range The meeting initiator will be able to change the date range if there is a conflict. A notification will be sent to all participants. 5.5 Respond to Meeting Invitation All meeting participants will respond through the web application and provide the time frames they prefer and are unable to make. Important participants will acknowledge the location and any equipment details needed. 5.6 Change Meeting Preference and Exclusion Dates A user will be able to change their preference and exclusion dates they originally sent for the meeting invitation. 5.7 Cancel a Meeting The meeting initiator will be able cancel a meeting if needed. A notification will be sent to all participants that the meeting has been cancelled. 7
5.8 Record Meeting Minutes The participant specified as the monitor for the meeting will record the meeting minutes in a text field for the meeting page for all participants to review. 5.9 Verify Attendence The participant specified as the monitor for the meeting will record the attendence of all meeting participants. 5.10 View Notifications After a participant has been sent a notification that a message is waiting for them, they can view and delete each message in the notifications page. 5.11 Manage Users The admin of the system will be able to add/remove users and perform administration duties as required. 5.12 Manage Locations The admin will be able to add/remove locations available for the meetings to be scheduled. 5.13 Manage Meeting Importance The admin will handle the importance weighting of a specific type/level of meeting. 5.14 Set Default Exclusion Set The admin can set a default exclusion set for meetings with respect to system maintenance. 6. Constraints The domain constraints for the DMS application include: Internet connected computers, web browsing software installed on computers, username and password access granted by an application administrator, and networking router configured to allow the video teleconferencing. 7. Quality Ranges The application will be expected to stay active and available at any time given that the above constraints are met and system maintenance does not occur. Being a centralized application on a server, only the server system needs to be functioning in order for users to have access to the application. Times for maintenance will occur during hours of least activity. 8. Precedence and Priority The following features will have highest priority: Meeting Creation Meeting Calendar Interface Meeting Interface for Participants and Monitors Exclusion and Preference Set Interface Notification Inbox and Messages Administration Interface for System Settings 8
The following will have lower precedence: Edit Meeting Preferences for Participants and Creator User Settings Text Message and Email Notification Video Teleconferencing Monitor Interface Online Help 9. Other Product Requirements 9.1 Applicable Standards TBD 9.2 System Requirements Operating Systems: Windows 2000, XP, Vista, 7 Mac OSX Linux Supported Browsers: Microsoft Internet Explorer Mozilla Firefox Opera Google Chrome Safari Recommended Hardware: TBD 9.3 Performance Requirements Performance will be measured in two forms: server-side processing time, and the system s accessibility for a user to operate the DMS functions. The server-side processing time will vary depending upon the operations the DMS is performing. Meeting creation and scheduling will be the most taxing for system processing and therefore will be the benchmark for system s worst case processing time. For such an operation, the processing time will depend upon the number of exclusions and preferences versus important meetings that must be scheduled in accordance with. As well, the date range of the meeting will determine the quantity of comparisons that must be made for each possible meeting time. For each comparison of exclusion times, the system will take no longer than.1 seconds to process. System accessibility will depend upon the DMS interface and user feedback regarding its ease of use. Advanced browser and server-supported tools will be utilized to accommodate a fluid interface, and reduction of unnecessary code will decrease page-loading times. Tools will only be implemented if they do not expand beyond the constraints defined above. 9
9.4 Environmental Requirements The DMS application must be accessed through the Internet. Mobile devices supporting Internet connectivity can access the DMS, but the device s browser may limit application operations. A mobile DMS version will not be developed for DMS productivity across all mobile devices. 10. Documentation Requirements 10.1 User Manual A user manual will be supplied with the system. It will outline the different application interfaces. This allows for explanation of step-by-step methods for completing DMS operations, defines usage for the interface tools, and provides a visual example for the user to follow. 10.2 Online Help The online version of the user manual will be accessible in the application. This information will be provided for the system in a pop-up window so as not to disturb the current user s application state and to be referenced simultaneously with the application usage. 10