1 how to generate testing models into mda approach to software development. a beginner’s point of...
TRANSCRIPT
![Page 1: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/1.jpg)
1
How to generate testing models
into MDA approach to software development.
A beginner’s point of view.
Università degli Studi dell’AquilaFacoltà di Scienze Matematiche Fisiche e Naturali.
Corso di Laurea Specialistica in Informatica
Studente
Luca BerardinelliMatr. 165285
Prof. Henry MucciniProgetto per il Corso di Analisi e Testing.a.a. 2005/2006
![Page 2: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/2.jpg)
2
INTRODUCTIONINTRODUCTION
Software Testing
Obiettivo di questo report è focalizzare l’attenzione sulla generazione di modelli di test in UML attraverso l’uso del profilo UML2 Testing Profile (U2TP).
L’adozione di questo profilo in MDA estende l’approccio Model Driven Development anche alla fase di software testing
(Model Driven Testing)
Model Driven Architecture
Model Transformation
UML2 Testing Profile
ModelTransformation Application
IntroduzioneLuca Berardinelli
![Page 3: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/3.jpg)
3
SOFTWARE TESTING: the problemSOFTWARE TESTING: the problem
Software Testing
Verification:"Are we building the product right?”
The software, along the lifecycle, should conform to itsspecification.
“Software Testing consists of the dynamic verification of the behaviour of aprogram on a finite set of test cases, suitably selected from the usually infinite
executions domain, against the specified expected behaviour”
Informazioni richieste:- è necessaria una adeguata specifica dei requisiti sul comportamento del sw;- è necessaria una versione eseguibile (o simulabile!) del sistema sw (o prototipo)- è necessaria una strategia di scelta di test case
Altre scelte sono fondamentali: - scegliere quali documenti produrre- scegliere quale notazione utilizzare : formale, semi formale, informale.
Luca Berardinelli
![Page 4: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/4.jpg)
4
SOFTWARE TESTING/MDA. SOFTWARE TESTING/MDA. MDT approach MDT approach
Software Testing/MDA
Requirements
Architectural Design
Design
Implementation
in gran parte testo
Model transformation
Testing
Luca Berardinelli
![Page 5: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/5.jpg)
5
SOFTWARE TESTING: answers&questionsSOFTWARE TESTING: answers&questions
Altre scelte sono fondamentali: - scegliere quali documenti produrre.
- scegliere quale notazione utilizzare : formale, semi formale, informale:
Software Testing/MDA
UML2 perché, nel contesto MDTesting permette di utilizzare una notazione comune tra design team e testing team. Migliorare il flusso di informazioni migliora il processo produttivo (maggiore efficienza, costi più contenuti)UML2 perché è supportato da CASE tool.
Ma esistono tool che effettuano trasformazioni tra modelli?Esistono le trasformazioni di interesse per MDT (PIMPIT,PSMPST,PITPST)?
Se queste non esistono possiamo definirne di nostre?Con quale linguaggio?
…ma cosa sono le model transformation?
Luca Berardinelli
![Page 6: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/6.jpg)
6
Model TransformationModel Transformation
MDA/Model transform.
Transformation definition : insieme di regole formalizzate(?)<source metamodel element(s) , target metamodel element(s)>
UML2 UML2 +
MOF
In base al linguaggio scelto e alla natura dei modelli source e target si distinguono diversi approccialle model transformation.Scegliamo un linguaggio che ci permetta di specificare una trasformazione da PIM a PIT utilizzando il profilo U2TP: il processo di trasformazione sarà eseguito da una applicazione Java creata ad hoc.L’approccio adottato è denominato model2model direct manipulation approach.
U2TP
Ma prima capiamo cosa vogliamo ottenerecome si modella un PIT? U2TP
PIT
CRM sw sys CRM test sysLuca Berardinelli
![Page 7: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/7.jpg)
7
U2TP & PITU2TP & PIT
U2TP
U2TP si propone come un linguaggio per il design, la visualizzazione, la specifica, l’analisi, la costruzione e la documentazione di artefatti di un test systemutilizzabili con tecnologie Object / Component based .
Gli elementi di modellazione introdotti dal profilo possono essere raggruppati in quattro grandi aree
U2TP U2TP
Luca Berardinelli
![Page 8: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/8.jpg)
8
U2TP: Test ArchitectureU2TP: Test Architecture
U2TPLuca Berardinelli
![Page 9: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/9.jpg)
9
U2TP: Test BehaviorU2TP: Test Behavior
U2TP
Va bene la teoria ma…quali quanti diagrammicostituiscono un test system?ESEMPIO PRATICO (CRM)
Customer Resource Management Software System& Customer Resource Management Test System
Luca Berardinelli
![Page 10: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/10.jpg)
10
CRM Example: Software SystemCRM Example: Software System
CRM ExampleLuca Berardinelli
![Page 11: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/11.jpg)
11
CRM Example: Test SystemCRM Example: Test System
CRM ExampleLuca Berardinelli
![Page 12: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/12.jpg)
12
CRM Example: Test System CRM Example: Test System Test Configuration Test Configuration
CRM Example
dbe:DataBaseEmulator
<<TestComponent>>
Luca Berardinelli
![Page 13: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/13.jpg)
13
CRM Example: Test System CRM Example: Test System Test Control Test Control
CRM ExampleLuca Berardinelli
![Page 14: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/14.jpg)
14
CRM Example: Test Objective e Use CaseCRM Example: Test Objective e Use Case
CRM Example
Non è possibile fare tutto questo “lavoro”a mano! Ed è solo un esempio semplicissimo!
Per farlo dobbiamo svelare i
Luca Berardinelli
![Page 15: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/15.jpg)
15
MDA in the middle knowing the “meta”MDA in the middle knowing the “meta”
ModelTransformation Application
UML2 UML2 +
MOF
U2TP
PIT
CRM sw sys CRM test sys
ModelTransformation
Direct manipulation approach…
…manipoliamo i metamodelliin questo caso UML2!
Luca Berardinelli
![Page 16: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/16.jpg)
16
A Transformation ToolA Transformation Tool
ModelTransformation Application
Eclipse UML2,un indispensabile COTS
per accedere aduna implementazione open source
del metamodello UML2
Luca Berardinelli
![Page 17: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/17.jpg)
17
A Transformation Definition in JavaA Transformation Definition in Java
ModelTransformation ApplicationLuca Berardinelli
![Page 18: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/18.jpg)
18
PIM e PIT in EclipsePIM e PIT in Eclipse
ModelTransformation ApplicationLuca Berardinelli
![Page 19: 1 How to generate testing models into MDA approach to software development. A beginner’s point of view. Università degli Studi dell’Aquila Facoltà di Scienze](https://reader035.vdocuments.us/reader035/viewer/2022062702/5542eb72497959361e8d9aae/html5/thumbnails/19.jpg)
19
ConclusioniConclusioni
Conclusioni
E’ possibile definire test system utilizzando il profilo U2TPin un approccio Model Driven Testing in ambito MDA
U2TP contribuisce senz’altro a definire un vocabolarioed una notazione comune, a scegliere quali e quantidiagrammi realizzare
Soffre degli stessi limiti di MDA: manca una suite standarddi definizioni di trasformazioni tra modelli
il campo delle model transformation è ancora giovane:bisogna adottare un linguaggio di definizione con unadeguato livello di astrazione.
Bisogna senz’altro individuare e saper utilizzare CASE toolavanzati, in genere commerciali!
Luca Berardinelli