Phase 0:
Prospectus
Team Name: MONkEY
Project: Electronic House Assistant Scheduler (EHAS)
Understanding
Arroyo Vista Housing of UC Irvine has 35 academic theme houses and Greek houses. The House Assistant of each house has to serve periodic duty days throughout the course of the year in different shifts. Their shifts will be assigned by the supervisors of the Housing. And that job has being done by hand for years. It is hard for the staff to have a fair schedule for all House Assistants, and to keep track of their duties. Also, it takes them a lot of time to do the job and to resolve the complaining of the House Assistants when they think they are not assigned fairly.In order to avoid those problems, the Housing staff wants to have a system which has the following abilities:
setting up and assigning shifts fairly among the House Assistants during the year | |
allowing the supervisors of the Housing to adjust the number of House Assistants on duty flexibly in special shifts | |
store the schedule in a HTML file so that the supervisors can post that file on the internet and their House Assistants can access to see their schedule any time easily | |
allowing the supervisors of the Housing to make duty or shift changes flexibly when needed | |
printing out the calendar of duty schedules with data and names of the House Assistants on duty for each date | |
printing out the chart of House Assistant names, number of Duty Coordinator shifts, weekend/holiday shifts, and total frequency of duty shifts. |
To solve the problem, we will use some technologies such as
Java programming | |
Microsoftw Visual C++ 5.0 | |
Database in Java | |
Graphic in Java | |
Windows 95/NT operating system |
To understand the project, these following activities will be done
email, phone, and make appointments to interview the customers | |
ask for advice from the instructor and TA |
Technical Marketing Sheet
It is very difficult for a supervisor to make and distribute a yearly duty schedules fairly by hand for more than 35 House Assistant staff according to the complex rules mentioned in Background part represented by our client - Karyn Herrschaft, Residence Life Coordinator at Arroyo Vista Housing, UC Irvine. The unfairness issue when assigning these shifts among the House Assistant staff will be ultimately ended with the help of the Electronic House Assistant Scheduler (EHAS) program which is going to be carefully designed and developed by our professional software developer team MONkEY. The MONkEY Team is well trained and experienced in this web application area; in fact, we did develop the Electronic Scheduler successfully last quarter and that system was evaluated highly among our competitors.
With the Electronic House Assistant Scheduler (EHAS), not only is the fairness problem being solved completely, but also the supervisor will definitely save a lot of time which he/or she used to spend for planing and making scheduling for each House Assistant.
The Electronic House Assistant Scheduler (EHAS) program will provide all necessary functionality and features required by the client Karyn Herrschaft. The primary function of this program is receiving inputs such as the names and pertinent information at the beginning of the academic year from a professional staff member, then the program will generate a random duty schedule according to the specified rules. According to these rules, all shifts will be assigned fairly among the House Assistant staff yearly. Moreover, the program will have a friendly graphic user interface which include online help on how to operate the program. The Electronic House Assistant Scheduler (EHAS) will have all the required features follow:
Print out a calendar of duty schedules with dates and the names of the House Assistant is on duty for each day. | |
Print out a chart of House Assistant names, number of DC shits, weekend/holiday shifts, and total frequency of duty shifts. | |
Store the duty schedule so that if a House Assistant gets replaced during the year, a new one can be printed out with the new House Assistants name on it. | |
The program will be able to handle some special events if necessary like: adjusting number of House Assistants on duty more than 6 for move-out day or fewer than 3 backups on weeknights in the future. | |
Have some format for House Assistants to request switches/changes to their duty assignments; a supervisor must approve this, and then could ve the one to change the system. | |
The Residence Life Coordinator will be able to make changes when necessary. |
The Electronic House Assistant Scheduler system will enforce a relatively fair and flexible schedule so that the supervisor could make change easily and effectively.
In addition, it saves time for the supervisor in making the duty scheduler as well as it is a very powerful tool to help the supervisor to do any necessary changes or update new information in the yearly duty schedule very fast. Furthermore, any duty person could remote access to the web home page to print out his/her exact update schedule.
The automated system (EHAS) will replace the old, time-consumed way of making yearly schedule by hand. The EHAS system will automatically generate yearly duty schedule for more than 35 house assistant staff in minutes if accepting the names and pertinent information as its inputs.
Besides all main functions and features required by the client Karyn Herrschaft, Resident Life Coordinator of Arroyo Vista Housing, MONkEY Team will create a very friendly user interface which required almost no computer knowledge user and also include online help with complete guiding instruction on how to operate the program.
All schedule information will be publicly posting on your home web page, and they will be well organized in Schedule Menu which has several options that could lead the user directly to what he want to access, such as displaying daily, weekly schedules or searching for individual schedules by names, shift, workdays shift, work-night shift, holiday shift Moreover, this system is absolutely Y2K compliance guarantee.
We, the MONkEY Team, would like to provide its client a prototype which can be used as the first version of the complete product, and we promise to deliver the Electronic House Assistant Scheduler system before the due date. In case, you want to make any minor changes in the system, add some more features or change any existing features as long as these changes support for your convenient and enhance your efficiency and fairness in assigning duty scheduling for your staff, the MONkEY Team will be very glad to do so if the time constraint is no matter.
Project Plan
Introduction
The process of solving the Electronic Housing Assistant Scheduler (EHAS) Project involves a number of different Phases, each of which contains a number of steps. We (Team E) are in Phase 0 now. Feasibility Study is the very first step we have done to obtain a better understanding of the project. One of the results of this step is to identify the major objectives of the Project, which are:
Useability the software product should be easy to learn and use | |
Accuracy provides a reasonably fair schedule for all House Assistants |
Accordingly, the next step of Phase 0, Planning, is to be started. The purpose of this document is to describe our plan in developing the EHAS system. Each of the following sections will elaborate one or more aspects of our plan, i.e., Schedule, Staff Organization. The major milestones we want to emphasize include:
Prototype the User Interface is consider to be the most important part for this software product. By the middle of week 5 well deliver the prototype to the customers | |
Documentation updates upon receiving feedbacks from customers on the prototype, all documents will be modified/updated (expected to be done by week 6) | |
Complition the complete system will have been tested by week 9 | |
Demonstration show the product to customer (week 10) |
It is concieveable that ten weeks would be quite short for this project. Thus keeping schedule on time will be a difficult task. Fortunately, experience shows that Team E is well organized, and has a good communication skill among team members. Positively, management problem would be taken care of gracefully. There is no hard constraints in the technical side!
Project Risks
Risk Analysis |
Identification: First, the users of this software product are those who have no computer skills at all so it is definitely risky if a wrong user-interface were chosen. Secondly, after making the schedule for developing the HAS product, the Monkey Team realized that eight weeks would be too short; however, this issue can overcome easily by planing to build a prototype first, and then incrementally update to provide more features to the software system. Finally, the Monkey Team is expecting this software product to be run on Windows environments, but there are still changes that the users wanted to use other operating systems. |
Risk Estimation: The Monkey Team has realized the user-interface as the most important aspect of the product and started researching for this at the very beginning. In addition, the Monkey Team, along with tools available, has experience with building various friendly user interfaces. |
Evaluation: The problem of building a bad user-interface would be very unlikely to occur once it has been identified early on. Moreover, all Monkeys members are hardcore programmers and decided to build the product incrementally that is to deliver to an express version of the product at a minimum requirements first, and then incrementally update to provide more features to the software system. Therefore, the risk will be absolutely reduced. |
Risk Management: |
Risk Aversion Options: Contact Karyn Herrschaft, Residence Life Coordinator at Arroyo Vista Housing, to survey if the built user-interface is easy to use for the users and does the on-line help feature is really helpful for completely guiding on how to use this software product. Besides, the Monkey Team will schedule extra time for fixing error or modifying the user interface as well as the generating a random duty schedule fairly. |
Risk Monitoring Procedures: Run each version of EHAS on Windows environment. If there is updating or modifying, keeping this version is in a new version |
Schedule
This project will be divided into five deliverable phases:
Project Work Breakdown Structure |
Phase | Phase Name | Description | ||||||||||||
1 |
Prospectus and plan |
|
||||||||||||
2 |
Requirement Specification |
|
||||||||||||
3 |
Architecture/Module Specifications |
Presentation of Architecture/Module Specifications |
||||||||||||
4 |
Implementation |
Presentation of Implementation |
||||||||||||
5 |
Integration Testing/Test Documentation |
|
Task Network: |
Time-Line Chart |
Resource Table |
Project Estimates
Historical Data Used for the Estimates: |
Team members experience: |
strong programming skills in C, C++ ( 4 years ), Java (2 years), Visual Basic (1 year), client-server applications (1 year). | |
good experience in internet programming. | |
good knowledge in Database Management. | |
proficiency in designing friendly Graphical User Interface. | |
master in Data Structure and Algorithm. |
Application-domain data: |
Designed and developed successfully the Electronic Scheduler in Fall 1998. | |
Designed and controlled the bookstores database system. |
Courses taken at UCI: |
ICS 23, Fundamental Data Structures, which focuses on implementation and mathematical analysis of fundamental data structures and algorithms. | |
ICS 52, Introduction to Software Engineering, which focuses on software life-cycle, its principles and techniques. | |
ICS 121, Software Tools and Methods, which focuses on constructing software in systematic fashion. |
ICS 141, Programming Language, which focuses on examination of different programming paradigms, such as object-oriented programming; implementation strategies, programming environments, and programming style. |
ICS 156, Advanced Computer Network, which focuses on designing and implementing computer networks, protocols, and network applications. |
ICS 161, Design and Analysis of Algorithms, which focuses on techniques for efficient algorithm design, effect of data structure choice on efficiency of an algorithm. |
ICS 171, Introduction to Artificial Intelligence, which focuses on different means of representing knowledge and uses of representations in heuristic problem solving. |
ICS 180A, Internet Programming, which focuses on designing and developing client-server application over the internet. | |
ICS 184, Database Management Systems, which includes modeling and designing of databases. |
Estimation Techniques: |
using Visual C++ and MFC in implementing the system. |
using HTML for posting documents on teams web page. |
using MS Power Point for preparing slides. |
Estimates: |
The estimation of the required hours for each team member as follows
Tasks |
Estimated Working Hours | ||||||||
For Prospectus and Plan Phrase:
|
5 12 3 0.5 |
||||||||
For Requirements Specification Phrase:
|
8 16 3 0.5 |
||||||||
For Architecture/Design Phrase:
|
12 20 4 0.5 |
||||||||
For Implementation Phrase:
|
|
||||||||
For Integration/Testing Phrase:
|
6 8 5 |
Project Recourses
People. Five members of the MONkEY team, majoring in Information and Computer Science at UC Irvine will be involved in this project. |
- Tu-Quyen Thi Do
- Kim Ngoc Vu
- Rose Diemhong Nguyen
- Nhon Binh Tran
- Thai Vinh Tran
Hardware and software used in this project |
Hardware |
1 Sun SPARC workstation | |
1 133MHz Windows NT workstation |
Software |
Solaris Operating System | |
Windows NT | |
Microsoft Office 97 for preparing documentation. | |
Microsoft Visual C++ 5.0 | |
Java compiler (JDK and/or Symantec Cafe) for implementing the software. | |
Netscape Communicator |
Staff Organization
Team Structure:
|
Member Responsibilities
|
The following table describes the structure of the team with the
tentative schedule: |
Times |
Phases |
Manager |
Clerical Support |
Deliver Dates |
Remarks |
Week 1 |
Team formations |
null |
null |
04/11 |
Team members get to know each other. Prepare: individual webpages, team webpages, office... etc. |
Week 2 |
Prospectus |
Kim Vu |
N/A |
04/22 |
Every team member tries to understand the project; meetings needed... |
Week 3 |
Prospectus |
Kim Vu |
N/A |
above |
Prospectus must be completed in the second day of week 3. Don't wait for Prospectus to be completed; start Requirements phase soon... |
Requirements |
Rose Nguyen |
Tu-Quyen Do |
04/29 (Thursday) |
||
Week 4 |
Requirements |
Rose Nguyen |
Tu-Quyen Do |
above |
Design starts before Requirement completed |
Design |
Thai Tran |
Nhon Tran |
05/13 (Thursday) |
||
Week 5 |
Design |
Thai Tran |
Nhon Tran |
above |
Start Implementation... ovelapping with design... Requirements Reviews (05/03-05/07) |
Implementation |
Nhon Tran |
Rose Nguyen |
05/27 |
||
Week 6 |
Design |
Thai Tran |
Nhon Tran |
above |
Finish up Design and concentrate on Implementaion/coding |
Implementaion |
Nhon Tran |
Rose Nguyen |
above |
||
Week 7 |
Implementaion |
Nhon Tran |
Rose Nguyen |
above |
Coding and module testing simultaneously... Design Reviews (05/17-05/21) |
Module Test |
Tu-Quyen Do |
Kim Vu |
n/a |
||
Week 8 |
Implementation |
Nhon Tran |
Rose Nguyen |
above |
Finising coding and starting actual Integration and testing... |
Integration/test |
Tu-Quyen Do |
Kim Vu |
06/10 (Thursday) |
||
Week 9 |
Implementation |
Nhon Tran |
Rose Nguyen |
above |
Finishing up Codings... Keep Integrating/testing. Code Reviews: 06/01-06/04 |
Integration/Test |
Tu-Quyen Do |
Kim Vu |
above |
||
Week 10 |
Demonstrations |
All |
All |
n/a |
Product is completed... show to customers... Parties...!!! :) |
Tracking and Control Mechanisms
Set up the teams schedule to keep track the due date for each deliverable phase. | |
Mark down on the schedule what have been done and plan for the next step. | |
Keep track of routine meetings via Email, and by using team log at TeamE- MONkEY Website: http://www.ics.uci.edu/~team125e | |
Keep track of all relevant discussions in the meetings in teams note book | |
Customers can view the tasks done on the teams web page. | |
Keep track of the graded papers in the team folder. | |
Keep track the update of teams web page for each deliverable document. |
Click [Here] for table of contents