A job is a continuous work assignment that has no particular start/end date and may not create milestones or deliverables.
Work Product: Project Plan
The Project Manager is the administrative coordinator for all
project activities. This job is critical to completing the final
deliverable on time.
Creates cost and schedule estimates.
Coordinates creation of Team Expectations and Project Vision statements.
The Manager writes, maintains, and administers the Project Plan (SPMP).
Maintain the project detailed schedule and provides visibility to project status via Trac.
Identify, allocate, and track individual task assignments (action items) via Trac.
Present project schedule and status to team each week during class.
Identify, gather, and allocate needed resources.
Ensures all staff receive appropriate training in their required skills.
Collect weekly individual status reports.
Set the agenda and schedule for lab time.
Create or select Time Accounting procedures.
Write weekly progress report (or attend weekly manager meeting, as determined by instructor).
Write performance appraisals of team members.
Quality Assurance (QA)
Work Product: QA Plan, System Test Cases, FTR Summary Report
Assures deliverables conform to project standards and meet QA
Writes and maintains QA plan.
Coordinates all metrics collection and reporting.
Plans, coordinates and monitors all formal reviews and inspections. (At least one Formal Technical Review is required).
Writes Review Summary reports.
Establishes and monitors appropriate Defect Reporting and Tracking Procedures via Trac.
Change Manager / Toolsmith
Work Product: CM Plan, Deployment Plan
Maintains all project documentation in the team's Trac wiki.
Ensure that all relevant team material (deliverables, work products, processes, rationale, ...) are on the wiki and are kept current.
Manages changes to all documents and to the product under development.
Manages the team's source code repository on Trac.
Specifies and administers all change control procedures.
Obtains and installs necessary software development tools (See Project Plan), guides team in their installation and use. Troubleshoots problems with tools.
Coordinates any required training on all development tools.
Assist team members in installations on their individual machines.
Provide tech support for the target platform (hardware, o/s, and language).
Analyst / customer liaison
Deliverable: System Requirements Specification (SRS)
The analyst's job is to understand all of the problem
requirements. The analyst is the "point person" for all
customer contact and is responsible for ensuring the product meets
the customer's needs. It is the analysts responsibility to
communicate the customer needs to the other group members.
The analyst coordinates production of the specification document (SRS), though he/she may delegate people to work on specific sections.
Prioritize requirements and negotiate with all other team members and customer on product features.
Maintain consistency between all work products to ensure product validity.
User Interface DesignerWork Product: UI Prototype, Usability Evaluation, and Swing GUI
Work Product: Feasibility Prototype, High Level Design
The designer creates and maintains the high-level software
design. This job may be decomposed in some situations where the
design can be clearly decomposed (e.g., database, User Interface,
Maintains and defends the Design Issues and Rationale.
Distributes design tasks and integrates work into the complete deliverable.
Creates the feasibility prototype.
If required, coordinates development of the functional prototype, (aka "extended prototype"): a working application that demonstrates all the functional requirements but not the non-functional ones.
Programmer - All
Everyone on the team will serve as a developer / programmer.
Creates a detailed design for certain modules assigned by the Designer.
Implements (write Java source code) for assigned modules.
Performs unit testing on assigned modules.
Responsible for becoming competent with the development tools.
Follows all established processes and adheres to standards.
(7-person team) Product Manager