Index

Principle

 

Basic concepts

 

The calculation modules and their instances

 

An estimation on Estimancy

 

Estimation models

 

Estimation management

General presentation

Estimancy’s objectives are multiple:

  • To provide an equipment enabling to implement reliable methods of project estimation
  • To set the retained estimation approaches and thus industrialize the estimation process of an organization. Those approaches may implement a workflow to process the life cycle of an estimation
  • To capitalize all the estimations in a unique and secured data base

 

Estimancy uses the characteristics of the application to be conceived as inputs. Those characteristics are expressed in Units of Work. Each organization may have their own units of work. Standard units of work such as function points are natively implemented in Estimancy.

For other Units of Work, Estimancy can specify them and take the rules specific to each unit of work into account.

Estimancy can provide the following outputs:

  • The size (in the unit of the chosen system of units of work)
  • The project charge (possibly the charge of each stage)
  • The project cost (possibly the cost of each stage)
  • The duration of the project
  • The average staffing necessary to carry out the project

Estimancy can also document all the sizing hypothesis elements such as the % of the different stages compared to one another, the maturity of the organization, the skills and experience of the teams, the development languages, etc.

Besides the estimation aspect, Estimancy offers a “management” of the estimations (projects or quotes).

  • Estimations during their creation stage may have a workflow (in progress, revision, modification, acceptance, archive, etc.)
  • Estimations can be seen (the story of the previous versions is saved)
  • Estimations may be “private” (it will only be seen by its own creator)
  • Access permissions may be implemented depending on the workflow to prevent some user groups from accessing or modifying some elements of the estimation

 

The permissions may be used to organize exchanges between organizations and their subcontractors by implementing:

  • A quote request (or estimation request) from the organization
  • The estimation based on units of work of quotation specified by the contract and conducted by the subcontractor
  • The revision, modification or validation of the estimation by the organization
  • And so on, the workflow stages are unlimited

 


Principle

The estimation code of practice states the following principle:

Estimancy follows the principle of successive calculation. To estimate a project, the user will follow the proceedings of an estimation plan thanks to a series of preconfigured modules to observe the modalities of the desired calculations. That plan is specified during the creation of an estimation on Estimancy.

 


Basic concepts

 

> The organization and its settings

With Estimancy, an estimation is created inside an organization. The latter is the organizational structure that manages the estimation. It may represent a company or one of its divisions.

According to Estimancy, a company gathers basic settings such as:

  • The currency
  • The hourly rate
  • The effort unit used by the organization (man/day or man/month, for instance). In Estimancy, efforts are specified in man/hour. The number of hours of the display unit is defined in the organization specifications (m/d, m/m). It is possible to display effort units according to the order of magnitude (man/day, man/week, man, month, man, year, etc.) ->For instance:
FromtoDisplay unit
08m/hour
840m/day
40160m/week
1608640m/month
8640m/year

 

Those units will be used in the widgets of the dashboard of an estimation.

> Users and user groups

Users must be specified to configure some of their functioning and then configure access permissions

A user is associated with one or several organizations by the administrator

The User’s parameters are the following:

 

General information
  • Name
  • First name
  • Initials
  • Login
  • Email
  • Description
  • User’s authentication protocol (Internet, SAML, LDAP, etc.)

 

Preferences
  • The language (dictionary to use, translation of all screens is available in another language or organization specific terminology)
  • Time zone
  • Number of decimals after the comma (except for costs)
  • Number of lines to be displayed per page (tables and lists)

 

Groups

A user may be associated with a “group” of users of an organization. That possibility simplifies the security configuration. Indeed, permissions will be allocated to “groups” and not user by user.

Thus, a user receives automatically the same permissions as the group he is associated with.

 

> Permissions

There are 4 types of permissions:

  • Organization permissions
  • Global permissions
  • Module permissions
  • Estimation permissions

 

Organization permissions

They grant one or several user groups the following rights:

10 Create OrganizationsAbility to create new organizations (Only on Estimancy in SAAS mode or for administrators).
20 Manage OrganizationsAbility to see, create, delete or edit the organization description.

30 Edit Organizations

 

Ability to edit the organization description.

 

Global permissions

They grant one or several user groups the following rights:

