Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Stochastic Performance Analysis of Global Software Development Teams

Published: 22 August 2016 Publication History

Abstract

Measuring productivity in globally distributed projects is crucial to improve team performance. These measures often display information on whether a given project is moving forward or starts to demonstrate undesired behaviors. In this paper we are interested in showing how analytical models could deliver insights for the behavior of specific distributed software collaboration projects. We present a model for distributed projects using stochastic automata networks (SAN) formalism to estimate, for instance, the required level of coordination for specific project configurations. We focus our attention on the level of interaction among project participants and its close relation with team’s productivity. The models are parameterized for different scenarios and solved using numerical methods to obtain exact solutions. We vary the team’s expertise and support levels to measure the impact on the overall project performance. As results, we present our derived productivity index for all scenarios and we state implications found in order to analyze popular preconceptions in GSD area, confirming some, and refusing others. Finally, we foresee ways to extend the models to represent more intricate behaviors and communication patterns that are usually present in globally distributed software projects.

References

[1]
P. Abrahamsson, R. Moser, W. Pedrycz, A. Sillitti, and G. Succi. 2007. Effort prediction in iterative software development processes -- Incremental versus global prediction models. In Proceedings of the 1st International Symposium on Empirical Software Engineering and Measurement (ESEM’07). IEEE Computer Society, Madrid, Spain, 344--353.
[2]
M. Ajmone-Marsan, G. Balbo, G. Conte, S. Donatelli, and G. Franceschinis. 1995. Modelling with Generalized Stochastic Petri Nets. John Wiley & Sons, New Era Estate, West Sussex, UK.
[3]
G. Antoniol, A. Cimitile, G. A. Di Lucca, and M. Di Penta. 2004. Assessing staffing needs for a software maintenance project through queuing simulation. IEEE Transactions on Software Engineering 30, 1, 43--58.
[4]
Joaquim Assunção, Luciana Espindola, Paulo Fernandes, Maria Pivel, and Afonso Sales. 2013. A structured stochastic model for prediction of geological stratal stacking patterns. Electronic Notes in Theoretical Computer Science 296, 27--42.
[5]
A. Avritzer and A. Lima. 2009. An empirical approach for the assessment of scheduling risk in a large globally distributed industrial software project. In Proceedings of the International Conference on Global Software Engineering (ICGSE’09). IEEE Computer Society, Piscataway, NJ, 341--346.
[6]
Alberto Avritzer, Daniel Paulish, Yuanfang Cai, and Kanwarpreet Sethi. 2010. Coordination implications of software architecture in a global software development project. Journal of Systems and Software 83, 10, 1881--1895.
[7]
L. Baldo, L. Brenner, L. G. Fernandes, P. Fernandes, and A. Sales. 2005. Performance models for master/slave parallel programs. Electronic Notes in Theoretical Computer Science (ENTCS) 128, 4, 101--121.
[8]
M. Bass, J. D. Herbsleb, and C. Lescher. 2007. Collaboration in global software projects at Siemens: An experience report. In Proceedings of the 2nd IEEE International Conference on Global Software Engineering (ICGSE’07). IEEE Computer Society, Piscataway, NJ, 33--39.
[9]
M. Bernardo and J. Hillston. 2007. Formal methods for performance evaluation. In 7th International School on Formal Methods for the Design of Computer, Communication, and Software Systems (SFM’07), Lecture Notes in Computer Science, Vol. 4486. Springer, Berlin.
[10]
C. Bertolini, A. G. Farina, P. Fernandes, and F. M. Oliveira. 2004. Test case generation using stochastic automata networks: Quantitative analysis. In Proceedings of the 2nd International Conference on Software Engineering and Formal Methods (SEFM’04). IEEE Computer Society, Washington, DC, Beijing, China, 251--260.
[11]
Antonia Bertolino and Raffaela Mirandola. 2004. CB-SPE tool: Putting component-based performance engineering into practice. In Component-Based Software Engineering, Ivica Crnkovic, Judith A. Stafford, Heinz W. Schmidt, and Kurt Wallnau (Eds.). Lecture Notes in Computer Science, Vol. 3054. Springer, Berlin, 233--248.
[12]
L. Brenner, P. Fernandes, J.-M. Fourneau, and B. Plateau. 2009. Modelling Grid5000 point availability with SAN. Electronic Notes in Theoretical Computer Science (ENTCS) 232, 165--178.
[13]
L. Brenner, P. Fernandes, B. Plateau, and I. Sbeity. 2007. PEPS2007 - Stochastic automata networks software tool. In Proceedings of the 4th International Conference on Quantitative Evaluation of SysTems (QEST’07). IEEE Press, Edinburgh, UK, 163--164.
[14]
L. Brenner, P. Fernandes, and A. Sales. 2005. The need for and the advantages of generalized tensor algebra for Kronecker structured representations. International Journal of Simulation: Systems, Science & Technology 6, 3--4, 52--60.
[15]
T. R. Browning and R. V. Ramasesh. 2007. A survey of activity network-based process models for managing product development projects. Production and Operations Management 16, 2, 217--240.
[16]
M. Broy, I. H. Krüger, and M. Meisinger. 2007. A formal model of services. ACM Transactions on Software Engineering and Methodology 16, 1, 1--40.
[17]
Valentine Casey and Ita Richardson. 2006. Uncovering the reality within virtual software teams. In Proceedings of the International Workshop on Global Software Development for the Practitioner (GSD’06). ACM, New York, NY, 66--72.
[18]
Marcelo Cataldo, Matthew Bass, James D. Herbsleb, and Len Bass. 2007. On coordination mechanisms in global software development. In Proceedings of the International Conference on Global Software Engineering (ICGSE’07). IEEE Computer Society, Washington, DC, 71--80. 10.1109/ICGSE.2007.33
[19]
N. Celik, Hui Xi, Dong Xu, and Young-Jun Son. 2010. Simulation-based workforce assignment considering position in a social network. In Proceedings of the 2010 Winter Simulation Conference (WSC). IEEE Computer Society, Washington, DC, 3228--3240.
[20]
R. Chanin, M. Corrêa, P. Fernandes, A. Sales, R. Scheer, and A. F. Zorzo. 2006. Analytical modeling for operating system schedulers on NUMA systems. Electronic Notes in Theoretical Computer Science (ENTCS) 151, 3, 131--149.
[21]
G. Ciardo, R. L. Jones, III, A. S. Miner, and R. I. Siminiceanu. 2006. Logic and stochastic modeling with SMART. Performance Evaluation 63, 6, 578--608.
[22]
J. N. Cummings, J. A. Espinosa, and C. K. Pickering. 2009. Crossing spatial and temporal boundaries in globally distributed projects: A relational model of coordination delay. Information Systems Research 20, 3, 420--439.
[23]
R. M. Czekster, P. Fernandes, R. Prikladnicki, A. Sales, A. R. Santos, and T. Webber. 2011b. Follow-the-sun methodology in a stochastic modeling perspective. In 6th IEEE International Conference on Global Software Engineering (ICGSE’11): Methods and Tools for Project/Architecture/Risk Management in Globally Distributed Software Development Projects (PARIS). IEEE Computer Society, Washington, DC, 54--59.
[24]
R. M. Czekster, P. Fernandes, A. Sales, D. Taschetto, and T. Webber. 2010b. Simulation of Markovian models using bootstrap method. In Proceedings of the 2010 Summer Simulation Multiconference. Society for Computer Simulation International, San Diego, CA, Ottawa, Canada, 564--569.
[25]
R. M. Czekster, P. Fernandes, A. Sales, and T. Webber. 2010a. Restructuring tensor products to enhance the numerical solution of structured Markov chains. In Proceedings of the 6th International Conference on the Numerical Solution of Markov Chains (NSMC’10). NSMC, Williamsburg, VA, 36--39.
[26]
R. M. Czekster, P. Fernandes, and T. Webber. 2009. GTA express - A software package to handle Kronecker descriptors. In Proceedings of the 6th International Conference on Quantitative Evaluation of SysTems (QEST’09). IEEE Press, Budapest, Hungary, 281--282.
[27]
R. M. Czekster, P. Fernandes, and T. Webber. 2011a. Efficient vector-descriptor product exploiting time-memory trade-offs. SIGMETRICS Performance Evaluation Review 39, 3, 2--9.
[28]
G. A. Dafoulas, K. Swigger, R. Brazile, F. N. Alpaslan, V. L. Cabrera, and F. C. Serce. 2009. Global teams: Futuristic models of collaborative work for today’s software development industry. In 42nd Hawaii International Conference on System Sciences (HICSS’09). IEEE Computer Society, Washington, DC, 1--10.
[29]
Janez Demšar. 2006. Statistical comparisons of classifiers over multiple data sets. The Journal of Machine Learning Research 7, 1--30.
[30]
Christof Ebert. 2007. Optimizing supplier management in global software engineering. In Proceedings of the International Conference on Global Software Engineering (ICGSE’07). IEEE Computer Society, Washington, DC, 177--185.
[31]
C. Ebert and P. De Neve. 2001. Surviving global software development. IEEE Software 18, 2, 62--69.
[32]
A. G. Farina, P. Fernandes, and F. M. Oliveira. 2002. Representing software usage models with stochastic automata networks. In Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering (SEKE’02). ACM, New York, NY, Ischia, Italy, 401--407.
[33]
P. Fernandes, L. Lopes, and S. Yeralan. 2013a. Symbolic solution of Kronecker-based structured Markovian models. In IEEE 21st International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems. IEEE, San Francisco, CA, 409--413.
[34]
P. Fernandes, M. E. J. O’Kelly, C. T. Papadopoulos, and A. Sales. 2013b. Analysis of exponential reliable production lines using Kronecker descriptors. International Journal of Production Research 51, 14, 4240--4257.
[35]
P. Fernandes, A. Sales, A. R. Santos, and T. Webber. 2011. Performance evaluation of software development teams: A practical case study. Electronic Notes in Theoretical Computer Science (ENTCS) 275, 73--92.
[36]
P. Fernandes, J.-M. Vincent, and T. Webber. 2008. Perfect simulation of stochastic automata networks. In Proceedings of 15th International Conference on Analytical and Stochastic Modelling Techniques and Applications (ASMTA’08), Lecture Notes in Computer Science, Vol. 5055. Springer, Berlin, 249--263.
[37]
J. M. Haake, T. Hussein, B. Joop, S. Lukosch, D. Veiel, and J. Ziegler. 2010. Modeling and exploiting context for adaptive collaboration. International Journal of Cooperative Information Systems (IJCIS) 19, 1--2, 71--120.
[38]
J. D. Herbsleb and A. Mockus. 2003. An empirical study of speed and communication in globally distributed software development. IEEE Transactions on Software Engineering 29, 6, 481--494.
[39]
J. D. Herbsleb and D. Moitra. 2001. Global software development. IEEE Software 18, 2, 16--20.
[40]
J. D. Herbsleb, D. J. Paulish, and M. Bass. 2005. Global software development at Siemens: Experience from nine projects. In Proceedings of the 27th International Conference on Software Engineering (ICSE’05). ACM, New York, NY, St. Louis, MO, 524--533.
[41]
J. Hillston. 1996. A Compositional Approach to Performance Modelling. Cambridge University Press, New York, NY.
[42]
E. Hossain, M. A. Babar, and Hye young Paik. 2009. Using scrum in global software development: A systematic literature review. In 4th IEEE International Conference on Global Software Engineering (ICGSE’09). IEEE Computer Society, Washington, DC, 175--184.
[43]
Dan X. Houston, Gerald T. Mackulak, and James S. Collofello. 2001. Stochastic simulation of risk factor potential effects for software development risk management. Journal of Systems and Software 59, 3, 247--257.
[44]
P. Jalote and G. Jain. 2004. Assigning tasks in a 24-hour software development model. In 11th Asia-Pacific Software Engineering Conference. IEEE Computer Society, Washington, DC, 309--315.
[45]
M. I. Kellner, R. J. Madachy, and D. M. Raffo. 1999. Software process simulation modeling: Why? What? How? The Journal of Systems & Software 46, 2--3, 91--105.
[46]
A. Lamersdorf, J. Munch, A. Fernandez del Viso Torre, and C. R. Rebate Sanchez. 2011a. A risk-driven model for work allocation in global software development projects. In Proceedings of the International Conference on Global Software Engineering (ICGSE’11). IEEE Computer Society, Helsinki, Finland, 15--24.
[47]
A. Lamersdorf, J. Munch, A. Fernandez del Viso Torre, and C. R. Rebate Sanchez. 2011b. How do distribution and time zones affect software development? A case study on communication. In Proceedings of the International Conference on Global Software Engineering (ICGSE’11). IEEE Computer Society, Helsinki, Finland.
[48]
P. Laurent, P. Mader, J. Cleland-Huang, and A. Steele. 2010. A taxonomy and visual notation for modeling globally distributed requirements engineering projects. In 5th IEEE International Conference on Global Software Engineering (ICGSE’10). IEEE Computer Society, Washington, DC, 35--44.
[49]
R. E. Levitt, J. Thomsen, T. R. Christiansen, J. C. Kunz, Y. Jin, and C. Nass. 1999. Simulating project work processes and organizations: Toward a micro-contingency theory of organizational design. Management Science 45, 11, 1479--1495.
[50]
C. Y. Lin, T. K. Abdel-Hamid, and J. S. Sherif. 1997. Software-engineering process simulation model (SEPS). Journal of Systems and Software 38, 3, 263--277.
[51]
E. A. Matusse, E. H. M. Huzita, and T. F. C. Tait. 2012. Metrics and indicators to assist in the distribution of process steps for distributed software development: A systematic review. In XXXVIII Conferencia Latinoamericana En Informatica (CLEI’12). IEEE Computer Society, Washington, DC, 1--10.
[52]
A. Mockus. 2009. Succession: Measuring transfer of code and developer productivity. In Proceedings of the 31st International Conference on Software Engineering (ICSE’09). IEEE Computer Society, Washington, DC, 67--77.
[53]
A. Mockus and J. D. Herbsleb. 2002. Expertise browser: A quantitative approach to identifying expertise. In Proceedings of the 24th International Conference on Software Engineering (ICSE’02). ACM, Orlando, FL, 503--512.
[54]
B. Moser, F. Kimura, and H. Suzuki. 1998. Simulation of distributed product development with diverse coordination behavior. In Proceedings of the 31st International Seminar on Manufacturing Systems. CIRP, Paris, France, Berkeley, California.
[55]
B. Moser, K. Mori, H. Suzuki, and F. Kimmura. 1997. Global product development based on activity models with coordination distance features. In Proceedings of the 29th International Seminar on Manufacturing Systems. CIRP, Paris, France, Osaka, Japan, 161--166.
[56]
F. Padberg. 2002. A discrete simulation model for assessing software project scheduling policies. Software Process: Improvement and Practice 7, 3--4, 127--139.
[57]
Kai Petersen, Robert Feldt, Shahid Mujtaba, and Michael Mattsson. 2008. Systematic mapping studies in software engineering. In Proceedings of the 12th International Conference on Evaluation and Assessment in Software Engineering (EASE’08). British Computer Society, Swinton, UK, 68--77. http://dl.acm.org/citation.cfm?id=2227115.2227123
[58]
Bernard Philippe, Youcef Saad, and William J. Stewart. 1992. Numerical methods in Markov chain modeling. Operations Research 40, 6, 1156--1179.
[59]
B. Plateau. 1985. On the stochastic structure of parallelism and synchronization models for distributed algorithms. ACM SIGMETRICS Performance Evaluation Review 13, 2, 147--154.
[60]
T. Poikolainen and J. Paananen. 2007. Performance criteria in inter-organizational global software development projects. In 2nd IEEE International Conference on Global Software Engineering (ICGSE’07). IEEE Computer Society, Washington, DC, 60--70.
[61]
D. Raffo and S. Setamanit. 2005. A simulation model for global software development project. In Proceedings of the 6th International Workshop on Software Process Simulation and Modeling (ProSim’05). Fraunhofer IRB Verlag, Stuttgart, Germany, 1--7. Retrieved July 20, 2016 from http://www.sba.pdx.edu/faculty/davidr/draccess/WEB/publications/JOURNAL/ProSim?05-GSD.pdf.
[62]
N. Ramasubbu, M. Cataldo, R. K. Balan, and J. D. Herbsleb. 2011. Configuring global software teams: A multi-company analysis of project productivity, quality, and profits. In 33rd International Conference on Software Engineering (ICSE’11). ACM, New York, NY, 261--270. 10.1145/1985793.1985830
[63]
A. Sales. 2012. SAN lite-solver: A user-friendly software tool to solve SAN models. In Spring Simulation Multi-conference (SpringSim’12): SCS/ACM Theory of Modeling and Simulation: DEVS Integrative M&S Symposium (DEVS’’12). SCS/ACM, Orlando, FL, 44:9--16.
[64]
R. Sangwan, N. Mullick, M. Bass, D. J. Paulish, and J. Kazmeier. 2006. Global Software Development Handbook. Auerbach Publications, New York, NY.
[65]
Alan R. Santos, Afonso Sales, and Paulo Fernandes. 2015. Using {SAN} formalism to evaluate follow-the-sun project scenarios. Journal of Systems and Software 100, 182--194. 10.1016/j.jss.2014.10.046
[66]
S. Setamanit, W. Wakeland, and D. M. Raffo. 2006. Planning and improving global software development process using simulation. In Proceedings of the 2006 International Workshop on Global Software Development for the Practitioner (GSD’06). ACM, New York, NY, Shanghai, China, 8--14.
[67]
S. Setamanit, W. Wakeland, and D. M. Raffo. 2007. Using simulation to evaluate global software development task allocation strategies: Research sections. Software Process: Improvement and Practice 12, 5, 491--503.
[68]
P. Sfetsos, L. Angelis, and I. Stamelos. 2006. Investigating the extreme programming system—An empirical study. Empirical Software Engineering 11, 2, 269--301.
[69]
R. P. Smith and S. D. Eppinger. 1997. Identifying controlling features of engineering design iteration. Management Science 43, 3, 276--293.
[70]
P. Sooraj and Pratap K. J. Mohapatra. 2008. Modeling the 24h software development process. Strategic Outsourcing: An International Journal 1, 2, 122--141.
[71]
W. J. Stewart. 1994. Introduction to the Numerical Solution of Markov Chains. Princeton University Press, Princeton, NJ.
[72]
W. J. Stewart. 2009. Probability, Markov Chains, Queues, and Simulation. Princeton University Press, Princeton, NJ.
[73]
K. Swigger, F. C. Serce, F. N. Alpaslan, R. Brazile, G. Dafoulas, and V. Lopez. 2009. A comparison of team performance measures for global software development student teams. In Proceedings of the 4th International Conference on Global Software Engineering (ICGSE’09). IEEE Computer Society, Los Alamitos, CA, 267--274.
[74]
S. Syed-Abdullah, M. Holcombe, and M. Gheorge. 2006. The impact of an agile methodology on the well being of development teams. Empirical Software Engineering 11, 143--167. Issue 1.
[75]
A. Taweel and P. Brereton. 2006. Modelling software development across time zones. Information and Software Technology 48, 1, 1--11.
[76]
A. Tripathy and S. D. Eppinger. 2011. Organizing global product development for complex engineered systems. IEEE Transactions on Engineering Management 58, 3, 510--529.
[77]
Roger Urdangarin, Paulo Fernandes, Alberto Avritzer, and Daniel Paulish. 2008. Experiences with agile practices in the global studio project. In IEEE International Conference on Global Software Engineering (ICGSE’08). IEEE Computer Society, Washington, DC, 77--86.
[78]
G. H. Walton and J. H. Poore. 2000. Generating transition probabilities to support model-based software testing. Software: Practice and Experience 30, 10, 1095--1106.
[79]
James A. Whittaker and Michael G. Thomason. 1994. A Markov chain model for statistical software testing. IEEE Transactions on Software Engineering 20, 10, 812--824.

