Lehrende: David Christopher Mosteller
Veranstaltungsart:
Praktikum
Anzeige im Stundenplan:
PR Model.+Entw.vert.
Semesterwochenstunden:
4
Credits:
6,0
Unterrichtssprache:
Deutsch
Min. | Max. Teilnehmerzahl:
- | 24
Anmeldegruppe: Anmeldegruppe Praktika ab WS 2015/16
Kommentare/ Inhalte:
Die Entwicklung von Softwaresystemen in einem (großen) Team verlangt von den Teammitgliedern nicht nur Kenntnisse in der Softwareentwicklung selbst, sondern darüber hinaus auch Kompetenzen in Bezug auf Kommunikation, Koordination und Kooperation innerhalb des Teams. Modelle bilden dabei die gemeinsame Kommunikationsgrundlage und werden in Softwareentwicklungsprojekten für diverse Aufgaben (Entwurf, Analyse, Implementierung, Skizze, Qualitätssicherung, etc.) eingesetzt.
Insbesondere die Entwicklung von verteilten und nebenläufigen Softwaresystemen ist eine anspruchsvolle Aufgabe, die eine systematische Herangehensweise und gut ausgebildete Softwareentwicklerinnen und -entwickler erfordert. In diesem Praktikum werden Methoden der Modellgetriebenen Softwareentwicklung gepaart mit einem agilen Vorgehensmodell erlernt und angewendet. Der Fokus liegt neben dem Erlernen und der Anwendung von Modellierungstechniken zur Entwicklung verteilter Softwaresysteme auch auf der Erforschung, Entwicklung und Pflege von Softwarewerkzeugen und deren Einbettung in einen systematischen Ansatz.
Die Teilnehmenden können praktische Erfahrungen im Bereich der agilen und verteilten Softwareentwicklung sammeln und sich selbst in diesem Kontext erproben. In der petrinetzbasierten agenten- und organisationsorientierten Softwareentwicklung (PAOSE) werden die dafür notwendigen Werkzeuge, Konzepte, Methoden und Techniken zusammen mit einer Projektmanagementumgebung eingesetzt.
Die gesammelten Erfahrungen lassen sich auf andere Softwareentwicklungsprojekte übertragen. Die behandelten Themen werden in gleicher Weise in Projekten in der Forschung und der Wirtschaft eingesetzt.
Lernziel:
Die Teilnehmenden erhalten die Möglichkeit zu erlernen, wie Softwareentwicklungsprojekte agil und modellbasiert strukturiert werden können, was es bedeutet die Verantwortung für Teilbereiche eines Softwaresystems zu übernehmen und wie sie sich erfolgreich in ein Team integrieren. In diesem Rahmen können sie die Herausforderungen in der dynamischen Teamkoordination selbst erfahren und somit wesentliche Einblicke in das selbstorganisierte Projektmanagement gewinnen.
Es werden u.a. der Einsatz und die Benutzung der folgenden Werkzeuge erlernt/vertieft:
Redmine (Projektmanagementumgebung), Eclipse (Java-Entwicklungsumgebung), Ant (Buildmanagement), Renew (Integrierte Entwicklungsumgebung für Java Referenznetze), Mulan (Agentenframework), SVN/Git (Versionierungssysteme) und Jenkins (Continuous Integration). Darüber hinaus setzen wir Techniken wie Java, JavaScript, diverse UML-Techniken, BPMN und Java-Referenznetze (Petrinetze) ein.
Vorgehen:
Eine kurze Einführung in die relevanten Facetten des verwendeten Ansatzes wird zu Beginn durch die Veranstalter gegeben. Dies umfasst, in Abhängigkeit von den Vorkenntnissen der Teilnehmenden, z.B. Eclipse, Redmine, Renew, RMT, Versionierungssysteme, Datenbanken, Continuous Integration, Programmiersprachen oder Metamodellierung. Die koordinierte Zusammenarbeit einer größeren Anzahl Personen mit dem Ziel, erfolgreich ein gemeinsam verantwortetes Software-Produkt zu entwickeln, ist zentraler Bestandteil des vorgestellten Ansatzes.
Zusätzliche Hinweise zu Prüfungen:
Zumindest in der Einführungsphase ist eine Anwesenheit während der Präsenzzeiten notwendig. In Absprache mit den Beteiligten kann ein Teil der Praktikumszeit in die vorlesungsfreie Zeit verlagert werden, sodass mehr Zeit für den Vorlesungs- und Übungsbetrieb als Vorbereitung für Klausuren verbleibt. Die zeitlichen Abstimmungen erfolgen im Konsens aller Beteiligten, damit es keine Terminkollisionen mit anderen Veranstaltungen / Prüfungen gibt.
Diese Veranstaltung ist Bestandteil des semesterübergreifenden Forschungsprojekts "Agentenorientierung" des Labors für agenten- und organisationsorientierte Softwareentwicklung (Laos). Im Rahmen des Forschungsprojektes besteht die Möglichkeit zur Abfassung von Projekt-, Bachelor-, Baccalaureats-, Master- und Diplomarbeiten.
|