7 Effort

advertisement
7 Effort
Introduction
This chapter discusses issues associated with effort tracking. These are suggested guidelines.
Specific implementation should be driven by your organization's needs.
Contents
This chapter includes the following sections:
August 1994
Page
Section
7-2
Overview
7-4
Effort-Tracking Issues
7-8
Suggested Implementation Approach
7-10
Sample Project Types and Effort-Tracking Activities
Guidelines to Software Measurement
7-1
Overview
Effort
Overview
This section defines effort tracking, discusses why it is a critical measure, and lists the
objectives of effort tracking.
Definition
Effort tracking is a method that allows for tracking work effort by activity and/or task.
Effort tracking may incorporate a method for collecting time for customer billing (internal or
external), project time tracking, and/or attendance. The needs of the organization should
drive the requirements of the effort tracking system.
Note: Because of billing or effort tracking policies, be careful about using billing
information for effort metrics. For example, an Information Systems department may bill
only for 40 hours per week when 60 hours are worked. If the billing information is used to
plan the next project, there is a very real risk that the project effort will be underestimated.
What Is Not Included as Effort Tracking
For the scope of this document, effort tracking does not include the following components:
 Project management
 Estimation
 Function point tracking
 Charge back or customer billing
While each of the above functions is certainly critical and may interface with effort tracking,
it is not necessarily a part of an effort-tracking system. Careful evaluation of your company's
effort-tracking objectives will enable you to best create a useful effort-tracking system.
Time as a Critical Measure
Time is a critical measure for your process-improvement efforts. Organizations are actively
looking for process-improvement methods that result in increased productivity.
Most measurement efforts require effort tracking. For your organization to benefit from
measurement data, you need to know where you are spending time and make appropriate
process improvements. Your organization can improve its effectiveness by setting some
basic effort-tracking standards.
Objectives of Effort Tracking
Possible objectives for effort tracking include supporting
 Project estimating and tracking
 Productivity metrics
 Charge-back and customer billing
 A benchmark initiative
 Budgeting
7-2
Guidelines to Software Measurement
August 1994
Effort
Overview
Your objectives may identify other supporting systems that need to be implemented.
Effort-tracking measures need to be used with other measures to produce useful business
metrics.
August 1994
Guidelines to Software Measurement
7-3
Effort-Tracking Issues
Effort
Effort-Tracking Issues
Before designing an effort-tracking system, you must get corporate agreement on a number
of issues.
While it is essential that these issues be defined and used consistently across your own
organization, agreement between organizations is not always possible. Agreement with other
organizations only becomes important when external benchmarking is a goal. Having a good
understanding of the components of your effort tracking system usually makes it possible to
normalize data for benchmarking. (See the Benchmarking chapter for further information.)
The following list is not exhaustive, but it does include most of the common issues that need
to be resolved or agreed on before designing an effort-tracking system:
 Unit of time
 Overtime hours
 Work type
 Calendar-versus-accounting month
 Staff hours per month
 Project-start and -end dates
 Project activities
 Attendance reporting and billing
 Client/user/customer project time
 Consultant or contractor time
 Nonproject time
 Project team definition
 Project categories
The remaining paragraphs in this section explain each listed issue.
Unit of Time
Companies need to define the unit in which they will report staff time. We recommend that
companies report time at least by the hour.
Overtime Hours
All work time must be reported. However, you may want to differentiate between regular
and overtime (paid as well as unpaid) hours.
Work Type
Your company may need to categorize work effort by type. See Sample Work Types on page
7-10.
Calendar-versus-Accounting Month
7-4
Guidelines to Software Measurement
August 1994
Effort
Effort-Tracking Issues
Very often, companies use a physical calendar month to track projects, and a companydefined month to track other accounting functions such as payroll or customer billing. When
this is true, it will be necessary to consider all uses when designing the effort tracking
system.
Staff Hours Per Month
The hours associated with a staff month (work month) can vary greatly among companies.
Ranges of 18 to 22 work days per month are common. In addition, the number of hours
worked per day can also vary. To benchmark with other organizations, you will need to
normalize your time data. This is not difficult if each organization understands how they
define their staff month.
Project-Start and –End Dates
What is this section about.
Your company needs to consistently define how to determine project-start and -end dates.
Exact start dates vary among organizations. Generally, when a project can be uniquely
identified, effort tracking should begin.
A project-end date is typically defined as the date it is put into production. As with project
start dates, a consistent definition for end date is imperative. The project end date marks the
point when you stop charging hours against a project.
Incomplete or partial projects need to be specified in the project attributes.
Project Activities
Each company needs to define, with consistency, which activities/tasks will be included in
the project. In addition to the established project life cycle activities (requirement, analysis,
design, construction, implementation, etc.); function point counting, documentation, and post
implementation reviews may also be included. See Sample Project Activities on page 7-10.
Attendance Reporting and Billing
In addition to project time tracking, an effort-tracking system may be used to handle
attendance reporting and/or customer billing. Each of these areas will have its own issues
that need to be addressed. For consistency and staff productivity, it is beneficial to have a
one-time tracking system. However, the needs of project managers, payroll departments, and
accounting departments may vary greatly.
You may need to look at each of the following hours differently depending upon use (that is,
payroll, customer billing, project productivity, etc.):
 Billable-versus-nonbillable hours
 Paid and unpaid overtime
 Accounting months and calendar months
 Direct and indirect project time