Admin 
01 Full permissions (included estimations)Grants all the permissions, overrides the security levels and should be restricted to the administrator.
10 Show Organization’s UsersAbility to see the organization users.
20 Manage Organization’s UsersAbility to see, create, delete or edit the organization users.
30 Show Estimations PermissionsAbility to see the estimations permissions.
40 Manage Estimations PermissionsAbility to see, create, delete or edit estimations permissions.
50 Show Global PermissionsAbility to see the global permissions.
55 Manage Global PermissionsAbility to see, create, delete or edit the global permissions.
60 Show Organization PermissionsAbility to see the organization permissions.
65 Manage Organization PermissionsAbility to see, create, delete or edit the organization permissions.
70 Show Modules PermissionsAbility to see the modules permissions.
80 Manage Modules PermissionsAbility to see, create, delete or edit the modules permissions.
Library – Organization 
20 Show organizationsAbility to see the organizations.
50 Show Custom FieldsAbility to see the custom fields.
60 Manage Custom FieldsAbility to see, create, delete or edit the custom fields.
64 Show ViewAbility to see the view.
66 Manage ViewAbility to see, create, delete or edit the view.
70 Show Estimation StatusesAbility to see the estimation statuses.
80 Manage Estimation StatusesAbility to see, create, delete or the estimation statuses.
90 Show GroupsAbility to see the groups.
91 Manage GroupsAbility to see, create, delete or edit the groups.
93 Show Projects Selected ColumnsAbility to see the selected columns.
94 Manage Projects Selected ColumnsAbility to see, create, delete or edit the selected columns.
Organization Data 
10 Show Acquisition CategoriesAbility to see the acquisition categories.
12 Manage Acquisition CategorieAbility to see, create, delete or edit the acquisition categories.
20 Show Organization ProfilesAbility to see the organization profiles.
22 Manage Organization ProfilesAbility to see, create, delete or edit the organization profiles.
30 Show Organization TechnologiesAbility to see the organization technologies.
32 Manage Organization TechnologiesAbility to see, create, delete or edit the organization technologies.
36 Show ApplicationsAbility to see the applications.
38 Manage ApplicationsAbility to see, create, delete or edit the applications.
40 Show Platform CategoriesAbility to see the platform categories.
42 Manage Platform CategoriesAbility to see, create, delete or edit the platform categories.
50 Show Project AreasAbility to see the project areas.
52 Manage Project AreasAbility to see, create, delete or edit the project areas.
60 Show Project CategoriesAbility to see the project categories.
62 Manage Project CategoriesAbility to see, create, delete or edit the project categories.
70 Show Project Security LevelsAbility to see the project security levels.
 72 Manage Project Security LevelsAbility to see, create, delete or edit the project security levels.
 80 Show Work Element TypesAbility to see the work element types.
 82 Manage Work Element TypesAbility to see, create, delete or edit the work element types.
Organization Estimation Template 
 10 Manage Estimation ModelsAbility to see, create, delete or edit he estimation models.
Projects 
10 Create Project From TemplateAbility to create a project from a template.
20 Create Projet From ScratchAbility to create a project from scratch.

 

Modules permissions

They grant the following rights as for the modules:

10 Show Modules InstancesAbility to see the modules instances.
20 Manage Modules InstancesAbility to see, create, delete or edit the modules instances.

 

Estimations permissions

They associate the security levels with the following permissions:

Admin 
01 Full PermissionsGrants all the permissions, overrides the security levels and should be restricted to the administrator.
10 Show Organization’s UsersAbility to see the users of the organization.
20 Manage Organization’s UsersAbility to see, create, delete or edit the users of the organization.
30 Show Estimations PermissionsAbility to see the estimations permissions.
40 Manage Estimations PermissionsAbility to see, create, delete or edit the estimations permissions.
50 Show global permissionsAbility to see the global permissions.
55 Manage Global PermissionsAbility to see, create, delete or edit the global permissions.
60 Show Organization PermissionsAbility to see the organization permissions.
65 Manage Organization PermissionsAbility to see, create, delete or edit the organization permissions.
70 Show Modules PermissionsAbility to see the modules permissions.
80 Manage Modules PermissionsAbility to see, create, delete or edit the modules permissions.
Library – Organization 
20 Show OrganizationsAbility to see the organizations.
50 Show Custom FieldsAbility to see the custom fields.
60 Manage Custom FieldsAbility to see, create, delete or edit the custom fields.
64 Show ViewAbility to see the view.
66 Manage ViewAbility to see, create, delete or edit the view.
70 Show Estimation StatusesAbility to see the estimation statuses.
80 Manage Estimation StatusesAbility to see, create, delete or edit the estimation statuses.
90 Show GroupsAbility to see the groups.
91 Manage GroupsAbility to see, create, delete or edit the groups.
93 Show Projects Selected ColumnsAbility to see the selected columns.
94 Manage Projects Selected ColumnsAbility to see, create, delete or edit selected columns.
Organization Data 
10 Show Acquisition CategoriesAbility to see the acquisition categories.
12 Manage Acquisition CategoriesAbility to see, create, delete or edit acquisition categories.
20 Show Organization ProfilesAbility to see the organization profiles.
22 Manage Organization ProfilesAbility to manage the organization profiles.
30 Show Organization TechnologiesAbility to see the technologies of the organization.
32 Manage Organization TechnologiesAbility to see, create, delete or edit the technologies of the organization.
36 Show ApplicationsAbility to see the applications.
38 Manage ApplicationsAbility to see, create, delete or edit the applications.
40 Show Platform CategoriesAbility to see the platform categories.
42 Manage Platform CategoriesAbility to see, create, delete or edit the platform categories.
50 Show Project AreasAbility to see the project areas.
52 Manage Project AreasAbility to see, create, delete or edit the project areas.
60 Show Project CategoriesAbility to see the project categories.
62 Manage Project CategoriesAbility to see, create, delete or edit the project categories.
70 Show Project Security LevelsAbility to see the project security levels.
72 Manage Project Security LevelsAbility to see, create, delete or edit he project security levels.
80 Show Work Element TypesAbility to see the work element types.
82 Manage Work Element TypesAbility to see, create, delete or edit the work element types.
Organization Estimation Template 
10 Manage Estimation ModelsAbility to see, create, delete or edit the estimation models.
Projects 
10 Create Project From TemplateAbility to create a project from a template.
20 Create Project From ScratchAbility to create a project from scratch.

 

> Workflows

Statuses or stages can be specified on Estimancy and then be incorporated in a workflow to follow the progression of an estimation.

 

For instance, the statuses of the workflow can be defined to follow the progression of an estimation as: “quote request”, “quotation in progress”, “to be validated”, “validated”, “rejected”, “archived”; or to follow the different estimations throughout the project.

Instance of Workflow specification:

On Estimancy, statuses may be used to specify the permissions over an estimation. A couple Status/User Group may be associated with a Security Level. The permissions of the security level will then be granted to all the users of the group concerning all the estimations under that status (cf. Estimations security p.22).

 

> Customizable information

Estimancy has five tabs under which the values characterizing the future estimations will be listed:

  • Applications
  • Project Areas
  • Project Categories
  • Platform Categories
  • Acquisition Categories

It is important to bear in mind that thanks to the dictionaries, those notions may be renamed to match the organization terminology.

 

> Profiles

On Estimancy, the profiles of actors who will get involved in the project may be created and edited. A profile is characterized by a name, a description and an hourly rate.

 

> Technologies

Estimancy establishes a list of the development languages the organization uses. They may be used by the size module if the weight of a unit of work were to depend on the technology.

 

> The calculation modules and their instances.

This paragraph aims to provide a general overview of the functioning of the modules.

Estimancy offers 4 types of configurable calculation modules:

Each configuration is saved in a module instance. Those modules provide output data that is operable by the next modules of the estimation plan.

Furthermore, each module may provide data that can be displayed on a “Dashboard” during the execution of the plan.

 

Specifications of the module of Size:

 

There are two types of size modules:

 

Unit of work module

That module lists and identifies the complexity of the basic components (Unit of Work) necessary to calculate the size of the project. For instance, that size may be expressed in units of work that are specific to each organization or in Function Points.

Thanks to that module, the user can configure as many outputs as he wants.

Thanks to that module, the user can configure a set of weighting coefficients. Those coefficients enable to set the units of works during the counting.

