Lutz Prechelt, 1 Seminar Komponenten Tools for light weight knowledge sharing in open-source software development Maximilian.

Slides:



Advertisements
Ähnliche Präsentationen
E-Commerce Shop System
Advertisements

Vorlesung zur Lehrveranstaltung „Internet-Learning“ im SS 2003
Programmieren im Großen von Markus Schmidt und Benno Kröger.
mit Entwicklungsumgebungen (Eclipse) Software verbessern
Universität Rostock Fakultät für Informatik und Elektrotechnik Institut für Informatik, Lehrstuhl DBIS Albert-Einstein-Straße 21, D Rostock Putbus,
LON-CAPA 1 Das LearningOnline Network mit Computer- Assisted Personalized Approach (LON-CAPA) Gerd Kortemeyer Michigan State University.
Ontologien- Query 1 Teil2
Freie Universität Berlin Institut für Informatik
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Mit Wikis Unternehmenswissen managen – Beispiele und Erfahrungen
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Der Rational Unified Process - Einführung Inhalt Prozessmodelle Der Rational Unified.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Was ist Refactoring? Bevor man die Integration angeht, mag es angebracht sein, den.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Agile Software Entwicklung mit dem RUP Agile Softwareentwicklung Best Practice bei.
es gibt (fast) nichts, was nicht anders gemacht werden könnte
Java: Objektorientierte Programmierung
Java: Grundlagen der Sprache
K-Modeler Engineering
PinK Plattform für intelligente Kollaborationsportale Dr. Joachim Quantz, e.V. Berlin, 13. September 2005.
Das Build-Tool ANT ETIS SS05. ETIS SS05 - Nadine FröhlichANT 2 Gliederung Motivation Build - Datei –Allgemeiner Aufbau –Project –Target –Task –Properties.
Christian Kästner Modellgetriebene Softwareentwicklung Eclipse Modelling Framework.
XDoclet ETIS SS05.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Rigi und Web2Rsf vorgestellt von Tobias Weigand. Inhalt Ziel von Web2Rsf und Rigi Vorstellung des Parsers Web2Rsf Vorstellung des Werkzeugs Rigi Analyse.
Brandenburgische Technische Universität Cottbus Program Profiling Andrzej Filipiak Übung Testen von Software SoSe 2006.
Projekt Web Engineering
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Schwerpunktprogramm (SPP) Netzbasierte Wissenskommunikation in Gruppen Gefördert von der Deutschen Forschungsgemeinschaft Barrieren beim Wissensaustausch.
UML Begleitdokumentation des Projekts
... und alles was dazugehört
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering WS 2006 / 2007Folie 1 Agile Vorgehensweisen Hintergrund –in den letzten Jahren hat.
Technische Fachhochschule Berlin University of Applied Sciences Zur Entwicklung eines FAQ-Forums mit Benachrichtigungssystem für den Einsatz in Studienmodulen.
Technische oder personenorientierte Lösungen?
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
EIN CMS MACHT SCHULE Tina Gasteiger.
Internet: Funktionsweise und Dienste
Präsentation von: Tamara Nadine Elisa
Kollektionen in Java Aufzählungstypen, Generische Typen
ATOSS Knowledge Management Guided Tour
„Buy and Make“ anstelle von „Make or Buy“
Framework for Integrated Test (FIT)
Mit 3 Schichte zum Erfolg
HORIZONT 1 XINFO ® Das IT - Informationssystem Java Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Polynome und schnelle Fourier-Transformation
Reasoner Semantische Interoperabilität
Shape Similarity 27. Februar 2006 Michael Keller.
1 CeBIT 2008 Knowledge Management 2.0 Ulrich Kampffmeyer PROJECT CONSULT Unternehmensberatung Dr. Ulrich Kampffmeyer GmbH Breitenfelder Straße
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
HORIZONT 1 XINFO ® Das IT - Informationssystem Assembler HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
Archival and Discovery
Tose – Gruppe Applikation
My Statistics Schinnerl, Mikes, Walehrach, Grieshofer PPM-Projekt
PRO:CONTROL Ziel des Moduls Arbeitspakete
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Wissen praktisch ablegen
Untersuchungen zur Erstellung eines
Wikis in der Projektarbeit
Content-Managment-System
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Wissensmanagement SGMI Seminar 11. Mai – 12. Mai 2007
Datenbanken im Web 1.
Digitale Annotationen. Grundlage: John Bradley “Towards a Richer Sense of Digital Annotation: Moving Beyond a Media Orientation of the Annotation of Digital.
Text Encoding Initiative Universität zu Köln Daten- und Metadatenstandards Seminarleitung: Patrick Sahle Seminarleitung: Patrick Sahle Referentin: Anna.
Continuous Integration
Thomas Rau, Peter Brichzin Repositories zur Unterstützung von kollaborativen Arbeiten in Softwareprojekten.
IT-Dienstleistungen E-Learning Systeme Content Management 1 Fallbeispiel ILIAS: Das Repository-Objekt-Plugin „Centra“
Seminararbeit Release Management von Web-Systemen Minh Tran Lehrstuhl für Software Engineering RWTH Aachen
Comprehensive Information Base (CIB) – ein Prototyp zur semantischen Datenintegration Stefan Arts
Das Wiki System der Freien Universität Berlin. Vorstellungsrunde Bitte stellen Sie sich kurz vor! Wer sind Sie? Haben Sie Erfahrungen in der Nutzung.
 Präsentation transkript:

Lutz Prechelt, 1 Seminar Komponenten Tools for light weight knowledge sharing in open-source software development Maximilian Höflich Freie Universität Berlin, Institut für Informatik Maximilian Höflich

Lutz Prechelt, 2 Wissensmanagement Probleme traditionelle Organisationen Free and Open Source Software (FOSS) Projekte Informationensmedien synchrone Medien asynchrone Medien versteckte Wissensspeicher Light weight knowledge sharing Hipikat Strathcona ROSE Zusammenfassung Fragestellung: Wie kann einem neu zu einem Projekt hinzugestossenem Programmierer der Einstieg am besten erleichtert werden ? Antwort: Diese Aufgabe versucht Wissensmanagement unter anderem zu lösen ABER: Wissensmanagement ist keine Formel, die einfach nur angewendet werden muss, sondern hängt von vielen Faktoren ab Maximilian Höflich

Lutz Prechelt, 3 Wissensmanagement Organisation der Wissensbasis Wissen ist an Personen gebunden explizites Wissen implizites Wissen Das Münchener Modell Wissensmanagement erzeugt im Optimalfall einen Kreislauf dies erfordert einen grossen Koordinationsauswand Maximilian Höflich

Lutz Prechelt, 4 Probleme Probleme: Kollektivierung des Wissens Wissen ist Macht Institutionalisierung des Wissens schnelles und zuverlässiges Finden? leicht verständliche und ausrechende Informationen? Akzeptanzproblem wird das entsprechende Medium akzeptiert? Änderung von Strukturen, Regeln und Handlungsweisen Rückkopplungsproblem zyklischer Prozess muss in Gang gehalten werden Maximilian Höflich

Lutz Prechelt, 5 Kollektivierungproblem grösste Motivation der Mitarbeiter: Geld und Karriere Akzeptanzproblem finanzielle Anreize alteingesessene Mitarbeiter Institutionalisierungsproblem weniger Rückkopplungsproblem weniger Parameter: fester Wissensmanager (in grösseren Betrieben) feste Niederlassung Mentoring leicht möglich Wissensmanager ist vorhanden traditionelle Organisationen Maximilian Höflich

Lutz Prechelt, 6 Je weiter Kapital gestreut wird, desto mehr verliert es an Wert. Je weiter Wissen gestreut wird, desto mehr gewinnt es an Wert. Maximilian Höflich

Lutz Prechelt, 7 grosse Motivation der Mitarbeiter: Wissenszuwachs (oftmals) kaum Kollektivierungsprobleme Akzeptanz- und Institutionalisierungsproblem wie in traditionelle Organisationen hohes Bewusstsein für Wissensvermittlung Parameter: hohe Mitgliederfluktuation über viele Länder und Kontinente verteilt verschiedene Zeitzonen verschieden Muttersprachen meist kein Wissensmanager vorhanden FOSS Projekte Maximilian Höflich

Lutz Prechelt, 8 Fragestellung: Wie kann einem neu zu einem FOSS-Projekt hinzugestossenem Programmierer der Einstieg am besten erleichtert werden ? Antwort:Durch Mentoring und zur Verfügung gestellte Dokumentationen. Informationssuche über Mentoring meist synchron. Informationssuche über Dokumentationen meist asynchron. InformationsMedien Maximilian Höflich

Lutz Prechelt, 9 Instant Messanger (ICQ,AIM,...) GnomeMeeting, NetMeeting (Audio/Video) ICQ Grösstes Problem: keine gut funktionierenden Archivierungsmechanismen langsame Wissensübertragung (ausser Gnomemeeting) kaum Metakommunikation synchrone Informationsmedien Maximilian Höflich

