420 likes | 508 Views
Volker Herrmann Email: herrmanv@uni-koeln.de Persönlich: Raum 001 im Philosophikum Tel.: 470-2690 Sprechstunde nach Vereinbarung. WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign. ORGANISATORISCHES. Systemanalyse und Softwaredesign. Literatur
E N D
Volker Herrmann Email: herrmanv@uni-koeln.de Persönlich: Raum 001 im Philosophikum Tel.: 470-2690 Sprechstunde nach Vereinbarung WS 04/05 wiss. Übung:Systemanalyse und Softwaredesign
ORGANISATORISCHES Systemanalyse und Softwaredesign
Literatur Balzert, Heide: Lehrbuch der Objektmodellierung, Spektrum Stevens, Perdita und Rob Pooley: UML, Softwareentwicklung mit Objekten und Komponenten, Addison Wesley Systemanalyse und Softwaredesign
1.TEIL Konzepte der Objektorientierung Einführung in die UML-Notation 2.TEIL Methodik: Techniken - der objektorientierten Analyse - des objektorientierten Entwurfs Vertiefung UML Systemanalyse und Softwaredesign
13.10.04/20.10.04/27.10.04 Statische Konzepte: Klasse – Objekt - Attribut – Operation Assoziation – Vererbung – Paket UML: Klassendiagramm Systemanalyse und Softwaredesign
03.11.04/10.11.04 Dynamische Konzepte: Geschäftsprozeß – Botschaft – Szenario – Zustandsautomat UML: Use Case – Interaktionsdiagramme - Zustandsdiagramme Systemanalyse und Softwaredesign
17.11.04/24.11.04/01.12.04/08.12.04 Objektorientierte Analyse von Systemen: Analyseprozeß – Anforderungen Statische Modellierung Dynamische Modellierung Systemanalyse und Softwaredesign
15.12.04/22.12.04 Objektorientierter Entwurf (Softwaredesign) I: Elaboration/Spezifizierung des OOA-Modells Systemanalyse und Softwaredesign
12.01.04/19.01.04/26.01.04 Softwaredesign II: Entwurfsmuster Software-Ergonomie: Gestaltung von Benutzungsoberflächen Systemanalyse und Softwaredesign
02.02.04 Implementierungsdiagramme der UML: Komponentendiagramm Verteilungsdiagramm Systemanalyse und Softwaredesign
Genauer: Objektorientierte Systemanalyse und Softwaredesign Systemanalyse und Softwaredesign
Strukturierte vs. Objektorientierte Entwicklung: Modellierung von Prozessen und Informationsstrukturen mittels Datenfluß- und Entity-Relationship-Diagrammen - Nachteile (?): geringere Flexibilität der Produkte Leserlichkeit der Modelle Wartbarkeit vs. Modellierung mit Hilfe von einheitlichen, durchgängig verwendeten Konzepten und Tools - zusätzlicher Vorteil (?): Wiederverwendbarkeit von einzelnen Komponenten Systemanalyse und Softwaredesign
Noch genauer: Objektorientierte Systemanalyse und Softwaredesign mit UML Systemanalyse und Softwaredesign
UML • = Unified Modeling Language • 1997: Standardisierung durch OMG • Formale grafische Modellierungssprache • Spezifikation, Konstruktion, Visualisierung und Dokumentation eines Softwaresystems • UML schreibt nicht - Methode - Modellierungswerkzeug - Modellierungsrichtlinien - Programmiersprache vor .
Lebenszyklus von Softwareprodukten ANALYSE ENTWURF IMPLEMENTIERUNG TEST INBETRIEBNAHME WARTUNG/ERWEITERUNG Systemanalyse und Softwaredesign
Ziel Qualitativ hochwertige Software entwickeln Welche Kriterien bestimmen die Qualität von Software? Systemanalyse und Softwaredesign
Eisbergeffekt Systemanalyse und Softwaredesign
Qualitätsmerkmale aus Sicht des Benutzers aus Sicht des Entwicklers Systemanalyse und Softwaredesign
Benutzersicht Qualitätsmerkmal: Effizienz Hardware-Effizienz: =Ausmaß der Inanspruchnahme von Hardware durch eine Software bei gegebenem Funktionsumfang Software-Effizienz: =Performance der Software Systemanalyse und Softwaredesign
Qualitätsmerkmal: Zuverlässigkeit =ein Softwaresystem ist zuverlässig, wenn es die geforderten Leistungen erbringt ohne in unerwünschte Zustände zu geraten Systemanalyse und Softwaredesign
Qualitätsmerkmal: Benutzbarkeit = ein Softwaresystem ist dann benutzbar, wenn die Eigenschaften Robustheit, Ergonomie, Fehlertoleranz und Erlernbarkeit realisiert sind Systemanalyse und Softwaredesign
Qualitätsmerkmal: Sicherheit = ein System ist sicher, wenn unter vorgegebenen Bedingungen in einem vorgegebenen Zeitraum unzulässige Ereignisse nicht möglich sind Systemanalyse und Softwaredesign
Entwicklersicht Qualitätsmerkmal: Erweiterbarkeit = in das System können neue Objekte oder Funktionalität eingefügt werden, ohne seine wesentlichen Eigenschaften verändern zu müssen Systemanalyse und Softwaredesign
Qualitätsmerkmal: Wartbarkeit = die Eigenschaft eines Systems, Fehlerursachen mit geringem Aufwand erkennen und beheben zu lassen Systemanalyse und Softwaredesign
Qualitätsmerkmal: Portabilität = unter Übertragbarkeit versteht man die Eignung eines Softwaresystems bzgl. des Einsatzes in geänderter technischer Umgebung Systemanalyse und Softwaredesign
Qualitätsmerkmal: Wiederverwendbarkeit = wenn ein hoher Prozentsatz des Systems für andere Probleme verwendet werden kann Systemanalyse und Softwaredesign
Ziel Modelle entwickeln Was ist ein OO-Modell? Systemanalyse und Softwaredesign
Modell eines Softwaresystems Systemanalyse und Softwaredesign
Modellierungssprache (Notation) - grafisch oder textuell - Werkzeug zur Modellierung - Mittel zur Dokumentation Systemanalyse und Softwaredesign
Anforderungen an eine Modellierungssprache - Ausdrucksstärke - Einfachheit - Eindeutigkeit - Automatisierbarkeit - Verbreitung - Erweiterbarkeit Systemanalyse und Softwaredesign
Objektorientierte Methode Eine Methode beschreibt eine systematische Vorgehensweise zur Erreichung eines bestimmten Ziels. Softwaretechnik: Oberbegriff für Konzepte, Notation und Vorgehensweise Systemanalyse und Softwaredesign
Die 3 Phasen derobjektorientierte Softwareentwicklung: 1. Analyse – OOA – Systemanalyse 2. Design (Entwurf) – OOD - Softwaredesign 3. Implementierung – OO Programmierung Systemanalyse und Softwaredesign
Analysephase Ziele der Analyse: Wünsche eines Auftraggebers ermitteln, verstehen und beschreiben Ableitung der Anforderungen an das zu entwickelnde Softwaresystem Erstellen eines abstraken Modells Systemanalyse und Softwaredesign
Analysephase Produkte der Analyse: Pflichtenheft Analysemodell Prototyp der Benutzungsoberfläche Systemanalyse und Softwaredesign
Analysephase Pflichtenheft: Beschreibung dessen, was das System leisten soll Ausgangsbasis für systematische Modellbildung aber geringere Detailgenauigkeit Systemanalyse und Softwaredesign
Analysephase Analysemodell besteht aus statischen und dynamischen Modell statisches Modell beschreibt Klassen und Attribute ihre Vererbungsstruktur und Assoziationen dynamisches Modell zeigt die Funktionsabläufe über Geschäftsprozesse, Szenarios und Zustandsautomaten Systemanalyse und Softwaredesign
Systemanalyse und Softwaredesign Zusammenspiel der Konzepte
Analysephase Prototyp der Benutzungsoberfläche alle Attribute des Modells auf der Oberfläche abbilden keine Anwendungsfunktionen realisieren (Beispiel: Datenspeicherung) nur Fenster, Dialoge und Menüs, die dem Auftraggeber eine erste Vorstellung von dem zukünftigen System geben sollen Systemanalyse und Softwaredesign
Design / Entwurf – OOD OOA von idealen auf realen Raum übertragen auf einer bestimmten Plattform (Betriebsystem) Abbild des Programms auf höherer Abstraktionsebene Effizienz und Standardisierung Systemanalyse und Softwaredesign
Drei-Schichten-Architektur Systemanalyse und Softwaredesign
Systemanalyse und Softwaredesign Abgrenzung Analyse und Entwurf
Design / Entwurf – OOD Produkte des Entwurfs: Abbild des Programms auf höherer Abstraktionsebene Zusammenspiel der einzelnen Komponenten Systemanalyse und Softwaredesign