RATIONAL ROSE

26
RATIONAL ROSE

description

RATIONAL ROSE. RATIONAL ROSE. Met Rational Rose levert IBM dé ontwikkeltool voor UML (Unified Modeling Lagauage), de ontwikkeltaal van nu. - PowerPoint PPT Presentation

Transcript of RATIONAL ROSE

Page 1: RATIONAL ROSE

RATIONAL ROSE

Page 2: RATIONAL ROSE

RATIONAL ROSE Met Rational Rose levert IBM dé ontwikkeltool voor UML (Unified

Modeling Lagauage), de ontwikkeltaal van nu.

Rose kan worden toegepast bij de architectuur-ontwikkeling en het ontwerp van applicaties in een reeks aan code: Java, J2EE, J2ME, J2SE, C, C++, Visual C++, Visual Basic (VB6), voor databaseontwerp, Ada en cross-platform, fully-executable codegeneratie voor J2SE. Rational Rose is een tool voor het ontwerpen van software. Het biedt de mogelijkheid UML schema-technieken te tekenen en met elkaar in verband te brengen. Hierbij worden consistentie-checks uitgevoerd.

Hiermee kunnen ontwikkelaars van datamodellen en bedrijfsanalisten hun werk beter op elkaar afstemmen. Doordat ze dezelfde methodologie en notatie gebruiken, kunnen zij software sneller ontwikkelen.

Page 3: RATIONAL ROSE

Diagram windowStandard toolbar

Browser

Diagram toolbox

Documentationwindow

Onder de default toolbar van Rational Rose staan drie windows. Linksboven bevindt zich de Browser, daaronder de Documentation en de rechterkant bevat de Diagrams. Standaard wordt de Main van de Logical View geopend. De inhoud van de Diagram Toolbar is afhankelijk van het Diagram-type dat geselecteerd is. Met de Browser kun je gemakkelijk switchen tussen de verschillende Views.

Page 4: RATIONAL ROSE

Class Diagram (1)Het creëren van een class gaat als volgt:

• Selecteer in de Browser de package waar je een class aan wilt toevoegen

• met de rechtermuisknop activeer je een shortcut menu.  • Kies New » Class. Geef de juiste naam.  • Zorg dat in het Diagram het juiste Class Diagram staat • Sleep deze class naar het Class Diagram.  • Na dubbelklikken op de weergave van de class,

verschijnt de Class Specification, een popup menu waarin eigenschappen van de class kunnen worden ingevuld. 

Page 5: RATIONAL ROSE

Class Diagram (2)

Het creëren van een attribuut van class gaat als volgt:

• Na dubbelklikken in de class verschijnt de Class Specification. 

• Ga naar het tabblad Attributes.  • Klikken met de rechtermuisknop geeft een shortcut menu.  • Kies Insert.• Een nieuw attribuut wordt aangemaakt.  • Het icoontje geeft de zichtbaarheid aan, standaard is dit

private . • Om de eigenschappen te wijzigen kies je uit hetzelfde

shortcut menu Specification. Hier kun je naam, type en dergelijke invullen.

Page 6: RATIONAL ROSE

Class Diagram (3)

Het creëren van een operatie bij een class: 

• Ga naar de Class Specification.  • In het tabblad Operations geeft klikken met de

rechtermuisknop een shortcut menu.  • Kies Insert. Een nieuwe operatie wordt aangemaakt.  • Opmerking : opname staat voor operation name! • Het icoontje geeft de zichtbaarheid aan, standaard is dit

public. • Om de eigenschappen te wijzigen kies je uit hetzelfde

shortcut menu Specification. Hier kun je naam, returntype en dergelijke invullen.

Page 7: RATIONAL ROSE

Class Diagram (4)

Het creëren van een associatie gaat als volgt:

• Tools » Create » Association, de cursor verandert van vorm • klik in de begin-class en vervolgens in de eind-class. • Na dubbelklikken verschijnt de Association Specification,

