Version 13 (modified by 17 years ago) ( diff ) | ,
---|
Team members with a brainstorming section on this page:
- Josh
- Russell
- José
- Elodie
Josh's Brainstorming
Why? There are many aspects in our lives that we need to deal with, scheduling classes and flights, room assignments at hospitals, scheduling domestic and international meetings and etc... Many softwares are provided for support, and yet, clarity in customer needs is a problem. As long as requirements are lucid, the cost of application and production will be held to a minimum.
What do we need?
- A scheduler, which deals with all scheduling information.
- Goal: is to reduce communication costs and time costs
- Database: which saves the information of all possible users available.
- Data included: calendar, physical rooms data, virtual room data, user information, user preferences (dates they can and can’t attend meetings), scheduled meetings,
- GUI, the interface that the user will interact with.
How everything works
All the requirements and specifics will be manually inputted by the client and sent to the server side. The server will then deal with all the scheduling information.
What the client needs to know:
- hardware requirements (i.e. explore 6.0, XP…)
- Information requirements (what information is needed to schedule a meeting)
- Our system is user-friend
- Please respond to the server messages of scheduled meeting ASAP
Client side
Register New user:
- Login to www.oursystem.com the system website
- Create user, by adding all data stated above
- Wait a few days for the registration to be authorized by us.
- Registration granted/denied
Reschedule/Schedule a meeting:
- Login to website
- Replan/Request for a meeting (must be requested 7 days before the actual meeting time)
- Identify the preferred date/time/location/monitoring user.
- Scheduled meeting status
- Granted (all set)
- pending (still scheduling)
- modification (modification of meeting data required)
- rejected (can’t schedule meeting)
Server side
(assuming all information is inputted and updated)
Assumptions
- Our server is secure, privacy is guaranteed, so I think we should run this under https???
- Our database information will not have any flaw.
- We assume that all users will respond ASAP (within 24 hours) to the meeting request
Technical issues
- Concurrency issues, this is an implementation part, so I think we can deal with this later on. (meeting requests and in-meeting communication)
Preprocess the information sent by the client (to rectify the information before the scheduler actually schedules the meeting)
- Receives the data from the client
- Checks if there are any conflicts in the information
- If there is, respond to the client for rectification, else, send information to the scheduler.
Meeting setups
- collects all the information being sent from the client
- identify all users that are requested to be involved in the meeting
- we run the programs to determine if the meeting can be scheduled (I propose that we use the priority algorithms in operating systems. (I believe the rest of the information is implementation issues, so I’m not stating anything about it as of right now)
- if meeting is not scheduled, send the unscheduled meeting results to the user, if needed for further assistance, repeat from step 1. Else, send out an invitation to all users about the scheduled meeting. We are assuming that they will follow their preferences as given in the database.
- We book the meeting when finalized.
The Database
Components
- Information for all users
- Preferences for meeting time
- Current location (real-time update?)
- Personal information
- Physical rooms available
- Virtual rooms available
- Scheduled meeting information (there might be cases where rescheduling is being requested even before the server responds to the client, so we need to have information about this)
This is it folks, feel free to critique.
Russell's Brainstorming
- Go to the office where the sign up sheet is located.
- Pick several dates and times for a meeting.
- Room size
- Teleconference availability
- Email meeting participants to see who is available when, based on chosen dates and times.
- If all participants available at same date and time, go to step 5, if not repeat from step 1.
- Go back to sign up sheet, if chosen time and date is still available, then sign up and go to step 6, else go to step 1.
- Email all participants the date, time and location of meeting.
- If not using email then visit/call each participant or send memo to tell each participant the date, time and location of meeting.
José's Brainstorming
Requirement-Prioritize meetings
- Continue from Russell's step 6-7 but with a added funtion.
- Create meeting with either low, medium, high priorty.
- Priority meanings:
- Low-Meeting is considered not urgent at all but required
- Medium-Meeting is consider semi-urgent and has higher precendence then Low prioirty meetings
- High-Meeting is consider of the highest urgency and has precedence over all others(such as Low and Medium)
- Note: Meetings encountered with the same priority have the same precedence
- Then meeting will be then set up according to date, time and location of meeting and then if all else fails and there is two meetings at the same date,time and location then this is where the meetings priority comes into play.
- Meeting priorty is checked with the other meeting(s) priority. If conflicting meeting has different has different priority then continue to step 5 and if the have the same continue to step 6.
- If created meeting has higher priorty then prompt user whether it is ok to overwrite current meeting or ask user whether to change the meeting date,time or location depending on the conflicting attribute.If meeting is overwrite then notify the participants of that meeting that the meeting has been changed due to a meeting of higher importance. If meeting being created is lower priority then inform user that meeting cannot be created.
- If the same then meeting will not be created.
- Email all participants the date, time and location of meeting.(Russell's step)
- If not using email then visit/call each participant or send memo to tell each participant the date, time and location of meeting.(Russell's step)
Constraints:
- Only allow certain number of users to have the ability to select meetings of high importance such as a CEO.
- Only allow overwriting of meeting(s) over a certain period of time:
- Low- Never since low priority meetings can't get precedence over any other priority including itself
- Medium- Created within 5 days or more before actual meeting is going to be held (Note only applicable to Low priority)
- High- Created within 1 or 2(Not sure yet) days or more before actual meeting is going to be held (Note only applicable to Medium and Low priorities)
Elodie's Brainstorming
- Login in case you're in the system. Otherwise create a username and password
- Reserve a date to schedule a meeting.
- Make sure that the meeting room, the time and all people that will attend the meeting are available
- if conflicts occur, extend the date range or have some participants remove/add some dates or withdraw from the meeting
- if conflicts do not occur, then reserve the room and pick the participants
- Specify the room requirements (telephone, projectors, etc.)
- Specify the objective of the meeting
- Contact participants
- Confirm your reservation
- Notify the participants
- Send Reminders