ProgrammierPraktikum WS00/01

[TimeSlice][U-Topp]

Aktuelles

15.1.01: Quo Vadis, ProPraWS00?
Nach der Vorstellung des aktuellen Projektes, der Teilkomponenten von U-Topp,
9/11/00
Gruppenaufteilung liegt vor - s.u.
Time-Slice liegt in ersten Versionen vor, u.a.: Zip-Dateien etc. der Gruppe Andreas Martmann, Torsten Heinen und Christian Brüske.
10/10/00
Es wird ganz schön eng: Ich habe 41 Anmeldungen, und der Raum hat nur ca. 25 Stühle. Einen geeigneteren Raum finde ich nicht ... ggf. müssen wir uns später spalten.
Wer Lust hat, kann sich schon mal mit argoUML befassen.
Termine
Die Vorbesprechung war am 17.7.2000, um 13.15h im SR-0, Einsteinstr. 62.
Eine Anmeldung ist wünschenswert, am besten per Email an lammers@math.uni-muenster.de (Die Formalia finden sich übrigens nun auch im veröffentlichten KVV)
Das PP wird jeweils Montags und Donnerstags von 13.00 c.t. bis 15.00 im SR0 stattfinden
Planungen
Ggf. basteln wir eine CASE-Werkzeug auf Basis der UML

Zeitplanung

(s. gesonderte Tabelle)

Gruppen

Greenhorn Ltd.
Burghard Grüter [gruterb@uni-muenster.de]
Carsten Keßler [carstlette@gmx.de]
Christoph Pohlmann [pohlmac@math.uni-muenster.de]
Dominik Wilmsen [wilmsend@web.de]
Eugen Scheinker [scheinke@math.uni-muenster.de]
Harald Borsutzky [har.b@web.de]
Wolfram Urich [ heavy@math.uni-muenster.de ]
MakroSoft
Barbara Grützmacher [babsgr@math.uni-muenster.de]
Christian Brüske [brueske@uni-muenster.de]
Dennis Koetterheinrich [kotterhe@math.uni-muenster.de]
Dominik Völker [dvolker@math.uni-muenster.de]
Johannes Schick [schickj@uni-muenster.de]
Peter Ahmann [ahmannp@uni-muenster.de]
Philippe Wittmann [wittmann@uni-muenster.de]
Sebastian Riks [riksseb@math.uni-muenster.de]
C.K. Mbert
Birga Schwartz [birgasch@math.uni-muenster.de]
Carolin Woltermann [carowo@uni-muenster.de]
Emin Bahadir [emin@gmx.de,Bahadir@math.uni-muenster.de]
Karsten Wantia [wantiak@math.uni-muenster.de]
Marc Rogge [mrogge@muenster.de]
Ralph Carrie [carrie@uni-muenster.de]
Verena Kutschker [veku@math.uni-muenster.de]
Synergie-Soft
Alexander Starke [alstar@gmx.de]
Arnd Sahlmann [sahlmann@web.de,]
Henning Lohmeyer [lohmeyh@uni-muenster.de]
Nadine Baumann [nbauman@uni-muenster.de]
Stefanie Wennmacher [wennmac@muenster.de]
Tobias Debald [debald@uni-muenster.de]
Uta Hartmann [hartmau@math.uni-muenster.de]
OOPS!
Andreas Martmann [martmann@uni-muenster.de]
Florian Wessels [wesself@math.uni-muenster.de]
Henrik Blunck [henrikblunck@yahoo.de]
Sven Schade [schades@uni-muenster.de]
Theodor Förster [theodor.foerster@gmx.de]
Torsten Heinen [heinen@ifgi.uni-muenster.de]
Brainstorme mkH
Brigitte Bonder [bonder@uni-muenster.de]
Dominik Grüning [nik-g@muenster.de]
Holger Picker [pickerh@uni-muenster.de]
Knut Willems [xenon@math.uni-muenster.de]
Ludmilla Scheinker [scheink@math.uni-muenster.de]
Martin Swobodzinski [Martin.Swobodzinski@t-online.de, heavy@math.uni-muenster.de]
Wolfgang Hoppe [hoppew@math.uni-muenster.de]

