Huber, S. (2010). Implementation and evaluation of communication metrics for continuous software project monitoring [Diploma Thesis, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/160239
software metrics; software measurement; communication metrics; communication measurement
en
Abstract:
Softwaremetriken haben sich im Laufe der Zeit zu wichtigen Werkzeugen für die Entwicklung und das Management von Softwareprojekten entwickelt. Diese Metriken messen Eigenschaften einer Applikation oder eines Projektes mithilfe numerischer Werte oder durch Einteilung in vordefnierte Kategorien. In der heutigen Softwareentwicklung gibt es eine Vielzahl an Kennzahlen zur Messung unterschiedlicher Softwaremerkmale, jedoch beschäftigen sich nur wenige mit dem Kommunikationsaspekt während des Entwicklungsprozesses. Diese Diplomarbeit richtet sich in erster Linie an Softwareentwickler und Projektmanager, die an der fortlaufenden Beobachtung des Kommunikationsverhaltens von Entwicklerteams im Zuge eines Projektes interessiert sind. Da eine funktionierende Kommunikation ein wichtiger Faktor für den Erfolg eines Projektes darstellt, besteht der Fokus der Arbeit aus der Entwicklung neuer Softwaremetriken, die Indikatoren für die Qualität der Kommunikation in einem Projektteam darstellen. Diese Metriken können dafür verwendet werden, um potentielle Probleme bei der Kommunikation aufzudecken und das Kommunikationsverhalten der Mitarbeiter kontinuierlich zu beobachten. Im Zuge der Diplomarbeit wurde eine Applikation entwickelt, welche die automatische Generierung und Visualisierung von Kommunikationsmetriken ermöglicht. Die relevanten Daten zur Erstellung der Metriken werden von Mailinglisten, SVN-Repositories und Bugzilla Datenbanken diverser Apache-Projekte bezogen. Alle implementierten Metriken wurden bezüglich ihres Informationsgehalts und der Relevanz für die Praxis evaluiert. Die Evaluierung zeigte, dass Teammitglieder, die in das Projektmanagement eingebunden sind eine zentrale Position innerhalb des Kommunikationsnetzwerkes besitzen. Zudem haben diese Mitarbeiter einen größeren Einfluss auf den Informationsfluss im Team, als Mitglieder, die sich weniger intensiv in die Kommunikation einbringen. Des Weiteren konnte ein signifikanter Zusammenhang zwischen dem Kommunikationsaufwand und der Menge an Bug-Tracking-Aktivitäten entdeckt werden.<br />
de
Software metrics have become an important tool in modern software development, particularly for managing projects. They measure characteristics, properties or attributes of an application or project with categories or numerical ratings. There are many metrics available for measuring a variety of software characteristics, such as software complexity, quality, usability and testability. However, there are just a few metrics that cover communication aspects during the development process.<br />This thesis aims at software engineers and project managers who are interested in monitoring the communication effort during the life-span of their software projects. Since vital communication between members of a development team is crucial to the success of the project, the primary goal of this thesis is to introduce software metrics which indicate how healthy the level of communication within the team is. These metrics expose potential communication problems during the development lifecycle and help to monitor communication behaviour within the project team.<br />In the course of the diploma thesis, a tool was implemented which automatically generates and visualizes communication metrics. The relevant communication data for generating and evaluating these metrics are collected from several Apache projects. The information can be extracted from mailing lists, SVN repositories, and Bugzilla databases and stored in an ontology.<br />All implemented metrics are verified in terms of their informative value and relevancy to practice. The evaluation showed that team members that are involved in the project management have a central position in the communication network of a project. In addition, they have a greater influence on the flow of information within the team than a member that participates only peripherally in the inner team communication.<br />Furthermore, a significant correlation between the communication effort and the amount of bug tracking activity has been discovered.