qualitätsanalyse und teammanagement in...
TRANSCRIPT
Qualitätsanalyse und Teammanagement inOpen-Source-Projekten
Andreas Tille
CLT 2012
Chemnitz, 17. März 2012
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 1 / 31
1 Wie kann man beurteilen, ob ein FLOSS-Projekt zum scheiternverurteilt ist
2 GSoC - Teammetrics
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 2 / 31
Quelle: Fail - O - Meter
Folien sind im wesentlichen Übersetzung vonHow to tell if a FLOSS project is doomed to FAILInspiriert durch Untersuchung von Chromium, doch späterverallgemeinertOffensichtliche Ausnahmen: Linux KernelAusnahmen funktionieren, weil sie klein begannen und dieCommunity mit dem Code wachsen konnteGroße Komplexität erfordert eine große CommunityDer Versuch ein hochkomplexes Projekt zu starten macht esaußerordentlich schwer, eine funktionierende Community zuentwickeln
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 3 / 31
Quelle: Fail - O - Meter
Folien sind im wesentlichen Übersetzung vonHow to tell if a FLOSS project is doomed to FAILInspiriert durch Untersuchung von Chromium, doch späterverallgemeinertOffensichtliche Ausnahmen: Linux KernelAusnahmen funktionieren, weil sie klein begannen und dieCommunity mit dem Code wachsen konnteGroße Komplexität erfordert eine große CommunityDer Versuch ein hochkomplexes Projekt zu starten macht esaußerordentlich schwer, eine funktionierende Community zuentwickeln
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 3 / 31
Quelle: Fail - O - Meter
Folien sind im wesentlichen Übersetzung vonHow to tell if a FLOSS project is doomed to FAILInspiriert durch Untersuchung von Chromium, doch späterverallgemeinertOffensichtliche Ausnahmen: Linux KernelAusnahmen funktionieren, weil sie klein begannen und dieCommunity mit dem Code wachsen konnteGroße Komplexität erfordert eine große CommunityDer Versuch ein hochkomplexes Projekt zu starten macht esaußerordentlich schwer, eine funktionierende Community zuentwickeln
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 3 / 31
Quelle: Fail - O - Meter
Folien sind im wesentlichen Übersetzung vonHow to tell if a FLOSS project is doomed to FAILInspiriert durch Untersuchung von Chromium, doch späterverallgemeinertOffensichtliche Ausnahmen: Linux KernelAusnahmen funktionieren, weil sie klein begannen und dieCommunity mit dem Code wachsen konnteGroße Komplexität erfordert eine große CommunityDer Versuch ein hochkomplexes Projekt zu starten macht esaußerordentlich schwer, eine funktionierende Community zuentwickeln
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 3 / 31
Quelle: Fail - O - Meter
Folien sind im wesentlichen Übersetzung vonHow to tell if a FLOSS project is doomed to FAILInspiriert durch Untersuchung von Chromium, doch späterverallgemeinertOffensichtliche Ausnahmen: Linux KernelAusnahmen funktionieren, weil sie klein begannen und dieCommunity mit dem Code wachsen konnteGroße Komplexität erfordert eine große CommunityDer Versuch ein hochkomplexes Projekt zu starten macht esaußerordentlich schwer, eine funktionierende Community zuentwickeln
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 3 / 31
Quelle: Fail - O - Meter
Folien sind im wesentlichen Übersetzung vonHow to tell if a FLOSS project is doomed to FAILInspiriert durch Untersuchung von Chromium, doch späterverallgemeinertOffensichtliche Ausnahmen: Linux KernelAusnahmen funktionieren, weil sie klein begannen und dieCommunity mit dem Code wachsen konnteGroße Komplexität erfordert eine große CommunityDer Versuch ein hochkomplexes Projekt zu starten macht esaußerordentlich schwer, eine funktionierende Community zuentwickeln
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 3 / 31
Größe
Quellcode > 100MB [+5]Quellcode sogar komprimiert > 100MB [+5]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 4 / 31
Größe
Quellcode > 100MB [+5]Quellcode sogar komprimiert > 100MB [+5]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 4 / 31
Quellcodeverwaltung
Kein öffentliches Quellcoderepository (svn, git, . . . ) [+10]Öffentliches Quellcoderepository, aber
Kein Webviewer [+5]Keine Dokumentation für neue Nutzer wie es zu nutzen ist [+5]Selbstgeschriebene Quellcodeverwaltung für diesen Code [+30]Diese Quellcodeverwaltung wird nicht wirklich genutzt [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 5 / 31
Quellcodeverwaltung
Kein öffentliches Quellcoderepository (svn, git, . . . ) [+10]Öffentliches Quellcoderepository, aber
Kein Webviewer [+5]Keine Dokumentation für neue Nutzer wie es zu nutzen ist [+5]Selbstgeschriebene Quellcodeverwaltung für diesen Code [+30]Diese Quellcodeverwaltung wird nicht wirklich genutzt [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 5 / 31
Quellcodeverwaltung
Kein öffentliches Quellcoderepository (svn, git, . . . ) [+10]Öffentliches Quellcoderepository, aber
Kein Webviewer [+5]Keine Dokumentation für neue Nutzer wie es zu nutzen ist [+5]Selbstgeschriebene Quellcodeverwaltung für diesen Code [+30]Diese Quellcodeverwaltung wird nicht wirklich genutzt [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 5 / 31
Quellcodeverwaltung
Kein öffentliches Quellcoderepository (svn, git, . . . ) [+10]Öffentliches Quellcoderepository, aber
Kein Webviewer [+5]Keine Dokumentation für neue Nutzer wie es zu nutzen ist [+5]Selbstgeschriebene Quellcodeverwaltung für diesen Code [+30]Diese Quellcodeverwaltung wird nicht wirklich genutzt [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 5 / 31
Quellcodeverwaltung
Kein öffentliches Quellcoderepository (svn, git, . . . ) [+10]Öffentliches Quellcoderepository, aber
Kein Webviewer [+5]Keine Dokumentation für neue Nutzer wie es zu nutzen ist [+5]Selbstgeschriebene Quellcodeverwaltung für diesen Code [+30]Diese Quellcodeverwaltung wird nicht wirklich genutzt [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 5 / 31
Quellcodeverwaltung
Kein öffentliches Quellcoderepository (svn, git, . . . ) [+10]Öffentliches Quellcoderepository, aber
Kein Webviewer [+5]Keine Dokumentation für neue Nutzer wie es zu nutzen ist [+5]Selbstgeschriebene Quellcodeverwaltung für diesen Code [+30]Diese Quellcodeverwaltung wird nicht wirklich genutzt [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 5 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bauen des QuellcodesKeine Dokumentation zum Bauen aus den Quellen [+20]Dokumentation existiert, funktioniert aber nicht [+10]Quellcode ist konfiguriert:
mit einem handgeschriebenen Shellscript [+10]durch Editieren von Textkonfigurationsdateien [+20]durch manuelles Editieren von Headerdateien [+30]
Quellcode ist nicht konfigurierbar [+50]Quellcode baut:
nur mit etwas Anderem als GNU Make [+10]nur mit proprietären Werkzeugen [+50]nur mit einem eigens erstellten Werkzeug [+100]
Es existieren keine Tests für das Resultat [+5]
Java hat andere Eigenschaften hinsichtlich des Bauens:Kein Standardbauwerkzeug (Ant, Maven, Gradle) [+10]Laufzeitbestandteile mit maschinenabhängigen Teilen [+5]Es existieren keine Tests für das Resultat [+20]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 6 / 31
Bündelung mit anderen unabhängigen Projekten
Sourcecode beinhaltet fremde Projekte, von denen es abhängt[+20]
Fremder Sourcecode muß zuerst gebaut werden, bevor eigenerCode gebaut werden kann [+10]Der eingebundene Fremdcode wurde sogar modifiziert [+40]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 7 / 31
Bündelung mit anderen unabhängigen Projekten
Sourcecode beinhaltet fremde Projekte, von denen es abhängt[+20]
Fremder Sourcecode muß zuerst gebaut werden, bevor eigenerCode gebaut werden kann [+10]Der eingebundene Fremdcode wurde sogar modifiziert [+40]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 7 / 31
Bündelung mit anderen unabhängigen Projekten
Sourcecode beinhaltet fremde Projekte, von denen es abhängt[+20]
Fremder Sourcecode muß zuerst gebaut werden, bevor eigenerCode gebaut werden kann [+10]Der eingebundene Fremdcode wurde sogar modifiziert [+40]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 7 / 31
Bibliotheken
Code baut nur statische Bibliotheken [+20]Code baut auch zur dynamischen Bibliothek doch ohneVersionierung [+20]Code versucht nicht die vorhandenen Systembibliotheken zubenutzen [+20]
Für Java:
Code enthält maschinenabhängige Teile [+5]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 8 / 31
Bibliotheken
Code baut nur statische Bibliotheken [+20]Code baut auch zur dynamischen Bibliothek doch ohneVersionierung [+20]Code versucht nicht die vorhandenen Systembibliotheken zubenutzen [+20]
Für Java:
Code enthält maschinenabhängige Teile [+5]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 8 / 31
Bibliotheken
Code baut nur statische Bibliotheken [+20]Code baut auch zur dynamischen Bibliothek doch ohneVersionierung [+20]Code versucht nicht die vorhandenen Systembibliotheken zubenutzen [+20]
Für Java:
Code enthält maschinenabhängige Teile [+5]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 8 / 31
Bibliotheken
Code baut nur statische Bibliotheken [+20]Code baut auch zur dynamischen Bibliothek doch ohneVersionierung [+20]Code versucht nicht die vorhandenen Systembibliotheken zubenutzen [+20]
Für Java:
Code enthält maschinenabhängige Teile [+5]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 8 / 31
Installation auf dem Zielsystem
Installation zu /opt oder /usr/local [+10]Es fehlt ein „make install“ [+20]Code funktioniert nicht außerhalb des Quellcodeverzeichnisses
[+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 9 / 31
Installation auf dem Zielsystem
Installation zu /opt oder /usr/local [+10]Es fehlt ein „make install“ [+20]Code funktioniert nicht außerhalb des Quellcodeverzeichnisses
[+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 9 / 31
Installation auf dem Zielsystem
Installation zu /opt oder /usr/local [+10]Es fehlt ein „make install“ [+20]Code funktioniert nicht außerhalb des Quellcodeverzeichnisses
[+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 9 / 31
Seltsame Codeeigenschaften
Code benutzt Windows Zeilenvorschübe ("DOS formatiert") [+5]Code hängt von speziellen Compilereigenschaften ab [+20]Code hängt von speziellen Compilerfehlern ab [+50]Code hängt von Microsoft Visual Irgendwas ab [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 10 / 31
Seltsame Codeeigenschaften
Code benutzt Windows Zeilenvorschübe ("DOS formatiert") [+5]Code hängt von speziellen Compilereigenschaften ab [+20]Code hängt von speziellen Compilerfehlern ab [+50]Code hängt von Microsoft Visual Irgendwas ab [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 10 / 31
Seltsame Codeeigenschaften
Code benutzt Windows Zeilenvorschübe ("DOS formatiert") [+5]Code hängt von speziellen Compilereigenschaften ab [+20]Code hängt von speziellen Compilerfehlern ab [+50]Code hängt von Microsoft Visual Irgendwas ab [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 10 / 31
Seltsame Codeeigenschaften
Code benutzt Windows Zeilenvorschübe ("DOS formatiert") [+5]Code hängt von speziellen Compilereigenschaften ab [+20]Code hängt von speziellen Compilerfehlern ab [+50]Code hängt von Microsoft Visual Irgendwas ab [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 10 / 31
Kommunikation
Neue Versionen werden nicht auf Mailingliste angekündigt [+5]Projekt hat keine Mailingliste [+10]Projekt hat kein Fehlerverfolgungssystem [+20]Projekt hat keine Webseite [+50]Projekt ist „SourceForge Vaporware“ [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 11 / 31
Kommunikation
Neue Versionen werden nicht auf Mailingliste angekündigt [+5]Projekt hat keine Mailingliste [+10]Projekt hat kein Fehlerverfolgungssystem [+20]Projekt hat keine Webseite [+50]Projekt ist „SourceForge Vaporware“ [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 11 / 31
Kommunikation
Neue Versionen werden nicht auf Mailingliste angekündigt [+5]Projekt hat keine Mailingliste [+10]Projekt hat kein Fehlerverfolgungssystem [+20]Projekt hat keine Webseite [+50]Projekt ist „SourceForge Vaporware“ [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 11 / 31
Kommunikation
Neue Versionen werden nicht auf Mailingliste angekündigt [+5]Projekt hat keine Mailingliste [+10]Projekt hat kein Fehlerverfolgungssystem [+20]Projekt hat keine Webseite [+50]Projekt ist „SourceForge Vaporware“ [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 11 / 31
Kommunikation
Neue Versionen werden nicht auf Mailingliste angekündigt [+5]Projekt hat keine Mailingliste [+10]Projekt hat kein Fehlerverfolgungssystem [+20]Projekt hat keine Webseite [+50]Projekt ist „SourceForge Vaporware“ [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 11 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Releases und VersionierungKeine typische Versionierung (Major, Minor) [+10]Grundsätzlich keine versionierten Releases [+20]Überhaupt keine Releases [+50]Releases als Attachments in Webforum Posts [+100]Releases nur im .zip Format [+5]Releases nur im OSX .zip Format [+10]Releases nur im .rar Format [+20]Releases nur im .arj Format [+50]Releases nur in selbsterfundenem Archiv-Format [+100]Release entpackt nicht in versioniertes Verzeichnis (z.B.glibc-2.4.2/) [+10]Release entpackt nicht in Verzeichnis (z.B. glibc/) [+25]Release entpackt in zahlreiche Verzeichnissebenen (z.B.home/johndoe/glibc-svn/tarball/glibc/src/) [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 12 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Geschichte
Abspaltung eines anderen Projektes [+10]Hauptentwickler sind nicht im Mutterprojekt involviert [+50]Vor der freien Veröffentlichung war der Code proprietär für
1-2 Jahre [+10]3-5 Jahre [+20]6-10 Jahre [+30]10+ Jahre [+50]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 13 / 31
Lizensierung
Code enthält nicht in jeder Datei Lizensbedingungen [+10]Code enthält widersprüchliche Lizensbedingungen [+20]Code enthält keine Bemerkung zur beabsichtigen Lizens [+30]Code enthält keine Kopie des Lizenstextes [+50]Code hat keine Lizens [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 14 / 31
Lizensierung
Code enthält nicht in jeder Datei Lizensbedingungen [+10]Code enthält widersprüchliche Lizensbedingungen [+20]Code enthält keine Bemerkung zur beabsichtigen Lizens [+30]Code enthält keine Kopie des Lizenstextes [+50]Code hat keine Lizens [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 14 / 31
Lizensierung
Code enthält nicht in jeder Datei Lizensbedingungen [+10]Code enthält widersprüchliche Lizensbedingungen [+20]Code enthält keine Bemerkung zur beabsichtigen Lizens [+30]Code enthält keine Kopie des Lizenstextes [+50]Code hat keine Lizens [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 14 / 31
Lizensierung
Code enthält nicht in jeder Datei Lizensbedingungen [+10]Code enthält widersprüchliche Lizensbedingungen [+20]Code enthält keine Bemerkung zur beabsichtigen Lizens [+30]Code enthält keine Kopie des Lizenstextes [+50]Code hat keine Lizens [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 14 / 31
Lizensierung
Code enthält nicht in jeder Datei Lizensbedingungen [+10]Code enthält widersprüchliche Lizensbedingungen [+20]Code enthält keine Bemerkung zur beabsichtigen Lizens [+30]Code enthält keine Kopie des Lizenstextes [+50]Code hat keine Lizens [+100]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 14 / 31
Dokumentation
Code hat keinen Changelog [+10]Code hat keine Dokumentation [+20]Webseite hat keine Anwendungsbeispiele [+20]Webseite hat keine Dokumentation [+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 15 / 31
Dokumentation
Code hat keinen Changelog [+10]Code hat keine Dokumentation [+20]Webseite hat keine Anwendungsbeispiele [+20]Webseite hat keine Dokumentation [+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 15 / 31
Dokumentation
Code hat keinen Changelog [+10]Code hat keine Dokumentation [+20]Webseite hat keine Anwendungsbeispiele [+20]Webseite hat keine Dokumentation [+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 15 / 31
Dokumentation
Code hat keinen Changelog [+10]Code hat keine Dokumentation [+20]Webseite hat keine Anwendungsbeispiele [+20]Webseite hat keine Dokumentation [+30]
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 15 / 31
Maß für den wahrscheinlichen Mißerfolg
0 Perfekt! Alle Zeichen stehen auf Erfolg!5-25 Scheint OK, auch wenn manche Aspekte
verbesserungswürdig sind.30-60 Babies beginnen zu weinen wenn der Code
heruntergeladen wird.65-90 Kätzchen sterben wenn der Code heruntergeladen wird.
95-130 Achtung, Achtung, das Schiff beginnt zu sinken.135+ Der Code ist so kaputt, er könnte seine eigene Reality
TV show haben
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 16 / 31
Maß für den wahrscheinlichen Mißerfolg
0 Perfekt! Alle Zeichen stehen auf Erfolg!5-25 Scheint OK, auch wenn manche Aspekte
verbesserungswürdig sind.30-60 Babies beginnen zu weinen wenn der Code
heruntergeladen wird.65-90 Kätzchen sterben wenn der Code heruntergeladen wird.
95-130 Achtung, Achtung, das Schiff beginnt zu sinken.135+ Der Code ist so kaputt, er könnte seine eigene Reality
TV show haben
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 16 / 31
Maß für den wahrscheinlichen Mißerfolg
0 Perfekt! Alle Zeichen stehen auf Erfolg!5-25 Scheint OK, auch wenn manche Aspekte
verbesserungswürdig sind.30-60 Babies beginnen zu weinen wenn der Code
heruntergeladen wird.65-90 Kätzchen sterben wenn der Code heruntergeladen wird.
95-130 Achtung, Achtung, das Schiff beginnt zu sinken.135+ Der Code ist so kaputt, er könnte seine eigene Reality
TV show haben
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 16 / 31
Maß für den wahrscheinlichen Mißerfolg
0 Perfekt! Alle Zeichen stehen auf Erfolg!5-25 Scheint OK, auch wenn manche Aspekte
verbesserungswürdig sind.30-60 Babies beginnen zu weinen wenn der Code
heruntergeladen wird.65-90 Kätzchen sterben wenn der Code heruntergeladen wird.
95-130 Achtung, Achtung, das Schiff beginnt zu sinken.135+ Der Code ist so kaputt, er könnte seine eigene Reality
TV show haben
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 16 / 31
Maß für den wahrscheinlichen Mißerfolg
0 Perfekt! Alle Zeichen stehen auf Erfolg!5-25 Scheint OK, auch wenn manche Aspekte
verbesserungswürdig sind.30-60 Babies beginnen zu weinen wenn der Code
heruntergeladen wird.65-90 Kätzchen sterben wenn der Code heruntergeladen wird.
95-130 Achtung, Achtung, das Schiff beginnt zu sinken.135+ Der Code ist so kaputt, er könnte seine eigene Reality
TV show haben
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 16 / 31
Maß für den wahrscheinlichen Mißerfolg
0 Perfekt! Alle Zeichen stehen auf Erfolg!5-25 Scheint OK, auch wenn manche Aspekte
verbesserungswürdig sind.30-60 Babies beginnen zu weinen wenn der Code
heruntergeladen wird.65-90 Kätzchen sterben wenn der Code heruntergeladen wird.
95-130 Achtung, Achtung, das Schiff beginnt zu sinken.135+ Der Code ist so kaputt, er könnte seine eigene Reality
TV show haben
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 16 / 31
Teil II: GSoC - Teammetrics
Erster Teil Code-orientiert, zweiter Teil Team-orientiertWer ist im Team?Wer verließ das Team?Hat ein Team genug Mitglieder?Wächst oder schrumpft ein Team?Ursachenanalyse
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 17 / 31
Teil II: GSoC - Teammetrics
Erster Teil Code-orientiert, zweiter Teil Team-orientiertWer ist im Team?Wer verließ das Team?Hat ein Team genug Mitglieder?Wächst oder schrumpft ein Team?Ursachenanalyse
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 17 / 31
Teil II: GSoC - Teammetrics
Erster Teil Code-orientiert, zweiter Teil Team-orientiertWer ist im Team?Wer verließ das Team?Hat ein Team genug Mitglieder?Wächst oder schrumpft ein Team?Ursachenanalyse
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 17 / 31
Teil II: GSoC - Teammetrics
Erster Teil Code-orientiert, zweiter Teil Team-orientiertWer ist im Team?Wer verließ das Team?Hat ein Team genug Mitglieder?Wächst oder schrumpft ein Team?Ursachenanalyse
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 17 / 31
Teil II: GSoC - Teammetrics
Erster Teil Code-orientiert, zweiter Teil Team-orientiertWer ist im Team?Wer verließ das Team?Hat ein Team genug Mitglieder?Wächst oder schrumpft ein Team?Ursachenanalyse
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 17 / 31
Teil II: GSoC - Teammetrics
Erster Teil Code-orientiert, zweiter Teil Team-orientiertWer ist im Team?Wer verließ das Team?Hat ein Team genug Mitglieder?Wächst oder schrumpft ein Team?Ursachenanalyse
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 17 / 31
Einfacher Ansatz: Aktivität auf der Mailingliste
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
010
020
030
040
050
060
0 Andreas T 2879Charles P 1073Karsten H 474Mathieu M 361Steffen M 360David P 315Olivier S 193Nelson A. de O 191Sebastian H 169Michael H 123
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 18 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
GSoC: Erweiterte Beobachtung
Wer trägt mehr als nur durch „Schwatzen“ beiCode BeiträgeStatistik über abgeladene PaketeStatistik über gelöste Fehler
Größere FlexibilitätTeams in KonfigurationsdateienBessere Handhabung von SPAM + RobotsBessere NamenszuordnungPrinzipiell nicht auf Debian begrenzt
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 19 / 31
Zweck des Teams erfüllt
Debian Women →
↓ Portierung Arm Portierung Amd64
2004 2005 2006 2007 2008 2009 2010 2011 2012
020
4060
8010
012
014
0
Erinn C 259Helen F 238Christian P213Miriam R 179Clytie S 143Amaya 117Michelle K 109Margarita M 92Jutta W 84Steve L 83
1998 2000 2002 2004 2006 2008 2010 2012
050
100
150
200
250
Martin M 927Philip B 614Wookey 323Jim P 254Lennart S 236Adam C Powell I 233Luke Kenneth Casson L225Martin G 211Peter N 194Riku V 190
2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
010
020
030
040
050
060
070
0
Lennart S 1915Goswin von B1477Francesco P 433Kurt R 422Hans.J. U 365Jo S 271Javier K 254Frederik S 253Harald D 212Hamish M 201
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 20 / 31
Dominiert durch eine PersonDebian i18n
1997 2000 2002 2004 2006 2008 2010 2012
020
040
060
080
010
0012
00
Christian P 5348Clytie S 677Frans P 398Helge K 295Eddy P 289Michael B 277Javier Fernández.Sanguino P 235Jens S 235Denis B 228Martijn van O 218
Debian Live
2006 2007 2008 2009 2010 2011 2012
010
020
030
040
050
060
070
0
Daniel B 3007Ben A 301Marco A 275Richard N 174Chris L 169Jordi P 166Tzafrir C 159Michal S 146Justin P 130Otavio S 113
Openoffice Mailingliste
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
040
060
080
010
0012
00 Rene E 7647Chris H 1045Bjoern M 321Jan.Hendrik P 303Jérôme W 295Jim W 125Nadav K 62Martin K 61Josh T 61Tim R 56
Openoffice Commits
2005 2006 2007 2008 2009 2010 2011 2012
010
000
2000
030
000
4000
050
000
6000
0 Rene E 192630Chris H 20245Martin K 17001Matthias K 7562Chris C 1451Bjoern M 290Rail A 168Ben F 87Nelson A. de O 65Mirco B 19
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 21 / 31
Verwaiste und nicht funktionierende Projekte
Debian Junior →
↓ Debian Enterprise Debian Lex
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
4060
8010
0
Ben A 434Andreas T183Pat M 29Andrew S 29Sam H 27Hilaire F 27Bill K 24John G 22Rudy G 20Ron J 16
2007 2008 2009 2010 2011 2012
05
1015
Russ A 17Andreas T 15Guido G 15Jesús M. N11lee 7Stephen M 6CJ F 6Torsten W 5Geoff C 4Stefan M 4
2003 2004 2005 2006 2007 2008 2009 2010 2011
05
1015
20
Jeremy M 28Andreas T 27ter 23Lexlist 18Barbara F 18Mechtilde S15Johannes J 15Diego Z 11Ken W 10David C J 9
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 22 / 31
Wichtige Projekte - Übernahme der ProjektleitungDebian Kernel
2004 2005 2006 2007 2008 2009 2010 2011 2012
020
040
060
080
010
0012
0014
00
maximilian a3849Ben H 3776Sven L 2052Bastian B 1541Horms 1531Jonathan N 1316Moritz M 1312dann f 1276Martin M 703Frans P 464
Debian New Maintainer
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
010
2030
4050
6070
Martin M 202Joerg J 182Craig S 145Enrico Z 143Christoph B 97Marc HE B 89Aníbal Monsalve S 88Brian N 74Cyril B 65Gunnar W 56
Debian Release
1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
040
060
080
010
00
Steve L 3326Luk C 2432Adam D. B 2281Julien C 1496Adeodato S 1437Marc HE B 1274Andreas B 884Philipp K 796Christian P 718Mehdi D 648
Debian X
1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
050
010
0015
0020
0025
00
Julien C 7368Brice G 5145Branden R3993Cyril B 3578David N 2857Michel D 2204Timo A 1016Daniel S 953Thomas D 848Sean F 539
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 23 / 31
Projektleiter übernimmt andere Aufgabe (Ocaml Team)Mailingliste
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
010
020
030
040
050
060
070
0
Stefano Z 2593Sven L 2415Jérôme M 809Ralf T 680Sylvain Le G 670Stéphane G 611Samuel M 558Sven L.1 320Julien C 251Mehdi D 246
Commits
2003 2004 2005 2006 2007 2008 2009 2010 2011
010
020
030
040
050
0 Stefano Z 1374Samuel M 1305Sylvain Le G1098Ralf T 530Sven L 400Romain B 318glondu.guest 185Mike F 175Enrico T 168Thomas P 150
Paketuploads
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
050
100
150
Stefano Z 585Stéphane G 454Samuel M 427Ralf T 357Sylvain Le G329Romain B 280Sven L 202Mehdi D 166Mike F 78Enrico T 44
Behobene Fehler
2000 2001 2002 2003 2004 2005 2007 2008 2009 2010 2011 2012
050
100
150
200
Sylvain Le G307Samuel M 280Stéphane G 187Stefano Z 187Ralf T 178Sven L 112Mehdi D 101Romain B 42Mike F 33Julien C 24
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 24 / 31
Diskussion unterrepräsentiert (Pkg-Games)Mailingliste
2006 2007 2008 2009 2010 2011 2012
050
100
150
200
250
300
Gonéri Le B492Eddy P 460Miriam R 238Bruno K 199Paul W 189Cyril B 188Alexander S137Gerfried F 130Bas W 128Moritz M 127
Commits
2006 2007 2008 2009 2010 2011 2012
020
040
060
080
0
Miriam R 1558Gonéri Le B 1526Paul W 1154Jon D 901Andres M 775Gerfried F 709bddebian.guest 679Ansgar B 658Bruno Fuddl K 636Eddy P 521
Paketuploads
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
4060
80
Barry d 176Sam H 173Gonéri Le B161Michael K 146Miriam R 138Gerfried F 126Bruno K 115Clint A 94Evgeni G 83Ansgar B 78
Behobene Fehler
2000 2001 2002 2003 2004 2005 2007 2008 2009 2010 2011 2012
020
4060
8010
0
Barry d 209Gonéri Le B208Sam H 128Paul W 99Miriam R 92Marco R 90Gerfried F 86Bruno K 84Ansgar B 79Bas W 74
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 25 / 31
Mißverhältnis Diskussion - Code (Debian GIS)Mailingliste
2004 2005 2006 2007 2008 2009 2010 2011 2012
050
100
150
200 Francesco P. L947
Paolo C 461Hamish 399Petter R 248Steve H 190alex b 105Paul W 101Silke R 96Jon S 87Markus N 82
Commits
2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
040
060
080
0
Francesco P. L 2851David P 529Andreas P 307Petter R 235Fabio T 194Giovanni M 159Alan B 127Paul W 125Jean.Francois D 125Antonio V 112
Paketuploads
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
4060
80
Francesco Paolo L383David P 128Petter R 36Fabio T 34Andreas P 25Sylvestre L 23Peter S G 15Alastair M 10Giovanni M 9Youhei S 9
Behobene Fehler
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
4060
80
Francesco Paolo L419Andreas P 67David P 66Fabio T 32Petter R 25Sylvestre L 24Giovanni M 24Peter S G 13Paul W 12Stephen F 10
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 26 / 31
Gespaltenes Team (Debian Multimedia)Mailingliste 1
2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
020
4060
Free E 171Junichi U 110Joost Yervante D 98tim h 94Daniel J 79Felipe S 71guenter g 68Eric Dantan R 54Jack O 37Mike O 34
Mailingliste 2
2007 2008 2009 2010 2011 2012
010
020
030
040
050
060
0
Reinhard T 1800Fabian G 1159Jonas S 972Felipe S 698Alessio T 668Adrian K 508Jaromír M 305Hans.Christoph S 284Christophe M 262Andres M 235
Commits
2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
050
010
0015
0020
0025
00
Alessio T 6271Reinhard T 2021Jonas S 1297Jaromír M 878Adrian K 755Fabian G 708Andres M 599Benjamin D 591Hans.Christoph S 569Felipe S 560
Behobene Fehler
2003 2004 2005 2007 2008 2009 2010 2011 2012
050
100
150
200
Alessio T 421Reinhard T 321Sam H 241Adrian K 182Benjamin D 158A M 122Jonas S 116Free E 93Christophe M 85Fabian G 66
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 27 / 31
„Gesundes“ Team (Debian Med)User Mailingliste
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
010
020
030
040
050
060
0 Andreas T 2879Charles P 1073Karsten H 474Mathieu M 361Steffen M 360David P 315Olivier S 193Nelson A. de O 191Sebastian H 169Michael H 123
Commits
2005 2006 2007 2008 2009 2010 2011 2012
020
040
060
080
010
00
Andreas T 2812Charles P 2775Mathieu M 1242Steffen M 961David P 538Olivier S 510Steven M. R 396Aaron M. U 251Thorsten A 184Laszlo K 134
Paketuploads
2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
050
100
150
200
Andreas T 651Charles P 410Steffen M 301Mathieu M 155Steve M. R 96Aaron M. U 79Thorsten A 38Olivier S 38Dominique B 38Philipp B 33
Behobene Fehler
2001 2002 2003 2004 2005 2007 2008 2009 2010 2011 2012
020
4060
80
Andreas T 300Charles P 157Mathieu M 87Steve M. R 52Olivier S 45Aaron M. U 33Steffen M 28Dominique B 25Philipp B 13Nelson A. de O 10
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 28 / 31
Quellen und weiterführende Literatur
How to tell if a FLOSS project is doomed to FAILGSoC Metrics working groupDebian Teams Activity MetricsOpen Advise. What We Wish We Had Known When We Started
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 29 / 31
Quellen und weiterführende Literatur
How to tell if a FLOSS project is doomed to FAILGSoC Metrics working groupDebian Teams Activity MetricsOpen Advise. What We Wish We Had Known When We Started
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 29 / 31
Quellen und weiterführende Literatur
How to tell if a FLOSS project is doomed to FAILGSoC Metrics working groupDebian Teams Activity MetricsOpen Advise. What We Wish We Had Known When We Started
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 29 / 31
Quellen und weiterführende Literatur
How to tell if a FLOSS project is doomed to FAILGSoC Metrics working groupDebian Teams Activity MetricsOpen Advise. What We Wish We Had Known When We Started
Andreas Tille (CLT 2012) Qualitätsanalyse und Teammanagement Chemnitz, 17. März 2012 29 / 31