Lecture 6 7 UML introduction Telematics systems and
- Slides: 83
Lecture 6 -7: UML introduction Telematics systems and their design Doc. Ing. Ondřej Přibyl, Ph. D. Department of applied mathematics Faculty of Transportation sciences, CTU Ondřej Přibyl L 6 -7: UML introduction page 1
Telematics systems and their design Faculty of Transportation Sciences, CTU Example of UML (1) Ondřej Přibyl L 6 -7: UML introduction page 2
Telematics systems and their design Faculty of Transportation Sciences, CTU Example of UML (2) Ondřej Přibyl L 6 -7: UML introduction page 3
Telematics systems and their design Faculty of Transportation Sciences, CTU Example of UML (3) Ondřej Přibyl L 6 -7: UML introduction page 4
Telematics systems and their design Faculty of Transportation Sciences, CTU Example of UML (4) Ondřej Přibyl L 6 -7: UML introduction page 5
Telematics systems and their design Faculty of Transportation Sciences, CTU Example of UML (5) Ondřej Přibyl L 6 -7: UML introduction page 6
Telematics systems and their design Faculty of Transportation Sciences, CTU Lecture 5 – Overview • What is UML • History of UML • UML diagrams – Overview – Description Ondřej Přibyl L 6 -7: UML introduction page 7
Telematics systems and their design Faculty of Transportation Sciences, CTU What is UML? • UML = Unified Modeling Language • • A language (notation) for modeling object-oriented systems A standard maintained by the Object Management Group A modeling language including 13 diagrams A means for visualizing, specifying, constructing, and documenting software as well as hardware systems http: //www. uml. org Ondřej Přibyl L 6 -7: UML introduction page 8
Telematics systems and their design U M L Ondřej Přibyl Faculty of Transportation Sciences, CTU Unified: • Unification of earlier object-oriented analysis and design methods. • Same concepts and notation for different application domains and different development processes. • Same concepts and notation through the whole development lifecycle. Modeling: • Making a semantically* complete abstraction of a system. (* The formal specification of the meaning and behavior of something) Language: • a system for encoding and decoding information • UML - A graphical language L 6 -7: UML introduction page 9
Telematics systems and their design Faculty of Transportation Sciences, CTU DIscussion • What is a model? Ondřej Přibyl L 6 -7: UML introduction page 10
Faculty of Transportation Sciences, CTU Telematics systems and their design Modeling • When you make a model you are making a mapping from the problem domain to a representation of the system you are modeling. Reality Model • When you work object-oriented the model tends to be close to the system modeled, and a program execution can be regarded as a simulation of the behavior of the system. Ondřej Přibyl L 6 -7: UML introduction page 11
Telematics systems and their design Faculty of Transportation Sciences, CTU Models http: //www. business-prototyping. com/methods-andtechniques/models-and-metamodels/ Ondřej Přibyl L 6 -7: UML introduction page 12
Telematics systems and their design Faculty of Transportation Sciences, CTU DIscussion • Why do we model? Ondřej Přibyl L 6 -7: UML introduction page 13
Telematics systems and their design Faculty of Transportation Sciences, CTU Why do we model? • Models give us a template that guides us in constructing a system. – If you want to make a building you first make a blueprint of the building to make • Models help us visualize a system at different levels of abstraction, this makes it easier to manage complexity and to understand the system. • Provide structure for problem solving • Experiment to explore multiple solutions • Modeling allows the following business benefits: – Reduce time-to-market for business problem solutions – Decrease development costs – Manage the risk of mistakes Ondřej Přibyl L 6 -7: UML introduction page 14
Telematics systems and their design Faculty of Transportation Sciences, CTU Characteristics of a Model • A model is never equal to the real system, because it is always simpler than the reality 15 • The accuracy of a model is determined by its tendency to approach the real system • Is that a problem? • Yes, if the model ignores important parameters of the real system (over simplification) • No, if the model takes into account the important parameters (ignoring some details is sometimes not problematic) • No, if we simplify those features not relevant for our research - We use a mathematical model of an engine to study its power, but we do not model its heating characteristics Ondřej Přibyl L 6 -7: UML introduction page 15
Telematics systems and their design Faculty of Transportation Sciences, CTU Discussion • Why do we need UML? Ondřej Přibyl L 6 -7: UML introduction page 16
Telematics systems and their design Faculty of Transportation Sciences, CTU Why do we need UML? • Unified communication language – Unify ideas from other modeling languages and incorporate industry best practices. – Everybody understands UML in the same way! • Graphical notation – A picture is worth a thousand words – An easy-to-learn but semantically rich visual modeling language • Provides multiple diagrams for capturing different architectural views • Promotes component reusability • Provide flexibility for applying different processes and mapping to different programming languages. Ondřej Přibyl L 6 -7: UML introduction page 17
Faculty of Transportation Sciences, CTU Telematics systems and their design Problems with communication… Customer Ondřej Přibyl Salesman Product manager Developer L 6 -7: UML introduction page 18
Telematics systems and their design Faculty of Transportation Sciences, CTU History of UML Ondřej Přibyl L 6 -7: UML introduction page 19
Telematics systems and their design Faculty of Transportation Sciences, CTU History of UML 2. 5 was released in October 2012 as an "In process" version and has yet to become formally released Ondřej Přibyl L 6 -7: UML introduction page 20
Telematics systems and their design Faculty of Transportation Sciences, CTU UML is not a development process A development process defines: - Who is doing What, - When to do it, and - How to reach a certain goal • The UML is intentionally process independent • Defining of a standard process was not a goal of UML. Different domain may require different processes. • UML authors promote a development process that is use-case-driven, architecture centric, iterative and incremental. (Example of method: RUP) Ondřej Přibyl L 6 -7: UML introduction page 21
Telematics systems and their design Faculty of Transportation Sciences, CTU Discussion - Control questions • What is UML • Is UML better or worst than water fall methodology? • Why do we want to use UML? (Advantages) • Are there any disadvantages of UML? • How do we use UML as part of SAD? Ondřej Přibyl L 6 -7: UML introduction page 22
Introduction: Ways of using UML Ondřej Přibyl L 6 -7: UML introduction page 23
Telematics systems and their design Faculty of Transportation Sciences, CTU As a Sketch • Most common use of UML • Used to help communicate some aspect of a system and to better understand it • Used for both forward engineering (i. e. , build diagrams before coding) and reverse engineering (i. e. , build diagrams from existing code) • Strives to be informal and dynamic • Only emphasizes those classes, attributes, operations, and relationships that are of interest • More concerned with selective communication than complete specification 24 Ondřej Přibyl L 6 -7: UML introduction page 24
Telematics systems and their design Faculty of Transportation Sciences, CTU As a Blueprint • Goal is completeness • Is more definitive, while the sketch approach is more explorative • Used to describe a detailed design for a programmer to follow in writing source code • Notation should be sufficiently complete so that a programmer can follow it in a straightforward manner • Can be used by a designer to develop blueprint-level models that show interfaces of subsystems or classes – Developers then work out the implementation details • As a reversed engineered product, diagrams convey detailed information about the source code that is easier for developers to understand 25 Ondřej Přibyl L 6 -7: UML introduction page 25
Telematics systems and their design Faculty of Transportation Sciences, CTU As a Programming Language • Specifies the complete system in UML so that code can be automatically generated • Looks at UML from a software perspective rather than a conceptual perspective which concentrates on the domain of study • Diagrams are compiled directly into executable code so that the UML becomes the source code • Challenge is making it more productive to use UML rather than some another programming language • Another concern is how to model behavioral logic – Done with interaction diagrams, state diagrams, and activity diagrams 26 Ondřej Přibyl L 6 -7: UML introduction page 26
Telematics systems and their design Faculty of Transportation Sciences, CTU Comparing and Contrasting Ways of Using UML • UML sketches are useful with both forward and reverse engineering and in both conceptual and software perspectives • Detailed forward engineering blueprints are difficult to do well and slow down the development effort – Actual implementation of interfaces will reveal the needs for changes • The value of reversed engineered blueprints depends on the CASE tool – A dynamic browser would be very helpful; a thick document wastes time and resources • UML as a programming language will probably never see significant usage – Graphical forms have not shown to be more productive in writing code than textual code for most programming tasks 27 Ondřej Přibyl L 6 -7: UML introduction page 27
Overview of UML diagrams Ondřej Přibyl L 6 -7: UML introduction page 28
Telematics systems and their design Faculty of Transportation Sciences, CTU Standard diagrams in UML (Ver. 2. 2) Ondřej Přibyl L 6 -7: UML introduction page 29
Telematics systems and their design Faculty of Transportation Sciences, CTU Standard diagrams in UML • 13 Types in UML 2. 0 (Superstructure specs) I. Behavior 1. Activity 2. State Machines 3. Use case II. Interaction 4. Communication 5. Interaction Overview 6. Sequence 7. Timing Ondřej Přibyl III. Structure 8. Class 9. Composite Structure 10. Object IV. Organization (Structure) 11. Package 12. Component 13. Deployment L 6 -7: UML introduction page 30
Telematics systems and their design Faculty of Transportation Sciences, CTU I. What is Behavioral modeling? • a view of an system that emphasizes the behavior of particular modules as well as processes. I. Behavior 1. Activity 2. State Machines 3. Use case Ondřej Přibyl L 6 -7: UML introduction page 31
Telematics systems and their design Faculty of Transportation Sciences, CTU 3. Use case diagram • Captures Use Cases and relationships between Actors and the subject (system). • It describes the functional requirements of the system, the manner in which outside things (Actors) interact at the system boundary, and the response of the system • Displayed aspects – System boundary and context of system – Users and neighbor systems – Functionalities – Relationships between functionalities (calling/dependency, taxonomy) – Functional requirements – Some non-functional (“quality”) requirements as comments/annotations Ondřej Přibyl L 6 -7: UML introduction page 32
Telematics systems and their design Faculty of Transportation Sciences, CTU 3. Use case diagram - Actors • Actors – specifies a role played by a user or any other system that interacts with the subject Ondřej Přibyl L 6 -7: UML introduction page 33
Telematics systems and their design Faculty of Transportation Sciences, CTU 3. Use case diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 34
Telematics systems and their design Faculty of Transportation Sciences, CTU Project relevant details (Assignment 3) • See presentation (P 1 – Actors) • Stored also at the course web site together with additional reading – Usecases. pdf – UML Handbook Ondřej Přibyl L 6 -7: UML introduction page 35
Telematics systems and their design Faculty of Transportation Sciences, CTU SSC system: Example Actors (Class 2012) Ondřej Přibyl L 6 -7: UML introduction page 36
Telematics systems and their design Faculty of Transportation Sciences, CTU 3. Use case diagram – Discussion • Prepare a simple Use case diagram for – Section speed control system Ondřej Přibyl L 6 -7: UML introduction page 37
Telematics systems and their design Faculty of Transportation Sciences, CTU SSC system: UC example Ondřej Přibyl L 6 -7: UML introduction page 38
Telematics systems and their design Faculty of Transportation Sciences, CTU Result from class 2011 (Section speed control system) Ondřej Přibyl L 6 -7: UML introduction page 39
Telematics systems and their design Faculty of Transportation Sciences, CTU Result from class 2012 (Section speed control system) Ondřej Přibyl L 6 -7: UML introduction page 40
Telematics systems and their design Faculty of Transportation Sciences, CTU Scenarios § Scenario is another name for a particular flow of events. § A use case covers a range of situations – a scenario is just one. § Each use case typically has: – a main flow describing the “happy path” – alternate flows describing major exceptions § Several alternatives exist for specifying the use case scenarios. Ondřej Přibyl L 6 -7: UML introduction page 41
Telematics systems and their design Faculty of Transportation Sciences, CTU Describing Scenarios Textually § Write text to describe the interaction of the actor(s) and the system. § Simple and easy approach § May be limiting: – Numerous alternate flows make it hard to understand where normal flow can branch. – Long alternate flows need to be broken out as steps too. Ondřej Přibyl • Use Case: Checks out item 1. Customer sets item on counter. 2. Sales clerk swipes UPC reader across UPC code on item. 3. System looks up UPC code in database procuring item description and price. 4. System emits audible beep. 5. System announces item description and price over voice output. 6. System adds price and item type to current invoice. 7. System adds price to correct tax subtotal. • Error case 1: UPC code unreadable • If after step 2, the UPC code was invalid or was not properly read, emit an audible ‘bonk’ sound. • Error case 2: No item in database • If after step 3 no database entry is found for the UPC flash the ‘manual entry’ button on the terminal. Accept key entry of price and tax code from Sales Clerk. Set Item description to “Unknown item”. Go to step 4. L 6 -7: UML introduction page 42
Faculty of Transportation Sciences, CTU Telematics systems and their design Describing Scenarios Graphically § Create an Activity Diagram to graphically show the interaction of the actor(s) and the system. § Requires a little UML savvy § Easy to slip into too much detail Ondřej Přibyl § Create a Sequence Diagram to graphically show the interaction of the actor(s) and the system. § Requires more UML savvy § Great start for design activities page 43 L 6 -7: UML introduction
Telematics systems and their design Faculty of Transportation Sciences, CTU 1. Activity diagram • Activity diagrams present all kinds of control flow and data flow. • They are kind of dual to state machines: – focus is on actions rather than states. • Activity diagrams have applications throughout the whole software life cycle for many purposes – Analysis • design or document processes in the application domain (business processes) – Design • design or document processes as compositions of preexisting elements like manual tasks or automated jobs – Implementation • document existing programs (i. e. functions, services, …) • design algorithmic processes with an intention of turning them into implementation language code Ondřej Přibyl L 6 -7: UML introduction page 44
Telematics systems and their design Faculty of Transportation Sciences, CTU 1. Activity diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 45
Telematics systems and their design Faculty of Transportation Sciences, CTU 1. Activity diagram – Partitioning (Example) Ondřej Přibyl L 6 -7: UML introduction page 46
Telematics systems and their design Faculty of Transportation Sciences, CTU 1. Activity diagram – Discussion • Prepare a simple Activity diagram for one use case from: – Section speed control system – Nice explanation and examples: http: //www. zicomi. com/view. Activity. Diagram. jsp Ondřej Přibyl L 6 -7: UML introduction page 47
Telematics systems and their design Faculty of Transportation Sciences, CTU SSC system: AD example Ondřej Přibyl L 6 -7: UML introduction page 48
Telematics systems and their design Faculty of Transportation Sciences, CTU 2. State machine diagram - Overview • State machines model behavior – object and use case life cycles – control automata – protocols • State machines consist of – States … – connected by Transitions (with triggers, guards, and effects) • State machines communicate via event pools. • State machines are executed by run-to-completion steps. Ondřej Přibyl L 6 -7: UML introduction page 49
Telematics systems and their design Faculty of Transportation Sciences, CTU 2. State machine diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 50
Telematics systems and their design Faculty of Transportation Sciences, CTU II. What is interaction modeling? • a view of an system that emphasizes the shows interactions among the elements. II. Interaction 4. Communication 5. Interaction Overview 6. Sequence 7. Timing Ondřej Přibyl L 6 -7: UML introduction page 51
Telematics systems and their design Faculty of Transportation Sciences, CTU 6. Sequence diagram • Purpose: show the interactions between objects in the sequential order • It is used to depict work flow, message passing and how elements in general cooperate over time to achieve a result. • Each sequence element is arranged in a horizontal sequence, with messages passing back and forward between elements. • An Actor element can be used to represent the user initiating the flow of events. • Stereotyped elements, such as Boundary, Control and Entity, can be used to illustrate screens, controllers and database items, respectively. Ondřej Přibyl L 6 -7: UML introduction page 52
Telematics systems and their design Faculty of Transportation Sciences, CTU 6. Sequence diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 53
Telematics systems and their design Faculty of Transportation Sciences, CTU 4. Communication diagram • Shows the interactions between elements at run-time in much the same manner as a Sequence diagram. • However, it is used to visualize inter-object relationships, while Sequence diagrams are more effective at visualizing processing over time. • Communication diagrams employ ordered, labeled associations to illustrate processing. • Numbering is important to indicate the order and nesting of processing. A numbering scheme could be: – – Ondřej Přibyl 1 1. 2 And so on L 6 -7: UML introduction page 54
Telematics systems and their design Faculty of Transportation Sciences, CTU 4. Communication diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 55
Telematics systems and their design Faculty of Transportation Sciences, CTU 5. Interaction overview diagram • Visualizes the cooperation between other interaction diagrams to illustrate a control flow serving an encompassing purpose. • Variant of Activity diagrams, most of the diagram notation is the same, as is the process of constructing the diagram. Decision points, Forks, Joins, Start points and End points are the same. Instead of Activity elements, however, rectangular elements are used. Ondřej Přibyl L 6 -7: UML introduction page 56
Telematics systems and their design Faculty of Transportation Sciences, CTU 7. Timing diagram • Originated in electrical engineering (oscilloscope) • Defines the behavior of different objects within a time-scale. • It provides a visual representation of objects changing state and interacting over time. • You can use Timing diagrams to define hardware-driven or embedded software components • For example, those used in a fuel injection system or a microwave controller. • You can also use Timing diagrams to specify time-driven business processes. Ondřej Přibyl L 6 -7: UML introduction page 57
Telematics systems and their design Faculty of Transportation Sciences, CTU 7. Timing diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 58
Telematics systems and their design Faculty of Transportation Sciences, CTU III. What is structural modeling? • a view of an system that emphasizes the structure of the objects, including their classifiers, relationships, attributes and operations. III. Structure 8. Class 9. Composite Structure 10. Object Ondřej Přibyl L 6 -7: UML introduction page 59
Telematics systems and their design Faculty of Transportation Sciences, CTU 8. Class diagram • Captures the logical structure of the system: the classes and things that make up the model. • It is a static model, describing what exists and what attributes and behavior it has, rather than how something is done. • Usage: – to illustrate relationships between Classes and Interfaces. • Generalizations, Aggregations and Associations are all valuable in reflecting inheritance, composition or usage, and connections, respectively. Ondřej Přibyl L 6 -7: UML introduction page 60
Telematics systems and their design Faculty of Transportation Sciences, CTU 8. Class diagram - Class • Class is a construct that is used as a blueprint to create objects of that class (instances). • A class usually represents a noun, such as a person, place or (possibly quite abstract) thing • This blueprint describes the state and behavior that the objects of the class all share: – Attributes (properties) and – Methods (behavior) • Terminology – Class • Employee (ID, Name, Dept) – Instance of a class • (25, Peter, Accounting) Ondřej Přibyl L 6 -7: UML introduction page 61
Telematics systems and their design Faculty of Transportation Sciences, CTU 8. Class diagram - Class • Associations between classes – type of a link between the corresponding objects – Association role - multiplicity describes how many instances correspond to each instance of the other class(es) of the association. Ondřej Přibyl L 6 -7: UML introduction page 62
Faculty of Transportation Sciences, CTU Telematics systems and their design 8. Class diagram - Example -Nouns in a text? -Properties? -Relationships? Ondřej Přibyl L 6 -7: UML introduction page 63
Telematics systems and their design Faculty of Transportation Sciences, CTU 9. Composite structure diagram (class assembly diagram) • • Reflects the internal collaboration of Classes, Interfaces or Components (and their Properties) to describe a functionality. Composite Structure diagrams are similar to Class diagrams, except that they model a specific usage of the structure. – Class diagrams model a static view of Class structures, including their attributes and behaviors. – A Composite Structure diagram is used to express run-time architectures, usage patterns and the participating elements' relationships, which might not be reflected by static diagrams. Ondřej Přibyl L 6 -7: UML introduction page 65
Telematics systems and their design Faculty of Transportation Sciences, CTU 9. Composite structure diagram - Example • For example - relationship for performing an installation. Ondřej Přibyl L 6 -7: UML introduction page 66
Telematics systems and their design Faculty of Transportation Sciences, CTU 10. Object diagram • Closely related to a Class diagram, with the distinction that it depicts object instances of Classes and their relationships at a point in time. • This might appear similar to a Composite Structure diagram, which also models runtime behavior; the difference is that Object diagrams exemplify the static Class diagrams, whereas Composite Structure diagrams reflect run-time architectures different from their static counterparts. • Object diagrams do not reveal architectures varying from their corresponding Class diagrams, but reflect multiplicity and the roles instantiated Classes could serve. • They are useful in understanding a complex Class diagram, by creating different cases in which the relationships and Classes are applied. • An Object diagram can also be a kind of Communication diagram, which also models the connections between objects, but additionally sequences events along each path. Ondřej Přibyl L 6 -7: UML introduction page 67
Telematics systems and their design Faculty of Transportation Sciences, CTU 10. Object diagram - Example • The following example first shows a simple Class diagram, with two Class elements connected. • The Classes above are instantiated below as Objects in an Object diagram. There are two instances of Computer in this model, which can prove useful for considering the relationships and interactions Classes play in practice, as Objects. Ondřej Přibyl L 6 -7: UML introduction page 68
Telematics systems and their design Faculty of Transportation Sciences, CTU IV. What is organizational modeling? • a view of an system that emphasizes the organization of the objects. IV. Organization (Structure) 11. Package 12. Component 13. Deployment Ondřej Přibyl L 6 -7: UML introduction page 69
Telematics systems and their design Faculty of Transportation Sciences, CTU 11. Package diagram Package is a general purpose mechanism for organizing model elements & diagrams into groups. • Depict the organization of model elements into packages and the dependencies amongst them, including package imports and package extensions. • Package diagrams can use packages containing use cases to illustrate the functionality of a software system. Ondřej Přibyl L 6 -7: UML introduction page 70
Telematics systems and their design Faculty of Transportation Sciences, CTU 12. Component diagram - Definition • Component – Modular unit with well defined interfaces – Defines its behavior in terms of provided and required interfaces. – Serves as a type, whose conformance is defined by these provided and required interfaces (encompassing both their static as well as dynamic semantics). • Component diagram – Illustrates the pieces of software, embedded controllers and such that make up a system, and their organization and dependencies. – Has a higher level of abstraction than a Class diagram; usually a component is implemented by one or more Classes (or Objects) at runtime. Ondřej Přibyl L 6 -7: UML introduction page 71
Telematics systems and their design Faculty of Transportation Sciences, CTU 12. Component diagram - Example • • Assembly connectors – connect the provided interfaces supplied by Product and Customer to the required interfaces specified by Order. Dependency relationship – maps a customer's associated account details to the required interface Payment, indicated by Order. Ondřej Přibyl L 6 -7: UML introduction page 72
Telematics systems and their design Faculty of Transportation Sciences, CTU 13. Deployment diagram • Shows how and where the system is to be deployed - its execution architecture. • Hardware devices, processors and software execution environments (system Artifacts) are reflected as Nodes, and the internal construction can be depicted by embedding or nesting Nodes. • Artifact is a specification of a physical piece of information • Examples: model files, source files, scripts, a table in a database system, a word-processing document, a mail message • Other UML elements (classes, components) are first manifested into artifacts and instances of these artifacts are then deployed. • Deployment relationships indicate the deployment of Artifacts, and Manifest relationships reveal the physical implementation of components. • As Artifacts are allocated to Nodes to model the system's deployment, the allocation is guided by the use of deployment specifications. Ondřej Přibyl L 6 -7: UML introduction page 73
Telematics systems and their design Faculty of Transportation Sciences, CTU Deployment diagram Ondřej Přibyl L 6 -7: UML introduction page 74
Telematics systems and their design Faculty of Transportation Sciences, CTU 13. Deployment diagram - Example Ondřej Přibyl L 6 -7: UML introduction page 75
Best practices: How to apply UML? http: //www. magicdraw. com/files/whitepapers/Best_Practices_for _Applying_UML_Part 1. pdf Ondřej Přibyl L 6 -7: UML introduction page 76
Telematics systems and their design Faculty of Transportation Sciences, CTU Best Practice #1: Apply a subset of UML relevant to your role 80%– 20% rule: 80% of the users apply only 20% of the features Ondřej Přibyl L 6 -7: UML introduction page 77
Telematics systems and their design Faculty of Transportation Sciences, CTU Best Practice #2: Focus on the Most Valuable Modeling Artifacts Knowing what gives value to your role, you also need to know what modeling artifacts have long-term value and need to be maintained. Ondřej Přibyl L 6 -7: UML introduction page 78
Telematics systems and their design Faculty of Transportation Sciences, CTU Best Practice #3: Choose Appropriate Level of Detail • A common technique is to show a diagram without details of elements but showing the most important relationships between them. Then you can have additional diagrams that focus on the details of specific element. • Do not model irrelevant details, such as: – Implementation-specific properties; – Private class methods and attributes; – Conventional methods, e. g. to. String() in Java; – Elements that can be generated automatically; – Show only the most important associations. Ondřej Přibyl L 6 -7: UML introduction page 79
Telematics systems and their design Faculty of Transportation Sciences, CTU Best Practice #4: Less is more… http: //geertbellekens. wordpress. com/2012/02/21/uml-best-practice-5 -rules-for-better-uml-diagrams/ Ondřej Přibyl L 6 -7: UML introduction page 80
Telematics systems and their design Faculty of Transportation Sciences, CTU Best Practice #5: Model with Style is the way you put together things, not the things themselves. • Adhering to common modeling style makes diagrams easier to read and understand facilitates teamwork in modeling • Modeling styles includes: – Naming conventions; – Layout conventions; – Choosing appropriate diagrams; – Modeling & design principles. – no crossings – orthogonality Ondřej Přibyl L 6 -7: UML introduction page 81
Telematics systems and their design Faculty of Transportation Sciences, CTU Best Practice #5: Model with Style (negative Example) • Different element sizes are used; • Diagram is not symmetric; • Long, bent, and crossing lines; • Horizontal ungrouped generalization links; • Unevenly distributed space. Ondřej Přibyl L 6 -7: UML introduction page 82
Telematics systems and their design Faculty of Transportation Sciences, CTU Sources online • • • Google !!! http: //en. wikipedia. org/wiki/Unified_Modeling_Language http: //www. roseindia. net/programming-tutorial/UML-Tutorials http: //www. csci. csusb. edu/dick/samples/uml. html http: //www. objectsbydesign. com/projects/python_example. ht ml Ondřej Přibyl L 6 -7: UML introduction page 83
Thank you for your attention Ondřej Přibyl L 6 -7: UML introduction page 84
- Eld.sefl
- Telematics
- Freight telematics
- Uml 2
- 01:640:244 lecture notes - lecture 15: plat, idah, farad
- Object-oriented systems analysis and design using uml
- Operating systems lecture notes
- Articulators
- Lecture sound systems
- Ppt uml
- Introduction to uml in ooad
- Introduction to biochemistry lecture notes
- Introduction to psychology lecture
- Introduction to algorithms lecture notes
- Decision support systems and intelligent systems
- Introduction of system analysis and design
- Pxdes
- Introduction to signals and systems
- Difference between analog and digital control system
- Introduction to analog and digital control systems
- Dicapine
- Embedded systems vs cyber physical systems
- Engineering elegant systems: theory of systems engineering
- Introduction to recommender systems
- Recommender systems: an introduction
- I/o device management in operating system
- Chapter 3 lesson 1 introduction to global systems
- Sap systems introduction
- Introduction to radar systems skolnik
- Introduction of health care delivery system
- Introduction to information systems 6th edition
- Sap erp system overview
- Introduction to content management system
- Fundamentals of information systems chapter 1
- The term multimedia
- Introduction to information systems 3rd edition
- Introduction to information systems 5th edition
- Chapter 1 ems systems
- User productivity system
- Accounting information system chapter 1
- An introduction to database systems
- Introduction to global systems
- Air conditioning ppt
- Introduction to manufacturing systems
- Introduction to embedded systems lee seshia solution manual
- Introduction to electrical power systems
- Introduction to erp systems
- Distributed os definition
- System software: an introduction to systems programming
- 101101-100111
- Cit 593
- Introduction to low voltage systems
- Introduction to information systems 3rd edition
- 15-213 introduction to computer systems
- Introduction to systems engineering consulting
- Introduction to information systems 3rd edition
- 15-213 introduction to computer systems
- Apa itu uml
- Csci2040
- Uml object diagram
- Uml 2 activity diagram
- Logical architecture and uml package diagram
- System analysis and design with uml
- Use case diagram of event management system
- Object oriented analysis and design using uml
- Class diagram
- Electricity and magnetism lecture notes
- Power system dynamics and stability lecture notes
- Microbial physiology lecture notes
- Ternology
- Cloud computing lecture
- Fits and tolerances chart
- Financial markets and institutions ppt
- Indirect finance
- Extempore and lecture
- Utilities and energy lecture
- Catherine belsey books
- Design of mechatronics system ppt
- Vct monitoring foetal
- Lecture on love courtship and marriage
- Power system dynamics and stability lecture notes
- Project planning and management lecture notes ppt
- Intermascular septa
- Intro paragraph layout