=Paper= {{Paper |id=None |storemode=property |title=Software Component Allocation in Distributed Development Settings |pdfUrl=https://ceur-ws.org/Vol-863/paper5.pdf |volume=Vol-863 |dblpUrl=https://dblp.org/rec/conf/caise/Kramer12 }} ==Software Component Allocation in Distributed Development Settings== https://ceur-ws.org/Vol-863/paper5.pdf
    Software Component Allocation in Distributed
               Development Settings

                                   Tommi Kramer

                            Chair of Information Systems
                               University of Mannheim
                             68131 Mannheim, Germany
                              kramer@uni-mannheim.de



      Abstract. Outsourcing in software development projects has become
      a widely adopted utility model for dealing with competitive issues such
      as cost pressure and the lack of skilled human resources. Established
      outsourcing relationships in terms of captive offshoring centers or client-
      vendor partnerships are prone to fail due to the lack of qualified outsourc-
      ing decisions for the allocation of software components to either in-house
      or external/offshored development. Therefore, this design-oriented re-
      search endeavor aims at developing a methodology and a corresponding
      tool to inform and improve the outsourcing decision in global software
      development projects on the basis of software components. For that rea-
      son, the results of explorative case studies researching outsourcing de-
      cision making as well as concepts of collaborative software development
      are combined and form the proposed methodology for supporting project
      leads in decision making and in avoiding of instinctive and spontaneous
      decisions on the allocation of software components.


1    Introduction
From a national and global perspective, the sourcing of application systems has
significantly matured and been widely adopted over the past years. A signifi-
cant amount of software companies nowadays engage in software development
outsourcing (SDO) as they expect benefits such as cost reduction, round-the-
clock-development, or additional skilled workforce [22, 20, 21, 6]. However, the
success of outsourcing relationships in the IT sector is limited as about half of
SDO projects are prone to fail [26]. A critical aspect for the outcome of out-
sourcing relationships is the sourcing decision [20, 21]. However, despite the vast
amount and the variety of studies that analyze the outsourcing decision in SDO,
the decision making of outsourcing clients on the allocation of software compo-
nents has not been thoroughly analyzed in Information Systems (IS) research
yet. However, a deeper understanding of the sourcing allocation behavior could
on the one hand lead to contributions to the theoretical body of knowledge in
terms of sourcing behavior and on the other side it could improve the sourcing
strategy of software companies and thereby have a positive effect on the SDO
outcomes like less software defects or better customer satisfaction.
    From a global software development (GSD) perspective firms have to deal
with collaboration of team members that are separated in different locations.
Since separation in terms of location or time challenge GSD projects in regard to
their success, collaboration platforms and smart concepts for communication and
collaboration have been established. Amongst others, traceability has become a
widespread methodology in GSD for controlling, tracing, and decision making
in globally distributed software projects [16, 14].
    As stated above, the sourcing decision of software components has only been
scarcely researched while the development setups of companies have shifed to a
global perspective. Hence, GSD provides approaches and concepts that fertilize
the decision making in SDO. For that, the research questions of this doctoral
thesis are as follows: 1) Which influencing factors have an impact on the sourcing
decision of software components? 2) How can a sourcing decision for software
components based on the influencing factors be made? These research questions
lead to this theory-informed and design-oriented research endeavor including the
following research objectives:

1. Developing a methodology to inform the outsourcing decision of SDO projects
   on the allocation of software components to either in-house or external/off-
   shored teams and
2. to design and to implement an information system for supporting and in-
   forming the component-based outsourcing decision.

    The remainder of this research proposal is structured as follows: First, basic
information about SDO and GSD as well as outsourcing decisions as foundation
of this research endeavor are described in the next section. Following, related
research in the area of outsourcing decisions is presented while selected theo-
ries providing determinants for the component-based outsourcing decision are
introduced. In the consecutive subsection, the proposed approach and its deduc-
tion, the used research methodology, and the preliminary findings are described.
Finally, this proposal is conclude in the last section.


2     Fundamentals

2.1   Global Software Development and Outsourcing of Software
      Development Activities

