From System.out to Executable
Specifications
20 Jahre Java
Spannende Vorträge und kreativer Wissensaustausch zum Thema "20
Jahre Java„

JUGS & NovaTec

21.09.2012



 NovaTec Solutions GmbH
 Leinfelden-Echterdingen, München, Frankfurt am Main, Jeddah / Saudi-Arabien
Vorstellung




     Langjährige Erfahrungen als Entwickler, Architekt & Coach in verschiedenen
     Projekten mit Fokus eGovernment und Automobilindustrie
     Seit 2011 Leiter der Competence Area " Client Architecture & Technology "
     mit 3 dazugehörigen Competence Groups und ca. 15 Mitarbeitern
     Mehrjährige Durchführung von Vorlesungen an der Dualen Hochschule
     Baden-Württemberg


© NovaTec                             05.02.2013                              2
Die Anfänge



              ____________                             Entwurf, Design
              _____ ?




                                                       Implementierung




                                                        Test
Fachexperte                  Entwickler
Kunde




© NovaTec                                 05.02.2013                     3
Die Zeit danach…




    • Komplexere Anforderungen
            –Komplexere Lösungen

            Grössere Teams

            Aufgabenteilung , Spezialisierung

© NovaTec                  05.02.2013            4
Wasserfall  Trennung der Experten



              Anforderungen                         Anforderungen

                                            Design /
                                          Architecture                   Bug-Report


Fach-
                                                                         Deliverables
experten


                              Architekt




                                                            Entwickler




                                                                                  Test & QA




  © NovaTec                                    05.02.2013                                     5
Probleme




© NovaTec   05.02.2013   6
Probleme




Fach-             Architekt                 Entwickler
experten                                                                   Test & QA




                                                                                     Test
                                                                                  Specification

                                                 Deliverables   Document
  Requirement                                                                 Test scripts
                          Models                                  ation
Management Tool                                 Source Code
                                                                               Bug
                                                                             reports




   © NovaTec                       05.02.2013                                                7
Traceability als Lösungsansatz




Fach-             Architekt                 Entwickler
experten                                                                   Test & QA




                                                                                     Test
                                                                                  Specification

                                                 Deliverables   Document
  Requirement                                                                 Test scripts
                          Models                                  ation
Management Tool                                 Source Code
                                                                               Bug
                                                                             reports




   © NovaTec                       05.02.2013                                                8
Traceability als Lösungsansatz?



• Nur Verlinkung  Keine Synchronisierung

• Eigentlich  Schuldzuweisung !




  © NovaTec                     05.02.2013   9
Besser : Mauern brechen !




Fach-          Architekt              Entwickler
experten                                           Test & QA




  © NovaTec                    05.02.2013                      10
1. Specification Workshops


                             Developer
                             Architects




                              Single
                             source of
                               truth
Fachbereich
Anwender
Product Owner

                                               Test & QA



   © NovaTec                      05.02.2013               11
2. Verfeinerung mit Schlüsselbeispielen




                 Sind Grundlage für




© NovaTec                      05.02.2013   12
Ergebnis : Specification with Examples




                      User story




                       Scenarios,
                 Akzeptanzkriterien




            Schlüsselbeispiele


                                                   13
© NovaTec                             05.02.2013        13
3. Automatisierung der Validierung




Die Spezifikation inkl. Beispiele
& Szenarien
                                    Die Fixture als Glue-
                                    Code
                                                                 Das System Under Test


© NovaTec                                           05.02.2013                           14
Ergebnis: ausführbare Spezifikation




© NovaTec                      05.02.2013   15
Vorteile




    • Trennung WAS          WIE testen

             Testdaten nicht im Code

             Schlankerer Code !


© NovaTec                   05.02.2013    16
Vorteile




    • Einfache Erfassung Testfälle & -

            szenarien

    • Schnellere Entwicklung der Tests

© NovaTec               05.02.2013       17
4. Regelmässige Validierung


 1. Strukuturierung der ausführbaren Spezifikationen




 2. Einbindung in die CI-Umgebung
© NovaTec                        05.02.2013            18
Ergebnis: Living Documentation



• Für alle zugänglich
• Verständlich für alle !
• Abbildung des
  aktuellen Stands der
  entwickelten Software




  © NovaTec                    05.02.2013   19
- Wir führen IT-Projekte zum Erfolg -


                 Vielen Dank für Ihre Aufmerksamkeit!