Attendance reporting will have issues pertaining to obtaining data within specific accounting
time periods, and capturing all staff work hours whether they are billable or not. Certain
August 1994
Guidelines to Software Measurement
7-5
Effort-Tracking Issues
Effort
time categories may require management action (sign-off) before being processed. Examples
include overtime, holiday, vacation, and sick time.
Organizations that use an effort-tracking system to bill work effort to specific clients (or
charge back) have another set of issues. These might include determining how to bill by the
day, when time is reported by the hour, and how to bill for unpaid or paid overtime.
Client-Project Time
You must determine whether total project time should include time for clients or business
units that are part of a development project team. There is no correct answer. However,
each company needs to be consistent in its inclusion of client time. Some organizations have
simply chosen not to include client time, because it is difficult to obtain and hard for the
project team to control.
Consultant and Contractor Time
When consultants or contractors (not part of the company internal staff) are part of a project
team, their time should be included in the project work effort. In many instances, it may be
necessary to separate internal staff time from consultant time, such as when there are
different hourly charge rates for each.
Nonproject Time
Nonproject time is time spent on all activities that are not defined or included as part of a
project. While this will vary for organizations, some common nonproject activities include
general staff meetings, travel, and nonproject related education. Meetings, education, and
travel that directly relate to a project should be included as part of the total effort for that
project.
Project Team Definition
Companies need to consistently define the makeup of project teams. Analysts and
programmers are typically included. Questionable (and possibly prorated) are database
administrators, network analysts, computer center personnel, management, user/business
analysts, testers, and clients.
Project Categories
Each company needs to determine a standard set of project categories. This includes
defining terms such as new development, enhancement, support, maintenance, defect
correction, etc. Some common issues usually revolve around the terms enhancement,
maintenance, and support. For example, is all enhancement work categorized as such for
measurement purposes, or are minor ones considered support? Of course this means that the
terms major and minor need to be clearly defined and uniformly used.
As you can see, establishing a policy or standard for your company and maintaining
consistency within your organization are the keys to resolving these issues. The fact is that
not all companies handle these issues the same way. Try to involve as many internal work
groups as possible to resolve these issues to minimize organizational resistance and increase
staff support.
7-6
Guidelines to Software Measurement
August 1994
Effort
Suggested Implementation Approach
Suggested Implementation Approach
This section includes suggested attributes for effort-tracking systems and suggestions for
implementation.
The suggestions in this section are a consolidated list from individuals within IFPUG who
have implemented effort tracking within their respective companies. These are just
suggestions and are not meant to infer IFPUG standards or future direction.
Attributes for Effort-Tracking Systems
IFPUG members suggest that effort-tracking systems have the following attributes:
 Accessible
 User friendly
 Reflect various reporting levels
 Interface with external systems
The following paragraphs explain each of the attributes.
Accessible
Accessible means accessible by developers, support personnel, administration, outside
contractors, users, and management. This implies that all personnel that work on a project
record their time. Again, this is only a suggestion to more accurately record how much time
is really spent on a project.
User Friendly
The user-friendly attribute is accomplished by
 Help screens to display specific activities and tasks
 Prior data entry display
 Daily or weekly input option
 Online edits to increase accuracy
Reflect Reporting Levels
Effort tracking should be available at various reporting levels with capabilities to generate
summaries for or by
 Employee
 Group Leader
 Manager
 Department Manager
 Organization
 Application
 Project
