ABSTRACT
Version control branching allows an organization to parallelize its development efforts. Releasing a software system developed in this manner requires release managers, and other project stakeholders, to make decisions about how to integrate the branched work. This group decision-making process becomes very complex in the case of large-scale parallel development. To better understand the information needs of release managers in this context, we conducted an interview study at a large software company. Our analysis of the interviews provides a view into how release managers make integration decisions, organized around ten key factors. Based on these factors, we discuss specific information needs for release managers and how the needs can be met in future work.
- Barcellini, F., Détienne, F., Burkhardt, J.-M., and Sack, W. A socio-cognitive analysis of online design discussions in an open source software community. Interact. Comput. 20 (January 2008), 141--165. Google ScholarDigital Library
- Brun, Y., Holmes, R., Ernst, M., and Notkin, D. Speculative analysis: exploring future development states of software. In FSE/SDP workshop on Future of software engineering research, FoSER'10, ACM (2010), 59--64. Google ScholarDigital Library
- Buse, R., and Zimmermann, T. Information needs for software development analytics. Tech. rep., Microsoft Research, 2011.Google Scholar
- Corbin, J., and Strauss, A. Basics of Qualitative Research, 3rd ed. SAGE Publications, 2008.Google Scholar
- Gutwin, C., and Greenberg, S. The importance of awareness for team cognition in distributed collaboration. In Team Cognition: Understanding the Factors that Drive Process and Performance, APA Press (2004), 177--201.Google ScholarCross Ref
- Hansen, P., and Jrvelin, K. Collaborative information retrieval in an information-intensive domain. Information Processing and Management 41, 5 (2005), 1101 -- 1119. Google ScholarDigital Library
- Ko, A., DeLine, R., and Venolia, G. Information needs in co-located software development teams. In International conference on Software Engineering, ICSE'07, IEEE Computer Society (Washington, DC, USA, 2007), 344--353. Google ScholarDigital Library
- Limayem, M., Banerjee, P., and Ma, L. Impact of gdss: opening the black box. Decis. Support Syst. 42 (November 2006), 945--957. Google ScholarDigital Library
- Mens, T. A state-of-the-art survey on software merging. Software Engineering, IEEE Transactions on 28, 5 (may 2002), 449--462. Google ScholarDigital Library
- Paul, S., and Reddy, M. Understanding together: sensemaking in collaborative information seeking. In Computer supported cooperative work, CSCW'10, ACM (New York, NY, USA, 2010), 321--330. Google ScholarDigital Library
- Perry, D., Siy, H., and Votta, L. Parallel changes in large scale software development: an observational case study. In International Conference on Software Engineering (apr 1998), 251--260. Google ScholarDigital Library
- Phillips, S., Sillito, J., and Walker, R. Branching and merging: an investigation into current version control practices. In International workshop on Cooperative and human aspects of software engineering, CHASE'11, ACM (2011), 9--15. Google ScholarDigital Library
- Rönkkö, K., Dittrich, Y., and Randall, D. When plans do not work out: How plans are used in software development projects. Comput. Supported Coop. Work 14 (October 2005), 433--468. Google ScholarDigital Library
- Ruhe, G. Software engineering decision support--a new paradigm for learning software organizations. In Advances in Learning Software Organizations, vol. 2640 of Lecture Notes in Computer Science. Springer, 2003, 104--113.Google ScholarCross Ref
- Ruhe, G. Product Release Planning: Methods, Tools and Applications. CRC Press, 2010.Google ScholarCross Ref
- Saarelainen, M.-M., Koskinen, J., Ahonen, J., Kankaanpaa, I., Sivula, H., Lintinen, H., Juutilainen, P., and Tilus, T. Group decision-making processes in industrial software evolution. In International Conference on Software Engineering Advances, IEEE Computer Society (2007), 78--. Google ScholarDigital Library
- Sack, W., Detienne, F., Ducheneaut, N., Burkhardt, J.-M., Mahendran, D., and Barcellini, F. A methodological framework for socio-cognitive analyses of collaborative design of open source software. Comput. Supported Coop. Work 15 (June 2006), 229--250. Google ScholarDigital Library
- Sassenburg, H. A multi-disciplinary view on software release decisions. In International workshop on Workshop on interdisciplinary software engineering research, WISER'06, ACM (2006), 45--52. Google ScholarDigital Library
- Sonnenwald, D., and Pierce, L. Information behavior in dynamic group work contexts: interwoven situational awareness, dense social networks and contested collaboration in command and control. Information Processing and Management 36, 3 (2000), 461--479. Google ScholarDigital Library
- Walrad, C., and Strom, D. The importance of branching models in scm. Computer 35 (September 2002), 31--38. Google ScholarDigital Library
- Wright, H., and Perry, D. Subversion 1.5: A case study in open source release mismanagement. In ICSE Workshop on Emerging Trends in Free/Libre/Open Google ScholarDigital Library
Index Terms
- Information needs for integration decisions in the release process of large-scale parallel development
Recommendations
The integration mechanism of IT outsourcing partnership
ICEC '05: Proceedings of the 7th international conference on Electronic commerceIn the latest 15 years, the use of IT outsourcing has exploded. With fast changing business environment and IT environment, the relationship between the clients and vendors are evolving from market type of buyer-seller relationship to partnership ...
Rapid, evolutionary, reliable, scalable system and software development: the resilient agile process
ICSSP 2017: Proceedings of the 2017 International Conference on Software and System ProcessThe increasing pace of change in competition, technology, and complexity of software-intensive systems has increased the demand for rapid, reliable, scalable, and evolvable processes. Agile methods have made significant contributions to speeding up ...
Branching and merging: an investigation into current version control practices
CHASE '11: Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software EngineeringThe use of version control has become ubiquitous in software development projects. Version control systems facilitate parallel development and maintenance through branching, the creation of isolated codelines. Merging is a consequence of branching and ...
Comments