Softwaretechnik und UML

Softwareentwicklung ist immer dann schwierig, wenn die Projekte zu groß für eine Person werden, oder so langwierig, das die genaue Erinnerung an alle Einzelheiten unmöglich wird, oder unklar ist was eigentlich genau erwartet wird.

Softwaretechnik ist im wesentlichen der Versuch, diese Probleme zu beheben, indem über formalisierte Schritte von unscharfen Freitext-Beschreibungen und Vorgaben über immer genauere Modelle des Endproduktes (formaler Text, Grafiken) bis hin zum fertigen Produkt gegangen wird. Diese Formalisierung dient einerseits der konsistenten Entwicklung (z.Bsp. werden Schittstellen definiert und müssen dann auch so realisert werden), erleichtern aber auch dei Zusammenarbeit und das Einarbeiten bislang arbeitsgruppenfremder Personen.

Wir bezeichnen in diesem Zusammenhang die Gesamtmodellierung, d.h. alle Angaben zur Formaliserung udn Schrittweisen Verfeinerung, alle erstellten Texte und Beschreibungen bei der Produktentwicklung, als Gesamtdokumentation der Produktentwicklung, die im erweiterten Pflichtenheft zusammengefasst wird, und immer mit zum Produkt gehört. Sie ist sogar der wichtigere Teil: aus der Dokumentation sollte man leicht das fertige Programm erstellen können, umgekehrt gilt das nicht.

Die UML (Unified Modeling Language) ist ein recht verbreitetes Hilfsmittel der Softwaretechnik, alle wesentlichen Väter der objektorientierten Softwareentwicklung haben an ihr mitgeschrieben. Sie besteht im wesentlichen aus einer Sammlung von vorgegebenen Grafikelementen, mit denen Abläufe, Beziehungen und Schnittstellen sehr anschaulich, aber auch sehr sauber modelliert werden können.

Inhalt / Produkt

Ein Problem der UML ist, das sie eben im wesentlichen aus grafischen Elementen besteht, und man mit diesen hantieren muss. Handschriftlich geht das noch eingermassen, aber auf dem Rechner ...
Unsere Aufgabe ist es, Hilfsmittel (Werkzeuge) zum Einsatz der UML zu entwicklen: (engl. CASE-Tools, für Computer Aided Software Engineering).

Anforderungsprofil

still to do

Dokumente / Hilfen

Organisatorisches

Zeit und Ort: Mo, Do, 13.00-15.00 Uhr, Einsteinstr. 62, Raum SR-0
Beginn: 16.10.2000
Zuordnung: Grund- und Hauptstudium (4 SWS)
Adressaten: Nebenfachinformatik (Diplom), Informatik Lehramt Sek.II/I Bereich B (ab 3.Sem.), Studierende der Geoinformatik (ab 3.Sem.)
Vorkenntnisse: Grundvorlesungen Informatik (oder vergleichbare Kenntnisse)
Leistungsnachweis: für Diplom-Studiengang, Staatsexamen Sek.II/I durch rege Mitarbeit und Erstellung eines akzeptablen Produktes.
Anmeldung: Per Email an lammers@math.uni-muenster.de, Subject ProPra" (unter Angabe von Name, Vorname, Matrikelnummer, Fach, Fachsemester) oder persönlich bei der Vorbesprechung / ersten Sitzung.

Projekt

Allgemeine Bemerkungen

