SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Demonstrating Filmstripping in the
UML-based Specification Environment (USE)
M. Gogolla, L. Hamann, F. Hilken, M. Kuhlmann
Database Systems Group, University of Bremen, Germany
R. France
Colorado State University, CO, USA
USE TOOL AVAILABLE AT:
http://sourceforge.net/apps/mediawiki/useocl
PPT PRESENTATION AVAILABLE AT:
[viewing ppt presentation results in better quality than viewing pdf presentation]
http://de.slideshare.net/gogolla/2013-0603-demonstratingfilmstrippinginuse-22378212
1. Uncommented Screenshots from a USE session
2. Screenshots with Comments for the same USE session
1. Uncommented Screenshots from a USE session
2. Screenshots with Comments for the same USE session
after USE hase been started, the
contents of the file marryDivorce2.cmd
is read; the commands in that file are
executed: the underlying appplication
model is loaded, some objects are created,
operations on the created objects are
called, and class invariants and operation
pre- and postconditions are checked
load model
create objects
check invariants
1st operation call
with pre/post check
check invariants
check invariants
2nd operation call
with pre/post check
result state of the action sequence is the object diagram;
action sequence is pictured by the sequence diagram
1st operation call
2nd operation call
create objects
filmstrip model class diagram is loaded and displayed
red: application model; rest: filmstrip model;
operations become classes; pre/post become invariants
model validator configuration for achieving a state structurally
similar to the state of the application model is defined
data type values are determined; exactly 9 Person and
3 Snapshot objects are required; at least 1 and at most
2 marryC(all) and divorceC(all) objects are allowed
model validator configuration is loaded
through the plugin button
model validator searches for a state satisfying the
model invariants and the given configuration
model validator finds a state representing 3 successive
snapshots from the application model; 2 operation calls are
represented by the marryC(all) and divorceC(all) objects
Marriage link from
application model
another model validator configuration is defined
this configuration tries to contruct an action sequence
with 2 successive divorceC(alls) between the required
3 Snapshot objects; the configuration does *NOT* allow
marryC(alls)
the new model validator configuration
is loaded through the plugin button
resulting object diagram has 2 successive divorce calls; all
(original) pre/postconditions and invariants satisfied; this
shows that the original postcondition of divorce was too *WEAK*
according to the (too weak) postcondition of divorce, it is
allowed to remove a Marriage link *AND* to introduce in the
same operation call another Marriage link
Marriage links from
application model
the OCL query at the bottom searches for married persons being
present in 2 successive snapshots but having disjoint sets of
spouses; person4 *DIVORCED* and *MARRIED* by 1st divorceC(all)
the action sequence can be explored with OCL queries; the
complete action sequence with all states and all operation
calls is available in a single object diagram
Thanks for your attention!

Weitere ähnliche Inhalte

Andere mochten auch

Andere mochten auch (6)

Lectura el puma
Lectura   el pumaLectura   el puma
Lectura el puma
 
Documentos primaria-sesiones-unidad06-segundo grado-integrados-2g-u6-sesion19
Documentos primaria-sesiones-unidad06-segundo grado-integrados-2g-u6-sesion19Documentos primaria-sesiones-unidad06-segundo grado-integrados-2g-u6-sesion19
Documentos primaria-sesiones-unidad06-segundo grado-integrados-2g-u6-sesion19
 
Rúbrica coevaluación y autoevaluación
Rúbrica coevaluación y autoevaluaciónRúbrica coevaluación y autoevaluación
Rúbrica coevaluación y autoevaluación
 
Asinhroni motori
Asinhroni motoriAsinhroni motori
Asinhroni motori
 
Pharmaceutical Documentation
Pharmaceutical DocumentationPharmaceutical Documentation
Pharmaceutical Documentation
 
Krv i hematopoeza
Krv i hematopoezaKrv i hematopoeza
Krv i hematopoeza
 

Ähnlich wie 2013 06-03 demonstrating-filmstrippinginuse

PHASE II.pptx
PHASE II.pptxPHASE II.pptx
PHASE II.pptxMotiDiro1
 
What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.Peter Tröger
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelmohamed khalaf alla mohamedain
 
OTP application (with gen server child) - simple example
OTP application (with gen server child) - simple exampleOTP application (with gen server child) - simple example
OTP application (with gen server child) - simple exampleYangJerng Hwa
 
Automated Regression Testing for Embedded Systems in Action
Automated Regression Testing for Embedded Systems in ActionAutomated Regression Testing for Embedded Systems in Action
Automated Regression Testing for Embedded Systems in ActionAANDTech
 
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSMANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSijseajournal
 
Software engg. pressman_ch-8
Software engg. pressman_ch-8Software engg. pressman_ch-8
Software engg. pressman_ch-8Dhairya Joshi
 
7.1-Midterm-review-and-examplessssssss.pdf
7.1-Midterm-review-and-examplessssssss.pdf7.1-Midterm-review-and-examplessssssss.pdf
7.1-Midterm-review-and-examplessssssss.pdfSuziSimonovska1
 
Online eaxmination
Online eaxminationOnline eaxmination
Online eaxminationAditi_17
 
Software Tutorial Week1 Online 1
Software Tutorial Week1 Online 1Software Tutorial Week1 Online 1
Software Tutorial Week1 Online 1guestc154bcf
 
MVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCMVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCAnton Krasnoshchok
 
Flex component lifecycle
Flex component lifecycleFlex component lifecycle
Flex component lifecycleYaniv Uriel
 
Immutable Data and TypeScript in an Ember.js Application
Immutable Data and TypeScript in an Ember.js ApplicationImmutable Data and TypeScript in an Ember.js Application
Immutable Data and TypeScript in an Ember.js ApplicationBill Heaton
 
