SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
Testfallgenerierung
          für interagierende
                    Services
     Kathrin Kaschner, Niels Lohmann, Karsten Wolf
               ATAMI 2010 ▪ Berlin ▪ 15. Januar 2010




UNIVERSITÄT ROSTOCK
Services
– selbstständige ausführbare Softwarekomponenten
– Interaktion mit anderen Services
       beliebig komplex
       asynchron

– zustandsbehaftet                                          B
                                     A


                     D                                  C

                           www.service‐technology.org           2
Interaktion mit der Umgebung
Interagiert die Implementierung eines Services so, wie es  von 
der Spezifikation verlangt wird?



Relevant für:                                                B
      Public View
      eigenen Workflow
                                      A




                            www.service‐technology.org            3
Interaktion mit der Umgebung
                       Modellierung mit Petrinetzen
                       BPEL: gängiger Standard zur Beschreibung
                       von Interaktionen
                       Tool: BPEL2oWFN




    spez. Protokoll   www.service‐technology.org            4
Interaktion mit der Umgebung




    spez. Protokoll   www.service‐technology.org   impl. Protokoll   5
Interaktion mit der Umgebung


                      Protokoll beschreibt implizit eine Menge 
                      von Partner‐Services:
                           keine Deadlocks (bei korrekter Impl.)




    spez. Protokoll   www.service‐technology.org               6
Testfall = Partner‐Service
                                 mögliche Partner‐Services




                              ⇒ kein Deadlock während Interaktion


    spez. Protokoll   www.service‐technology.org              7
Testfall = Partner‐Service
                                     mögliche Partner‐Services

Wie können die Partner 
systematisch berechnet werden?

Antwort: mit Hilfe von 
Bedienungsanleitungen




                                  ⇒ kein Deadlock während Interaktion


                          www.service‐technology.org              8
Bedienungsanleitung
– charakterisiert alle Partner
– kann generiert werden (Tool: Wendy)
– Kanten:
    ? = empfangen
    ! = senden
– Zustände mit 
  Boolesche Annotationen
– Partner gdw.
      1. Subgraph
      2. Annotationen sind erfüllt



                             www.service‐technology.org   9
Testen mit Partner‐Services

                           Bedienungsanleitung   Testfall




      Protokoll   www.service‐technology.org         10
Partner‐Selektion
– Bedienungsanleitung charakterisiert alle Testfälle (i.A. unendl. viele)
– es gibt jedoch Redundanzen unter den Testfällen
⇒ Auswahl einer kleineren Testmenge ohne Redundanzen
                                            !details - !offer
– Kriterium: Annotationen           !details                  !offer
                                        …                      …




                 !details
                                       !details           !offer       !offer



– Kann durch eine Tiefensuche realisiert werden 
– Trotz Reduktion bleiben wir vollständig!
                            www.service‐technology.org                    11
konform                     Implementation
       Spezifikation                                       executable BPEL,
         abstract BPEL
                                                           Java, .NET


 BPEL2oWFN

                                                                              testen
        Petri Netz


     Wendy
                                               oWFN2BPEL

                                   Test‐                       Test‐
      Bedienungsanl.                fall                        fall

                             reduzierte               BPEL Test Suites
                             Test‐Suites


– BPEL2oWFN: übersetzt BPEL‐Prozesse in ein formales Model
– Wendy: berechnet die Bedienungsanleitung
– oWFN2BPEL: generiert aus formalen Model einen BPEL Prozess
                         www.service‐technology.org                                    12
konform                     Implementation
        Spezifikation                                           executable BPEL,
          abstract BPEL
                                                                Java, .NET




                          Vielen Dank!
  BPEL2oWFN



                            Fragen?
                                                                                   testen
         Petri Netz


      Fiona
                                                    oWFN2BPEL

                                        Test‐                       Test‐
       Bedienungsanl.                    fall                        fall

                                  reduzierte               BPEL Test Suites
                                  Test‐Suites

– Bisher: nur Kontrollfluss
– Future Work: Daten


                              www.service‐technology.org                                    13
Kontakt


eMail: kathrin.kaschner@uni‐rostock.de

Web: www.service‐technology.org
     http://wwwteo.informatik.uni‐rostock.de/ls_tpp/index.htm




                          www.service‐technology.org            14

Weitere ähnliche Inhalte

Andere mochten auch

111 clau montenegro-2p
111 clau montenegro-2p111 clau montenegro-2p
111 clau montenegro-2p
educacion
 
Presentación18 02 10
Presentación18 02 10Presentación18 02 10
Presentación18 02 10
EDUCACIÓN
 
Propagación De La Legionella
Propagación De La LegionellaPropagación De La Legionella
Propagación De La Legionella
guest63946a
 