Im Programmierpraktikum soll ein Software-Entwicklungsprozess an einem größeren Softwaresystem in einem möglichst realistischem Rahmen kennengelernt werden. Zielsetzung und Gruppenaufteilung im Groben werden als Rahmenbedingungen vorgegeben. Im Verlauf des Praktikums werden die Teilnehmer in Gruppen aufgeteilt. In ihnen werden Feinanforderungen und Schnittstellen der zu konstruierenden Teilsysteme diskutiert und festgelegt. Zu den weiteren Aufgaben einer solchen Praktikumsgruppe gehört auch das Festlegen (und Einhalten!) von Deadlines sowie Arbeitsteilung und Dokumentation. Die Umsetzung einzelner Systemkomponenten erfolgt danach selbständig durch die einzelnen Gruppenmitglieder wobei gemeinsam genutzte Komponenten berücksichtigt werden sollen. Für die Systemspezifikation wird die UML (Unified Modeling Language) verwendet und für die entsprechende Systemimplementierung die Programmiersprache JAVA.

Im Rahmen des Praktikums wird die Funktionalität eines Softwaresystems schrittweise entworfen, implementiert, getestet und dokumentiert werden. Die im Praktikum gestellten Systemanforderungen sind an die heutige und zukünftige Softwarepraxis angelehnt. Dies gewährleistet ein wirklichkeitsnahes Arbeiten (mit allem zu erwartenden Chaos ;-))

Literatur und Materialien

Beispiele

Im ProPra SS00 wurden einige Dokumentationen erstellt, die sicher nicht perfekt sind, aber schon recht ordentlich. Anschauen kann man sich mal die Dokumentationen zu DoSys und DokuStore. Zur Zeit kann man auch noch die Programme besichtigen: DoSys und DokuStore.

Thema UML

Im Laufe der Vorbereitung hat sich der Oesterreich [Öst97] als wirklich wesentliche Grundlage herausgestellt, nach Möglichkeit sollten sich alle Teilnehmer ein (aktuelles) Exemplar besorgen, einige Exemplare werden wir noch zur Verfügung stellen. Außerdem gibt es die Einführung (Vortrag) von Jörg Graf, die sich allerdings mehr an erfahrenere Softwareentwickler wendet,, und diverse einführende Artikel. Interessant ist ggf. auch die UML-Reference-Page.
Graf99
J. Graf, Softwaretechnik mit der UML (auch als lokale Kopie).
Oest97
B. Oesterreich, Objektorientierte Softwareentwicklung mit der Unified Modeling Language, Oldenburg Verlag, 1999
Dazu auch: Oesterreichs UML-Seite
Wahl98
G. Wahl, UML kompakt
OMG00
Object Management Group What Is OMG-UML and Why Is It Important?

Thema XML

Falls wir XML überhaupt einsetzen, ist vermutlich der Übesichtsartikel aus dem Informatik-Spektrum zunächst hinreichend. Ansonsten hilft ggf. ein gelegentlicher Blick in das XML-Handbook.
Tolk99
R. Tolksdorf, XML und darauf basierende Standards: Die neuen Auszeichnungssprachen des Web Informatik-Spektrum 22/6 pp 407-412, Dez. 1999, Springer. (auch als lokale Kopie)
Gold98
Ch. F. Goldfarb, P. Prescod, The XML Handbook, Prentice Hall, 1998.

weitergehende Literatur

Bal96
Helmut Balzert, Lehrbuch der Software-Technik: Software-Entwicklung, Spektrum Akademischer Verlag, 1996.
CY94a
P. Coad and E. Yourdon, Objektorientierte Analyse, Prentice Hall, München, 1994.
CY94b
P. Coad and E. Yourdon, Objektorientiertes Design, Prentice Hall, München, 1994.
DZ88
Stefan Dissmann and Volker Zurwehn, Software-Praktikum, Teubner, 1988.
La99
Script (Fragment) zum Programmierpraktikum SS99
La97
Script (Fragment) zum Programmierpraktikum SS97

Dietmar Lammers
Last modified: Thu Jan 18 13:53:30 MET 2001