That module can provide other outputs thanks to the application of weighting coefficients on the size of each unit of work. The module can then provide an output that is the sum of several elements.

The list of Units of Work, the determination rules of the UW complexity and the calculation of the size are recorded in an instance. That instance will be used in the Estimation Plan of the Estimation.

Data that can be displayed in the widgets of the dashboard for that module, is the following:

The displayable data may vary from an instance to another depending on the configuration of the outputs specified at the instance level.

 

Module of knowledge base of size (capitalization)

That module of size compares the project to a knowledge base of similar estimates to determine its size. That module displays an interactive interface on the dashboard.

Specifications of the module of transformation:

There are four transformation module types:

 

The generic effort module:

 

That module can have a size or an effort as input and may transform the input in an effort or a size thanks to the weighting factors configured in the module calculations. It can take in 4 inputs of the same type and generate 4 outputs of the same type (size or effort). Nevertheless, inputs and outputs are not necessarily the same type.

That module configures the calculation to model an exponential curve (standard shape of a size/effort graph).

The equation is the following:

  P.(C.size)S  
  • “P” is the product (or the sum) of several coefficients that are configured in an instance of the module.
  • “C” is the product (or the sum) of several coefficients that are configured in an instance of the module.
  • “S” is the product (or the sum) of several coefficients that are configured in an instance of the module.

That equation enables to implement the COCOMO calculation of the effort.

Some coefficients of the calculation of P, C or S can only be known during their calculation (i.e. team maturity or language development coefficients). The module records the values corresponding to each case. During the execution of the module, the system will let the user make his/her own adjustments (Figure 2).

Figure 2

The data which may be displayed in the widgets of the dashboard is the one that is specified as output and input. For instance:

 

 

Specifications of the modules of operation:

That module executes calculation operations (sum, average, multiplication) with the inputs and outputs of the modules of the estimation plan. As many inputs and outputs as necessary can be specified.

Specifications of the Expert Judgment:

That module incorporates an expert judgment into the calculation enabling to enter or modify Size, Effort, Cost, Bug or Weight types.

Specifications of the module of Capitalization Base of effort:

That module exploits a data base gathering previous projects results (specifications, size, real effort). The system uses specifications of your project to identify similar projects in the data base. By comparison, the module calculates the effort corresponding to the input charge by linear regression. Organization internal or external bases such as ISBSG can be selected.

 

Specifications of the activity module:

That module uses an effort as input to calculate the effort of different activities (WBS).

It is often used to calculate the efforts for each stage in percentages, based on the output of the effort module.

That module also manages the specifications of variables and their percentage compared to input value. Those variables spread the input effort as a UTR (Unit Test Realization), Test, etc.

Depending on the configuration of the instance, the stages of the project can be divided based on the input values (I1, I2, …) and/or variables which were previously specified (UTR, TEST, etc.).

The division of the effort of each stage of the project will be calculated thanks to the calculation formulae using specified variables and the other stages of the WBS.

That module calculates the costs. The contribution of the profiles per stage may be configured in the instance. Thus, since each profile specifies an ADR (Average Day Rate), the module calculates the costs for each stage and the total cost.

Configuration of the contribution per profile:

The data which can be displayed in the widgets of the dashboard are the following:

Specifications of the module of Staffing:

 

That module provides a duration and the maximum staffing of the project based on an effort.

The duration is calculated according to the MacDonnell formula, the parameters of which may be modified in the Instance.

The maximum staffing is calculated with the Rayleigh formula, the parameters of which may also be modified et saved in the Instance.

 

There are 2 types of configurations for that module:

  • Standard (fixed duration)
  • “Time-Cost Trade-off” (alterable duration)

The data which may be displayed in the widgets of the dashboard is the following:

 


An estimation in Estimancy

 

An estimation represents an amount of information divided in 5 sections:

 

Description