Andere mochten auch (20)

Pres Web2.0
Pres Web2.0Pres Web2.0
Pres Web2.0
 
Gaes Numero 3
Gaes Numero 3Gaes Numero 3
Gaes Numero 3
 
111 clau montenegro-2p
111 clau montenegro-2p111 clau montenegro-2p
111 clau montenegro-2p
 
Why rent spanish version
Why rent   spanish versionWhy rent   spanish version
Why rent spanish version
 
Seres vivos Medio
Seres vivos MedioSeres vivos Medio
Seres vivos Medio
 
Horreos asturianos
Horreos asturianosHorreos asturianos
Horreos asturianos
 
Por Unas Elecciones Democraticas y Legales
Por Unas Elecciones Democraticas y LegalesPor Unas Elecciones Democraticas y Legales
Por Unas Elecciones Democraticas y Legales
 
Temas 1 er parcial
Temas 1 er parcialTemas 1 er parcial
Temas 1 er parcial
 
Cración cuenta en Gmail, envio masivo, charla desde Google talk
Cración cuenta en Gmail, envio masivo, charla desde Google talkCración cuenta en Gmail, envio masivo, charla desde Google talk
Cración cuenta en Gmail, envio masivo, charla desde Google talk
 
lo mejor del recodo
lo mejor del recodolo mejor del recodo
lo mejor del recodo
 
Presentación18 02 10
Presentación18 02 10Presentación18 02 10
Presentación18 02 10
 
Fuentes
FuentesFuentes
Fuentes
 
21 de septiembre
21 de septiembre21 de septiembre
21 de septiembre
 
Mis mejores amigas
Mis mejores amigasMis mejores amigas
Mis mejores amigas
 
Propagación De La Legionella
Propagación De La LegionellaPropagación De La Legionella
Propagación De La Legionella
 
Marca Mnemotecnico
Marca MnemotecnicoMarca Mnemotecnico
Marca Mnemotecnico
 
Microcontroladores Ciscx
Microcontroladores CiscxMicrocontroladores Ciscx
Microcontroladores Ciscx
 
Belgrano
BelgranoBelgrano
Belgrano
 
Cochembos (4)
Cochembos (4)Cochembos (4)
Cochembos (4)
 
BÄNG der luggs e-Coach: Schnellstartanleitung luggs bäng 4-1_d_ex
BÄNG der luggs e-Coach: Schnellstartanleitung luggs  bäng 4-1_d_exBÄNG der luggs e-Coach: Schnellstartanleitung luggs  bäng 4-1_d_ex
BÄNG der luggs e-Coach: Schnellstartanleitung luggs bäng 4-1_d_ex
 

Ähnlich wie Testfallgenerierung fuer interagierende Services

On the Choice Between Graph-Based and Block-Structured Business Process Mod...
On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...
On the Choice Between Graph-Based and Block-Structured Business Process Mod...
Oliver Kopp
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software Entwicklung
Christian Baranowski
 

Ähnlich wie Testfallgenerierung fuer interagierende Services (20)

.NET zu .NET Core
.NET zu .NET Core.NET zu .NET Core
.NET zu .NET Core
 
BPEL Vortrag POIS 2007
BPEL Vortrag POIS 2007BPEL Vortrag POIS 2007
BPEL Vortrag POIS 2007
 
2011 05-05 activiti
2011 05-05 activiti2011 05-05 activiti
2011 05-05 activiti
 
DOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best PracticeDOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best Practice
 
Tools4BPEL Abschlusspräsentation
Tools4BPEL AbschlusspräsentationTools4BPEL Abschlusspräsentation
Tools4BPEL Abschlusspräsentation
 
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
 
saperion_PechaKucha
saperion_PechaKuchasaperion_PechaKucha
saperion_PechaKucha
 
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...
 
On the Choice Between Graph-Based and Block-Structured Business Process Mod...
On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...On the Choice Between  Graph-Based and Block-Structured  Business Process Mod...
On the Choice Between Graph-Based and Block-Structured Business Process Mod...
 
Automatisiertes webauftritt testen
Automatisiertes webauftritt testenAutomatisiertes webauftritt testen
Automatisiertes webauftritt testen
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software Entwicklung
 
Softwarequalitätssicherung mit Continuous Integration Tools
Softwarequalitätssicherung mit Continuous Integration ToolsSoftwarequalitätssicherung mit Continuous Integration Tools
Softwarequalitätssicherung mit Continuous Integration Tools
 
DHI-WASY Aktuell 04/2011
DHI-WASY Aktuell 04/2011DHI-WASY Aktuell 04/2011
DHI-WASY Aktuell 04/2011
 
