Problems and solutions: Maintaining an integrated system in a community of volunteers
Abstract
Motivation. Software maintenance is a significant part of the software life-cycle cost. Current research focuses on the maintenance of application software. Despite increased focus on systems integration, there is limited research on maintaining integrated systems. Before progressing with informing software integration practice, researchers therefore need to better understand the actual work of maintaining integrated systems.
Research. To this end, a study of maintaining an integrated system in practice has been conducted. The study is conducted in the context of a community of volunteer software integrators. The research combines field studies with document analysis, asking:
RQ1: How is knowledge of software failures developed during geographically distributed software maintenance?
RQ2: How do software developers build knowledge of how to replace a businesscritical software system?
RQ3: What are the characteristics of large-scale software maintenance work in a geographically distributed community of volunteers?
Contributions. The main empirical contribution offered by this thesis is insight into the social and technical processes of maintaining an integrated system in a distributed community of volunteer software integrators. It offers a view of software maintenance where multiple stakeholders with different interests continuously negotiate over problems and their solutions. Focusing upon scarcity of resources and contradictory interests brings out the inherently political aspects of software maintenance.
C1: Knowledge of software failures is developed through a process of negotiating over possible interpretations of available data, a process that is contingent upon situational issues such as workload, priorities, and responsibilities
C2: A collective understanding of the scope, stakeholders, and sequence of activities for rewriting software evolves in response to new problems emerging from the rewrite efforts themselves as well as environmental changes
C3: Maintaining an integrated system in a community of volunteers is characterized by scarcity of resources, an emphasis on coalition building, and volatility of stakeholders Two contributions to software maintenance practice are offered:
C4: Recommendations for a lenient approach to coping with variability during corrective maintenance
C5: Recommendations for an opportunity-driven approach to systems replacement
Has parts
Østerlie, T.. In the network: Distributed control in Gentoo/Linux. Proceedings ofthe 4th Workshop on Open Source Software Engineering, co-located with the 26thInternational Conference on Software Engineering (ICSE'04), Edinburgh, Scotland May 25, 2004: 76-81, 2004. 10.1049/ic:20040269.Berntsen, Kjersti E; Munkvold, Glenn; Østerlie, Thomas. Community of Practice versus Practice of the Community: Knowing in collaborative work. ICFAI Journal of Knowledge Management, 2004.
Jaccheri, L; Østerlie, T.. Open Source Software: A Source of Possibilities for Software Engineering Education and Empirical Software Engineering. Proceedings of the First International Workshop on Emerging Trends in FLOSSResearch and Development, co-located with the 29th International Conference onSoftware Engineering (ICSE'07), Minneapolis, Minnesota, May 20-26, 2007, pp. 1-5.: 1-5, 2007. 10.1109/FLOSS.2007.12.
Østerlie, T.; Jaccheri, L.. A Critical Review of Software Engineering Research on Open Source Software Development. Proceedings of the The Second AISSIGSAND European Symposium on Systems Analysis and DesignJune 5, 2007, pp. 12-20., Gdansk, Poland: 12-20, 2007.
Østerlie, T.; Jaccheri, L. Balancing Technological and Community Interest: The Case of Changing a Large Open Source Software System. Proceedings of 30th Information Systems Research Seminar in Scandinavia, (11.-14.8.2007, Murikka, Tampere, Finland): 66-80, 2007.