18
Konzeption und prototypische Realisierung einer kooperativen Multiprojekt-Software-Entwicklungsplattform mit Unterstützung durch Semantic Web Technologie Sascha Rinne

eCopSoft Präsentation Sascha Rinne

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: eCopSoft Präsentation Sascha Rinne

Konzeption und prototypische

Realisierung einer kooperativen

Multiprojekt-Software-Entwicklungsplattform

mit Unterstützung durch Semantic Web

TechnologieSascha Rinne

Page 2: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik

Die eCopSoft-Plattform

2Benutzer – Projekte – Adapter – Events – Analyse – Semantische DB

– Ontologie

Versions-Verwaltung

Issue-Tracker

Email

eCopSoft-Server

Benutzer-Verwaltung

Projekt-Verwaltung

Daten-Bank

Analysator

Soziales-Netzwerk

Dashboard

Wiki

eCopSoft-GUI

Benutzer-Administration

Projekt-Administration

Komponenten-Integration

Page 3: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik

• Benutzerverwaltung (Profile, Logins)• Projektverwaltung (Mitglieder, Subsysteme)• Analyse von Entwicklungsartefakten• Zentrale Datenspeicherung• Anbindung der Subsysteme

• Flexibilität (Subsysteme, Artefakte)• Erweiterbarkeit (Subsysteme, Analyse, …)• Zentraler Komponente und Infrastruktur für

Aufgaben

Aufgaben

3Benutzer – Projekte – Adapter – Events – Analyse – Semantische DB

– Ontologie

Page 4: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Benutzerverwaltung (anlegen, ändern,

löschen)• Benutzereigenschaften:

– Identifikator (URI, global eindeutig)– Name (Vor- und Nachnahme)– Passwort– Email-Adresse

• Zentrales Benutzerprofile• Rechtemanagement (Rollenbasiert)• Schnittstelle für Benutzeroberfläche

Benutzerverwaltung

4Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Page 5: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Projektverwaltung (anlegen, ändern,

löschen)• Projekteigenschaften:

– Identifikator (URI, global eindeutig)– Name und Beschreibung– Typ (Öffentlich vs. Privat)

• Projektmitglieder (anmelden, einladen, bewerben)

• Projektwerkzeuge (Entwicklungstool, KKKs)• Automatische Bereitstellung von Logins• Schnittstelle für Benutzeroberfläche

Projektverwaltung

5Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Page 6: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Verschieden Subsysteme Anbinden

• Globale- vs. Projekt- Verfügbarkeit• Flexible Anbindung

– Unterschiedliche Schnittstellen– Unterschiedliche Programmiersprache– Unterschiedliche Funktionen

• Benötigte Funktionen:– Benutzerverwaltung (Logins, Rechte)

– Über Änderungen informieren– Auf Artefakte zugreifen

Anbindung der Subsysteme

6Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Page 7: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Adapter zum Anbinden der Subsysteme

• Subsystem spezifische Schnittstelle ⇒ generische Server Schnittstelle

• Adapter und Hostadapter (Projekt-Instanzen)• Module für Funktionen

Anbindung der Subsysteme durch Adapter

7Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Versions-Controlle

Bug TrackerWiki

Email Community

Page 8: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Event bei Änderung

• Eventeigenschaften:– Akteur– Artefakt– Beschreibung– Subsystem– Zeitpunkt– Projekt– Zusätzliche Felder

• Event Produzent• Event Konsument• Verknüpfung mit Listener

Events

8Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Event Producer

Event Producer

Event Consume

r

Event Consum

er

Event Producer

Event Producer

Page 9: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Event Consumer

• Speichern aller Event

• Zeitliche Nachverfolgung von Ereignissen• Timeline und Logs

• Schnittstelle für Clients• Suche und Filter

Event Datenbank

9Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Event-Datenbank

Page 10: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik

Analyse von Events

10Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

AnalyzerManager

Waiting Queue

Scheduled Queue

Analyzing Queue

2

3

1 Analyzer

Analyzer 1

Analyzer 2

