The Project

The primary activity in CMSC 345 is the development of a software product. This product is developed over the course of the semester. Although the final product is important, the objective of this activity is to give you the experience of proceeding through the complete software development life cycle, with the exception of the maintenance phase. Each development team is responsible for a deliverable artifact at the end of each phase of the life cycle.

Here are the software life cycle phases and their corresponding artifacts. (A link to a template for each artifact will be activated below as the particular phase approaches.)

 

Project Phase

         Artifact

Associated Information

Requirements








Design



 

Implementation






 

Testing






 

Delivery







 

The Project Team

An important part of the "real-life" software development experience is participation on a development team. Each project team will consist of approximately five students selected by the instructor. Each team will choose its own team leader. Although no extra credit is given for acting as team leader, some find it a valuable experience and/or feel most comfortable in the role.

Each member of the team (including the team leader) will have primary (but not sole) responsibility for the conduct of a project phase and timely delivery of the associated artifact for that phase. 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 artifacts.

Job descriptions for the Team Leader and all Phase leaders are available.

Check Your Ego at the Door

One thing that I will try to teach you this semester is how to be an "egoless" team member. By egoless, I mean that you must always remember to act as a cohesive unit towards a common goal. Remember that everyone on the team is equally responsible for and owns everything -- e.g., all artifacts and code. Try to replace the word "my" with "our" when discussing issues with the team. Also, learn to give criticism in a positive manner and likewise be able to accept it in a positive manner. Remember that the team, not an individual, will ultimately make or break your product.

If Your Team Is In Trouble

Sometimes during the semester a team feels that it has reached an impasse on an issue or that team trust or communication has broken down. Although I would like you to try to resolve these situations within your team, don't wait until things become critical -- come see me. I will help you to work things through.

Project Description

A brief project description can be found here.

Status Reporting

Timesheets

Each team member is required to complete a Weekly Timesheet indicating the number of hours he/she spent on the project and the activities that he/she performed. The timesheets will be collected at the start of the first class of the week.

Bi-weekly Status Reports

The current Phase Leader is responsible for completing a Bi-weekly Status Report. This report is to be delivered to the customer and to mevia email

Weekly Verbal Status Reports

At the start of the last class of the week, I will ask the current phase leaders to give the class a brief verbal status report. Please be prepared.

Final Product Delivery

Each team will present and demonstrate their final product to the customer and to me. All team members must take an active role in the demonstration/presentation. Please follow the guidelines given above for your final product delivery.


 

Last Modified: Tuesday, September 09, 2003