Heutiger Termin letzte Woche 3/27/2017 Heutiger Termin letzte Woche Aufgaben des Projektleiters, der Arbeitspaketleiter und Software-Entwickler kurze Einführung in die Problemstellung heute ausführliche Vorstellung der Problemstellung erfolgreiche Durchführung von Projekten AG Projektmanagement bestimmen Projektleiter bestimmen Beachte: ohne Projektleiter kein Projekt © Klaus Schild, 2004 Name, Abteilung
Integriertes Content-Management mit XML © Klaus Schild, 2004
Content-Management Inhalte unabhängig von Präsentation (Layout) repräsentieren Inhalte erst dann mit Layout versehen, wenn tatsächlich nötig Präsentation an Kontext anpassen Vorteile: einfacheres Erstellen, Auffinden, Pflegen und Wiederverwendung von Inhalten unterschiedliche Präsentation von Inhalten möglich strukturell unterschiedliche Sichtweisen von Inhalten möglich © Klaus Schild, 2004
Content-Management mit XML Trennung von Inhalt und Präsentation ist Grundgedanke von XML Inhalte: XML generelle Struktur der Inhalte: XML-Schema unterschiedliche Präsentationen: Transformation XML HTML/PDF/… mit XSLT strukturell unterschiedliche Sichtweisen: Transformation XML XML mit XSLT © Klaus Schild, 2004
Entwicklung von XML-Schemata für Content-Management unpraktikabel! Zu bestimmten Zeitpunkt wird für vorhandene Inhalte ein XML-Schema S entworfen. Schema S beschreibt für die Zukunft alle zulässigen Inhalte. XML-Schemata eher statisch, verändern sich nicht zusammen mit Inhalten. © Klaus Schild, 2004
Ko-Entwicklung von Inhalten und Schema zu realisierende Anforderung Generelle Struktur (Schema) entwickelt sich parallel zu Inhalten. Schema schränkt zwar zulässige Inhalte ein, kann aber auch einfach an neue Inhalte angepasst werden. © Klaus Schild, 2004
Inhalt und Schema integrieren <addressBook xmlns:s="http://relaxng.org/ns/vocabulary"> <s:zeroOrMore> <card> <name> <s:mixedContent>Erika Musterfrau</s:mixedContent> </name> <email> <s:anyURI>mfrau@inf.fu-berlin.,de</s:anyURI> </email> <s:optional> <note> <s:text/> </note> </s:optional> </card> </s:zeroOrMore> </addressBook> Inhalt und Schema bilden Einheit. Schema-Informationen abstrahieren konkrete Inhalte. Schema-Informationen ähnlich wie Relax NG © Klaus Schild, 2004
Problemstellung Realisierung eines Content-Management-Systems Verwendung von XML-Technologien dynamische Ko-Entwicklung von Inhalt und Schema Integration von Inhalt und Schema einfache Syntax und Handhabung externe Schnittstelle: etablierte XML-Technologien wie XML, Namensräume und XML-Schema persistente Speicherung in Datenbank möglich, aber auch ohne Datenbank funktionsfähig möglichst Verwendung frei verfügbarer Software (XML-Editor, Relax-NG-Transformator) © Klaus Schild, 2004
typischer Kundenauftrag (F&E) nicht spezifischer! Problemstellung Realisierung eines Content-Management-Systems Verwendung von XML-Technologien dynamische Ko-Entwicklung von Inhalt und Schema Integration von Inhalt und Schema einfache Syntax und Handhabung externe Schnittstelle: ausnahmslos etablierte XML-Technologien wie XML, Namensräume, XML-Schema und XSLT persistente Speicherung in Datenbank möglich, aber auch ohne Datenbank funktionsfähig möglichst Verwendung frei verfügbarer Software (XML-Editor, Relax-NG-Transformator) typischer Kundenauftrag (F&E) nicht spezifischer! © Klaus Schild, 2004
Mögliche Architektur © Klaus Schild, 2004
Extraktion des Inhalts und Schemas integrierte Eingabesyntax: Inhalte + Schema Wie Gültigkeit überprüfen? XSLT XSLT XML-Instanz Relax-NG-Schema gültig? äquivalent XML-Schema © Klaus Schild, 2004
Persistente Speicherung Oder besser extrahierte Instanz und Schema speichern? Problem dann: Rekonstruktion der Eingabesyntax DB © Klaus Schild, 2004
Ko-Entwicklung von Inhalt und Schema Schema wird zusammen mit Inhalten schrittweise entwickelt. integrierte Eingabesyntax: gleichzeitig Inhalt und Schema-Informationen entwickeln © Klaus Schild, 2004
Beispiel <addressBook xmlns:s="http://relaxng.org/ns/vocabulary"> <s:oneOrMore> <card> <name> <s:mixedContent> <s:optional><firstname>Erika</firstname></s:optional> <s:optional><surname>Musterfrau</surname></s:optional> </s:mixedContent> </name> <email> <s:anyURI>mfrau@inf.fu-berlin.,de</s:anyURI> </email> … </card> </s:oneOrMore> </addressBook> © Klaus Schild, 2004
Eingabehilfe für Ko-Entwicklung Schema n Eingabehilfe für n+1: Schablone für integrierte Eingabe mit Schema-Informationen aus n © Klaus Schild, 2004
Konsistente Ko-Entwicklung n+i n gültig? neues Schema n+i nicht immer Spezialisierung (Teilmenge) von altem Schema n Instanz n nicht immer gültig bzgl. Schema n+i Instanz n oder Schema n+i ändern © Klaus Schild, 2004
Ich erwarte gespannt Ihr Angebot! © Klaus Schild, 2004
Mögliche Arbeitspakete Projektmanagement Definition der integrierten Eingebesyntax ( S. 7) Benutzeroberfläche einschl. Eingabehilfe ( S. 15) und Auflösung von Inkonsistenzen ( S. 16) Extraktion von Inhalt und Schema ( S. 11) Persistente Speicherung ( S. 12) Integration der einzelnen Komponenten, einschl. Testen und Benutzerdokumentation © Klaus Schild, 2004
Zeitliche Abhängigkeiten AP 3 AP 2 AP 4 AP 6 AP 5 © Klaus Schild, 2004
Durchführung von Projekten © Klaus Schild, 2004
Durchführung von Projekten Literatur Das allerwichtigste: Qualität Projektablauf Anforderungsanalyse Kosten- und Aufwandsabschätzung Angebot Projektplanung © Klaus Schild, 2004
3/27/2017 Literatur Pascal Mangold, IT-Projektmanagement kompakt, Elesevier, 2004. (10€) einige hilfreiche Vorlagen unter www.it-projektmanagement-kompakt.de © Klaus Schild, 2004 Name, Abteilung
Das allerwichtigste: Qualität Automobilbranche vor über 30 Jahren Es wurde als unnötig und zu teuer angesehen, es gleich von Anfang an richtig zu machen: „Wenn es nicht passt, lässt es sich ja reparieren…“ Schließlich hat man erkannt, dass Korrekturen wesentlich mehr kosten, als eigentliche Produktion. Nicht Qualität kostet, sondern ihre Abwesenheit! © Klaus Schild, 2004
Das allerwichtigste: Qualität Software-Branche heute „Wir kompilieren das mal schnell. Wenn es nicht geht, können wir es ja debuggen…“ Kosten für Behebung eines Fehlers verzehnfachen sich in jeder Phase eines Projektes Beispiel: zusätzliches Feld „Erstkontakt“ in Adresse Analysephase: 5€ Designphase: 50€ Implementierung: 500€ Betrieb: 5000€ © Klaus Schild, 2004
Qualität von Software erfüllt wesentlichen Anforderungen des Kunden durchdachter, wiederverwendbarer Entwurf solide, lesbar und veränderungsfreundlich implementiert intensiv getestet ausführlich dokumentiert: Anforderungen, Entwurf, Software, Tests, Anwenderdokumentation Lieber nur 50% der Funktionalität ausliefern, aber dafür in guter Qualität! © Klaus Schild, 2004
Projekte Ein Projekt ist ein kontinuierlicher Dialog zwischen Auftragnehmer und Auftraggeber, der zur Erreichung des gewünschten Ergebnisses führt. (Mangold 2004) © Klaus Schild, 2004
Ablauf eines Projektes Projektleiter Auftraggeber Anforderungsanalyse Kosten- und Aufwands-schätzung Angebot Auftrag Projektstart Projektplan Software-Entwurf Reviewprotokoll Software, Dokumentation Abnahmeprotokoll Projektende © Klaus Schild, 2004
Bei Behörden und Großindustrie Projektleiter Auftraggeber Anforderungsanalyse Kosten- und Aufwands-schätzung Pflichtenheft Angebot Auftrag © Klaus Schild, 2004
Bei Komplexen Software-Projekten Projektstart Anforderungsspezifikation Reviewprotokoll Software-Entwurf Reviewprotokoll Testspezifikation Reviewprotokoll Software, Dokumentation Abnahmeprotokoll Projektende © Klaus Schild, 2004
Anforderungsanalyse Was ist das Problem? Gar nicht einfach, das herauszufinden! Nicht davon ausgehen, dass Auftraggeber sein Problem kennt: Interviewen reicht nicht! Stattdessen gemeinsame Sprache und gemeinsames Verständnis des Problems entwickeln. zum großen Teil vor Projektbeginn: Ergebnis fließt in Angebot ein nach Projektbeginn: Anforderungsspezifikation © Klaus Schild, 2004
Kosten- und Aufwandsabschätzung Teilaufgaben identifizieren Dabei Aufgaben wie Angebot erstellen, Testen und Dokumentieren nicht vergessen. Aufwand jeder Teilaufgabe schätzen. Dabei später zuständige Projektmitarbeiter mit einbeziehen. Auch unterschiedliche Kenntnisse von Projektmitarbeitern berücksichtigen. Puffer statt Überstunden einkalkulieren. © Klaus Schild, 2004
Festpreis Normalerweise bestimmt der geschätzte Aufwand den Angebotspreis. In unserem Fall können Sie allerdings kein Angebot über z.B. 12 Scheine á 3,2 SWS abgeben. Festpreis: für jeden Teilnehmer einen Schein über 2 SWS. Daher zuerst zur Verfügung stehenden Ressourcen schätzen: Wie viel Zeit sind die einzelnen Teilnehmer bereit für einen Schein über 2 SWS zu investieren? Dann überprüfen, ob angebotene Funktionalität auch mit diesem Zeitbudget zu realisieren ist. © Klaus Schild, 2004
Angebot Angebotsumfang Beschreibung der Aufgabe Bezugsdokumente Welche Leistung wird erbracht Welche Ergebnisse werden am Ende ausgeliefert Rahmenbedingungen Was umfasst das Angebot nicht Mitwirkungspflicht des Auftraggebers Zusammenarbeit und Projektablauf verbindlicher Zeitplan Kommerzielle Regelungen Preis, Zahlungsweise Lieferung und Abnahme © Klaus Schild, 2004
Häufigsten Fehler der Angebotsphase Projektziel nicht eindeutig formuliert oder nicht mit Auftraggeber abgestimmt zu gering geschätzter Aufwand tatsächlich anfallende Aufgaben vergessen Lieferbestandteile nicht genau definiert Ansprechpartner nicht klar definiert Mitwirkungspflicht des Auftraggebers nicht genau festgelegt Abnahme nicht genau geregelt Angebotspreis ermäßigt, ohne Funktionsumfang zu reduzieren Annahme, es wird schon irgendwie klappen © Klaus Schild, 2004
Projektplanung Definition von Arbeitspaketen Wer ist für was verantwortlich Ressourcenplanung: Verteilung der zur Verfügung stehenden Arbeitskräfte auf Teilaufgaben Festlegung eines Zeitplanes Identifizierung von Risiken Wie kann jeweiligen Risken begegnet werden? © Klaus Schild, 2004
Protokolle als Steuerungsinstrument © Klaus Schild, 2004
Unterschiedliche Protokollpunkte Aufforderung (Aktion) verpflichtet Verantwortlichen zum Handeln erfordert Zustimmung des Betroffenen eindeutiger Endtermin Beschluss für alle verbindlich erfordert Einigung aller © Klaus Schild, 2004
Unterschiedliche Protokollpunkte Empfehlung wird ausgesprochen, wenn Betroffener nicht anwesend ist oder wenn keine Einigung möglich darf einseitig ausgesprochen werden erfordert keine Einigung und ist nicht verpflichtend Feststellung gibt persönliche Sichtweise Einzelner wieder © Klaus Schild, 2004
Komplexität beherrschen Wie koordiniere ich 30 Mitarbeiter? Wie finde ich einen Termin für 30 Mitarbeiter? Antwort: erst gar nicht versuchen! stattdessen besser nur Arbeitspaketleiter koordinieren: © Klaus Schild, 2004
Projektmanagement AG Projektmanagement erste Aufgabe: Angebot erstellen 5 Studierende + Projektleiter aus diesem Kreis werden Arbeitspaketleiter gestellt AG wird von TH beraten beraten Projektleitung Wer möchte Projektleitung übernehmen? Aufgabe bis nächste Woche Folien über Problemstellung durcharbeiten offene Fragen für Anforderungsanalyse vorbereiten © Klaus Schild, 2004
Wie geht es weiter? heute ausführliche Vorstellung der Problemstellung 3/27/2017 Wie geht es weiter? heute ausführliche Vorstellung der Problemstellung erfolgreiche Durchführung von Projekten AG Projektmanagement bestimmen Projektleiter bestimmen 3.11. Anforderungsanalyse 10.11. Präsentation des Angebots Erteilung des Auftrages, Kickoff © Klaus Schild, 2004 Name, Abteilung