SoftwareTechnik
Christian Baranowski
HTWG Konstanz
Teil1:Wiederholung Anforderungsanalyse und
Systementwurf
Teil II: Umset...
Wiederholung
Anforderungsanalyse und
Spezifikation
Requirement Analysis
Testing
System Design
Coding
Delivery
Wasserfallmodell
Anforderungstypen
Funktionale
Anforderungen nicht
Funktionale
Anforderungen
Testbarkeit
Performanz
Sicherheit
Änderbarkeit...
Prozess zur Anforderungserfassung
1. Oberfläche skizzieren z.B. Methode Wireframes in einem
Workshop mit dem Kunden
2. Iter...
Anwendungsfälle erfassen mit
UML
Use-Case als zentrales Analyseelement
Use-Case
Testbarkeit
Performanz
Sicherheit
Änderbarkeit
Verfügbarkeit
Bedienbarkeit
...
Fachmodell /
Geschäftsmodell
Wiederholung Systementwurf
und Software Architekturen
Requirement Analysis
Testing
System Design
Coding
Delivery
Wasserfallmodell
Architektursichten
Kontextsichten
Verteilungssichten
Bausteinsicht
Laufzeitsichten
Architekturprinzipien
• Schichten einer Applikation
Jede Schicht (Tier) ist für eine Aufgabe
zuständig. In einer Anwendung...
ENTITIES VALUE OBJECT SERVICES
REPOSITORIES FACTORIES
Domain Driven Design
Domain Driven Design
•Erstellen Sie ein Domain Modell für Ihre Aufgaben-
Verwaltung. Nutzen Sie dazu die Methode Domain
Driven Design.
Übungen I
UML Sequenzdiagramme
UML Nachrichten und
Operationen
UML Nachrichten und
Rückgabewerte
UML Erstellen und Löschen
Participants
UML Schleifen
•Erstellen Sie für das Speichern einer Aufgabe ein
Sequenzdiagramme.
Übungen II
UML Deployment Diagramme
UML Deployment Diagramme
UML Komponenten Diagramm
UML Komponenten Komposition
Trennung fachliche und technischer
Architektur
• T – Komponenten
• Stellen eine technische Schnittstelle bereit.
• A – Kom...
A – Komponenten
T – Komponenten
R – Komponenten
Zusammenfassung Design
Kontextsichten
Verteilungssichten
Bausteinsicht
Laufzeitsichten
Umsetzung und Coding
Requirement Analysis
Testing
System Design
Coding
Delivery
Wasserfallmodell
Umsetzung und Coding
Build Prozesse und Configuration Management
Build Prozess / Erstellungsprozess
„Build Prozess - bezeichnet in der Programmierung
einen Vorgang, durch den ein fertiges...
Build-Prozess
WelcheVorteile bietet ein automatisierter
Build-Prozess?
Allgemeiner Build-Prozess
compile
generate code
compile tests
run tests
package
generate reports
clean
Apache ANT
•Erstellen Sie einen Projektrahmen (Verzeichnisse
für Java undTest Sourcen...) und eine ANT Build
Konfiguration mit der Ihr...
Nächste SlideShare
Wird geladen in …5
×

Wiederholung Systementwurf - Einführung Build Prozesse