NovaTec Solutions GmbH
Dieselstr. 18/1                   Telefon: +49 711 22040-700   E-Mail: info@novatec-gmbh.de
D-70771 Leinfelden-Echterdingen   Fax:    +49 711 22040-899    Internet: www.novatec-gmbh.de

From system out to executable specifications (Ben Hamidene)

  • 1.
    From System.out toExecutable Specifications 20 Jahre Java Spannende Vorträge und kreativer Wissensaustausch zum Thema "20 Jahre Java„ JUGS & NovaTec 21.09.2012 NovaTec Solutions GmbH Leinfelden-Echterdingen, München, Frankfurt am Main, Jeddah / Saudi-Arabien
  • 2.
    Vorstellung Langjährige Erfahrungen als Entwickler, Architekt & Coach in verschiedenen Projekten mit Fokus eGovernment und Automobilindustrie Seit 2011 Leiter der Competence Area " Client Architecture & Technology " mit 3 dazugehörigen Competence Groups und ca. 15 Mitarbeitern Mehrjährige Durchführung von Vorlesungen an der Dualen Hochschule Baden-Württemberg © NovaTec 05.02.2013 2
  • 3.
    Die Anfänge ____________ Entwurf, Design _____ ? Implementierung Test Fachexperte Entwickler Kunde © NovaTec 05.02.2013 3
  • 4.
    Die Zeit danach… • Komplexere Anforderungen –Komplexere Lösungen Grössere Teams Aufgabenteilung , Spezialisierung © NovaTec 05.02.2013 4
  • 5.
    Wasserfall  Trennungder Experten Anforderungen Anforderungen Design / Architecture Bug-Report Fach- Deliverables experten Architekt Entwickler Test & QA © NovaTec 05.02.2013 5
  • 6.
  • 7.
    Probleme Fach- Architekt Entwickler experten Test & QA Test Specification Deliverables Document Requirement Test scripts Models ation Management Tool Source Code Bug reports © NovaTec 05.02.2013 7
  • 8.
    Traceability als Lösungsansatz Fach- Architekt Entwickler experten Test & QA Test Specification Deliverables Document Requirement Test scripts Models ation Management Tool Source Code Bug reports © NovaTec 05.02.2013 8
  • 9.
    Traceability als Lösungsansatz? •Nur Verlinkung  Keine Synchronisierung • Eigentlich  Schuldzuweisung ! © NovaTec 05.02.2013 9
  • 10.
    Besser : Mauernbrechen ! Fach- Architekt Entwickler experten Test & QA © NovaTec 05.02.2013 10
  • 11.
    1. Specification Workshops Developer Architects Single source of truth Fachbereich Anwender Product Owner Test & QA © NovaTec 05.02.2013 11
  • 12.
    2. Verfeinerung mitSchlüsselbeispielen Sind Grundlage für © NovaTec 05.02.2013 12
  • 13.
    Ergebnis : Specificationwith Examples User story Scenarios, Akzeptanzkriterien Schlüsselbeispiele 13 © NovaTec 05.02.2013 13
  • 14.
    3. Automatisierung derValidierung Die Spezifikation inkl. Beispiele & Szenarien Die Fixture als Glue- Code Das System Under Test © NovaTec 05.02.2013 14
  • 15.
  • 16.
    Vorteile • Trennung WAS  WIE testen  Testdaten nicht im Code  Schlankerer Code ! © NovaTec 05.02.2013 16
  • 17.
    Vorteile • Einfache Erfassung Testfälle & - szenarien • Schnellere Entwicklung der Tests © NovaTec 05.02.2013 17
  • 18.
    4. Regelmässige Validierung 1. Strukuturierung der ausführbaren Spezifikationen 2. Einbindung in die CI-Umgebung © NovaTec 05.02.2013 18
  • 19.
    Ergebnis: Living Documentation •Für alle zugänglich • Verständlich für alle ! • Abbildung des aktuellen Stands der entwickelten Software © NovaTec 05.02.2013 19
  • 20.
    - Wir führenIT-Projekte zum Erfolg - Vielen Dank für Ihre Aufmerksamkeit! NovaTec Solutions GmbH Dieselstr. 18/1 Telefon: +49 711 22040-700 E-Mail: info@novatec-gmbh.de D-70771 Leinfelden-Echterdingen Fax: +49 711 22040-899 Internet: www.novatec-gmbh.de