Analyzer 3

Analyzer …

Analyzer n

Page 11: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Zugriff auf Artefakte

• Lokale Repräsentation

• Einheitlich für alle Subsysteme

• Module der Adapter• Parameter für Anfrage

• Zentraler Zugriffpunkt• Cache-Speicher

Artefakt Supply

11Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

ArtefaktSupply

Purchaser

Purchaser 1

Purchaser 2

Purchaser 3

Purchaser …

Pruchaser n

Page 12: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Ergebnisse der Analyse

• Speichern von Semantischen Daten• Modell des Gesamtsystems (IST- Zustand)

• Verwendung von Semantic Web Technik• Repräsentation: Benutzern, Projekten,

Artefakten (Quellcode, Tickets, Blog Posts, Email, ….), Kenntnissen, Themen, Programmiersprachen, …

• Verknüpfung: erstellt, bearbeitet, gelöscht, kennen, zusammenarbeiten, verwendet, bekannt, …

Semantische Datenbank

12Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Semantische-

Datenbank

Page 13: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Maschinelle Verarbeitung von Informationen

• Verknüpfung unterschiedlicher Daten• World Wide Web Consortium (W3C)• Resource Description Framework (RDF)

– Aussagen über Ressourcen– Tripel (Subjekt, Prädikat, Objekt)

• Ontologien– Web Ontology Language– Begriffe definieren– Klassen bilden– Verknüpfungen definieren

Semantic Web – RDF, OWL, Ontologien

13Benutzer – Projekte – Adapter – Events – Analyse – Semantische

DB – Ontologie

Page 14: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik

Artefact-Actor-Networks - Ontologien

14Benutzer – Projekte – Adapter – Events – Analyse – Semantische DB

– Ontologie

AANBase

Actor

Artefact

Keyword

AANMeta

Group

Person

AANSoftwareEngineering

Software

Project

Software

Developer

DesignPattern

Prog.Languag

e

. . .

Friend of a Friend

. . . Dublin Core

Page 15: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Java

• OSGi– Modularisierung– Services (intern)

• REST Web Services• XML (RDF/XML, WS)• RDF Jena Framework• Bean Validation• SQL Datenbank

(MySQL)• Objekt Datenbank

(db4o)

Implementierung

15Benutzer – Projekte – Adapter – Events – Analyse – Semantische DB

– Ontologie

OS (Linux)

Java Plattform

OSGi Container

Jena (RDF)

eCopSoft-ServerBenutzer-Verwaltung

Projekt-Verwaltung

Daten

BankAnalysator

REST WS

Page 16: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik

Zusammenfassung

16Benutzer – Projekte – Adapter – Events – Analyse – Semantische DB

– Ontologie

eCopSoft-Server

Benutzer-Verwaltung

Projekt-Verwaltung

Daten-Bank

AnalysatorSemantisch

e-Datenbank

Event-Datenbank

AnalyzerManager

AnalyzerAnalyzer 1

Analyzer 2

Analyzer …

Version-Controle

Bug TrackerWiki

Email Community

ArtefaktSupply

Purchaser

Purchaser 1Purchaser 2Purchaser …

Page 17: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik • Anbindung weiterer Subsysteme

– Kalender, (Micro-) Blogs, Continuous Integration, …

• Erweiterung der Analyse– Weitere Analysatoren– Mehr Daten, stärkere verknüpfen– Weitere Ontologien einbinden

• Weitere Module Adapter– Drupal Events, Artefaktzugriff, Tickets, …

• Events zu Multi-Event zusammenfassen

Ausblick

17Benutzer – Projekte – Adapter – Events – Analyse – Semantische DB

– Ontologie

Page 18: eCopSoft Präsentation Sascha Rinne

eCopSoft-Server – Sascha Rinne

Pro

f. D

r. Jo

hann

es M

agen

heim

- F

akul

tät f

ür E

lekt

rote

chni

k, In

form

atik

und

Mat

hem

atik

18

Vielen Dank für Ihre

Aufmerksamkeit!