Lutz Prechelt, 10 Wissensportale statische Homepage CMS Homepage Wiki Grösstes Problem: Möglichkeiten bestimmen den Einsatz Informationsmedium sagt nichts über die Qualität der Informationen aus benötigen meist Administratoren asynchrone Informationsmedien Sourcedokumentationen (JavaDoc) BugZilla Mails Mailinglisten/ Newsgroups Maximilian Höflich

Lutz Prechelt, 11 CVS Metainformationen in Commitnachrichten Bugzilla BugzillaIDs in Dokumentationen oder CVS-Commits Grösstes Problem: Informationen sind zu verstreut kaum durch Menschen auswertbar versteckte Wissensspeicher Maximilian Höflich

Lutz Prechelt, 12 kein Informationsmedium ist eine Gesamtlösung Informationen teilweise weit verteilt Verknüpfungen zwischen Informationen erschliessen neue Informationen für Menschen nur mit viel Aufwand herauszulesen Light weight knowledge sharing Benutzung von common practice Werkzeugen sollen bestimmte Dokumentationen ergänzen oder ersetzen durch automatische Erstellung von Verknüpfungen strukturierte Aufbearbeitung verbesserte Suche fiktives Beispiel: Die Supersuchmaschine für Programmierer Light weight knowledge sharing Maximilian Höflich

Lutz Prechelt, 13 Bugzilla als Taskmanagementsystem Erleichterung der Abarbeitung eines Tasks Client-Server System Client als Eclipse Plugin, standalone Server Verknüpft Informationen aus: Bugzilla CVS Homepage Newsgroups automatisiertes Formen eines Gruppengedächnisses aus diesen Informationen semantisch verknüpfte Informationen contextbezogene Anfragen Mögliche Anfrage: Ich soll Task #123 abarbeiten. Bitte liefere mir ähnliche Tasks. Task #102 ist meinem sehr ähnlich, bitte liefere mir die dazu relevanten Informationen (wie Quelltextänderungen, Newsgroupbeiträge,...) Hipikat Maximilian Höflich

Lutz Prechelt, 14 Update Module Durchsuchen des Informationsquellen Eintragen von neuen Informationen in die Datenbank Identification Module Erstellen der Verknüpfungen in der Datenbank Selection Module Beantwortung einer Anfrage des Clients Hipikat – Erstellung des Gruppengedächnisses Maximilian Höflich

Lutz Prechelt, 15 Identifikation Erstellung der Verknüpfungen mit log matcher activity Matcher text similarity matcher newsgroup thread matcher Selection Erstellen einer Antwortliste spezialisierte submodule Suche ausgehend von einer Entität in der Datenbank Hipikat Maximilian Höflich

Lutz Prechelt, 16 Eine Anfrage stellen – Der Client 1. Einstiegspunkt ist nicht offener Bugzillaeintrag 2. ähnliche Eintrage über similar Beziehung 3. relevante Informationen über implements, documents und about Antwort als Liste von Informationsquellen mit Relevanz (Numerischer Wert). Darstellung der Informationen in Eclipse über Editoren CVS Browser Bugzilla Browser (externes plugin) Hipikat Maximilian Höflich

Lutz Prechelt, 17 Probleme keine Personalisierung des Benutzers keine Rückmeldungen über Nützlichkeit von Informationen Authoren werden nicht berücksichtigt für Relevanzwerte benötigt ausführliche CVS Commitnachrichten sehr Bugzilla-zentrisch Vorteile benötigt keine neuen Informationsmedien setzt keine Formatierung von Informationen voraus ersetzt Dokumentation Hipikat Maximilian Höflich

Lutz Prechelt, 18 Ziel Strathconas ist es einem Programmierer die Arbeit mit grossen Frameworks/APIs zu vereinfachen, indem es Informationen aus Beispielprojekten kontextbezogen liefern kann. komplexe Abläufe oft kaum/keine strukturierte Dokumentationen für jedes Problem andere Beispielprojekte schwer durchsuchbar Client/Server System Client als Eclipse Plugin standalone Server Mögliche Anfrage: Ich habe die Funktionalität bis hierher verstanden und implementiert, aber jetzt weiss ich nicht weiter. Strathcona Maximilian Höflich

