Download presentation
Presentation is loading. Please wait.
1
Integration, Thu 28.6.2001 G. Falquet, L. Nerima
2
ISIISI June 2001 - G. Falquet, L. NerimaClasses 2 Outline vThe AT3 statecharts vComplements: OCL and constraints, packages vInterfaces between the UML design spaces vMeta UML vExtending the UML: stereotypes vUML and databases vUML and XML vPublic domain tools and ressources vUML user survey vConclusion
3
ISIISI June 2001 - G. Falquet, L. NerimaClasses 3 AT3 statechart version 1: the states
4
ISIISI June 2001 - G. Falquet, L. NerimaClasses 4 AT3 statechart version 1
5
ISIISI June 2001 - G. Falquet, L. NerimaClasses 5 Manage phone calls To manage phone calls, the telephone exchange is equipped with a system which allows the drivers to give their position by indicating the area in which they are idle with a vehicle. When a customer asks for a taxi, the operator assigns him or her a vehicle located in the area. If no taxi is in the area, it is necessary to find the closest vehicle. Manage calls Operator Vehicle Idle Booked Use caseObjects States Out of service
6
ISIISI June 2001 - G. Falquet, L. NerimaClasses 6 Maintain Vehicle vAn increase in consumption will indicate that the engine need to be checked. vThe mechanics team takes in charge of the maintenance Mechanics Maintain vehicle Vehicle MotorOK NeedsChecking Maintenance Tanking Model
7
ISIISI June 2001 - G. Falquet, L. NerimaClasses 7 Vehicle life cycle Idle Booked MotorOK NeedsChecking Maintenance Operating Out of service
8
ISIISI June 2001 - G. Falquet, L. NerimaClasses 8 Object Constraint Language vText language to construct expressions for vguards vconditions vpre/post conditions vassertions vactions vBased on navigation expressions, boolean expressions, queries vPredefined operations on primitive types and sets of objects vConstraints can be attached to any element (class, association, attribute, etc.)
9
ISIISI June 2001 - G. Falquet, L. NerimaClasses 9 Navigation expressions vobject(s). attribute vobject(s). role vobject(s). operation(arguments) vobject(s). qualified_association [ selector ] vset -> set_property vset -> select (condition) vset -> size
10
ISIISI June 2001 - G. Falquet, L. NerimaClasses 10 Examples Flight Pilot Person passengers Assignment pilot Booking (flight.passengers -> select(age size < 5 (flight.pilot.training_hours >= flight.plane.min_training AircraftModel plane flight
11
ISIISI June 2001 - G. Falquet, L. NerimaClasses 11 Objets physiques Diagram dependencies Objects Classes Use Cases Collaborations Sequences State Machine Activity Components Deployment includes, extends perform method spec. placement on nodes synchronising dependencies instances instance of
12
ISIISI June 2001 - G. Falquet, L. NerimaClasses 12 Package v« A package is a general purpose mechanism for organizing elements into groups » vAim: organize a UML model vA package contains structural things, behavioral things and other packages vPackage nesting results in a tree structure (analogy: file system with folders) vPackaging + Control of visibility = Control of the complexity of large numbers of abstractions
13
ISIISI June 2001 - G. Falquet, L. NerimaClasses 13 Package : graphic representation vIcon: Tabbed folder vIncludes: vpackage name vContents (sometimes) vExamples Business rules Sensors::Vision {version = 2.24 } Client + OrderForm + TrackingForm - Order
14
ISIISI June 2001 - G. Falquet, L. NerimaClasses 14 Package: importing vExample vClient imports Policies Client + OrderForm + TrackingForm - Order Policies + OrderRules « import »
15
ISIISI June 2001 - G. Falquet, L. NerimaClasses 15 Package: generalization vTo specify a family of packages WindowGUI + GUI::Window + Form # GUI::EventHandler + VBForm MacGui GUI + Window + Form # EventHandler
16
ISIISI June 2001 - G. Falquet, L. NerimaClasses 16 Meta UML vClass diagram of all UML elements Class, Association, State, State Machine, Attribute, etc. vFormal (structural) description of the model vA model to build UML editors and other tools vA model to represent UML models in a database
17
ISIISI June 2001 - G. Falquet, L. NerimaClasses 17
18
ISIISI June 2001 - G. Falquet, L. NerimaClasses 18
19
ISIISI June 2001 - G. Falquet, L. NerimaClasses 19
20
ISIISI June 2001 - G. Falquet, L. NerimaClasses 20
21
ISIISI June 2001 - G. Falquet, L. NerimaClasses 21 Stereotypes vAn extension mechanism vSpecialise existing UML elements (adding constraints) Class > Class > Class State > State > Class
22
ISIISI June 2001 - G. Falquet, L. NerimaClasses 22 UML and Databases vIdea: store objects in relational databases vTransformation rules vClass relation vAttribute attribute vAssociation attribute or relation (depending on multiplicity) vOperations database triggers / procedures / programming language procedures
23
ISIISI June 2001 - G. Falquet, L. NerimaClasses 23 UML and XML vXML vXML Schemas vFrom XML to UML vFrom UML to XML vModelling XML applications vExchanging UML models
24
ISIISI June 2001 - G. Falquet, L. NerimaClasses 24 XML document vObjective of XML : describe the content (semantics), not the presentation. vDocuments vMade of Elements vSub elements (children elements) vAttributes with Values v"Schemaless" documents (semi-structured) vDocuments obeying to a schema
25
ISIISI June 2001 - G. Falquet, L. NerimaClasses 25 Document Example Finding paths in a graph Given the graph … There are...
26
ISIISI June 2001 - G. Falquet, L. NerimaClasses 26 XML Documents are Hierarchical exercise title question answer para Finding paths in a graph Given a connected graph with... Find the... ….. There are... difficulty = 6 para
27
ISIISI June 2001 - G. Falquet, L. NerimaClasses 27 XML Schemas vTo fix a syntax for XML documents vDTD : document type definition (old) vXML Schemas (new) vdefine a class of XML documents va document is an instance of a schema vmore flexible than database or class schemas: alternatives, options, free ordering, etc.
28
ISIISI June 2001 - G. Falquet, L. NerimaClasses 28 po.xml Alice Smith 123 Maple Street Mill Valley CA 90952 Robert Smith 8 Oak Avenue Old Town PA 95819
29
ISIISI June 2001 - G. Falquet, L. NerimaClasses 29 po.xml (cont.) Hurry, my lawn is going wild! Lawnmower 1 148.95 Confirm this is electric Baby Monitor 1 39.98 1999-05-21
30
ISIISI June 2001 - G. Falquet, L. NerimaClasses 30 Schema: po.xsd
31
ISIISI June 2001 - G. Falquet, L. NerimaClasses 31 po.xsd (cont.)
32
ISIISI June 2001 - G. Falquet, L. NerimaClasses 32
33
ISIISI June 2001 - G. Falquet, L. NerimaClasses 33 From XML Schemas to UML vSituation: an XML schema has been adopted vObjective: vto build applications that process this type of XML data vUse UML to model the application vNeed to represent XML data (elements) as UML objects vMapping XML schemas to UML class model
34
ISIISI June 2001 - G. Falquet, L. NerimaClasses 34 Mapping technique [Booch et al.] vAdd class stereotypes: velementtype, sequence, choice, enumeration, scalar,... vAdd attribute / unidirectional association stereotypes: vimplied, required,... vElement or datatype --> class with stereotype vXML attribute --> attribute / unidirectional association
35
ISIISI June 2001 - G. Falquet, L. NerimaClasses 35 UML for Document Modelling vDifficult to design good XML schemas --> vUse UML to model the domain vProduce a class diagram vThen create a suitable XML schema Project title Person firstName lastName Department name... Manager Participant
36
ISIISI June 2001 - G. Falquet, L. NerimaClasses 36 An XML Schema <xsd:element name="participant" type="PersonType minOccurs="1" maxOccurs="unbounded"/>
37
ISIISI June 2001 - G. Falquet, L. NerimaClasses 37 Objects --> XML Document Restructuring the World Joe Cool Toys...
38
ISIISI June 2001 - G. Falquet, L. NerimaClasses 38 Issues vMany possible mappings from UML to XML vClass --> complex or simple type vDefine elements or types vAssociations --> vInclusions ( … … ) vReferences (...) vetc. v"Solution": fix a reverse mapping
39
ISIISI June 2001 - G. Falquet, L. NerimaClasses 39 XML for Information Interchange vSystem modelled with UML vCreate an XML schema to represent all data vExport data in XML format vImport XML data into another system vWeb browser vPresentation generator (PDF,...) vGraphics generator
40
ISIISI June 2001 - G. Falquet, L. NerimaClasses 40 A Book Modeling XML Applications with UML: Practical e- Business Applications David Carlson Addison-Wesley Object Technology Series
41
ISIISI June 2001 - G. Falquet, L. NerimaClasses 41 Exchanging UML models vThere exist an XML schema for expressing UML models (XMI) v--> UML specifications are open and exchangeable vUML tools (diagram editors, code generators, pretty printers, …) should be able to read/write UML specs in XML
42
ISIISI June 2001 - G. Falquet, L. NerimaClasses 42 OMG survey on using the UML vDate: 2000 vQuestions: vWhat constructs in the language are most used ? vWhat parts of the language need clarification ? vWhat parts of the language should be removed ?
43
ISIISI June 2001 - G. Falquet, L. NerimaClasses 43 OMG survey on using the UML Most used Least used Need clarification vClass diagrams> 8 vsequence diagram7-8 vuse cases7-8 vstate charts5-6> 8 vstereotypes and tagged values 1-2 vPackage1-2 vimplementation diagrams 3-4 3-4 vcollaboration diagrams 3-4 7-83-4 vactivity diagram 0 > 81-2 vmodel management - except package 0 1-21-2 vComponent0 1-23-4 vpattern 0 1-2
44
ISIISI June 2001 - G. Falquet, L. NerimaClasses 44 OMG survey on using the UML (cont) Most used Least used Need clarification vclass, type, interface, classifier role, component0 1-21-2 vwhole-part relationships0 3-4
45
ISIISI June 2001 - G. Falquet, L. NerimaClasses 45 What parts of the language should be removed? vUML standard profiles 3-4 vNotes in semantics section1-2 vStandard elements without abstract semantics1-2
46
ISIISI June 2001 - G. Falquet, L. NerimaClasses 46 Application in industry Level of usage ( 1 – 5 ) vClass and package5 most used vuse case3 depend on the culture. Less interesting for some fields. vsequence3 quite often used, well understood vcollaboration 2 object diagram used, but collaboration modeling marginal vstatecharts2 strong usage in real time applications, rarely used in the sevice industries vactivity1 introduced late in the environments, local cultural habit in some sectors of the sevice industries vcomponent/deployment 1 only few people use it, on a few parts of their applications
47
ISIISI June 2001 - G. Falquet, L. NerimaClasses 47 Conclusion vWe presented almost all the features of the UML ! (omitting details) vModeling is important vModel in several dimensions to have a comprehensive and complete view of your system vNext: exercice on a small but real application (in your domain of course) vStart with the diagrams you feel confortable with vPractice structural AND dynamic modeling v… we hope you learned some valuable information on the UML
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.