Senior Design Project

Project Management Plan Version 1.1

Senior Design I and II - Spring / Summer 2001

Modification history:

VersionDateWhoComment
Version 0.0August 15, 2000G. WaltonArtifact Template
Version 1.0April 7, 2001Michael WalesInitial Version
Version 1.1April 12, 2001Michael WalesUpdated Link to latest SRS

Team Members:


Contents of this Document

Project 0verview

Reference Documents

Applicable Standards

Project Team Organization

Deliverables

Software Life Cycle Process

Tools and Computing Environment

Configuration Management

Quality Assurance

Risk Management

Table of Work Packages, Time Estimates, and Assignments

PERT Chart

Technical Progress Metrics

Plan for tracking, control, and reporting of progress


Project 0verview

There are a few different key components to our project, and there a few optional components that we are hoping to implement before the project is finished.

Mandatory components:

Optional components:

Our overall plan is to complete the system design of the mandatory components by April 20, 2001. These documents will be presented as our Senior Design I documentation. Beginning on April 30, 2001 we will start implementing our design into code. After we finish implementing and testing the mandatory components, we will work on designing and implementing some of the optional components. We hope to demonstrate the system with at least the first optional component completed when we present this at the end of Senior Design II at the end of July 2001.


Reference Documents


Applicable Standards


Project Team Organization

We have three team members. Each member is responsible for contributing to the deliverables. Each team member should continuously update their personal webpage with their weekly contributions and activities. In addition to everyone doing those tasks, each member should do these following unique tasks:


Deliverables

ArtifactDue Dates
Individual logsMust be updated weekly by individuals
Project Management ReportsWill be completed weekly
Concept of OperationsFriday, March 23, 2001
Project Management PlanMonday, April 9, 2001
Software Requirement SpecificationTuesday, April 10, 2001
High-Level DesignFriday, April 13, 2001
Detailed DesignWednesday, April 18, 2001
Test PlanMonday, April 9, 2001
User's ManualTBA
Final Test ResultsTBA
Source, Executable, Build InstructionsTBA
Project LegacyTBA


Software Life Cycle Process

We will complete the entire system design for the entire mandatory component before the end of Senior Design I. The implementation of all code will occur in Senior Design II. Below is tentative flowchart of development activities:

  1. Project analysis
  2. Requirement elicitation
  3. Project planning
  4. High-level design
  5. Detailed design
  6. Implementation of Robot Controller API module and Robot Surrogate module
  7. Testing of Robot Controller API and Robot Surrogate functionality and connectivity.
  8. Iterate steps 6-7 until those two modules appear to be quality.
  9. Implementation of the Manual Controller program.
  10. Testing of the Manual Controller program.
  11. Iterate steps 9-10 until Manual Controller program appears to be quality.
  12. Testing of all mandatory system components.
  13. Iterate steps 6-12 until entire system is quality.
  14. Complete all documentation and deliver.


Computing Environment

We will use two different development environments. We will use Windows environments a lot because they are easier to access and use than UNIX/Linux environments. Code can be generate on Windows machines, FTPed to UNIX/Linux machines, and then compiled. UNIX/Linux could also be used solely to generate all code and documentation. These decisions are made by each particular team member based on their personal preferences. Some of the possible destination environments will be SGIs running Irix, Sun workstation running Solaris, or PC's running Linux (probably RedHat).

Development tools


Configuration Management

There aren't many different modules in this project, so our configuration management will not require much effort. Code should be transmitted between team members in one large zip file with a 6 to 8 digit date indicating when the code was created. We don't anticipate any alternative versions of our code besides the final version (as opposed to a version that supports x, and one that supports y). All version of the code will be kept on the web site for reference.


Quality Assurance

Our group will perform quality assurance by following our coding standards, checking and performing all prescribed test cases. Following our coding standards should allow any member of the group to understand the code of the other members, thus reducing the chance of error. Performing the test cases will show that our product has meet the requirements and it will also show if the program is stable.


Risk Management

Time:
To make sure we don't fail to deliver on time, we must be careful to manage our time very wisely. Michael, as the team leader, will make sure we keep up with our timeline to ensure we don't fall behind schedule. We will also schedule ourselves to finish the mandatory components at least a month in advance to give us time to complete the optional stuff, and some extra time to finish the mandatory stuff incase something goes horribly wrong.

Experience:
We hope to overcome our lack of experience by doing research in unfamiliar areas, requesting assistance and guidance from our mentor Dr. Franceschini, and by "practicing" unfamiliar code. "Practicing" would probably involve creating a short separate program so that the developers can learn how to do something, without the overhead of including it in the overall system at first.

Computer Availability:
It doesn't appear right now that we will have many problems getting access to the computer environments we need. Possible sources include Linux PCs that we create ourselves, some of Dr. Franceschini's Sun workstations, Bruce Sun workstations, or possibly even some of STRICOM's workstations.


Table of Work Packages, Time Estimates, and Assignments

Work package Estimated Time Responsibility
Pre-Implemenation Documentation25 hoursEveryone
Design20 hoursEveryone
Implementation150 hoursEveryone
Final Documentation30 hoursEveryone


PERT Chart


Technical Progress Metrics


Plan for tracking, control, and reporting of progress

At a minimum, each team member will post the following information weekly: individual time and activity log, individual status information, and individual issues and problems

Each week the Project Management Report will be evaluated by all team members. The team members will then decide together how the pace of the project should be altered.


This page last modified by Michael Wales (Mag7Rule@aol.com) on April 7, 2001