Software Project Management in Distributed Software Development
Context
Tania Fatima Calvi Tait and Elisa Hatsue Moriya Huzita
Maringá State University, Department of Computing, Colombo Avenue, 5790, CEP 87020900, Maringá, Paraná, Brasil
Keywords: Software Project Management, Distributed Software Development.
Abstract: Distributed software development (DSD) became a reality in project development involving geographically
dispersed teams and brings challenges regarding to software project management (SPM). So, aspects such
as infrastructure problems, local organizational culture, time zone and others become part of the concerns of
software project management. This paper presents a proposition to manage software projects in DSD
context including planning and controlling aspects. Particularly it deals with human resources management,
risks and cost’s estimations as well as control of activities, fulfillment of deadlines and resources allocation.
1 INTRODUCTION
Software Project Management (SPM) became over
the years, a relevant subject to the software
engineering area. Since it brought concepts from
Business Management area, such as the manager’s
role and also important concepts regarding to
organize, coordinate, lead and control, the SPM
contributes to obtain high quality software product.
Aspects about SPM such as ethics and new way
to manager are discussed. Moreover, the integration
between technical and organizational aspects to
software projects development as well as the
incorporation of the manager role in the software
project with leader role, enabled to create a different
approach to the planning and accompaniment of the
software projects.
Therefore, this approach includes technical
(technological infrastructure) and organizational
aspects (organizational structure) in the development
and also for software project management.
Moreover, the technological evolution led to
increasing demands as it is the case of the distributed
software development (DSD) (Conchúir et al.,
2006); which became a reality with geographically
dispersed teams. The management of software
projects, in this context, is a challenge for the need
of a planning and accompaniment of the software,
because, beyond the traditionally known
peculiarities, it starts to deal with infrastructure
problems, local and organizational culture, time
zone, among others in the DSD. The monitoring
stage, includes: the control of the realization of the
activities, the meeting deadlines, and the control of
resources allocation, among others.
In this scenery, this article presents a proposition
to manager software projects in the distributed
software development context including items of
planning, controlling, human resources management,
risks and cost estimations as well as control of
activities, fulfillment of deadlines and resources
allocation. Each one these items were evaluated with
enterprises that use DSD approach (Soares et al.,
2012; Cibotto et al., 2011; Pagno et al., 2009;
Trindade et al., 2008; Leme et al., 2007; Enami et
al., 2006) and form a set of activities to support
project management in DSD.
To do so, the article presents in the Section 2, the
SPM vision is introduced to the project development
by distributed teams. On the third Section, the
necessary characteristics of SPM professional in the
context DSD. The Section 4 presents the proposition
to manage software project in DSD with the
functionalities regarding to planning and
accompanying in terms of risks, costs, schedule,
resources distribution and others. A comparison
between the traditional management practice and the
DSD management practice is presented in the
Section five. Section 6 presents works on SPM area
and a comparison with the SPM proposition
presented in this paper. The Section 7 presents the
SPM tendencies and future works.
216
Fatima Calvi Tait T. and Hatsue Moriya Huzita E..
Software Project Management in Distributed Software Development Context.
DOI: 10.5220/0004442402160222
In Proceedings of the 15th International Conference on Enterprise Information Systems (ICEIS-2013), pages 216-222
ISBN: 978-989-8565-60-0
Copyright
c
2013 SCITEPRESS (Science and Technology Publications, Lda.)
2 PROJECT MANAGEMENT
WITH DISTRIBUTED TEAMS
Aiming at the sharing of physical and human
resources, the software development with distributed
teams requires from the manager new abilities and
concerns associated to those that are usual in the
management area such as planning, leading,
coordinating and monitoring.
Project Management (PM) involves technical
and human factors. So, a project manager must
consider these factors, to know the tools and
techniques that might be used to plan and to control
the project and also to motivate and coordinate the
team. Still, it is responsibility of the manager to
solve the problems and to use the most appropriate
tool and technique for each situation. Studies in the
management project area (Favero, 2010) also point
new challenges to the managers in the actual
configuration of the organizations guided by high
competitiveness and globalization of the services.
The DSD increases the need of formalism in the
PM’s activities and, also, the need of a support tool
to the PM. Thereby, new challenges are introduced
to those involved such in management level as
operational. While it deals with geographically
dispersed staff, DSD allows the integrations between
different cultures and the sharing of ideas and
knowledge.
However, it is necessary to support the manager
activities with tools that storage information which
can be recuperated in anytime. So, these tools must
be mechanisms to provide the integration between
social, cultural and organizational aspects as well as
offer support to deal with problems and solutions
that occur during the project development.
Some practices to support project managers in
DSD are: to storage cultural, social and
organizational differences in places where the teams
are allocated; to storage the knowledge accumulated
by project manager; to storage organizational and
technical problems and their respective solutions; to
disseminate knowledge between team members and
to organize meeting to promote the experience share.
Other cultural factors beyond those already
covered as gender differences and individualism are
approached by Evaristo et al., (2004). Aspects
related to software development, such as
communication between teams and intellectual
property, become also more complex when dealing
with the DSD (Enami et al., 2006).
3 THE PROFESSIONAL SPM
The software project manager in a distributed
environment must know the local, national and
organizational culture so that the project has more
chance of achieving success. Two elements have
become critical to the SPM: the communication and
knowledge (Sato et al., 2006).
When planning communications, the manager
must take into account the geographical distribution
in the analysis of communication requirements, so
that the processes of information distribution,
performance reporting and managing stakeholders
are carried out effectively. It is important to invest in
communication tools, such as teleconferencing,
messaging, groupware and awareness tools that
focus on the development of group work and vision
of the group about the work that each individual
develops.
In relation to the knowledge of the project
manager, it was concluded that the knowledge
needed to manage the software project concerns the
body of knowledge about administrative processes
in software management with the addition of
technical expertise for software development.
In terms of culture, there is a simple way to
identify them because they are embedded in every
action. People do not think of themselves having
values or culture, they just think that the values they
bring with them are those who care to all mankind
(Olson and Olson, 2004). The manager cannot take
their culture as standard or right. Not only by the
manager, but all participants should be aware that
different people have different cultures.
4 A PROPOSITION TO MANAGE
SOFTWARE PROJECTS IN DSD
This proposition named Software Project
Management in DSD (SPM-DSD) is resulted from
studies, applications and evaluations carried out in
enterprises that adopt DSD approach (Soares et al.,
2012; Cibotto et al., 2011; Trindade et al., 2008;
Leme et al., 2007; Pagno et al., 2009 and Enami et
al., 2006). SPM-DSD is organized in two steps:
planning and monitoring project as illustrated on
figure 01.
SoftwareProjectManagementinDistributedSoftwareDevelopmentContext
217
Project
Planning
Figure 1: SPM-DSD structure.
Those two steps are required for project
management software because the first step actions
are taken to indicate what should be done in the
project and the second activity, the follow-up, must
be verified whether the actions that were defined in
the planning stage are actually being performed. Its
purpose, besides checking if the activities are being
carried out, is the detection of errors or problems for
subsequent corrections, ensuring thus the success of
the software project. Subsequently are treated model
elements of planning, human resource management,
risks and costs as part of the planning activity. In the
monitoring activity of projects the control and
monitoring of activities and meeting deadlines are
addressing.
4.1 Planning
Currently, with a software distributed development
environment, a number of challenges is given to
companies engaged in this area as: personnel
selection and control; risk management,
communication, measurement software, among
others. One cannot neglect the formation of teams
in such an environment known as Virtual Teams
(Smite, 2004), which, besides being physically
dispersed, they reflect the organizational culture.
The software development has been increasingly
enhanced by the existence of models and techniques
that contribute to its quality development (Pressman,
2005). However, problems remaining in the area
complicate the development process, such as lack of
documentation and lack of use of methodology. In
turn, the storage and retrieval of information have a
considerable development of techniques such as
Data Warehouse (DW), aimed at optimization of the
data.
It should be noted, too: (1) the importance of
considering organizational culture as a motivator of
success and failure of projects and, especially when
dealing with geographically dispersed teams, when
each team has its own culture and how to develop
projects (Enami et al., 2006), (2) the differences
between the stakeholders themselves, which reflects
different organizational and national cultures
(Conchúir et al., 2006). Therefore, when dealing
with these teams that are configured as virtual teams,
a distributed environment should address issues of
intellectual property, local culture, time zone, among
others.
4.1.1 Planning Model
Within the context of DSD, by establishing an
information systems planning model, it becomes
relevant to: consider matters concerning the form of
work organization in distributed development of
software; specify how to select and allocate teams
distributed; define the tools, support for project
management, defining the types of documents and
establish the form of communication for the
achievement of planning at various levels. Even now
the peculiarities concerning the development of
distributed software should be raised, which can
impact the success or failure of projects.
With regard to the planning model, we can
highlight the concern to include the characteristics of
DSD as well as the needs of management,
culminating in the composition of the following
steps: (1) distributed teams management, (2) aspects
of standardization and infrastructure, (3) virtual and
face meetings and (4) documentation management.
Each of these stages comprises a set of activities to
be undertaken for planning (Cibotto et al., 2011)
The first phase is the formation of teams located
in different geographical locations and addresses the
determination of those responsible for planning as
well as the appropriateness of the activities they
perform in organizational planning for the DSD.
In the step of standards and infrastructure
aspects, are dealt several items necessary to maintain
the organization's infrastructure to provide
conditions to work in DSD, and care with the
specific laws of the places where teams are located.
In the virtual and face meetings, the process used
for meetings is defined, especially for planning
meetings. In addition to virtual meetings are handled
aspects of relationships between people, such as
Planning Model
Human Resources
Management
Risk Management
Estimated Costs
Control of
implementation of
activities
Adherences to
deadlines
Control of
resources
distribution
Project
Monitoring
S
P
M
ICEIS2013-15thInternationalConferenceonEnterpriseInformationSystems
218
communication, brainstorming, partnership and
engagement of the teams.
The document management step consists in
managing the necessary documentation generated
during the meetings regarding the planning. Aside
from storage, media of cataloging and organizing are
handled for future research.
The actions of planning within the four stages are
distributed in three organizational levels exposed by
Enami et al. (2006), namely: general manager, local
manager and project manager.
4.1.2 Human Resource Management
The lack of communication between distributed
teams is one of the biggest problems faced by the
SPM in coordinating and controlling the activities of
a software project (Casey, 2010). With the
development of a tool to handle communication
between virtual teams (Trindade et al., 2008) came
to the organization the features: meeting schedule,
meeting in progress and finalize meeting. In addition
to communication and the preparation of the minutes
after the end of the meeting, the tool sought to
replicate the needs and existing functionality in a
formal meeting and place, adding the unique
characteristics such as a DSD timing and
parallelism.
The communication between virtual teams brings
the need to: support synchronous communication,
explicit and formal, to support the DSD; need to
make group decisions, need for leadership in virtual
meetings. This communication is configured in two
types: (1) Communication Systems between Groups,
by enabling real-time communication and enable the
recording and parallel communication and (2)
Decision Support Systems Group, for coordination
of the present communication to promote the sharing
of ideas and resolution of impasses through voting,
thus encouraging the search for better solutions.
In this sense, the communication tool presented
in Trindade et al. (2008) has as main features: Allow
synchronous communication; To not limit the
number of participants; Support differentiation
profiles; Provide formal control of the process;
Allow viewing project artifacts; Enable share
documents and images; Allow to keep history of
conversations; Allow editing cooperative; Allow to
store the document generated by the meeting
(minutes) so that it can feed back corrective actions
with the environment and their projects and allow
for the vote decision.
4.1.3 Risk Management
According to Karolak (1998), the risks in DSD
projects are likely to be greater emphasis on aspects
not so visible. There should be activities to identify
risks and plan mitigation strategies, and there may
be three categories of risks in DSD projects:
organizational, technical and communication. In
addition, there may be risks in more than one
category, and these should be high on the priority
list.
The strategy presented by Leme et al. (2007) is
stratified by the scope which the risks can impact:
Projects, Products and Business. Its phases are:
Discovery Risk, Risk Assessment, Mitigation,
Monitoring and Learning and Dissemination of Risk
and the solution adopted.
During the course of software design, software
engineer should report the problems experienced and
observed during development, which are stored in a
database system. Such information will be used by
the project manager in monitoring and control.
A knowledge base of risks should be configured
to store classifications, definitions, diagnosis and
risk assessment systems, and capture feedback from
the team's experience. The risk review process
should be well managed to ensure that all knowledge
was captured such as the changes and actions taken
when identifying a risk.
Therefore, one challenge for the SPM to manage
risk in DSD is in relation to communication of the
occurrence of a particular risk for the various units
distributed and the dissemination of the risk as much
of the solution.
4.1.4 Cost Management
To Pagno et al. (2009) two large groups can be
considered when dealing with cost estimates: (1)
focus on software development organisations (2)
focus on software product, what refers to the
elements considered by (Boehm, 1981) apud
(COCOMO, 2008): product attributes, hardware,
personnel and design. However, estimation of costs
involves traditionally known aspects of hardware,
software and training, and incorporates other costs
not covered by the organisations such as the direct
and indirect costs.
Specifically in the DSD, the particular
characteristics of such development were raised,
which generate additional costs in terms of
communication infrastructure, standardization, and
others linked to geographic dispersion. A tool for
estimating the cost to the DSD, with the
incorporation of the types of costs of accounting
SoftwareProjectManagementinDistributedSoftwareDevelopmentContext
219
area, can contribute to a cost estimate closer to the
project reality.
The characteristics of the DSD bring elements
that influence the cost estimates (Pagno et al., 2009)
are: (1) there is the geographical dispersion that
needs infrastructure for efficient communication
with fault tolerance; (2) with regard to human
resources, it may be necessary to conduct training
meetings and training sessions to standardize
communication between teams; (3) laws in different
places, which influence the cost estimates because
there are different taxes, whether they are labor, civil
or commercial; (4) among the relevant aspects of the
tools available, can be approached the use of the
COCOMO model to calculate the effort, time and
costs involved in the project, adopted in practically
all the tools; (5) increase the types of software
development costs in accordance to the classification
of the accounting area; and to include the direct and
indirect costs as part of the costs to be covered in the
cost estimates and the need to use a tool to support
the project management cost estimate for the DSD.
4.2 Software Projects Monitoring
The completion of the software projects planning
also assists in preparing the follow-up phase. Thus,
the data stored in the planning phase such as human
resources, schedule, cost estimation and others will
be monitored to verify if the project is running
according to plan.
4.2.1 Schedule
The schedule appears as an instrument of great value
to check if the activities are being carried out on
time. Activities should have, beyond the periods of
start and end, those responsible for implementing
them. It is necessary controlling Local, Result and
project current situation.
The item Local is taken in order to identify
where the activity is being set, because as in
distribution the monitoring of local responsibilities
is relevant as people are in different places working
in the same project. The item Result of the activity
must contain the product generated in the execution
of the activity, which may be to consider a
document, the compilation of information in the
analysis of requirements, the completion of a
procedure, among others. The current situation may
be indicated in four ways: completed, in progress,
delayed and suspended.
The software developer is responsible to update
the status of activities attributed to him/her.
However, the computerized system that controls the
schedule can check the end date of activity with the
current date and indicate the delay in activity, with
warning shot for the software project manager so
that they can take appropriate action.
4.2.2 Resource Allocation
SPM function is to provide the proper allocation of
both human and material resources. For the
development of software both features are present,
which can be verified in human resource
management, in estimating costs and risks treated in
the planning activity.
The resources can be allocated in two ways: (1)
in stages, respecting the implementation periods of
activity, (2) for the entire project at the beginning of
activities. In the case of DSD, one must also
consider the local situation in terms of both
infrastructure and human resources.
During the performance of activities, monitoring
of the distribution can avoid future problems and
ensure a successful project. Therefore, the
monitoring of the project can be based on the
physical and financial budget for the project,
comparing the estimated value and the amount
actually used in the project.
5 SPM TRADITIONAL
PRACTICES X DSD
PRACTICES
From the studies and application of research results
in a Distributed Software Environment (Cibotto et
al., 2011; Pagno et al., 2009; Trindade et al., 2008;
Leme et al., 2007; Enami et al., 2006), we set up the
Table 01, below, bringing a basic comparison
between the traditional and SPM to DSD, presenting
differences in the items: profile, human resource,
cost and risk.
It is observed that in SPM in DSD the managers
works demand is increased as they must add to the
traditional activities other ones such as monitoring
the activities in each local and the knowledge of the
socio-cultural reality of the members of the team.
This implies that every project designed to
distributed teams should consider the technical
aspects inherent to the project and to each location
geographically dispersed as well as social, cultural
and religious aspects that can impact in the success
or failure of the project if it ignored the influence in
the staff.
ICEIS2013-15thInternationalConferenceonEnterpriseInformationSystems
220
Table 1: Comparison between Traditional SPM and SPM
in DSD.
Traditional
SPM
SPM in DSD
Activities
Ability to
plan,
coordinate,
motivate and
control.
Leadership.
Knowledge of local,
national and
organizational
culture;
Increased
communication skills;
leadership;
Use of communication
tools;
Knowledge of various
laws
Human
Resource
Requirements
for selection /
allocation:
profile,
skill and
competence.
Integration, specific
feature as
domain of language
Risk Local control Dissemination of risk
Cost Local
Distributed
Consider regional
differences in
infrastructure,
manpower etc.
Adding training event,
updating etc.
Control
and
monito-
ring
activities
Local and
side-by-side
Scheduling activities on
site; Distributed;
consider
time zone and cultural
differences; Verification
of implementation of
activities at each site;
Contact with local
coordination and local
management.
6 RELATED WORKS
The SPM presented in this paper results from
researches conducted within the activities of
planning and monitoring of software projects
specifically in management of human resources,
costs and risks in the context of distributed software
development.
In the context of DSD, recent research directed
to other aspects, as relevant, such as:
Casey & Richardson (2006) and Casey (2010)
who discusses aspects to the management of
virtual teams with focus in the areas: alignment
with the goals and organizational objectives,
risk management, infrastructure, virtual team
process and conflict management;
Lewis & Katsorchi-hayes (2006) who introduce
the virtual work in the organisations from a case
of a global industry;
Jiménez et al (2009) that, by introducing the
challenges in DSD, highlight the difficulties of
communication between people as the subject of
most researches;
Noll et al. (2010) present barriers to
collaboration among globally dispersed teams,
highlighting, among them the language and
cultural difference;
Peixoto et al. (2010) dealing with ways to
reduce costs in the developed projects globally,
from estimation of effort;
It can be seen by the research cited that there is a
recurrent concern in dealing with DSD that are
people participating in the development process,
whether in cultural aspects or in effort estimation.
The difference between this related works and
the approach presented in this paper is the direction
for management activities that encompass planning
and monitoring activities directly, related to the daily
affairs of the development process and its
management in the context of SPM, obviously with
the consideration of aspects such as organizational
strategy or cultural differences that, in principle, are
handled in a strategic level in organizations.
7 TRENDS IN SPM
When dealing with virtual teams, SPM brings
additional elements to the planning and control
software projects such as cultural differences, effort
estimation distributed, among others, addressed from
Carmel (1999) to Casey (2010). A significant factor
emerged from the risks management approach calls
attention to the DSD, which is spreading the risk
from storing information about the type of risk and
the solution for the treatment of it. Accordingly, the
information store becomes a necessity in DSD as a
way to provide data for decision making process by
SPM, which can lead to future work the introduction
of specific areas such as data warehousing, data
mining and knowledge management.
So, to treat the information generated in DSD it
is primordial developing technical and automatic
tools that provide support in manager in according
with the knowledge conversion process to
externalization process: to create a data repository
with information about problems and solutions and
SoftwareProjectManagementinDistributedSoftwareDevelopmentContext
221
to accumulate all information relevant for the project
since to know cultural differences until solutions.
Another important aspect, the measurement of
software in distributed projects is in development
with the search for indicators that enable the
measurement as a factor to improve the quality of
processes and product development by
geographically dispersed teams given that the
traditional measurements may not correspond with
activities related to distribution.
Future research also points to greater integration
of technical, organizational and social aspects as the
area of SPM is a multidisciplinary field involving
areas such as Business, Psychology, Law, Computer,
among others. The knowledge of each of these areas
helps to establish a framework that provides support
for SPM, especially in planning activities and
controlling project software.
ACKNOWLEDGEMENTS
CNPq for financial support, the members of the
DSD group of UEM and software enterprises by the
partnership in the evaluations.
REFERENCES
Boehm, B. W.: Software Engineering Economics, Prentice
Hall, 1981.
Carmel, E., 1999. Global Software Teams – Collaborating
Across Borders and Time - Zones. Prentice Hall, USA,
269p.
Casey, V., 2010. Virtual software team project
management. Journal Brazilian Computer Society
Vol ume 16 , pp: 83–96.
Cibotto, R. A. G; Tait, T. F. C.; Malucelli, A.; Reinehr, S.,
2011. O Fator Humano no Desenvolvimento
Distribuido de Software. In: WOSES - Workshop Olhar
Sociotécnico sobre a Engenharia de Software, in
SBQS Simpósio Brasileiro de Qualidade de Software,
Curitiba.
COCOMO. COCOMO II: Model Definition Manual,
http://sunset.usc.edu/csse/research/COCOMOII/
Acesso em: 05/03/2008.
Conchúir, E. Ó.; Holmstrom, H.; Agerfalk, P. Fitzgerald,
B., 2006. Exploring the Assumed Benefits of Global
Software Development. International. Conference on
Global Software Engineering, Florianópolis, Brasil.
Enami, L. N. M; Huzita, E. H. M; Tait, T. F. C., 2006. A
project management model tool a distributed software
engineering environment. In: International Conference
on Enterprise Information Systems, Paphos-Cyprus.
Evaristo, R., Scudder, R. & Desouza, K., 2004. A
Dimensional Analysis of Geographically Distributed
Project Teams: A Case Study. Journal of Engineering
and Technology Management. 21(3), 175-189.
Favero, J., 2010. Renewing the Software Project
Management Life Cycle. IEEE Software.
January/February.
Karolak, D. W., 1998 Global Software Development –
Managing Virtual Teams and Environments. Los
Alamitos, EUA: IEEE Computer Society.
Leme, L. H. R.; Huzita, E. H. M.; Tait, T. F. C., 2007.
Strategy of Risk Management for a Distributed
Software Engineering Environment. In: International
Conference on Enterprise Information Systems,
CSAC. Funchal - Portugal.
Lewis, P.; Katsorchi-Hayes, M., 2007. Trust and virtual
organizations – emergent considerations for virtual
interorganizational work in the global chemicals
industry. In CSAC – In ICEIS, Funchal - Portugal.
Noll, J.; Beecham, S.; Richardson, I., 2010. Global
Software Development and Colaboration: Barriers and
Solutions. ACMInRoads., v.1, no.3.
Olson, Judith; Olson, Gary M., 2004. “Culture surprises in
software development teams”. ACM Queue vol. 1, no.
9 – December/January.
Pagno, R. T. ; Tait, T. F. C.; Huzita, E. H M.,2009.
Premissas para estimativas de custos em
desenvolvimento distribuido de software. Revista
Tecnológica (UEM) , v. 18, p. 25-35.
Peixoto, C. E. L.; Audy, J. N.; Prikladnicki, R., 2010.
"Effort Estimation in Global Software Development
Projects: Preliminary Results from a Survey," 5th
IEEE International Conference on Global Software
Engineering.
Pressman, R. S., 2005. Software Engineering: A
Practtioner´s Approach. 5. ed. New York: McGraw-
Hill, 860 p.
Sato, G..; Huzita, E. H. M.; Tait, T. F. C., 2006. O perfil do
gerente de projetos. II Simpósio Brasileiro de Sistemas
de Informação. Curitiba.
Soares, P. H., Huzita, E. H. M.; Tait, T. F. C., 2012. A
Strategy for treat with Socio-cultural Aspects in
Software Distributed Development In: International
Conference on Enterprise Information Systems-ICEIS,
Wroclav, Poland.
Smite, D., 2004. Global Software Development Project
Management – Distance Overcoming. In: EUROPEAN
CONFERENCE, Proceedings, Trondheim, EUROSPI
Springer, p.23-33.
Trindade, D. G. F, Tait, T. F. C., Huzita, E. H. M., 2008. A
tool for supporting the communication distribuited
environment for software development. Journal of
Computer Science and Technology (La Plata), v. 8,
p.118-124.
ICEIS2013-15thInternationalConferenceonEnterpriseInformationSystems
222