Interface with Systems
The effort tracking system should be able to interface with external systems that may include
 Function point repositories and other reporting systems
 Project tracking and management
August 1994
Guidelines to Software Measurement
7-7
Suggested Implementation Approach



Effort
Employee tracking systems
Organizational databases
Billing and charge-back systems
Suggestions for Implementation
In addition to the design suggestions, the following list includes suggestions for
implementing an effort-tracking system:
 Address issues covered in this section and others as they arise. Many of the issues
associated with effort tracking are organizational issues that can and will cause
significant delays if not decided on by all the key players.
 Establish goals and objectives for effort tracking and develop a system justification.
Decide the amount of time and effort you and your management are willing to spend.
 Identify and define project types and associated activities.
 Develop an effort-tracking system with appropriate team members and buy-in from
management.
 Document and distribute effort-tracking policies and procedures.
 Evaluate whether it will be better for your organization to develop and build an efforttracking system, or whether an available commercial application will meet your needs.
 Determine what training will be needed by the staff who will be expected to use the
system or method of effort tracking.
7-8
Guidelines to Software Measurement
August 1994
Effort
Suggested Project Types and Effort-Tracking Activities
Suggested Project Types and Effort-Tracking
Activities
This section defines sample project types and effort-tracking activities by presenting
examples of each.
Sample Project Types
The activities defined in this section may be broken down into smaller activities or rolled up
to larger activities.
Consulting: Technical service not related to a specific application. This is a type of
development work that includes strategic system planning.
Defect Correction: Applied effort to perform corrective maintenance on an existing
application.
Development: Application development effort that results in the creation of a new
information system or effort to deliver a purchased software system.
Maintenance: Applied effort that does not alter the functionality of a system, but is
necessary for the proper operation of an application. Includes items such as: conversion,
user support, problem resolution, and production support.
Enhancement: Modifications made to an existing application that results in the change of
its functionality.
Administrative: Applied effort in overhead areas such as holiday, vacation, education, etc.
Sample Effort-Tracking Activities
There are many views of what should or should not be tracked. The sample activities in this
section include one view of effort activities that can be tracked. Pick the categories that
make the most sense for the amount of management control required to complete the job. Be
aware that if your organization is not collecting any information today, there will be cultural
issues that have to be addressed for this change to be successful.
Project-Related Activities
You might want to track effort usage for the following project-related activities:
Design: Includes planning, analysis, and all areas of design work (general system design,
file and program design, code design, etc.).
Construction: Development and creation of computer program code and JCL code.
Includes all types of testing (unit testing, component, and system testing).
Documentation: Creation of both technical and functional documentation. Includes
function point documentation.
Project-Specific Education and Training: Time spent in project-specific formal and
informal education and training.
Evaluation: Time spent evaluating hardware and software options.
Hardware Set-Up: Time spent in hardware configuration.
Project-Related Meetings: Time spent in formal project-related meetings with
clients/users, organizational staff, vendors, etc.
August 1994
Guidelines to Software Measurement
7-9
Suggested Project Types and Effort-Tracking Activities
Effort
Project-Related Administration: Time spent on administrative work associated with the
project, such as budget work and preparing status reports.
Nonproject Information
The management team may want to track additional information about how time is spent, but
this time needs to be segregated from project-related effort.
Administration: Time spent attending to administrative work associated with the job, such
as budget work, preparing activity reports, and performance appraisal preparation and
review.
Holidays and Vacations: Holiday or vacation time.
Sick Days: Time absent from work due to illness.
Nonproject Time: Any time not related to a specific project. Examples include department
meetings, safety meetings, and blood drives.
General Education and Training: Time spent in general (not project) formal and informal
education and training.
Personal: Time absent from work for personal reasons.
Other: Any indirect time not otherwise accounted for: use of this category should be
minimal.
Support Information
Support may wish to organize their time tracking into the following categories:
Software Installation: Time spent in software installation.
Support - Conversion: Time spent upgrading hardware or software.
Support - Problem Resolution: Time spent investigating software failures, system
problems, etc.
Support - Production: Activity related to initiating, monitoring, controlling, etc.,
production-system processing for the client/user.
Support - Training: Activity related to training users in areas such as a PC package or
implemented system.
Support - User: General user support, which would include discussions about an
application's logic or function.
7-10
Guidelines to Software Measurement
August 1994
Download