The goal of this seminar paper is to find out which dependencies exist in software development teams. These dependencies and their consequences will be identified and defined. These findings will be gathered by a systematic literature review based on the guidelines of Kitchenham.
After that these findings will serve as a reference for constructing a framework respectively model, which illustrates and summarizes the impact of the dependencies for the software development teams.
The literature review and the built model will be finally the answer to the following two research questions of this paper:
Q1: What types of dependencies between software development teams are reported in the Information Systems and Software Engineering literature?
Q2: What are the current theories on effects of team interdependencies?
Table of Contents
1 Introduction
1.1 Motivation
1.2 Goal of the paper
1.3 Structure of the paper
2 Research methodology
3 Software dependencies resulting in team dependencies
3.1 Software dependencies
3.2 Coordination among software development teams
3.3 Communication and collaboration among software development teams
4 Software development teams dependencies model
5 Conclusion
Objectives and Research Themes
This paper aims to identify and define the various dependencies present in software development teams and to investigate how these dependencies affect coordination, communication, and collaboration. Through a systematic literature review, the work seeks to answer two primary research questions: what types of inter-team dependencies exist in current literature, and what are the prevalent theories concerning the effects of these interdependencies on team performance.
- Identification and categorization of internal software and team dependencies.
- Analysis of coordination mechanisms, including mechanistic, organic, and cognitive approaches.
- Examination of the relationship between software system structure and communication requirements.
- Development of a comprehensive model illustrating the interplay between dependencies, coordination types, and communication frequency.
Excerpt from the Book
3.1 Software dependencies
After having defined dependencies in general, this section will focus on the different dependencies of software, which are the basis for dependencies among software development teams. It is important to know that the literature suggests many dependencies regarded from different perspectives like source code, design or structure. Since analyzing all dependencies of software would be a research question for another paper, only selected dependencies of software will be presented in the following.
Before introducing the different dependency views, one view of software dependencies will be presented as a hypothesis first. This hypothesis has been chosen because the author of this paper believes that this view is the general comprehensive of software dependencies:
Ghezzi et al. believe that the more independent the modules of software are, the more independently software development teams can work (Ghezzi, Jazayeri, & Mandrioli, 2002, page 241). It is clearly noticeable, that they link software dependencies with modular components of software. In general, software modules are dependent of each other if a module relies on another module to conduct its operations (Spanoudakis & Zisman, 2004). What is more, Herbsleb et al. and Parnas have the same opinion and state that if one wants to lower software development teams’ dependencies, the modular component dependencies need to be reduced (Herbsleb et al., 2000; Parnas, 1972).
Summary of Chapters
1 Introduction: Provides the background and motivation for the study, establishing the shift from individual tasks to complex, inter-dependent software development, and outlines the research questions.
2 Research methodology: Describes the systematic literature review process based on Kitchenham’s guidelines used to identify and filter relevant research papers.
3 Software dependencies resulting in team dependencies: Analyzes the core types of software dependencies (knowledge, task, and resource) and their direct impact on the need for team coordination and communication.
4 Software development teams dependencies model: Presents a consolidated conceptual model that links internal dependencies, coordination mechanisms, and communication drivers to visualize their interplay.
5 Conclusion: Summarizes the key findings of the literature review, assesses the validity of the constructed model as a hypothesis, and suggests directions for future research.
Keywords
Software Development, Team Dependencies, Coordination, Collaboration, Communication Frequency, Knowledge Dependency, Task Dependency, Resource Dependency, Mechanistic Coordination, Organic Coordination, Cognitive Coordination, Organizational Boundaries, Multiteam Systems, Systematic Literature Review, Software Engineering
Frequently Asked Questions
What is the primary focus of this seminar paper?
The paper focuses on identifying and understanding the dependencies that arise within software development teams and how these factors necessitate specific coordination and communication strategies.
What are the central thematic fields covered?
The paper covers software dependencies (internal and external), coordination theory in a multiteam environment, and the drivers or barriers affecting technical communication frequency.
What is the core research goal?
The primary goal is to map the inter-team dependencies reported in Information Systems and Software Engineering literature and construct a model that explains how these influence team performance.
Which methodology was applied?
The author employed a systematic literature review methodology, drawing on guidelines from Kitchenham to search and filter academic databases for relevant research.
What topics are discussed in the main body of the paper?
The main body treats software dependency taxonomies, the different types of coordination (mechanistic, organic, cognitive), and the factors that influence the frequency of communication among developers.
Which keywords best characterize this work?
The work is characterized by terms such as Software Development, Team Dependencies, Coordination, Communication Frequency, and Knowledge Dependency.
Why are knowledge dependencies considered so significant in this research?
Strode’s research, cited in the paper, indicates that approximately 73% of project dependencies are related to knowledge, making it the most critical factor to manage compared to task or resource dependencies.
What does the proposed "Software development teams dependencies model" represent?
It represents a hypothesis that integrates various literature findings to visualize how internal dependencies, communication drivers, and coordination mechanisms interact to affect communication frequency.
What is the distinction between mechanistic and organic coordination in this context?
Mechanistic coordination relies on plans, processes, and rules for routine tasks, whereas organic coordination utilizes feedback and mutual adjustment for non-routine or uncertain task activities.
- Citation du texte
- Sebastian Feil (Auteur), 2014, Dependencies among Software Development Teams. Coordination, Communication and Collaboration, Munich, GRIN Verlag, https://www.grin.com/document/299929