een popup menu waarin kan worden ingevuld: – de naam van de associatie – de rol die een classe speelt in het tabblad Role A Detail – Role B Detail – de cardinaliteit.

Page 8: RATIONAL ROSE

Class Diagram (5)

Het creëren van een generalisatie gaat als volgt:

• Tools » Create » Generalization, de cursor verandert van vorm (in plaats hiervan kan ook het icoontje in de Diagram Toolbar worden gebruikt.)

• klik in de subclass en vervolgens in de superclass • Na dubbelklikken verschijnt de Generalize Specification, 

een popup menu waarin de naam van de generalisatie kan worden ingevuld. 

Page 9: RATIONAL ROSE

TUTORIAL

Neem deze tutorial ivm Rational Rose door. Probeer de opdrachten bij deel 1 omtrent het class diagram op te lossen.

http://www.si.hhs.nl/~martinr/so71/deel00/deel00.html

Er zullen enkele cd’s met een trialversie van rational rose tijdens de les worden doorgegeven. Trialversie kan ook worden gedownload op TRIALVERSIE DOWNLOADEN

Page 10: RATIONAL ROSE

Use Case Diagram (1)

Het creëren van een actor gaat als volgt: 

• Selecteer in de Browser de package waar je een actor aan wilt toevoegen, 

• met de rechtermuisknop activeer je een shortcut menu.  • Kies New » Actor. Vul de gewenste naam in. • Sleep deze actor vanuit de Browser deze actor naar het

Diagram. • Na dubbelklikken verschijnt de Class Specification, een

popup menu waarin de overige eigenschappen van de actor kunnen worden ingevuld. 

• Een actor is een class waarbij de Stereotype gelijk is gesteld aan Actor. 

Page 11: RATIONAL ROSE

Use Case Diagram (2)

Het creëren van een use case gaat als volgt: 

• Selecteer in de Browser de package waar je een use case aan wilt toevoegen, 

• met de rechtermuisknop activeer je een shortcut menu.  • Kies New » Use Case. Vul de gewenste naam in • Wanneer je deze use case door een icon in het Diagram

gerepresenteerd wilt zien, sleep je hem daar naar toe (zie figuur 2). 

• Na dubbelklikken verschijnt de Use Case Specification, een popup menu waarin de overige eigenschappen van de use case kunnen worden ingevuld. 

Page 12: RATIONAL ROSE

Use Case Diagram (3)Het creëren van een associatie gaat als volgt: 

• Analoog als bij class diagram

Het creëren van een include/extends gaat als volgt: 

• Tools»Create»Unidirectional association• de cursor verandert van vorm • klik in de begin-class en vervolgens in de eind-class. • Na dubbelklikken verschijnt de Unidirectional Association

Specification, een popup menu waarin de naam van de associatie kan worden ingevuld.  – In het veld Stereotype vul je het type relatie in, zoals hier

extends of uses (include). 

Page 13: RATIONAL ROSE

TUTORIAL

Probeer de opdrachten bij deel 2 omtrent use cases uit te voeren.

http://www.si.hhs.nl/~martinr/so71/deel02/deel02.html

Page 14: RATIONAL ROSE

Toestandsdiagram (1)

Het creëren van een State Diagram gaat als volgt: 

• Selecteer in de Browser de class waar een diagram aan wordt toegevoegd.

• Met de rechtermuisknop wordt een shortcut menu geactiveerd.

• Kies State Diagram.

Page 15: RATIONAL ROSE

Toestandsdiagram (2)

Wanneer een State Diagram geactiveerd is, is de inhoud van Tools » Create gewijzigd. Nu zijn hier de elementen te vinden die bij een State Diagram horen. Het creëren van een state gaat als volgt: 

• Tools » Create » State, de cursor verandert van vorm • klik in het geopende Diagram. • Na dubbelklikken op de state verschijnt de State

Specification, een popup menu waarin de naam van de state kan worden ingevuld.

