can vary and combining data into a meaningful
summary can become impossible. Templates,
datasheets and guidelines can formalize the process
to some extent, but this approach is still probably
suitable only for very small organizations.
In system-based tracking, the developers insert
their working time into a time management system
and the project manager can compile reports directly
from the system. This partly automated process
provides almost real-time data, as the project
manager sees the data in specified format as soon as
the developer has inserted data into the system.
Furthermore, the structure and terminology of the
data is consistent and reports can be generated
automatically. On the other hand, integration into
other development software and developers’
motivation to use the system may cause problems.
Recording-based tracking can also be called
start-pause-stop (SPS) tracking, as the recording is
typically done by pressing stopwatch-style buttons.
Thus, a developer uses the SPS user interface to
clock time spent in different activities, and the
system records and stores recorded data. Usually
these types of systems offer manual data
manipulation and insertion option, as well.
Stopwatch-style recording ensures that data is
accurate and available for project managers real-
time. The user interfaces of SPS tools are
moderately easy to use and there are also a number
of freeware implementations available. The main
disadvantages of this approach are related to the
clocking. Developers do not necessarily remember
to start and stop the recording and monitoring work
that is done away from the computer is difficult. In
addition, distraction problems may arise as
interruptions may affect on the reliability of the
recorded data.
Finally, fully automated time tracking tools are
based on the idea of minimum (or even zero-level)
involvement from the user. The recording is started
automatically when certain system is used. This
eliminates human-related problems of data accuracy,
user motivation and data format. However, even in
this approach distraction problems remain, as the
effect of interruptions to standard workflow cannot
be automatically detected. Furthermore,
compatibility with the other development tools and
methods in use has to be ensured.
In practice, time tracking is often neglected. The
biggest obstacle for that is that measuring where
developers’ time goes is not considered crucial. As
software development projects are typically very
strictly scheduled and budgeted, there is no time to
spend in activities that do not produce immediate
payback. (Sillitti et al., 2003.)
4 RESEARCH SETTING
The research was done in a division of a large
international software company. The primary
products of the company are embedded systems used
in telecommunication. However, the quantity of
software within the products is continuously and
rapidly growing. The software development unit that
this study was carried out in is located in Finland
and has about 20 software engineers.
The main objective of the study was to find out
what tasks occupy software developers’ working
time and to investigate feasibility of different time
tracking methods and tools to follow the time usage.
New tools are needed, as the case organization wants
to forecast the durations and costs of their future
projects as accurately as possible. The products of
the company are getting more software intensive and
more attention has to be paid to the efficiency of
software development activities than before.
The current time management system does not
support task-specific reporting of working time.
Recording and reporting can be done only on
project-basis. More detailed information is necessary
in order to monitor the development effort and
identifying possible problems in the development
process. For example, distinguishing design,
implementation and testing efforts from each other is
essential for evaluating the quality of both product
and process. The case organization wishes to
establish an estimation database with the new time
tracking system.
The time tracking is currently done manually.
Project planning is done with Microsoft Project, but
task lists created with the project planning tool are
not utilized in time tracking. Thus, categorization of
the activities and reporting formats of the working
time data vary. Before suggestions for selecting and
implementing time tracking tools could be made, it
was considered necessary to look into the activities
that developers perform in the organization. For that,
the developers were asked what tasks and activities
they use their working time to.
The observations from academic research
described in chapter two are utilized in the empirical
study of the case company. The factors affecting
time usage that have been identified in previous
research are included in the questionnaire and
analyzed in the case company context.
Data gathering was conducted with a
questionnaire consisting of 25 multiple-choice
questions and one open question. The questionnaire
questions were partially based on the questionnaire
used by LaToza et al. (2006). The questionnaire
ICSOFT 2008 - International Conference on Software and Data Technologies
170