Development of software products in a globally distributed setting is the pre-
ferred software engineering mode for an increasing number of companies [18]. In
so-called virtual teams, in which team members are spread internationally all
over the world, software is developed by decision making regarding a common
goal and as product of collaboratively contributed components [25]. Hence, a de-
velopment team may consist of members from all over the world (e.g. members
from Central Europe and Asia) and it is not bound to a single physical loca-
tion. However, the team as a whole aims at creating a common software product
independent from location, time zone, or organizational affiliation [24].
    Software development with virtual teams is highly interconnected with out-
sourcing in software development projects which ”is a multifaceted and complex
activity in which clients and vendors interact in many different ways to produce
and deliver the software services required” [10, p. 960]. This results in differ-
ent settings of client-vendor-relationships which are considered as outsourcing of
software activities to an external provider (classical outsourcing), as outsourcing
to an external provider in an offshore/farshore country (offshoring), or as internal
provision at an offshore location (captive offshoring) whereof each outsourcing
type is challenging differently but is also strongly supported by concepts of GSD
[29, 4, 31].
    The variety and availability of different outsourcing types are not only means
for large software companies. Even small and medium-sized enterprises make use
of the described sourcing models as they want to participate in the advantages
of GSD and SDO as well, which are for them primarily the access to skilled
workforce, the flexibility to allocate and to clear resources, or to save costs [18].
However, a large number of companies struggle to handle several barriers and
problems caused by outsourcing settings. Hence, just to name a few, vendor
selection, relationship quality, knowledge transfer, or hidden transaction costs
are cause for SDO projects that fail, since the goals of a software development
project are not achieved in time or with reasonable costs [7, 28, 34].
    As a consequence, this research endeavor aims at analyzing the concepts of
GSD, especially the concept of traceability and rationale management (TRM),
with regard to failing factors of SDO projects. As traceability and rationale
information in distributed software development projects represent a network
consisting of software development artifacts, connections between these artifacts,
and annotations to these connections, the stringent maintenance of such data
provides detailed information about planned software components [16, 23]. Since
the allocation of software components (in-house vs. external/offshored) in the
context of distributed software development is a crucial factor of the success of
outsourcing relationships, the focus of this research work is set on component-
based allocation decision making in SDO.


2.2   Outsourcing Decision Making

Decision making as a part of SDO is a vital element for minimizing the fault-
proneness of an outsourcing relationship. It comprises the analysis of multi-
faceted influencers regarding their implications on the sourcing strategy of a
company. Hence, a range of outsourcing decision making approaches has been
proposed in past research.
    [1] have set their focus on the make-or-buy decision, which analyzes the
fundamental type of sourcing by not only focusing on IT functions but also
on hardware. Furthermore, [13] have researched decision making with regard
to specific IT functions while [11] have put emphasize on contractual issues
of an outsourcing relationship. Additionally, decisions have been analyzed in
consideration of the sourcing location by analyzing nearshore and farshore [17].
To sum it up, the influencing factors of an outsourcing decision can, according
to [20], be categorized in:
 – Motivation to Outsource
 – Client Firm Characteristics
 – Transaction Attributes
 – Influence Sources
    However, current outsourcing decisions are generally strategic in nature [9]
and consider aspects that can be determined on a strategic level before an out-
sourcing relationship is initiated. For that purpose, several process models are
provided by the literature [5]. Decision support methodologies that focus on the
allocation of software components, meaning development decisions on the op-
erational level of software projects, are currently missing in IS research, since
determinants influencing the component-based outsourcing decision have not
been researched in detail yet.


3     Decision Making in Software Development Outsourcing
3.1   Existing Research and Related Work
The aim of this dissertation work is to analyze determinants and contingency
factors that influence the allocation decision for software components in SDO
(cf. research question 1). Additionally, this research endeavor seeks to develop a
decision support approach for evaluating software components according to their
outsourcing potential (cf. research question 2). Therefore, the wheel has not to be
reinvented, since there already exist collections and literature synopses of deci-
sion determinants as shown by [5] and [20]. They show that the sourcing decision
on the one hand depends on firm specific characteristics such as management
capabilities and the nature of the activity. On the other hand, the decision is
influenced by external environments and, hence, by economic factors. Depending
on these factors, the decision can be mapped on different potential sourcing op-
tions – e.g. in-house, outsourced, captive offshored, or externally offshored [27].
However, the focus has not yet been set on specific software development tasks
but only on a project level which disables component-based sourcing decisions.
The collection of factors influencing the decision making is still expected to be
incomplete.
    Support of the decision making process in SDO has experienced little atten-
