RPP is a CLI tool to quickly generate project plans including Gantt charts. Project planning for developers in a way. We review its key features, but checkout the documentation for more details.
RPP is a NodeJS application and you must have NodeJS up and running on your machine. RPP is tested on Node 10, so later versions should work.
$ npm install --global @fchauvel/rpp
To export the associated Gantt chart, use:
$ cd docs/samples/epic
$ rpp gantt -p workplan.yaml -o gantt.svg
This yields the following Gantt chart:
RPP consumes a description of the project split into multiple files
(YAML or JSON), one for the workplan, one for the teams, etc. See for
instance docs/samples/epic/workplan.yaml
. This file specifies the
work plan (work packages, tasks, deliverables and milestones) of our
sample EPIC project (see the workplan schema). Here
is an excerpt:
project:
name: EPIC
breakdown:
- name: Project Management
breakdown:
- name: Infrastructure for Communication
start: 1
duration: 48
deliverables:
- name: Infrastructure for Communication
kind: Software
due: 3
- name: Financial Reporting
start: 1
duration: 48
deliverables:
- name: Intermediate Financial Report
kind: Report
due: 24
- name: Final Financial Report
kind: Report
due: 48
RPP also accepts a description of the team, that this, the persons assigned to the project together with their roles (see the team schema). Here is an excerpt of the EPIC team description.
team:
name: EPIC
members:
- name: SINTEF
members:
- firstname: Franck
lastname: Chauvel
leads: [ WP1, T1.1, T1.2, T3.1, T4.4 ]
- firstname: Brice
lastname: Morin
leads: [ WP3, T2.1, T3.3 ]
- firstname: Ketil
lastname: Stølen
leads: [ T1.3 ]
- name: UiO
members:
- firstname: Olaf
lastname: Owe
leads: [ WP4, T2.2, T4.1, T4.2, T4.3, T5.2]
You can pass the team to the rpp gantt
command using --team|-t
option, so that the Gantt chart indicates who's leading each task. For
instance:
$ cd docs/samples/epic
$ rpp gantt -p workplan.yaml -t team.yaml -o gantt.svg
RPP can also run sanity checks on your project description to help spot inconsistencies. To do so, use the following command:
$ cd docs/samples/erroenous
$ rpp verify -p workplan.yaml
1. Warning: 'EMPTY WORK PACKAGE' on 'WP 2'
- Work package 'First Package' is empty.
- Tip: Have we forgotten some tasks or work packages there?
2. Warning: 'NO DELIVERABLE' on 'T 1'
- Task 'First Tasks' has no deliverable
- Tip: Do we miss some?
3. Error: 'LATE MILESTONE' on 'MS 1'
- Milestone 'First milestone' comes after project end.
- Tip: Check the milestone date
2 warning(s), 1 error(s).
Here as well the -t|--team
option allows us to include the team
description.
RPP checks for the following:
-
Work plan consistency
-
Empty work package, that is, work packages that do not contain any tasks or work packages.
-
Single activity work packages, that is, work packages that contain a single task or work package.
-
Discontinuity in work packages, that is, activities in work packages that are neither overlapping nor contiguous in time. In other words, RPP search for work packages that are idle at some point.
-
Tasks without any deliberable.
-
Deliverable due outside the task period.
-
Milestones set outside the project period.
-
-
Teams consistency
- Empty teams
- Duplicate activity leader
- Tasks without contributors
- Activities without leader
- Idle partners (without any role)