= Functional and Non-Functional Requirements = (We will need to combine our brainstorming information in a clear and concise way into these functional and non-functional lists below)[[BR]] (We need to refine the list below as well as the requirements we add from our brainstorming)[[BR]] (We need to think of everything - we won't have to implement all of it)[[BR]] == Functional Requirements == (NOTE: Functional Requirements will begin with FR#:, these will need to be refined, broken down, and more added.) * The SDMS system shall allow the creation of system administrators * The SDMS system shall allow the modification of system administrators * The SDMS system shall allow the deletion of system administrators * The SDMS system shall allow system administrators to login into the system * The SDMS system shall allow the creation of meeting initiators * The SDMS system shall allow the modification of meeting initiators * The SDMS system shall allow the deletion of meeting initiators * The SDMS system shall allow meeting initiators to login into the system * The SDMS system shall allow the creation of meeting participants * The SDMS system shall allow the modification of meeting participants * The SDMS system shall allow the deletion of meeting participants * The SDMS system shall allow meeting participants to login into the system * The SDMS system shall allow the scheduling, monitoring and administration of meeting to be accomplished regardless of the initiator's location. * remote initiators * The SDMS system shall allow the initiator to email all selected meeting participants once the meeting is scheduled * The SDMS system shall search the database of selected meeting participants for the best suitable time, date, location and room for the meeting * The SDMS system shall alert the initiator of the inability to find a suitable time, date, location and room to accomodate his/her meeting and give suggestions * The SDMS system shall allow system administrators to be meeting initiators * The SDMS system shall allow meeting initiators to be system administrators * The SDMS system shall allow meeting initiators to be meeting participants * The SDMS system shall allow meeting participants to be meeting initiators * The SDMS system shall allow system administrators to set criteria on the number of failed attempts to login * The SDMS system shall allow the creation of client(initiator) criteria....(need to break down) * The SDMS system shall maintain user information security. * un-authorized user shall not be allowed into the system * authorized users shall not be allowed to access other user's information * The SDMS system shall maintain a user date exclusion set, those dates each user cannot attend a meeting. * adding of dates to the exclusion set * removal of dates from the exclusion set * modificcation of dates in the exclusion set * The SDMS system shall maintain a user date preference set, those dated each user prefers to attend a meeting. * adding of dates to the preference set * removal of dates from the preference set * modification of dates in the preference set * The SDMS system shall allow monitoring of the system. * The SDMS system shall plan meetings under the constraints expressed by participants (see domain theory). * The SDMS system shall allow replanning of meetings in support of changing user constraints * modification of exclusion set * modification of preference set * modification of preferred location before a meeting date/location is proposed * take into account constrainsts after a meeting date/location has been proposed * The SDMS shall allow the setting of bounds n replanning * The SDMS system shall allow client specified conflict resolution * according to policies entered by client(s) * The SDMS system shall allow the management of all interactions among participants required during the organization of the meeting: * to communicate requests * to get replies even from participants not reacting promptly * to support the negotiation and conflict resolution processes * to make participants aware of what's going on during the planning process * to keep participants informed about schedules and their changes * to make them confident about the reliability of the communications * The SDMS system shall allow cancelling the meeting * The SDMS system shall allow managing the info of all users such as passwords, email address and so forth * The SDMS system shall do handle the necessary house cleaning once meetings are over * make end marks * store meeting info or delete it == Non-Functional Requirements == (NOTE: Non-Functional Requirements will begin with NFR#:, these will need to be refined, broken down, and more added) * The SDMS system shall be functionally intuitive * The SDMS system shall be easily used by non-experts * The SDMS system shall be accurately monitored (IE: held in virtual place, nomadicity) * The SDMS system shall replan a meeting as dynamically and flexible as possible * The SDMS system shall keep the amount of interaction among participants as minimal as possible (number and length of messages) * The SDMS system shall considerably reduce the amount of overhead usually incurred in meeting organization (potential distributed attendees) * The SDMS system shall reflect, as closely as possible, the way meetings re typically managed * The SDMS system shall alert attendees as conviently and early as possible of the date and location of the meeting * The SDMS system shall accomodate decentralized requests as far as possible (any authorized user can request a meeting independently of their whereabouts) * The SDMS system shall not allow physical constraints to be broken, (a person cannot attend two or more different meetings at the same time, a meeting room cannot be scheduled for two or meetings at the same time, etc) * The SDMS system shall provide an appropriate level of performance * elapsed time between submission of a meeting request and determination of corresponding date/location shall be minimal * elapsed time between determination of meeting date/location and communication of meeting information to all participants shall be minimal * a lower bound shall be fixed between the time at which the meeting date is determined and the time at which the meeting is actually taking place * The SDMS system shall enforce all privacy rules * non-priviledged particiapnts shall not be allowed to know the constraints stated by other participants * The SDMS system shall allow customization to professional and private meetings * different restrictions on the time periods that may be allocated (meeting hours during office hours, private activites during leisure time) * The SDMS system shall be flexible enough to accomodate evolving data * varying sets of concerned participants * address to which participant may be reached may vary * The SDMS system shall be easily extensible * handling of explicit priorities among dates in preference sets * handling of explicit dependencies between meeting date and meeting location * participation through delegation - a participant may ask another person to represent him/her at the meeting * variations in the date formats, address formats, interface language, etc * partial re-use in other contexts (to help establish course schedule)