Page 16: RATIONAL ROSE

Toestandsdiagram (3)

Om de Start State en End State te maken, kies je de desbetreffende omschrijving uit Tools » Create.

Het creëren van een activity bij een state : 

• Kies in de State Specification het tabblad Detail. • Met de rechtermuisknop wordt een shortcut menu

geactiveerd. • Kies Insert en vul de naam in. • Dubbelklikken levert een Action(activity) Specification.

Hierin kun je een naam opgeven voor deze Activity en het moment waarop deze moet worden uitgevoerd.

Page 17: RATIONAL ROSE

Toestandsdiagram (4)

Het creëren van een state transition gaat als volgt: 

• Tools » Create » State Transition, de cursor verandert van vorm

• klik in de beginstate en vervolgens in de eindstate. • Na dubbelklikken verschijnt de State Transition Specification

een popup menu waarin de eigenschappen van de state transition kunnen worden ingevuld.

• In het tabblad General kan de Event met de Arguments worden opgegeven.

• Kies in de State Transition Specification het tabblad Detail. • Hier kunnen de Condition en Action worden ingevuld.

Page 18: RATIONAL ROSE

Toestandsdiagram (5)

• Een Loop is een transition die van een state naar zichzelf loopt: 

• Tools » Create » Transition to self

Probeer de opdrachten bij deel 3 omtrent toestandsdiagrammen uit te voeren.

http://www.si.hhs.nl/~martinr/so71/deel03/deel03.html

Page 19: RATIONAL ROSE

Sequence Diagram (1)

Het creëren van een Sequence Diagram gaat als volgt: 

• Selecteer in de Browser de use case of package waar een diagram aan wordt toegevoegd.

• Met de rechtermuisknop wordt een shortcut menu geactiveerd.

• Kies New » Seguence Diagram. • Vul de gewenste naam in.

• Om een een object toe te voegen, sleep je het van de Browser naar het Sequence Diagram. 

• Om een object te verwijderen, selecteer je het en kiest Edit » Delete from Model ofwel Ctrl Del.

Page 20: RATIONAL ROSE

Sequence Diagram (2)Het creëren van een message gaat als volgt: 

• Tools » Create » Message, de cursor verandert van vorm  • klik op de levenslijn van het zendende object en vervolgens

op de levenslijn van het ontvangende object, de Message wordt nu gecreëerd.

• Met de rechtermuisknop klikken levert een shortcut menu. Kies Specification om de Message Specification te activeren.

• Op het tabblad Detail moet het Synchronization type gekozen worden. Standaard staat dit op Simple. – N.B. een synchrone message wordt meestal weergegeven met een

gesloten pijl. Rational Rose kent een andere representatie, zoals te zien in figuur 2.

• In het shortcut menu staan de namen van de operaties die voor dit object beschikbaar zijn. New Operation creëert een nieuwe operatie voor deze class.

Page 21: RATIONAL ROSE

Sequence Diagram (3)

• Sequentie diagrammen en collaboratie diagrammen representeren dezelfde informatie. Rational Rose kent dan ook de mogelijkheid deze in elkaar over te voeren

• Om ze om te zetten in collaboratie diagrammen open je het sequentie diagram en Browse » Create Collaboration Diagram  oftewel F5. Een collaboratie diagram wordt geconstrueerd in dezelfde use case.

• De elementen in dit diagram behoeven nog wel wat cosmetische verschuivingen. 

Page 22: RATIONAL ROSE

Opmerking + Tutorial

Rational Rose is meer dan een tekenprogramma, het voert ook consistentie checks uit.

Report » Show Unresolved Messages

Dit levert dan een rapportje met problemen: bvb. de naam van de message komt niet overeen met de voor deze class genoemde operaties.

Probeer de opdrachten bij deel 4 omtrent sequence diagrammen uit te voeren.

http://www.si.hhs.nl/~martinr/so71/deel04/deel04.html