tion in IS research only. Similar to determinants and contingency factors in the
paragraph above, decision making processes have been developed on a strategic
level thoroughly but have been unattended on project level, where the question
of component allocation arises. Thus, the dynamic model of offshore software
development by [5] serves as existing research model for outsourcing decision
making on project level, however, the granularity of the decision making process
only allows to evaluate entire projects or development phases, but not software
development tasks in terms of components. Another contribution delivers a de-
cision matrix with best practices for a possible organization form according to
the decomposition of the product development [33]. Hence, a structured and rig-
orous component-based decision making in SDO remains open and is the aim of
this dissertation endeavor.

3.2   Selected Theories
In the course of a theory informed design science research approach, relevant the-
ories from IS literature that are used to inform the search for decision determi-
nants have been selected and are explained in the following: The Resource-based
View (RBV) considers a firm as a set of productive resources [2, 35]. It explicates
that the set of resources contains a subset that is responsible for achieving com-
petitive advantage and another one that enables superior long-term performance.
Hence, the company is able to prevent resources from imitation, substitution, or
transfer.
    The Knowledge-based View (KBV) has its origin in the RBV of the firm and is
a theoretical perspective that regards knowledge as the most important resource
of the firm [12]. It states that in case of integrating knowledge from different
sources under certain conditions the efficiency is higher when it is performed
within the firm’s boundaries.
    Additonally, Transaction Cost Economics (TCE) consider the market par-
ticipation as costly while identifying conditions under which market governance
is more advantageous than internal governance of a firm [36, 37]. Hence, trans-
action costs have to be considered when participating in the market and the
assumptions of bounded rationality and opportunistic behavior of other par-
ticipants have to be taken into account. For protecting against opportunistic
behavior of another market participant transaction costs occur.
    Finally, the Systems Theory (ST) [32, 3] describes the interactions of complex
systems. It states that a complex system consists of several subsystems that
interact and are interdependent to a certain degree, depending on the design of
the system. An implication of ST is that weak interactions between subsystems
lead to an almost decomposable system.

3.3   Intended Research Approach and Preliminary Results
In order to meet the intended research goals, the structure of this dissertation
endeavor is design-oriented in nature [15] and follows the research approach of
theory building from case study research [8]. Hence, a theory-informed artifact
is created from conducted case studies. The structure of the intended research
work is briefly summarized in Table 1 and is described in detail after this. The
descriptions are complemented with preliminary findings, if already available.
    In a first step, case studies with eight small and medium-sized enterprises
(SME) that engage in GSD with virtual teams have been conducted. The study
describes the software development phases that are suitable for outsourcing, or-
ganizational and operational aspects of outsourcing decision, and characteristics
of software components that qualify for outsourcing (the publication is under re-
view at the moment). The study reveals the need for decision support in the role
                            Table 1. Research Agenda

Step                     Results / Planned Activity                         Status
Case studies             Identify need for a decision support methodology Done
                         in SDO projects on the basis of software compo-
                         nents.
Deduction of require- Deduction of requirements from RBV and KBV Done
ments from theory        of the firm, from ST, and from software engineer-
                         ing principles. Development of a fit model includ-
                         ing determinants of the allocation decision of SDO
                         projects that affect software components.
Complement      determi- Extend the set of determinants with exploratory In
nants with input from case studies to prove the relevance for practice. progress
practice
Development of a deci- Development of an outsourcing decision support In
sion support methodol- methodology for the allocation of software com- progress
ogy                      ponents (in-house development versus external or
                         offshored development).
Development of a deci- Implementing the requirements of the decision Planned
sion support tool        support methodology as mobile web-application
                         by enriching the determinants and contingencies
                         with available data from collaboration platforms
                         of GSD teams.
Evaluation               Evaluation of the the developed methodology for Planned
                         component-based outsourcing decisions as an em-
                         pirical study in an organizational setting.


