Getting Started with Achievo
(This guide pertains to version 0.6.6)
Contents
- What is Achievo?
- How is Achievo structured?
- What is a Profile?
- What is an Activity?
- What is a Phase?
- What is a Project?
- What is meant by Template?
- What is a Customer?
- What is a Coordinator?
- Building a project template
- Starting a project
- The project plan
- Entering time information
- The statistics displays
- Conclusion
What is Achievo?
Achievo is a web-based project planning tool written in PHP. It works
with a web server (in my case, Apache) and a MySQL database. It
provides basic project planning capabilities, and since it's under
active development, we may expect its functionality to be expanded and
refined as new versions are released. However, after a brief
evaluation, I've decided to use it for my own plans, and have written
this guide in the hope that others will find Achievo helpful as well.
This isn't a heavyweight multiproject planner, though it does allow
tracking resources across multiple projects. It's not very
sophisticated about dependencies, supporting only end-to-start
dependency definitions; on the other hand, it doesn't enforce
dependencies either, so with a bit of ingenuity you can plan your
overlaps so the timing shows up about right. It does allow tracking
against a baseline, although you have to change your baseline for each
phase if you decide to establish a new starting point. It's logically
built, as you can see in the next section, and very easy to grasp and
to use; I got familiar with its basic capabilities in a couple of hours
of playing, without even the benefit of this guide ;-)
How is Achievo structured?
(In this section I'll capitalize Achievo's terms where they first
appear, or at the start of a term's definition.)
Achievo manipulates entities called Customers, Employees,
Activities, Phases and Projects. Achievo users are Employees. Each
employee is associated with a security Profile, assigned by a
supervisor or administrator, that defines what that employee may do on
the system.
Achievo considers a project as existing on behalf of a Customer,
which may be an individual or an organization with one or more
Contacts. The project is managed by a Coordinator. Each project has
one or more Phases, and each phase encompasses one or more Activities.
A phase end constitutes a Milestone, and phase duration estimates (both
calendar and expended-hour) are the basis against which the project
progress is tracked; actual time spent, however, is entered against
individual activities.
In recognition that project phases, and indeed projects as a whole,
can and usually do have a lot in common, Achievo supports the
definition of phase templates (which list individual activities) and
project templates (which list phases and their dependencies). The
process of defining an actual project should normally begin with the
selection of a project template, a copy of which then becomes the
starting point for the actual project. The coordinator has full
freedom, however, to customize the actual project by modifying its
phases and their activities and dependencies.
Achievo supports security profiles. The creator of a security profile
is allowed to specify, for the following entities, what users who are
given that profile may do:Hours
Administration Add Edit Delete Time Survey View all users
Customer
Administration Add Edit Delete
Contactperson
Add Edit Delete
Project
Administration Add Edit Delete Statistics Planning
Phase
Add Edit Delete
User preferences
Edit
Activity
Administration Add Edit Delete Statistics
Employee
Administration Add Edit Delete Statistics View all users
Security Profiles
Administration Add Edit Delete
Phase Templates
Administration Add Edit Delete
Project Templates
Administration Add Edit Delete
An activity is what many other project planning tools call a task.
It's something that must be done in the course of a given phase of a
project. The same activity may occur in different phases and in
different projects, however. The definition of an activity comprises a
title, a brief description, and whether or not a specification is
required for this activity. A phase consists of one or more
activities. Achievo does not support definition of dependencies among
activities.
A phase is a major component of a project, comprising a list of
activities the completion of which reaches a milestone in the project's
progress. Phases may have dependencies associated with them, such that
one phase cannot start until another is completed; however, the
software does not enforce these dependencies when time spent is being
entered. The definition of a phase includes a title, a definition
(which can be as long as needed) and a list of activities.
A project is an effort undertaken to reach a specific goal on behalf of
a defined customer, managed by a single coordinator. In Achievo, it
consists of one or more phases which may be interdependent. The
purposes of Achievo are to allow the definition of the hierarchy of
phases and activities dictated by the goal, to associate estimates of
calendar time and of employee hours with the phases, to allow
participating employees to record the time spent on each activity of a
given project and phase, to provide a view of the planned timeline, and
to show statistics related to time spent on projects, on activities,
and by employees. Employees are associated with the projects and
activities for which they enter time spent. Resource planning or
levelling is not supported by Achievo at this time.
Many projects may make use of phases consisting of identical
activities, and indeed many projects may themselves involve identical
sequences of phases. In recognition of this, Achievo permits that a
project be initiated by copying the project definition from a project
template; if no sufficiently similar template exists, one can first be
created, and unless you're absolutely certain that your project is a
wierd and wonderful one-off, that's the right way to go about it.
A project template is built by combining phase templates
(which again may need to be defined for the purpose) and defining the
dependencies among the phases. Once a project template is copied to an
actual project definition, the two become independent; changes to the
template no longer affect the actual project and vice versa. Thus a
project may start from an existing template, but then be individually
customized where it's appropriate to deviate from the template
definition.
The customer is the primary stakeholder in the project. Contact
information can be maintained in Achievo for actual or prospective
project customers; if the customer is a group of executives within your
own organization, for example, the group members can be listed as
contacts. Space is provided for recording free-form customer
information.
Each project has one employee who's "on the hook" for that project's
successful completion. That employee is the coordinator.
In this section I describe, briefly, the process of building a project
template from scratch. In reality, some of the needed components will
probably have been defined for other projects, but I'll assume we're
starting with a brand-new Achievo installation. It's really pretty
simple, and can be done iteratively if the project manager likes
working that way.
- List the project phases on paper and work out their logical
sequence.
- For each phase, use the Activity Administration function to define
the activities needed.
- Next, use the phase template function to create the phase
templates (duh!). It's easier to go do it than to read an explanation,
which is why I'm not writing one.
- Now go to the project template function and enter the title and
description, and the phases.
- Complete the project template definition by adding the dependencies
into the table at the bottom of the page.
Now that a template exists, the next step is to be sure that the
participants are all entered. This is done with the Employee
Administration and Customer Administration functions. As employees are
entered, you need to associate a security profile with each one, so
before starting the employee administration, plan the employee roles
and then use the Security Profile function to build the profiles that
give them enough, but not too much, privilege. If you aren't entitled
to set up employees and design security profiles, list your needs on
paper or in an email -- that's not very hard -- and ask an
administrator to set them up for you.
Once the particpants are all defined in the system, you start the
project with the Project Administration function. Enter the project
title, select a template, click Save, and then proceed with the
editing. You need to enter the customer and coordinator information
and a project description; the phases, dependencies and activities have
all been copied from the template. If you need to do any customizing,
you'll find that the project admin screen is very like the project
template screen, and the editing will be familiar. One useful thing to
do is to change the phase names so they're numbered; that way, they
appear in order on the project plan. (You could number the phase names
in the phase template definitions if you were sure they'd mostly be used
in the same order from project to project.)
On the project administration screen, however, the phases have
calendar day and expended hour estimates beside them, and these are all
zero. You need to edit each to enter your planning baseline.
Next take a look at the Project Planning function. This displays a
Gantt chart of sorts, showing your phases and milestone dates. At the
right is a comparison of hours booked vs. hours planned for each phase.
To record time spent on a given activity, employees use the Time
Registration function. The screen is pretty self-explanatory; one
selects a date, project and phase, then an activity; then one can
record the hours spent, to a resolution of 15 minutes, and add a very
brief comment, such as a status indication.
Time spent can be viewed by project, by activity and by employee. The
reader is encouraged to explore these functions once the project has
some recorded time data.
Achievo is a work in progress, and there is lots more coming. I have
seen code in the installation that seems intended to support project
billing (allocation and/or invoicing of costs to customers), but isn't
yet integrated into the user interface. But as you can tell by my
having spent half a Saturday afternoon writing this guide, I'm already
pretty impressed and -- I'll finish as I began -- I'm going to use
Achievo in my own project planning.