1 Presentatie Jaarproject Nils De Moor Sam Verboven2 Story Driven Modelling Story Diagrams UML class / activity / colaboration diagrams Operatoren : -...
Story Diagrams UML class / activity / colaboration diagrams Operatoren : - Diagram begint bij - Doorloopt activities (onderling verbonden door transities) - Eindigt bij
variablen ongebonden: naam + type gebonden: enkel naam Uitvoeren van Story Pattern: Matchen van ongebonden variablen met objecten zodat de conditie true evalueert
Story Driven Modelling ●
●
Creatie van een object: ++++ Deletion van een object:
UML Profile
UML Profile ●
Fujaba
andere CASE-tools
UML Profile ●
Fujaba
andere CASE-tools Omzetting naar UML
UML Profile ●
Fujaba
andere CASE-tools Omzetting naar UML
●
Alle elementen in SDM = Overeenkomstig UML-element ( + Stereotype voor uitbreiding semantiek)
UML Profile ●
Transformatie-specificatie: 1. Overkoepelende klasse 2. Control flow 3. Transformatie primitieven
UML Profile ●
Enkele mechanismen in SDM moeten gesimuleerd worden in UML (vb. nesting van diagrams)
UML Profile ●
●
Enkele mechanismen in SDM moeten gesimuleerd worden in UML (vb. nesting van diagrams) Link tss. lagen zelf modelleren
UML Profile ●
●
Enkele mechanismen in SDM moeten gesimuleerd worden in UML (vb. nesting van diagrams) Link tss. lagen zelf modelleren Hoe? Meta-attributen toevoegen Tagged Values = willekeurige meta-data
UML Profile ●
UML-Profile ! = Verzameling tagged values stereotypes + constraints (OCL) Levert geldig UML Model, met meer semantiek
UML Profile ●
De drie lagen gemodelleerd als UML packages
UML Profile ●
●
Modeltransformator klasse (laag 1) → << ModelTransformation >> → Methode visueel gespecifieerd Control flow (laag 2) → activity diagram → package vervat in package van laag 1 →tagged value: jcmtg.transformation
UML Profile ●
Control Flow (cont'd) semantiek ~ UML semantiek: → initial state → action states → finial state –
voorwaarden adhv.
tagged values sterotypes
UML Profile ●
Action states: – – – –
<< code >> : Activity die pure java-code uitvoert << link >> : Activity die een andere methode oproept verwijzing naar transformatieprimitieve (laag 3) jcmg.transprimitive << loop >> : Activity die een transformatie-primitieve voor alle mogelijke matches uitvoert ●
elke uitgaande transitie mag dan << each time >> bevatten → genestte control flow
UML Profile ●
Transformatieprimitieven (laag 3) – – – – –
klasse diagram = objecten en relaties ertussen oorspronkelijke UML semantiek wordt geherdefinieerd