Project manager application
The project manager is currently under development and not all features below are implemented. If somebody would like to help, please read the description below first. On the other hand if you have suggestions for this text please add a comment. It is modelled to the PMW (Project Manager Workbench and other project mnager packages.
The main purpose of the project manager application is the administration of projects, phases and tasks and tracking of estimated time against actual time which is entered via timesheets on project tasks only. This time registration is then used to generate invoices which can be send to the 'client' party of the project.
Some principles.
1. A project consists out of one or more phases of which each phase can have one or more tasks.
2. Time registration is only done on a task level.
3. Estimated and actual dates are only maintained at the task level. For reporting they can be calculated to the higher levels. Project views are created to support this.
4. The workAssoc entity is used to identify relationships in the order the tasks should be executed, a facility needs to be added to calculated the estimated start/end dates of every task according these relationships.
5. In the option 'myTime" time can only be reported on tasks which belong to a project of which the loggedon person is member of.
HIGH LEVEL DATA MODEL
Project Tree:
- Project (WE)
- Sub Project (WE)
- Task (WE)
- Sub-Task (WE)
- Task (WE)
- Task (WE) - These are not assigned to any sub-project
- Sub Project (WE)
- Task (WE) - These are not assigned to any project
- Request (CR)
- RequestItem? (CRI)
Product General versus Iteration:
- RequestItem? (CRI)
- Project Root
- Project Topical Structure
- Project Area A
- Task A-1
- Task A-2
- Project Area B
- Task B-1
- Task B-2
- Project Area A
- Project Iteration Structure
- Iteration 1
- Task A-1 (not copy, pointer to task from the Project Topical Structure)
- Task B-2
- Iteration 2
- Task B-1
- Task A-2
- Iteration 1
- Project Topical Structure
- Projects, Sub-projects and Tasks all are WorkEfforts? of a respective type.
- Request is a CustRequest? and can have many Request Items which are CustRequestItem? .
- Time Entry can be done from any level or type of WE
- RequestItem? and WorkEffort? has a many-to-many relationship through CustRequestItemWorkEffort?
GENERAL REPORTS LIST
NOTE: these are the report definitions; the use of the reports can be seen in the process outlines.
Actual Reports (in HTML initially to keep it simple, make it all more interactive)
- Task Reports
- Task by priority (Iteration planning / The Planning Game)
- Task over time estimate or past schedule
- Tasks not assigned, drop-down/pop-up assign to Party X
- Tasks not scheduled (Product Backlog in SCRUM parlance)
- Tasks assigned to me
- Project summary (By Supervisor / By Client)
- Tasks by priority (including their status)
- All Tasks and Subtasks expanded (in order to see detail)
- Hours / Billing View - so they can see how much each person has worked during the period. Do we include what their pay rate is somewhere?
- TODO - Add more here.
- Gantt for Project
- Tasks completed, times task was reopened, Avg. time taken to fix a task , Avg. number of tasks fixed per day
- WE estimate versus actual
- Estimated schedule/workload for party X (or me without permission) (based on hours worked per day, days per week, etc)
UI ELEMENTS LIST
General Screen Requirements
1. Per-project permission required with WE role limited permission, not required for general permission (WorkEffortRole?in certain roles, direct or to parent/ancestor) 2. Permission for task maintenance - allow certain status changes for own tasks, to complete/approve require manager role (both client and provider people will have variations of these, see processes for details)
New Interactive Screens
1. TODO
Email Notifications
- Tasks assigned to me (daily)
- Weekly (or daily) project summary (to client and provider managers; include burn rate summary, tasks done/in progress/etc)
The system is divided into 2 parts:
1. The 'my' options such as 'my tasks' and 'my time'.The logged user has the possibility to add and modify tasks assigned to him and link new tasks to projectphases of projects where he is a member of. A task can be standalone and not part of a project for personal use.
2. The more general options for the project administrator to setup projects and phases.