2.182 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie, Bildung
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
2.182
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
521
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Wiederholung Systementwurf - Einführung Build Prozesse

  1. 1. SoftwareTechnik Christian Baranowski HTWG Konstanz Teil1:Wiederholung Anforderungsanalyse und Systementwurf Teil II: Umsetzung und Coding Build Prozesse und Configuration Management
  2. 2. Wiederholung Anforderungsanalyse und Spezifikation
  3. 3. Requirement Analysis Testing System Design Coding Delivery Wasserfallmodell
  4. 4. Anforderungstypen Funktionale Anforderungen nicht Funktionale Anforderungen Testbarkeit Performanz Sicherheit Änderbarkeit Verfügbarkeit Anwendungsfälle Geschäftsprozesse Architekturziele Bedienbarkeit Qualitätsmerkmale ISO9126 Quelle: Dr. Peter Hruschka & Dr. Gernot Starke - ARC42.de
  5. 5. Prozess zur Anforderungserfassung 1. Oberfläche skizzieren z.B. Methode Wireframes in einem Workshop mit dem Kunden 2. Iterativ ein Klick-Modell erstellen z.B. mit HTML und JavaScript 3. Fachliche Komponenten aus dem Klick-Modell identifizieren 4. Use-Cases und Geschäftsmodell aus dem Klick-Modell ableiten für die einzelnen fachlichen Komponenten 5. Spezifikation erstellen
  6. 6. Anwendungsfälle erfassen mit UML
  7. 7. Use-Case als zentrales Analyseelement Use-Case Testbarkeit Performanz Sicherheit Änderbarkeit Verfügbarkeit Bedienbarkeit Architekturziele UI Anforderungen UI Design Business Regeln Daten Format ...
  8. 8. Fachmodell / Geschäftsmodell
  9. 9. Wiederholung Systementwurf und Software Architekturen
  10. 10. Requirement Analysis Testing System Design Coding Delivery Wasserfallmodell
  11. 11. Architektursichten Kontextsichten Verteilungssichten Bausteinsicht Laufzeitsichten
  12. 12. Architekturprinzipien • Schichten einer Applikation Jede Schicht (Tier) ist für eine Aufgabe zuständig. In einer Anwendung fallen i.d.R. die folgenden Kernaufgaben an: • Darstellen von Daten • Verarbeitung der Benutzereingaben (Interaktionen) • Verarbeitung Geschäftslogik • Speichern von Daten
  13. 13. ENTITIES VALUE OBJECT SERVICES REPOSITORIES FACTORIES Domain Driven Design
  14. 14. Domain Driven Design
  15. 15. •Erstellen Sie ein Domain Modell für Ihre Aufgaben- Verwaltung. Nutzen Sie dazu die Methode Domain Driven Design. Übungen I
  16. 16. UML Sequenzdiagramme
  17. 17. UML Nachrichten und Operationen
  18. 18. UML Nachrichten und Rückgabewerte
  19. 19. UML Erstellen und Löschen Participants
  20. 20. UML Schleifen
  21. 21. •Erstellen Sie für das Speichern einer Aufgabe ein Sequenzdiagramme. Übungen II
  22. 22. UML Deployment Diagramme
  23. 23. UML Deployment Diagramme
  24. 24. UML Komponenten Diagramm
  25. 25. UML Komponenten Komposition
  26. 26. Trennung fachliche und technischer Architektur • T – Komponenten • Stellen eine technische Schnittstelle bereit. • A – Komponenten • Domain Komponenten z.B. Bestellung Service. • R – Komponenten • Komponenten für die Präsentation dürfen technische Komponenten nutzen und auf die A Komponenten zugreifen. • 0 – Komponenten • Komponenten die in der gesamten Anwendung genutzt werden dürfen. Z.B. Logger Komponente. • R auf A ist erlaubt,T auf A ist nicht erlaubt • R auf 0,A auf 0 undT auf 0 ist erlaubt
  27. 27. A – Komponenten T – Komponenten R – Komponenten
  28. 28. Zusammenfassung Design Kontextsichten Verteilungssichten Bausteinsicht Laufzeitsichten
  29. 29. Umsetzung und Coding
  30. 30. Requirement Analysis Testing System Design Coding Delivery Wasserfallmodell
  31. 31. Umsetzung und Coding Build Prozesse und Configuration Management
  32. 32. Build Prozess / Erstellungsprozess „Build Prozess - bezeichnet in der Programmierung einen Vorgang, durch den ein fertiges Anwendungsprogramm automatisch erzeugt wird.“ - Wikipedia
  33. 33. Build-Prozess WelcheVorteile bietet ein automatisierter Build-Prozess?
  34. 34. Allgemeiner Build-Prozess compile generate code compile tests run tests package generate reports clean
  35. 35. Apache ANT
  36. 36. •Erstellen Sie einen Projektrahmen (Verzeichnisse für Java undTest Sourcen...) und eine ANT Build Konfiguration mit der Ihr Projekt nach dem allgemeinen Build Prozess gebaut werden kann. Übungen III

×