Vous êtes sur la page 1sur 7

http://cse.stfx.ca/~mlin/cs485/assignments/project.

htm CSCI-485 Project

A major component of this course is the design and implementation of a complete software system. This project is a single software product that is developed over the course of the term. Although the final software product is important, the emphasis of this activity is the software development lifecycle.

The following is a brief description of the project. As most initial descriptions of software systems, the specification for the software is ambiguous. Your job is to develop the system following the full software development lifecycle from requirements analysis through product delivery.

A Meeting Scheduler System (MSS)

The department would like to have a meeting scheduler system to schedule various types of meetings. Examples of such meetings are departmental meetings, undergraduate or graduate thesis presentation. The MSS should be able to find a time slot suitable for all the attendees who must attend the meeting and be able to accommodate other potential attendees (for example, in a time slot when many students can attend). The system should be easy to use. MSS can be accessed via a web interface. The MSS should allow some users (e.g., the departmental Administrative Assistant or meeting organizers) to create meetings and send communications and/or confirmation regarding the schedules of the meetings. The users can login to MSS or may be brought to the web interface of MSS by clicking a link sent by the organizer of the meeting via MSS. The user can specify their preference and constraints for the meeting time. The MSS should allow the admin to integrate the course schedules of the professors and the students when needed. The MSS should also allow users to specify a number of options for different types of meetings.

Other possible projects:

Departmental Student Tracking System (STS)

The department would like to keep track of all students who have graduated from our department. The STS should keep track of contact information, what the student is doing after graduation (i.e., working for a company, graduate studies, etc..), etc. The STS should be easy to use and there are many tasks that it should make automatically. For example, there should be a web interface to the system that allows students to update their contact information, employment status, etc.. The system should also allow for the automatic distribution of news/announcements/newsletters to all the students registered in the database, etc. Obviously, the STS must be secure and thus students will need a password to access the system. There will also be different types of users. For example, the STS will allow some users (e.g., Rhonda, the departmental Administrative Assistant) to send communications regarding events, etc.. to all the students in the database. The STS should also allow some users to specify a number of options, preferences, and/or actions to be automatically taken by the system.

Departmental Electronic Bulletin Board (EBB)

The department would like to have a nice way to make announcements regarding upcoming events, etc... to all students and members of the department. We now have a physical bulletin board in the Annex that will be used for posting such announcements. But we would also like to have an electronic version (web-based) of such board so that students/faculty members do not have to physically come to see the board in the Annex to get information/updates. The EBB should be easy to use and there are many tasks that it should make automatically. For example, suppose there is an upcoming talk announced on the board. After the talk is over (i.e., the day after the talk), the EBB must automatically remove the announcement from the board. Also, if any changes are made to any announcements (i.e., a room change), the EBB should automatically update the announcement and perhaps e-mail everyone to let them know of the change. Obviously, the EBB must be secure and thus users will need a password to access the system. There will also be different types of users. For example, the EBB will allow some users (e.g., Rhonda, the departmental Administrative Assistant) to post announcements on the board. Other users (e.g., students in the department or faculty members) should be allowed to submit announcements through the system, but the announcements will be first reviewed by another user (e.g., Rhonda) before posting on the board. The STS should also allow some users to specify a number of options, preferences, and/or actions to be automatically taken by the system.

Team Structure

Each team must consist of 4 people. The team will consist of team members and a team leader. The team will choose its own team leader (the team leader will receive a 5% extra credit). All team members share responsibility for the final product demonstration. Teams will be given some class time to meet and to discuss issues with the instructor, but each team should arrange its own schedule for completing and submitting the project deliverables on time.

Responsibilities of the team leader: Schedule meetings, maintain weekly schedule and record meeting minutes Complete the weekly status report of the project and update the project website Keep a log of all e-mail communications between team members. All e-mail correspondence should be e-mailed to the entire team, even if directed at a particular individual. Also, any conversations about the project between the team leader and an individual team member or instructor should be communicated to other team members via e-mail. Resolve problems between team members by personal action or by involving the instructor

Responsibilities of a team member: Be a productive member of the team Attend all team meetings and participate actively. Notify your team members if you cannot attend a meeting due to illness or other reason. In each meeting, report your progress since last meeting. Take initiative and suggest what should be done. Review all meeting minutes If for whatever reason your contribution falls short of that of other team members, negotiate to take greater work share in the subsequent deliverable(s) Take any personal conflicts with other team members to the team leader Complete all assigned tasks to the best of your ability and in a timely and professional manner Complete the weekly report and work log sheet. Update the corresponding web page that can be accessed via the project website.

NOTE: All team members are equally responsible for all aspects of the project. Distribution of the workload has to be agreed upon by all members.

Phases and Deliverables

The following phases will be conducted as part of the software development process. A project deliverable will be submitted to me at the end of each phase. No late deliverables will be accepted.

1 Project Plan 5% Jan. 19 2 Requirement 25% Feb. 13 3 Design 25% Mar. 9 4 Development &Testing 25% Apr. 2 5 Delivery 10% Apr. 9

1. After forming the team and deciding the project, your first task is to develop a project plan. The deliverable for this phase is the Project Plan document. Note that you should regularly revise this document, as some parts, such as the project schedule, will change frequently. Thus, in order to simplify revisions, you should organize this document into separate sections that can be individually replaced as the plan evolves. (5%)

2. The requirement specification phase is to elicit and document the requirement such that the ambiguities in the initial description of the system are clarified. The requirement should be elicited from as many stakeholders as possible that might use the software. Note that at this stage you should be focusing on the WHAT and not the HOW. The deliverable for this phase is the Requirements document. This document is the official statement of what your team must build. It should clearly specify the main components and behavior of the software and its operating environment. Number individual requirements so that you will able to refer to them in later phases of the project. (25%)

3. The next step will be the design of the software. You must use an Object-Oriented design strategy. The deliverable for this phase is the Design document that documents the design of the entire software. This document is basically a proposal for a solution that satisfies the requirements. (25%)

4. The forth step will be the implementation and testing of the software. The deliverable for this phase is the testing document and the source code files. (25%)

5. The final step will be the final delivery. The deliverable for this phase is the Final Product itself. The software must contain a ReadMe file, a User Manual, Installation Instructions, and all the necessary source code files. (10%)

NOTE: All team members must take part in all project activities. While the volume of work of each group member on each project component may not be equal, their contribution to the overall project should equal out.

Project Website

The team must develop and maintain a project website for the instructor and all team members to visit. The instructor can view the website at any time during the semester, so keep it up-to-date. The project website must contain at least the following items:

Project Information: Profile of team members (role/responsibility, etc.) Project overview Current project status Archive of Meeting Minutes for ALL meetings Electronic copy of each project deliverable

Individual Information: Weekly status report a paragraph describing YOUR work effort for the week as it relates to the project Work log sheet a project timecard that shows date, start-time, end-time, work item, and description

The project Website will account for the remaining 10% of your project grade. NOTE: I will be viewing the project website regularly to make sure that every team member is attending the meetings and contributing to the project. Team members who are not attending the meetings and contributing to the project will be considered as not contributed to the deliverable in question and will be assigned zero credit for this deliverable.

Evaluation

Each deliverable will be graded and assigned an overall group mark. Each member will also receive an individual scale. The individual scale is the average scale of your

performance in this deliverable rated by other members in the group and the instructor (0100). The mark of each member for each deliverable is the group mark scaled by the individual scale.

Vous aimerez peut-être aussi