Slide 1

Slide 1 text

© 2016 Haeger Consulting - Andreas Monschau Architekturdokumentation
 mit arc42 18.07.2016 - Andreas Monschau Webmontag Bonn 1

Slide 2

Slide 2 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Berater bei Haeger Consulting Aktuelle Schwerpunkte: Softwareentwicklung Testautomatisierung, Testmanagement (ISTQB) Agile Softwareentwicklung (Scrum, Kanban) 2

Slide 3

Slide 3 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Dokumentation in der Softwareentwicklung 3 Macht keinen Spaß Agiles Manifest: „Funktionierende Software ist wichtiger als umfassende Dokumentation“ Vorgaben der Kunden (z.B. V-Modell XT) Doku für neue Kollegen Javadoc IEEE829 IEEE830 … Oftmals: Ziellos und unstrukturiert

Slide 4

Slide 4 text

04.03.2015 ‹Nr.› Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg .ppt arc42 Ein Template, das Architekten das Leben erleichtern soll Kommt aus der Praxis Erfordert keine sklavische Standardeinhaltung - Anpassungen sind erwünscht. Kreativitäts- und Arbeitshilfsmittel Diskussionsgrundlage Erleichtert Projektneulingen den Start Ideal: Kein Word-Dokument, besser: ein lebendes Wiki. 4

Slide 5

Slide 5 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 5 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 6

Slide 6 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 6 ao2K16 Pflichtenheft

Slide 7

Slide 7 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 7 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 8

Slide 8 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 8 1.Einführung und Ziele Aufgabenstellung Qualitätsziele Stakeholder

Slide 9

Slide 9 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 9 1.Einführung und Ziele Aufgabenstellung Qualitätsziele Stakeholder aok2K16 soll die EWS unter den Addressver- waltungen werden. (…)

Slide 10

Slide 10 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 10 1.Einführung und Ziele Aufgabenstellung Qualitätsziele Stakeholder • Korrektheit • Performanz • (…)

Slide 11

Slide 11 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 11 1.Einführung und Ziele Aufgabenstellung Qualitätsziele Stakeholder • Management • Nutzer • (…)

Slide 12

Slide 12 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 12 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 13

Slide 13 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 13 13 2.Randbedingungen Technisch Organisatorisch

Slide 14

Slide 14 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 14 14 2.Randbedingungen Technisch Organisatorisch • Implementierung in Java • Persistierung via NoSQL • Analyse- und Entwufsmethode:
 Objektorientiertes Vorgehen • (…)

Slide 15

Slide 15 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 15 15 2.Randbedingungen Technisch Organisatorisch • Agile Softwareentwicklung • Testteam von externem
 Dienstleister -> • Dokumentation IEE829 • (…)

Slide 16

Slide 16 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 16 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 17

Slide 17 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 17 3.Kontextabgrenzung Fachlicher Kontext / technischer Kontext <> ao2K16 REST-
 Service

Slide 18

Slide 18 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 18 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 19

Slide 19 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 19 4.Lösungsstrategie(n) Verwendung bekannter Bibliotheken Einarbeitungsaufwand gering halten Maven als Build-Werkzeug verwenden Erlaubt direktes Deployment und einfache Einbindung in CI Einbindung der Tester in die Scrum-Teams Schnelles Feedback, erhöhte Produktqualität …. …

Slide 20

Slide 20 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 20 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 21

Slide 21 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 21 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht

Slide 22

Slide 22 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 22 5.Bausteinsicht <> ao2K16 I/O <> Validator <> DatabaseService Ebene 1 Whitebox System, Blackboxes Subsysteme

Slide 23

Slide 23 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 23 5.Bausteinsicht <> Validator <> i18nStuff Ebene 2

Slide 24

Slide 24 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 24 6.Laufzeitsicht

Slide 25

Slide 25 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 25 6.Laufzeitsicht <> <> <> new address validate address store address response

Slide 26

Slide 26 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 26 7.Verteilungsschicht

Slide 27

Slide 27 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 27 7.Verteilungsschicht <> local device maven
 pom.xml <>
 /target <> aok2k16.jar

Slide 28

Slide 28 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 28 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 29

Slide 29 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 29 8.Konzepte und Muster Plausibilisierung/ Validierung Ausnahme- und Fehlerbehandlung Abhängigkeiten der Komponenten Testbarkeit … Sicherheit Skalierung/Clustering

Slide 30

Slide 30 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 30 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 31

Slide 31 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 31 9.Entwurfsentscheidungen Verwendung MVP- Pattern statt MVC- Pattern Passives View, verbesserte Möglichkeiten für Unit-Testing Verwendung von Apache POI für Excel- Importe Verbessertes Handling gegenüber Verwendung von Excel-Dateien als CSV-File …

Slide 32

Slide 32 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 32 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 33

Slide 33 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 33 10.Qualitätsszenarien Qualität Korrektheit Performanz 10.1 Fehlerhafte Postleitzzahleingaben werden vom Validator zurückgewiesen 10.2 Die Korrektheit des Validators wird durch Positiv- und Negativtests autom. getestet 10.3 Das persistieren einer Adresse soll nicht länger als 8 Sekunden dauern 10.1 10.2 10.3

Slide 34

Slide 34 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 34 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 35

Slide 35 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 35 11.Risiken Performanzprobleme Anwendung technisch zu Komplex

Slide 36

Slide 36 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Aufbau von arc42 36 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 37

Slide 37 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 37 12.Glossar MVP Dies ist ein beschreibender Text Unit-Test siehe Komponententest … …

Slide 38

Slide 38 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant 38 1.Einführung und Ziele 2.Randbedingungen 3.Kontextabgrenzung 4.Lösungsstrategie 5.Bausteinsicht 6.Laufzeitsicht 7.Verteilungsschicht 8.Konzepte und Muster 9.Entwurfsentscheidungen 10.Qualitätsszenarien 11.Risiken 12.Glossar

Slide 39

Slide 39 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant • [email protected] • Twitter: @andreasmonschau • www.haeger-consulting.de Vielen Dank!

Slide 40

Slide 40 text

18.06.2016 Haeger Consulting • Nachtigallenweg 1 • 53343 Wachtberg Andreas Monschau - IT Consultant Backup: Quellen arc42-Logo: http://arc42.org/index_files/arc42-logo.png I acknowledge that this presentation uses material from the arc42 architecture template, http:// www.arc42.de. Created by Dr. Peter Hruschka & Dr. Gernot Starke. For additional contributors see arc42.de/about/contributors.html. 40