Lutz Prechelt, 19 Den Server füllen benötigt Beispielprojekte, die das Framework benutzen bildet die Struktur der Beziehungen in einer DB ab Funktion a mit den Parametern x,y und dem Rückgabewert z gehört zu Klasse H mit der SuperKlasse U, welche die Interfaces HIJ implementiert. In Funktion a werden die Funktionen b,c,d aufgerufen, und Typen K,L,M instantiert. Strathcona Maximilian Höflich

Lutz Prechelt, 20 Der Client EclipsePlugin, das die Usereingaben überwacht Anfrage an C, m oder f) C = Klasse m = Methode f = Variablendeklaration Erstellen des strukturellen Kontextes für Klasse, die C,m oder f enthält Superklasse, Interfaces Funktiosaufrufe aus Methode m (beschränkt auf relevante Funktionen, z.B. keine Java API) Strathcona Maximilian Höflich

Lutz Prechelt, 21 Annahme: Programmierer weiss bereits ungefähr, wie das Framework zu bedienen ist Vergleichsheuristiken für strukturellen Kontext Inheritance Heuristik Calls Heuristik basic calls calls best fit calls with inheritance Uses Heuristik basic uses uses with inheritance Strathcona Maximilian Höflich

Lutz Prechelt, Resultate als Antwort Jedes Resultat ist ein Tripel strukturelle Darstellung Liste der Heuristiken Quelltext Strathcona Maximilian Höflich

Lutz Prechelt, 23 Testumgebungen Eclipse Pluginentwicklung 2 Probanden mit wenig Erfahrung mit Eclipse verschiedene Aufgaben nur Eclipseeigene Tools und Strathcona zur Lösung des Problems Strathcona Kaum Aussagekraft zu wenig Probanden nur ein Projekt Maximilian Höflich

Lutz Prechelt, 24 Probleme Qualität hängt von Beispielprogrammen ab (z.B. Anzahl) Falsche Resultate können sehr viel Zeit kosten Context kann falsch gedeutet werden Copy'n'Paste Programmieren wird gefördert kein Verständnis, unnütze Codefragmente (evtl. Fehlverhalten) gemildert durch mehrere Ergebnisklassen Vorteile automatisches Suchen von relevanten Quelltextpassagen keine spezielle Anfragesprache ersetzt Dokumentation über Beispielsammlungen => erleichtert die Arbeit der Entwickler eines Frameworks Strathcona Maximilian Höflich

Lutz Prechelt, 25 Auswertung von CVS Daten Amazon: Kunden, die dieses Buch kauften, haben auch auch folgende gekauft... ROSE: Entwickler, die diese Klasse geändert haben, haben auch folgende geändert... Konstruktion der Zusammenhänge über Transaktionen auf dem CVS über gleicher Commit zeitliche Nähe der Commits Wenn in 90% der Fälle, in denen die Klasse Bar geändert wurde auch die Datei web.xml geändert wurde, dann wird ROSE darauf hinweisen ROSE Maximilian Höflich

Lutz Prechelt, 26 FOSS Projekte lassen kaum raditionellen Wissenstransfer zu synchrone Informationsmedien sind sehr effektiv asynchrone Informationsmedien sind archivierbar, erreichen viele Light weight knowledge sharing kann bestimmte Dokumentationen ersetzen wären überflüssig, wenn jeder gute Dokumentation schreiben würde funktionert nur wenn bestimmte Umgebungsfaktoren bereits existieren ROSE Maximilian Höflich

Lutz Prechelt, 27 Danke! Maximilian Höflich

Lutz Prechelt, 28 Wissensmanagement: Management von Expertise Herausforderung Wissensmanagement Learning Communities und Wissensmanagement Tool Support for Inter-Team Learning in Agile Software Organisations (Thomay Chau, Frank Maurer) Integrated Process Support and Light Weight Knowledge Sharing for Agile Software Organisations (Thomas Chau, Frank Maurer) Effective Work Practices for Software Engineering: Free/Libre Open Source Software Development (Kevin Crowston, Hala Annabi, James Howsion& Shengai Masango) Hipikat: Recommenting Pertinent Software Development Artifacts (Davor Cubranic, Gail C. Murphy) Integrated Process Support and Light Weight Knowledge Sharing for Agile Software Organisations Tools for Light Weight Knowledge Sharing in open-source software development (Davor Cubranic, Reid Holmes, Annie T.T. Ying, Gail C. Murphy) Wissensmanagement Wissen als Produktionsfaktor Using Structural Context to Recomment Source Code Examples (Reid Holmes, Gail C. Murphy) Mining Version Histries to Guide Software Changes (Thomas Zimmermann, Peter Weißgerber, Stephan Diehl, Andreas Zeller) Quellen Maximilian Höflich