Access to add and change pages is restricted. See: https://cwiki.apache.org/confluence/display/OFBIZ/Wiki+access

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 26 Next »

Project manager application

The project manager is currently under development. The open issues are listed in Jira. 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 Jira issue to the ProjectMgr component or add a comment. It is modeled after the PMW (Project Manager Workbench and other project manager packages.

The main purpose of the project manager application is the administration of projects, phases, tasks and resources 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.

In order to use the system, make sure you have resources, create a project, phases and tasks, add the resources to the project level and enter the estimated start and completion dates or use the schedule function. From then on, tasks can assigned and time and status can be registered.

Status

 We are currently working on:

  1. improve project tab
  2. improve timesheet tab
  3. customer request to task conversion
  4. task complete button on timesheet
  5. Improve resources tab with specific info on resources

Work still needs to be done: (let me know if you would like to work on this)

  1. add dependency info to the task overview
  2. add billing tab to a project: list of non billed hours, list of billed hours with invoice id's
  3. add a billing tab to a client resource to show outstanding and invoiced hours
  4. split resources left/right into client/provider resources, add a new level in the RoleTypes for projectTeam:
        PROJECT_TEAM -> provider -> provider roles
                              -> client -> client roles
  5. create the possibility of creating invoices from either the resources or project tab using the outstanding hours info
  6. add to the resourcesa tab to specify the rates for a provider resource. (see partyRates in partyMgr)
  7. create security on screens and services acording the document at: http://docs.ofbiz.org/display/OFBENDUSER/Project+Manager+Application+Roles
  8. more reporting.

System principles.

  • A project consists out of one or more phases of which each phase can have one or more tasks.
  • A task always has a parentPhase.
  • Time registration is only done on a task level.
  • Estimated and actual dates are only maintained at the task level. For reporting they are calculated to the higher levels. Project views are created to support this.
  • 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.
  • In the option 'myTime" time can only be reported on assigned tasks, tasks can only be assigned to projectmembers.
  • All timestamps in the timesheets have a time set to '00:00:00.0"
  • A timesheet is only for one week and one week only and can have many time entries, one for each task and one day within the fromDate and Thrudate of the timesheet. A timentry is always referring to a task(Workeffort)
  • A timesheet only has related time entries where the partyId is null meaning that these entries are from the partyId on the timesheet. The thrudate is not used on the TimeEntry, only the fromdate. The timeEntry only registers hours for the specific fromDate date only.
  • In a project the following (security) roles are recognized:
    Administrator: has full access over all projects
    Client Manager, Client Analyst: has full read access over the project. and can report time.
    Client Billing: who will receive the invoices.
    Provider Manager: has full access to the project he is member of.
    Provider Accounting: who can create invoices and send these to the Client Billing,or if not present to the Client manager.

System Setup.

The system is divided into 2 parts:

  • 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.
  • The more general options for the project manager to setup projects and phases and planning dates and assign resources to tasks.
  • The administrator functions to add resources and skill types

CURRENT DATA MODEL

  • Project (WE)
    • SubProject
    • Notes
    • ProjectTeamMember (party)
    • Phase (WE)
      • Task (WE)
        • Resource (partyId or fixedAsset(later))
        • Skill Standards (kind of skill and number of FTE's required)
        • Notes
        • time entry
        • Association with other tasks in which order they should be executed.
        • Customer Request
  • Time Sheet
    • Resource
    • Time Entry
      • Task (we)
      • InvoiceItem

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)

  1. Task Reports
    1. Task by priority (Iteration planning / The Planning Game)
    2. Task over time estimate or past schedule
    3. Tasks not assigned, drop-down/pop-up assign to Party X
    4. Tasks not scheduled (Product Backlog in SCRUM parlance)
    5. Tasks assigned to me
  2. Project summary (By Supervisor / By Client)
    1. Tasks by priority (including their status)
    2. All Tasks and Subtasks expanded (in order to see detail)
    3. 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?
    4. TODO - Add more here.
  3. Gantt for Project
  4. Tasks completed, times task was reopened, Avg. time taken to fix a task , Avg. number of tasks fixed per day
  5. WE estimate versus actual
  6. 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


  1. Tasks assigned to me (daily)
  2. Weekly (or daily) project summary (to client and provider managers; include burn rate summary, tasks done/in progress/etc)


  • No labels