of a project manager and shows that software development outsourcing is mainly
affecting the implementation phase of a software project as software components
are allocated either for in-house or outsourced development. Therefore, this re-
search endeavor intends to develop a methodology and tool support for project
managers in order to make informed outsourcing decisions for components.
    In a second step, requirements for the intended decision support methodology
were deduced from theories described in the previous subsection. From the RBV,
the KBV, and the ST the following requirements have been derived:
 – Software components that are highly interacting with other components of
   the software system should not be developed over company boundaries (ST).
 – The priorities of connected requirements or requirements sets of a compo-
   nent describe the importance of the software component and, thus, increase
   the competitive advantage of a firm. Hence, the subsystem should not be
   outsourced (KBV).
 – In the case of intense communication between software developers for the
   planning/implementation of a single component, the development should
   not be outsourced (RBV).
 – Depending on the required knowledge for the software component to be
   developed, the component is either developed in-house or outsourced, de-
   pending on the skill availability. The required knowledge has to be differ-
   entiated between functional knowledge, business process specific knowledge,
   and technical knowledge (KBV).
 – The development of a component should not be outsourced if a frequent
   exchange of information is required (TCE).
   Additional requirements were derived from outsourcing literature and soft-
ware engineering practices in GSD:
 – Traceability and rationale information resulting from collaboration platforms
   should be used to improve the sourcing decision making process (e.g. use
   traceability details such as requirements and their connectivity to software
   components in order to determine the importance of a component by the
   priority of connected requirements).
 – The solution should be optimized for project leads, since they are primarily
   in charge of outsourcing decision making. Thus, the software tool should be
   lightweight and should be provided as mobile solution but must not be lack-
   ing the interfaces to latest data stored in the firm’s collaboration platform.
    As described in Table 1, in a third step, the requirements that were deduced
from existing theories are enriched by multiple case studies of an explorative
research design. The case studies consist of interviewing experts and reviewing
as well as analyzing documents and data of software companies. For this pur-
pose, semi-structured interviews according to a questionnaire consisting of 42
open questions are conducted [38]. The case studies aim at complementing the
influencing determinants and contingency factors of component-based outsourc-
ing decision making. Thus, the target groups of the interviews are project leads
or deciders of SDO projects in small, medium-sized, or large software engineer-
ing enterprises. Currently, six companies have been analyzed and at least six
more cases are planned. The preliminary results disclose further determinants
and contingencies that influence the sourcing decision. Hence, the SDO decision
and its determinants can be modeled by the fit model as presented in Figure 1.
    According to the proposed conceptual fit model, the development of a com-
ponent-based decision support methodology for SDO projects is in the focus
of the next step. By incorporating the explored determinants of the outsourc-
ing decision, the approach makes use of the TRM approach of GSD. For each
determinant the possibility of using TRM data is analyzed and conceptually de-
scribed. Hence, this research endeavor aims at informing the sourcing decision
to a high degree with structured data from used collaboration platforms and to
increase the utility of the proposed methodology. An initial instantiation of the
component-based decision support methodology has already been published [19]
and is continuously adapted to additional findings resulting from the described
expert interviews of the case studies in step three.
    Finally, in step five and six, the implementation and evaluation of the con-
ceptual methodology complete the theory-informed artifact building from case
studies [15, 30, 8]. The design oriented nature of this dissertation endeavor is
further emphasized by a rigorous evaluation framework that checks for the fol-
lowing criteria that are notably relevant in practice: efficiency, practicability,
                                      Fig. 1. Proposed conceptual model

    Component-specific determinants          Knowledge-specific determinants   Transaction-specific determinants

    • Complexity                            • Functional Knowledge             • Transaction Costs
    • Product Maturity                      • Technology Knowledge             • Intellectual Property
    • Modularity                            • Business Process Knowledge       • Required Language Skills
    • Codifiability                         • Degree of Innovation             • Availability of Skilled Resources
    • Communication Intensity                                                  • Data Confidentiality
    • Priority                                                                 • Integration Complexity
    • Duration of Development
    • Customer Involvement




                                             Outsourcing Decision
                                           (for single software components)
                                                                                                                     FIT
                                                                                 … from existing IT outsourcing studies
                                                                                 … from expert interviews
                                            IT Outsourcing Outcome




