ERP 2.50:Functional Documentation/Project and Service Management
This article explains, from a functional perspective, how projects and services management is focused within Openbravo ERP.
For the sake of clarity, let's standardize some terminology before starting.
Wikipedia, project management is the discipline of planning, organizing, and managing resources to bring about the successful completion of specific project goals and objectives. These resources to be planned, organized (allocated) and managed can be material (specific products), non-material (services) or human (employees, partners) resources.
Wikipedia, a project [...] consists of a temporary endeavor undertaken to create a product or service. In contrast to a process, a project has a finite duration, from a starting date to an ending or completion date which can be the same as the contract date (if the project is delivered on time) or not (if the project is delivered in advance or late). During its life cycle (that is, between starting and ending date), a project can change its status. For instance, a project can go from Open to Order status and from Order to Order closed status. Projects can be classified in very different manners (these are only three examples):
- Depending on its initiative type: Public or Private.
- Depending on its area: Construction, Engineering, Consultancy and Research among others.
- Depending on its structure: made of a list of project lines or divided in multiple phases and tasks (multiphase projects).
A phase or stage is a distinct time period. According to this, phases are also defined by a starting and an ending date and may need a number of resources. Phases can be standardized since they are often shared among projects, e.g., an ERP implementation project can be divided in five standard phases (1. Project preparation - 2. Definition - 3. Iterative prototyping - 4. Final preparation - 5. Go live and adjustments) that can be repeated from one project to another. A phase can be divided, itself, in an ordered or unordered list of tasks.
Task:, a task is an activity that needs to be accomplished within a defined period of time. As well as phases, tasks may require a certain number of resources and can be standardized.
Service:, a service is the non-material equivalent of a good (product). Consultancy, technical assistance, training and cleaning are common examples of services that a company can offer.
Proposal:, a business proposal is an offering from a seller to a prospective buyer. As well as any other business transaction, projects may need to manage one or more proposals.
A bid is a formal proposal to buy at a specified price. Many projects are awarded through a public or open tender (a bidding process aimed at winning a contract) where two or more companies bid for them.
An expense or expenditure is the amount of money paid for a good (product) or a service. A project can lead to expenses, both goods and services, that are not the main object of the project, e.g., a server and a software bought during a technical consultancy project, a hotel and a flight booked to make a project presentation, photocopies provided during a training course and so on. All these expenses are registered in expense sheets.
Each new expense is recorded as a new expense sheet line. In many cases, employees participating in a project have to assume expenses in advance, recovering that money from their company once they present their bills (purchase invoices) to the financial controller: we talk about reimbursable expenses to employees. In the majority of these cases, companies re-invoice, i.e., bill through a sales invoice these expenses to the customer the project is being made for: we talk about invoiceable expenses.
A time sheet line is an expense sheet line that permits to assign (allocate) employee hours to a certain project. For many companies, it is very important to record every single hour that each of their employees devote to a project since this register will allow them to evaluate and hopefully achieve project profitability.
The profitability of a project is calculated by subtracting the costs of a project's employee participation and related expenses from its total revenue.
Gantt Chart:, a Gantt chart is a popular type of bar chart that illustrates a project schedule. Many software packages provide project planning capabilities through Gantt charts that permit to assign in an easy manner resources to projects, phases and tasks as well as schedule them by establishing starting, contract and ending dates. Current version of Openbravo ERP do not provide Gantt chart capabilities.
Pert:, a Program (or Project) Evaluation and Review Technique, commonly abbreviated PERT, is a model for project management designed to analyze and represent the tasks involved in completing a given project. Current version of Openbravo ERP do not provide PERT capabilities.
CPM:, the Critical Path Method, abbreviated CPM, or critical path analysis, is a mathematically based algorithm for scheduling a set of project activities. Current version of Openbravo ERP do not provide CPM capabilities.
The following picture summarizes the dependencies between some of the concepts presented in the previous section.
Project and Service Management setup
As seen in the introduction, a project is an endeavour or effort that, in many cases, can be standardized. That is the reason why it is useful to define project types.
A project type can be seen as a template or a mould that is used to structure several multiphase projects. As seen in the introduction, an ERP implementation project can be divided into the following phases:
- Project preparation
- Iterative prototyping
- Final preparation
- Go live and adjustments
And a complete training course can be divided into the following phases and tasks:
- Basic training
- Basic concepts
- Basic exercises
- Advanced training
- Advanced concepts
- Advanced exercises
- Expert training
- Expert examples
- Expert exercises
Each standard phase and task can have a standard duration in days as well as a product associated. This product can be both a service or a material good. For instance, Project preparation phase could require a service such as Study of needs whose unit of measurement (UOM) is an hour. However, the Basic concepts task might need a handbook titled Training Concepts 101 whose UOM is a unit. If one correctly assigns a standard duration for each phase and task, the scheduling of a new project happens automatically since only the start date has to be selected.
An accurate project type definition is critical for project efficiency. When starting a new project, you must assign it an accurate project type.
A multiphase project involves multiple phases and tasks.
By setting a project type to a multiphase project, its structure of phases and tasks is copied from the corresponding type. This is very useful since companies that typically deliver standard projects with standard phases, tasks, and products do not need to set them up each time they launch a new project. Obviously, new phases and tasks can be added and products changed once a project type has been set to a multiphase project.
Phases are invoiced independently by creating a different sales order for each of them. This capability allows one to bill the customer in discrete stages.
Unlike multiphase projects, service projects are not divided in phases or tasks.
Service projects typically require a list of products (e.g. scrubbers, vacuum cleaners, cleansers, etc.) in order to complete the project's objective. Like multiphase projects, these products can be both material goods and services.
Pricing in service projects can differ from the usual price list management in Openbravo ERP. In fact, one can add product lines, assign them arbitrary sales and purchase prices and then automatically generate both price lists when starting the project.
Example: A city council needs to update its communication infrastructure and asks an IT company, EasyIT to do it. The project will require a list of communication products (e.g., switches, routers, ethernet cabling, IP phones, WIFI access points, new laptops, etc) and some labor hours. The project manager at EasyIT makes a list of the materials and labor hours along with their quantity and price. The buyer at EasyIT purchases the equpipment from their IT supplier and the project is ready to begin. When the project finishes, the bill that EasyIT submits to the city council comprises a single line for the whole project.
The structure of a service project is simpler than a multiphase one, but service projects have additional functionality to enable the management of proposals.
In many cases, a service project is not launched until a proposal (i.e., a bid) is accepted.
A proposal usually has the same product lines on it as a project, but may have different prices or quantities.
After considering the relevant proposals, a business will ultimately award the project to the winning business partner. This business partner will become the customer of the service project.
Example: The cleaning service of a public hospital will be awarded through a public tender. Company A and Company B provide this type of cleaning service and will bid to win this project. Company C sells the cleaning products that Company A and Company B will need (brushes, dustpans, mops, etc.) The account manager at Company C makes a list of the products that they will need and makes two proposals, one for Company A and another one for Company B. Once the public tendering process ends, the hospital awards the tender to Company B. Company B will therefore become the customer of Company C's service project. Customer C bills Customer B for the products it buys and closes the project.
Expense sheets record every single expense in money or time that an employee does. These expenses can be associated or not to a project and a business partner. However, in many cases, projects lead to expenses that are not the main object of the project itself but need to be assigned to it.
Expenses in products and services
Expenses can be both goods and services:
- A server (good)
- A software fee (service)
- A telephone call (service)
- An Internet connection (service)
- A hotel night (service)
- Car fuel (good)
- A flight (service)
- A taxi drive (service)
- Photocopies (good)
In Openbravo ERP, an expense product or service is defined as follows: One creates a Product whose Product Type is set as Expense type.
From a payroll perspective, expense lines can record employee hours devoted to a specific project through timesheet lines. This way, one can calculate the cost of human resources devoted to a certain project.
In Openbravo ERP, one creates a Product (in this case, a service product) and sets its Product Type equal to Service. Subsequent lines are then exposed for various timesheet-related purposes, such as payroll, HR, and costing.
In many cases, employees participating in a project have to pay for goods and services required for its completion. Later, they are reimbursed by their company.
In order to reimburse employees, purchase invoices are directly created from their expenses.
Invoiceable expenses are the ones that are re-invoiced to the customer the project is being made for.
Usually, companies bill their customers all employee expenses related to their projects. This is done by creating sales orders from expense sheets.
The following table summarizes all the possible combinations of expenses within Openbravo ERP.
|NO re-invoiced expense line||Re-invoiced expense line|
|NO time expense line|| A
This expense associates a physical product with its quantity and price to a particular project.
This expense allows a company
This expense associates a physical product with its quantity and price to a particular project. This expense will be billable to customers.
This expense allows a company
|Time expense line|| C
This expense associates products (e.g., hours worked) in hours to a particular project for reporting, not billing, purposes.
This expense allows a company
This expense associates products in hours (e.g., billable hours) to a particular project. This expense will be billable to customers.
This expense allows a company
After processing this expense sheet:
- A and B expenses will lead to purchase invoices to the employee (i.e., of the company using OpenBravo ERP).
- B and D expenses will lead to billable sales orders to the customer.
- A, B, C and D expenses are used to report project profitability--i.e., all scenarios provide reporting capabilities.
Project and Service Management reporting
Project reporting is an essential task in project management. This way, one can:
- Track the progress of a project.
- Control collateral goods and services expenses of a project.
- Track employee hours devoted to a project and calculate their cost.
- Calculate the margin of profitability of a project.
Reporting the progress of projects with multiple phases and tasks gives a clear idea of whether a project is running on time.
The key indicators of project progress reporting are:
- The starting date of a project or its phases and tasks.
- The contract date the project or its phases and tasks have to be done for.
- The project's contract duration as the difference between the starting and the contact date.
- The real ending date of the project or its phases and tasks.
- The project's days delayed as the difference between the ending and the contract dates.
- The project's cumulative days delayed as the sum of phases' and tasks' days delayed.
- A reference date between the starting and the contract dates.
- The project's days elapsed as the difference between the reference and the starting dates.
- The project's time burned as the difference between the starting date and the reference date divided by the contract duration.
- The project's completion percentage as the number of accomplished phases and tasks over the total phases and tasks of the project.
By reporting the profitability of a project, one can get a picture of the success or failure of it.
A project profitability report must distinguish between:
- Incomes and expenses generated by the project service itself, also known as revenues and costs.
- Incomes and expenses generated by collateral expenses in goods and services needed for the completion of the project, in other words, re-invoiced expenses and normal expenses.
Within Openbravo ERP:
- A revenue is defined as income derived from the sale of a Product whose type is Service--that is, the income from the project.
- Employee cost is the result of multiplying employee hours by its category salary cost. In other words, the sum of employee hours devoted to a project will be its cost.
- Expenses in collateral goods and services during the carrying out of a project are usually re-invoiced to the customer the project is being made for.
- Collateral expenses of a project are registered in expense sheets.
- The margin is the difference between incomes and expenses.
The following table summarizes project profitability fields.
|Revenue||Cost||Outsourced||Margin (%)||Reinvoicing||Expenses||Margin (%)||Gross Margin||Gross Margin (%)|
Planned Revenue (PR)
During a project, revenues may vary until they reach a fixed amount. Final revenue amounts are determined at the end of the project.
Planned Cost (PC)
During a project, employee costs may vary until they reach a fixed, final amount at the end of the project.
Outsourced Cost (OC)
During a project, outsourced costs may vary until they reach a fixed, final amount at the end of the project.
Planned Service Margin (PSM)
Planned margin, in percentage, of the services provided during a project.
PSM = (PR - PC - OC)*100/PR
Planned Reinvoicing (PRe)
The final amount of Sales invoices derived from expenses is determined at the end of the project, when all sales invoices are re-invoiced to customers and entered into OpenBravo ERP.
Planned Expenses (PE)
Expense sheets are processed and their purchase orders totally invoiced. Final amounts are determined at the end of the project.
Planned Expenses Margin (PEM)
Planned margin, in percentage, of the expenses made during a project.
PEM = (PRe - PE)*100/PRe
Planned Gross Margin (PGM)
Planned gross margin of a project.
PGM = (PR - PC - OC) + (PRe - PE)
Planned Gross Margin (PGM)
Planned gross margin, in percentage, of a project.
PGM = ((PR - PC - OC) + (PRe - PE))*100/(PR + PRe)
Real Revenue (RR)
Real revenues of a project. These are invoiced sales orders related to this project.
Real Cost (RC)
Processed timesheet lines where employee hours are multiplied by the relevant salary category cost.
Outsourced Real Cost (ORC)
Processed purchase invoice lines where product is type Services.
Real Service Margin (RSM)
Real margin, in percentage, of the services provided during a project.
RSM = (RR - RC - ORC)*100/RR
Real Reinvoicing (RRe)
Invoiced sales orders associated to invoiceable expenses to customers.
Real Expenses (RE)
Invoiced purchase orders associated to collateral expenses of a project.
Real Expenses Margin (REM)
Real margin, in percentage, of the expenses made during a project.
REM = (RRe - RE)*100/RRe
Real Gross Margin (RGM)
Real gross margin of a project.
RGM = (RR - RC - ORC) + (RRe - RE)
Real Gross Margin (RGM)
Real gross margin, in percentage, of a project.
RGM = ((RR - RC - ORC) + (RRe - RE))*100/(RR + RRe)
Expenses and Time reporting
Expense reports allow one to control project expenses. The goal is to finish the project and come in under budget.
Time reports allow one to track employee hours worked and their resulting cost.
Although Openbravo ERP does not provide graphical project planning and scheduling capabilities through Gantt charts (à la Microsoft Project), it does allow:
- Easily structure and launch complex projects based on pre-defined project types.
- Generate and invoice both sales and purchase orders for project services and expenses associated to them.
- Calculate and report the cost of human resources devoted to a project.
- Very closely follow the financial components of projects through profitability and expenses reports.