Cited By

View all
  • (2024)An amalgamation of cognitive aspects in software engineering: A content analysisExpert Systems with Applications10.1016/j.eswa.2023.122968246(122968)Online publication date: Jul-2024
  • (2022)Agile Team Measurement to Review the Performance in Global Software DevelopmentResearch Anthology on Agile Software, Software Development, and Testing10.4018/978-1-6684-3702-5.ch096(2015-2025)Online publication date: 2022
  • (2022)A Case for Data-Driven Agile Transformations: Can Longitudinal Backlog Data Help Guide Organizational Improvement Journeys?Agile Processes in Software Engineering and Extreme Programming10.1007/978-3-031-08169-9_8(114-130)Online publication date: 9-Jun-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Software Engineering and Methodology
ACM Transactions on Software Engineering and Methodology  Volume 25, Issue 3
August 2016
291 pages
ISSN:1049-331X
EISSN:1557-7392
DOI:10.1145/2943790
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 August 2016
Accepted: 01 June 2016
Revised: 01 April 2016
Received: 01 April 2015
Published in TOSEM Volume 25, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Global software development
  2. analytical modeling
  3. performance analysis
  4. stochastic automata networks

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • FAPERGS/CAPES-Brazil
  • CNPq-Brazil

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)1
Reflects downloads up to 13 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)An amalgamation of cognitive aspects in software engineering: A content analysisExpert Systems with Applications10.1016/j.eswa.2023.122968246(122968)Online publication date: Jul-2024
  • (2022)Agile Team Measurement to Review the Performance in Global Software DevelopmentResearch Anthology on Agile Software, Software Development, and Testing10.4018/978-1-6684-3702-5.ch096(2015-2025)Online publication date: 2022
  • (2022)A Case for Data-Driven Agile Transformations: Can Longitudinal Backlog Data Help Guide Organizational Improvement Journeys?Agile Processes in Software Engineering and Extreme Programming10.1007/978-3-031-08169-9_8(114-130)Online publication date: 9-Jun-2022
  • (2021)Big Data analytics in Agile software development: A systematic mapping studyInformation and Software Technology10.1016/j.infsof.2020.106448132(106448)Online publication date: Apr-2021
  • (2020)A Stochastic Automata Network Description for Spatial DNA-Methylation ModelsMeasurement, Modelling and Evaluation of Computing Systems10.1007/978-3-030-43024-5_4(54-64)Online publication date: 9-Mar-2020
  • (2019)Using a Systematic Literature Review to Strengthen the Evidence Supporting a Simulation Model of Distributed Software Projects2019 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)10.1109/SEAA.2019.00063(371-378)Online publication date: Aug-2019

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media