Mehr Container an die (Modell-) Bahn!
Mehr Container an die (Modell-) Bahn!Mehr Container an die (Modell-) Bahn!
Mehr Container an die (Modell-) Bahn!
 
20100624 jug saxony_bpel.slideshare
20100624 jug saxony_bpel.slideshare20100624 jug saxony_bpel.slideshare
20100624 jug saxony_bpel.slideshare
 
Kaps - Es muss nicht immer Kubernetes sein
Kaps - Es muss nicht immer Kubernetes seinKaps - Es muss nicht immer Kubernetes sein
Kaps - Es muss nicht immer Kubernetes sein
 
JSUG - OSGi by Michael Greifeneder
JSUG - OSGi by Michael GreifenederJSUG - OSGi by Michael Greifeneder
JSUG - OSGi by Michael Greifeneder
 
[18] Nu P 13 1
[18] Nu P 13 1[18] Nu P 13 1
[18] Nu P 13 1
 
OSMC 2011 - Introduction to OpenNMS
OSMC 2011 - Introduction to OpenNMSOSMC 2011 - Introduction to OpenNMS
OSMC 2011 - Introduction to OpenNMS
 
TDD mit ABAP Units
TDD mit ABAP UnitsTDD mit ABAP Units
TDD mit ABAP Units
 

Mehr von Universität Rostock

Verification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationVerification with LoLA: 7 Implementation
Verification with LoLA: 7 Implementation
Universität Rostock
 
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAVerification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLA
Universität Rostock
 
Verification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesVerification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case Studies
Universität Rostock
 
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAVerification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLA
Universität Rostock
 
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionVerification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space Reduction
Universität Rostock
 
Verification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageVerification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input Language
Universität Rostock
 
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumKarsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Universität Rostock
 

Mehr von Universität Rostock (20)

Pragmatic model checking: from theory to implementations
Pragmatic model checking: from theory to implementationsPragmatic model checking: from theory to implementations
Pragmatic model checking: from theory to implementations
 
Where did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process modelsWhere did I go wrong? Explaining errors in process models
Where did I go wrong? Explaining errors in process models
 
Decidability Results for Choreography Realization
Decidability Results for Choreography RealizationDecidability Results for Choreography Realization
Decidability Results for Choreography Realization
 
Artifact-centric modeling using BPMN
Artifact-centric modeling using BPMNArtifact-centric modeling using BPMN
Artifact-centric modeling using BPMN
 
Compliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business ProcessesCompliance by Design for Artifact-Centric Business Processes
Compliance by Design for Artifact-Centric Business Processes
 
Verification with LoLA
Verification with LoLAVerification with LoLA
Verification with LoLA
 
Verification with LoLA: 7 Implementation
Verification with LoLA: 7 ImplementationVerification with LoLA: 7 Implementation
Verification with LoLA: 7 Implementation
 
Verification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLAVerification with LoLA: 6 Integrating LoLA
Verification with LoLA: 6 Integrating LoLA
 
Verification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case StudiesVerification with LoLA: 5 Case Studies
Verification with LoLA: 5 Case Studies
 
Verification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLAVerification with LoLA: 4 Using LoLA
Verification with LoLA: 4 Using LoLA
 
Verification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space ReductionVerification with LoLA: 3 State Space Reduction
Verification with LoLA: 3 State Space Reduction
 
Verification with LoLA: 1 Basics
Verification with LoLA: 1 BasicsVerification with LoLA: 1 Basics
Verification with LoLA: 1 Basics
 
Verification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input LanguageVerification with LoLA: 2 The LoLA Input Language
Verification with LoLA: 2 The LoLA Input Language
 
Saarbruecken
SaarbrueckenSaarbruecken
Saarbruecken
 
Ws4 dsec talk @ Kickoff RS3
Ws4 dsec talk @ Kickoff RS3Ws4 dsec talk @ Kickoff RS3
Ws4 dsec talk @ Kickoff RS3
 
Internal Behavior Reduction for Services
Internal Behavior Reduction for ServicesInternal Behavior Reduction for Services
Internal Behavior Reduction for Services
 
Karsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial SymposiumKarsten Wolf @ Carl Adam Petri Memorial Symposium
Karsten Wolf @ Carl Adam Petri Memorial Symposium
 
Implementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDAImplementation of an Interleaving Semantics for TLDA
Implementation of an Interleaving Semantics for TLDA
 
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
Formale Fundierung und effizientere Implementierung der schrittbasierten TLDA...
 
Demonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and FionaDemonstration of BPEL2oWFN and Fiona
Demonstration of BPEL2oWFN and Fiona
 

Testfallgenerierung fuer interagierende Services