Page 23: RATIONAL ROSE

Automatisch antwoordapparaat• Het antwoordapparaat is verbonden met een gewone

telefoon. Het apparaat beantwoord een inkomende oproep als de ontvanger niet heeft opgenomen binnen 40 seconden.

• De machine speelt eerst een opgenomen boodschap af, vervolgens produceert het een biep en vervolgens kan de beller een boodschap achter laten op het apparaat.

• Het apparaat heeft een geheugen dat tot 30 minuten spraak kan bevatten. Als het geheugen vol is kunnen geen boodschappen opgenomen worden.

• De gebruiker van de machine kan luisteren naar boodschappen, boodschappen verwijderen en een nieuwe welkomstboodschap opnemen.

Oefening : maak het toestandsdiagram voor het antwoordapparaat in Rational Rose

Page 24: RATIONAL ROSE

LIFT Maak het class diagram in Rational Rose voor onderstaande lift.

De lift die we willen ontwerpen wordt bestuurd door een liftcontroller. Deze zal aanvragen via het bedieningspaneel doorkrijgen. Dit bedieningspaneel bestaat uit een aantal knoppen (1 per verdiep). De knop voor het gelijkvloers is een speciale knop. De knop voor het verdiep dat de gebruiker kiest zal oplichten, indien dit nog niet zo is. Wanneer de lift een bepaald verdiep heeft bereikt zal het lichtje van de knop voor dat verdiep op het paneel uitgaan. Op iedere verdieping zijn bovendien knoppen waarmee een persoon aan kan geven of hij naar boven dan wel naar beneden wil. In de lift is er bovendien een noodrem. Als een lift aankomt op een verdieping waar iemand om een lift gevraagd heeft of op de verdieping die door iemand in de lift gekozen is, dan gaan de deuren automatisch open. Als een lift stilstaat op een verdieping en er onderneemt niemand actie, dan gaan na verloop van tijd de deuren automatisch dicht. Er wordt wel telkens gecontroleerd of er geen obstakel tussen de deuren van de lift zit, alvorens ze gesloten worden.

Page 25: RATIONAL ROSE

Oefening : Uitgeverij• We gaan een systeem modelleren voor een uitgever van zowel

boeken als tijdschriften.• Elk boek dat hij publiceert heeft een auteur, een titel, een

publicatiedatum en een ISBN nummer (10 cijfers). De auteur van een boek heeft een contract met de uitgever, in dit contract ligt het aantal boeken vast dat hij minimum moet schrijven tijdens een bepaalde periode alsook het percentage van de verkoopsopbrengst dat naar de auteur gaat als vergoeding.

• Een tijdschrift heeft een ISSN nummer (8 cijfers) en een titel. Van een tijdschrift worden nummers uitgebracht naar gelang de periodiciteit van het tijdschrift (maandelijks, wekelijks, …). Elk nummer heeft een serienummer, een publicatiedatum en meerdere artikels.

• De auteurs van artikels sturen hun werk spontaan in. De datum waarop een artikel ontvangen is wordt bijgehouden. Dan gaan de redacteurs het artikel editeren en daarna zullen ze beslissen of het aanvaard wordt of niet. De datum van deze beslissing wordt ook bijgehouden. De auteur wordt betaald op basis van de lengte van het (gereviseerde) artikel.

MAAK EEN USE CASE VOOR BOEKEN + EEN USE CASE VOOR ARTIKELSIN RATIONAL ROSE (indien tijd over -> class diagram + toestandsdiagram (B/A)

Page 26: RATIONAL ROSE

EINDE LES

PRETTIG EN GELUKKIG NIEUWJAARPRETTIG EN GELUKKIG NIEUWJAAR

• INGESTUURDE OEFENINGEN ZULLEN DEZE WEEK NOG VERBETERD WORDEN TERUGGEZONDEN

• VOLGENDE LES -> ACTIVITY DIAGRAM