Coldbox developer training – session 4
Coldbox developer training – session 4Coldbox developer training – session 4
Coldbox developer training – session 4Billie Berzinskas
 

Ähnlich wie 2013 06-03 demonstrating-filmstrippinginuse (20)

PHASE II.pptx
PHASE II.pptxPHASE II.pptx
PHASE II.pptx
 
What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
 
OTP application (with gen server child) - simple example
OTP application (with gen server child) - simple exampleOTP application (with gen server child) - simple example
OTP application (with gen server child) - simple example
 
Automated Regression Testing for Embedded Systems in Action
Automated Regression Testing for Embedded Systems in ActionAutomated Regression Testing for Embedded Systems in Action
Automated Regression Testing for Embedded Systems in Action
 
3Requirements.ppt
3Requirements.ppt3Requirements.ppt
3Requirements.ppt
 
Dense And Hot Web Du
Dense And Hot  Web DuDense And Hot  Web Du
Dense And Hot Web Du
 
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSMANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
 
Software engg. pressman_ch-8
Software engg. pressman_ch-8Software engg. pressman_ch-8
Software engg. pressman_ch-8
 
Digital twin
Digital twinDigital twin
Digital twin
 
7.1-Midterm-review-and-examplessssssss.pdf
7.1-Midterm-review-and-examplessssssss.pdf7.1-Midterm-review-and-examplessssssss.pdf
7.1-Midterm-review-and-examplessssssss.pdf
 
Online eaxmination
Online eaxminationOnline eaxmination
Online eaxmination
 
Software Tutorial Week1 Online 1
Software Tutorial Week1 Online 1Software Tutorial Week1 Online 1
Software Tutorial Week1 Online 1
 
Dense And Hot 360 Flex
Dense And Hot 360 FlexDense And Hot 360 Flex
Dense And Hot 360 Flex
 
MVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCMVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVC
 
Flex component lifecycle
Flex component lifecycleFlex component lifecycle
Flex component lifecycle
 
Immutable Data and TypeScript in an Ember.js Application
Immutable Data and TypeScript in an Ember.js ApplicationImmutable Data and TypeScript in an Ember.js Application
Immutable Data and TypeScript in an Ember.js Application
 
10.1.1.135.9447
10.1.1.135.944710.1.1.135.9447
10.1.1.135.9447
 
Coldbox developer training – session 4
Coldbox developer training – session 4Coldbox developer training – session 4
Coldbox developer training – session 4
 
Mule ctf
Mule  ctfMule  ctf
Mule ctf
 

Kürzlich hochgeladen

Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentMahmoud Rabie
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 

Kürzlich hochgeladen (20)

Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career Development
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 

2013 06-03 demonstrating-filmstrippinginuse

  • 1. Demonstrating Filmstripping in the UML-based Specification Environment (USE) M. Gogolla, L. Hamann, F. Hilken, M. Kuhlmann Database Systems Group, University of Bremen, Germany R. France Colorado State University, CO, USA USE TOOL AVAILABLE AT: http://sourceforge.net/apps/mediawiki/useocl PPT PRESENTATION AVAILABLE AT: [viewing ppt presentation results in better quality than viewing pdf presentation] http://de.slideshare.net/gogolla/2013-0603-demonstratingfilmstrippinginuse-22378212
  • 2. 1. Uncommented Screenshots from a USE session 2. Screenshots with Comments for the same USE session
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. 1. Uncommented Screenshots from a USE session 2. Screenshots with Comments for the same USE session
  • 15. after USE hase been started, the contents of the file marryDivorce2.cmd is read; the commands in that file are executed: the underlying appplication model is loaded, some objects are created, operations on the created objects are called, and class invariants and operation pre- and postconditions are checked
  • 16. load model create objects check invariants 1st operation call with pre/post check check invariants check invariants 2nd operation call with pre/post check
  • 17. result state of the action sequence is the object diagram; action sequence is pictured by the sequence diagram 1st operation call 2nd operation call create objects
  • 18. filmstrip model class diagram is loaded and displayed red: application model; rest: filmstrip model; operations become classes; pre/post become invariants
  • 19. model validator configuration for achieving a state structurally similar to the state of the application model is defined data type values are determined; exactly 9 Person and 3 Snapshot objects are required; at least 1 and at most 2 marryC(all) and divorceC(all) objects are allowed
  • 20. model validator configuration is loaded through the plugin button
  • 21. model validator searches for a state satisfying the model invariants and the given configuration model validator finds a state representing 3 successive snapshots from the application model; 2 operation calls are represented by the marryC(all) and divorceC(all) objects Marriage link from application model
  • 22. another model validator configuration is defined this configuration tries to contruct an action sequence with 2 successive divorceC(alls) between the required 3 Snapshot objects; the configuration does *NOT* allow marryC(alls)
  • 23. the new model validator configuration is loaded through the plugin button
  • 24. resulting object diagram has 2 successive divorce calls; all (original) pre/postconditions and invariants satisfied; this shows that the original postcondition of divorce was too *WEAK* according to the (too weak) postcondition of divorce, it is allowed to remove a Marriage link *AND* to introduce in the same operation call another Marriage link Marriage links from application model
  • 25. the OCL query at the bottom searches for married persons being present in 2 successive snapshots but having disjoint sets of spouses; person4 *DIVORCED* and *MARRIED* by 1st divorceC(all) the action sequence can be explored with OCL queries; the complete action sequence with all states and all operation calls is available in a single object diagram
  • 26. Thanks for your attention!