The description section includes the following information:

  • Name of the estimation: the name must be unique
  • Private estimation: the estimation can only be seen by its creator
  • Application name: reference application name (free field if no application is specified in the Application tab, otherwise, it must match an existing application (cf. “Free fields”)
  • Version: version number
  • Model: Name of the model if the estimation was created from an estimation model
  • Description: information about the nature of the estimation or the project
  • Start date: date of the creation of the estimation by default. Alterable and may represent different dates (start date, end date, etc.)
  • Creator: user who created the estimation
  • Estimation status: cf. Workflow

And 4 fields to be selected form drop-down lists:

  • Project area
  • Acquisition category
  • Platform category

  • Project category

 

Product

The “Product” section is optional. It describes the different deliverables/components of the project.

 

Security

The security section manages the users or user groups permissions over the estimation.

 

The configuration enables to allocate security levels over the estimation to users and groups.

Those security levels are combined with the configurations specified in the statuses.

The permissions of a user or a group are the combination of the security levels permissions of the estimation and the status.

For instance:

The following security levels:

SHOW:                     ability to see an estimation

MODIF:                     ability to see an estimation

ability to edit an estimation

 

Configuration of a status permissions:

Groups                       Estimator       In charge

Status

In progress                           MODIF          SHOW

To be validated                      SHOW           MODIF

 

Configuration of the estimation:

Groups          MODIF                      SHOW          

Groups                          

Estimator                       X

In charge                       X

 

The resulting permissions are the following:

 

For “In progress”:

Estimator:                 may see an estimation

may edit an estimation

In charge:                 may see an estimation

 

For “To be validated”:

Estimator:                 may see an estimation

In charge:                 may see an estimation

may edit an estimation

 

Estimation Plan

That section describes the process that will be followed to calculate the estimation.

Estimancy simplifies project estimations with a step by step estimation:

  • Calculation of the size of the project to develop
  • Calculation of the effort
  • Spreading of the efforts on the activities and cost calculation per profile
  • Calculation of the duration according to allocated resources

 

Depending on the chosen process, here are examples of estimation plans:

Example 1:

Code lines – Maturity – Effort/cost/phase – Staff duration

 

 

 

  • Size by comparison > number of lines of code
  • Size transformation (SLoC) – Effort (d.m)

 

  • Effort and activities cost calculations
  • Duration and staffing calculation

 

 

 

Example 2:

Function points – Capitalization – Activities

 

  • Size in Function points
  • Transformation of size (gross to net FP)
  • Transformation of size (net FP) to effort (d.m) according to the data base
  • Calculation of activities, effort and cost

 

 

 

Example 3:

Story point – Language – Activities

 

 

  • Size in story points
  • Transformation of size in effort depending on language
  • Calculation of effort and cost activities

 

 

 

 

The estimation plan enables to add or remove modules or to link them to specify which outputs will be transmitted to the following modules inputs.

Dashboard

The dashboard executes the estimation process specified in the estimation plan to carry out the estimation. It enables the user to do the calculations and to obtain the results in the form of widgets.

 

History of the estimation

The history section establishes the history of the estimation when a new version is created.

 


Estimation models

 

> Object

An estimation model must be specified to provide the final user an all-inclusive tool.

That model includes elements which will enable the user to initialize an estimation.

 

> Configuration

The initialization affects all the elements of an estimation (except the name).

Thus, prepared models of estimation plans, the instances of each modules and the configuration of the dashboard with the widgets will be available.

 

> Permissions

The model includes the permissions which determine its own access and the permissions over the estimations that will be created from that model.

A model will then be, visible or not and editable or not by different users.

In doing so, it will be possible to determine an estimation process for a given population.

Instance of the configuration of an estimation model (permissions over the model, permissions over the future estimation).

 


Estimations management

 

Thanks to Estimancy, the user can manage the estimations. Several functions are available to do that. They are materialized by the icons in the Actions column of the table.

Those icons handle the following actions:

  • To change the status
  • To start the estimation
  • To create a new version or a new branch
  • To see the different versions and branches
  • To see where the estimation is used (non-working)
  • To see the description of the estimation
  • To duplicate the estimation

    To delete the estimation

Those actions are only feasible if the permissions of the user allow it.

 

> Versions management

The version change implements a few automatisms. For instance, the status of the former version can be automatically changed to archive it.

That “Archive” status may be specified when configuring the statuses and may be used when changing the version without following the workflow.

Instance of specification of the “Archive” status.

If several statuses are greeting statuses, the system will display the list and the user will select one.

The History tab of an estimation enables to see the different versions of the estimation.

 

> “Private” estimation

An estimation may be “Private”, it will only be visible by its creator.

 

> Main estimations view (custom fields)