quality of implemented components, rework rate, solution speed of the imple-
menting team/company, and transfer effort. The criteria list is not claimed to be
completed yet and is still subject to change. Due to time constraints of practi-
tioners that are seeked to evaluate the resulting artifact, it is intended to apply
a two step approach which consists on the one hand of a real case evaluation
and on the other hand of a virtual experiment based on the real case. In the
controlled experiment the findings of the real case have to be refined by further
experts.


4   Conclusion

Researching component-based outsourcing decision making in SDO combined
with the development of tool support by implementing concepts of GSD is highly
demanded by companies in corresponding outsourcing relationships. However,
not only the relevance for practice but also the request in academic research for
theoretical contribution to outsourcing decision support on a component level
lay the foundation for this research endeavor that has the goal to facilitate such
sourcing decisions by structured and well informed analyses of the component
specifics. At the same time this research work extends the knowledge base of
decision making theory in SDO.
    The next steps of this research endeavor include the completion of the ex-
ploratory phase by conducting the remaining case studies as well as the final def-
inition of the described decision support methodology. Afterwards, the intended
artifact in form of a software tool is implemented and used for the evaluation
and testing of the underlying methodology.


Acknowledgment
This doctoral research is being supervised by Prof. Armin Heinzl (University of
Mannheim, heinzl@uni-mannheim.de) and is supported by the German state
of Baden-Wuerttemberg as part of the research project ”GlobaliSE”.


References
 [1] Arnett, K.P., Jones, M.C.: Firms that choose outsourcing: A profile. Information
     and Management 26(4), 179 – 188 (1994)
 [2] Barney, J.B.: Firm resources and sustained competitive advantage. Journal of
     Management 17(1), 99 – 120 (1991)
 [3] von Bertalanffy, L.: General System Theory: Foundations, Development, Appli-
     cations. G. Braziller, New York (1968)
 [4] Carmel, E., Agarwal, R.: Tactical approaches for alleviating distance in global
     software development. IEEE Software 18(2), 22 – 29 (2001)
 [5] Dedrick, J., Carmel, E., Kraemer, K.L.: A dynamic model of offshore software
     development. Journal of Information Technology 26, 1 – 15 (2011)
 [6] Dibbern, J., Goles, T., Hirschheim, R., Jayatilaka, B.: Information systems out-
     sourcing: A survey and analysis of the literature. Communications of the ACM
     35(4), 6 – 102 (2004)
 [7] Dibbern, J., Winkler, J., Heinzl, A.: Explaining variations in client extra costs
     between software projects offshored to india. MIS Quarterly 32(2), 1 – 30 (2008,
     June)
 [8] Eisenhardt, K.M.: Building theories from case study research. The Academy of
     Management Review 14(4), 532 – 550 (1989)
 [9] Gefen, D., Wyss, S., Lichtenstein, Y.: Business familiarity as risk mitigation in
     software development outsourcing contracts. MIS Quarterly 32(3), 531 – 551
     (2008)
[10] Gopal, A., Gosain, S.: The role of organizational controls and boundary span-
     ning in software development outsourcing: Implications for project performance.
     Information Systems Research 21(4), 960 – 982 (2010)
[11] Gopal, A., Sivaramakrishnan, K., Krishnan, M., Mukhopadhyay, T.: Contracts
     in offshore software development: An empirical analysis. Management Science
     49(12), 1671 – 1683 (2003)
[12] Grant, R.M.: Toward a knowledge-based theory of the firm. Strategic Management
     Journal 17(Winter Special Issue), 109 – 122 (1996)
[13] Grover, V., Cheon, M.J., Teng, J.T.C.: An evaluation of the impact of corpo-
     rate strategy and the role of information technology on is functional outsourcing.
     European Journal of Information Systems 3(3), 179 – 191 (1994)
[14] Herbsleb, J.D., Moitra, D.: Global software development. IEEE Software 18, 16 –
     20 (March - April 2001)
[15] Hevner, A.R., March, S.T., Park, J., Sudha, R.: Design science in information
     systems research. MIS Quarterly 28(1), 75 – 105 (2004)
[16] Hildenbrand, T.: Improving Traceability in Distributed Collaborative Software
     Development. Lang, Frankfurt (2008)
[17] Kaiser, K., Hawk, S.: Evolution of offshore software development: From outsourc-
     ing to co-sourcing. MIS Quarterly Executive 3(2), 69 – 81 (2004)
[18] Klimpke, L., Kramer, T., Betz, S., Nordheimer, K.: Globally distributed soft-
     ware development in small and medium-sized enterprises in germany: Reasons,
     locations, and obstacles. In: Proceedings of the 19th European Conference on
     Information Systems (ECIS2011), Helsinki, Finland (2011)
[19] Kramer, T., Heinzl, A., Spohrer, K.: Should this software component be devel-
     oped inside or outside our firm? - a design science perspective on the sourcing
     of application systems. In: Proceedings of the 5th Global Sourcing Workshop,
     Courchevel, France (2011)
[20] Lacity, M.C., Khan, S.A., Yan, A., Willcocks, L.P.: A review of the it outsourcing
     empirical literature and future research directions. Journal of Information Tech-
     nology 25, 395 – 433 (2010)
[21] Lacity, M.C., Solomon, S., Yan, A., Willcocks, L.P.: Business process outsourcing
     studies: A critical review and research directions. Journal of Information Technol-
     ogy 26, 221 – 258 (2011)
[22] Lacity, M.C., Willcocks, L.P.: An empirical investigation of information technol-
     ogy sourcing practices: Lessons from experience. MIS Quarterly 22(3), 363 – 408
     (1998)
[23] Lindvall, M., Sandahl, K.: Practical implications of traceability. Software - Prac-
     tice & Expererience 26(10), 1161 – 1180 (1996)
[24] Lipnack, J., Stamps, J.: Virtual Teams: Reaching across Space, Time, and Orga-
     nizations with Technology. John Wiley & Sons, Inc. (1997)
[25] Maznevski, M.L., Chudoba, K.M.: Bridging space over time. Organization Science
     11(5), 473 – 492 (2000)
[26] McDougall, P.: Dexterity required. InformationWeek June 19, 34 – 39 (2006)
[27] Metters, R.: A typology of offshoring and outsourcing in electronically transmitted
     services. Journal of Operations Management 26(2), 198 – 211 (2008)
[28] Mirani, R.: Client-vendor relationships in offshore applications development: An
     evolutionary framework. Information Resources Management Journal 19(4), 72 –
     86 (2006)
[29] Olsson, H.H., Conchuir, E.O., Agerfalk, P.J., Fitzgerald, B.: Two-stage offshoring:
     An investigation of the irish bridge. MIS Quarterly 32(2), 257 – 279 (2008)
[30] Peffers, K., Tuunanen, T., Rothenberger, M.A., Chatterjee, S.: A design science
     research methodology for information systems research. Journal of Management
     Information Systems 24(3), 45 – 78 (2007)
[31] Sahay, S., Nicholson, B., Krishna, S.: Global IT Outsourcing: Software Develop-
     ment across Borders. Cambridge University Press, Cambridge, USA (2003)
[32] Simon, H.A.: The architecture of complexity. In: Proceedings of the American
     Philosophical Society. vol. 106, pp. 467 – 482 (1962)
[33] Tripathy, A., Eppinger, S.D.: Organizing global product development for complex
     engineered systems. IEEE Transactions on Engineering Management PP, 1 – 20
     (2011)
[34] Wadhwa, V., Ravindran, A.R.: Vendor selection in outsourcing. Computers &
     Operations Research 34(12), 3725–3737 (2007)
[35] Wernerfelt, B.: A resource-based view of the firm. Strategic Management Journal
     5, 171 – 180 (1984)
[36] Williamson, O.E.: Markets and Hierarchies: Analysis and Antitrust Implications.
     Free Press, New York (1975)
[37] Williamson, O.E.: The Economic Institutions of Capitalism: Firms, Markets, Re-
     lational Contracting. Free Press, New York, USA (1985)
[38] Yin, R.K.: Case Study Research: Design and Methods. Sage Publications, Los
     Angeles, California, USA (2010)