180 likes | 375 Views
CEN 4010 Class 4 – 09/08. Introduction to Unified Modeling Language (UML). Review - Class 4 Overview of UML 1 Diagrams use case class sequence. Note: See example use case on the course home page. Overview of UML. UML is a notation unifying
E N D
CEN 4010 Class 4 – 09/08 Introduction to Unified Modeling Language (UML) Review - Class 4 Overview of UML1 Diagrams use case class sequence Note: See example use case on the course home page.
Overview of UML • UML is a notation unifying • OMT (Object Modeling Technique – Rumbaugh et al, 1991), • Booch (Booch, 1994), and • OOSE (Object-Oriented Software Engineering – Jacobson et al. 1992). • The Unified Modeling Language (UML) is a standard language for writing software blueprints. The UML maybe used to visualize, specify, construct, and document the artifacts of a software-intensive system. (Booch et al. 1999) CEN 4010 Class 4 - 09/08
Overview of UML cont • UML is appropriate for modeling systems ranging from enterprise information systems to distributed Web-based applications and even to hard real time embedded systems. • UML is very expressive. • UML is a language for: • Visualizing • Specifying • Constructing • Documenting CEN 4010 Class 4 - 09/08
Overview of UML cont • Language – provides a vocabulary and rules for combining words in the vocabulary for the purpose of communication. • Visualizing – each symbol in the UML notation represents well defined semantics. UML can represent models unambiguously. • Specifying – UML is used to specify models i.e., build models that are precise, unambiguous, and complete. CEN 4010 Class 4 - 09/08
Overview of UML cont • Constructing – UML models can be mapped to entities in programming languages (PLs) e.g., C++, Java, or Visual Basic. Note, entities in PLs can also be reverse engineered to produce UML models. • Documenting – UML can be used to document artifacts produced at each stage of the software process. For example, use case diagrams during requirements analysis. CEN 4010 Class 4 - 09/08
Overview of UML cont • Building blocks of UML • Things • Relationships • Diagrams • There are four kinds of things in UML: • Structural • Behavioral • Grouping • Annotational CEN 4010 Class 4 - 09/08
Overview of UML cont • Structural – the nouns of UML models e.g., a class. • Behavioral – dynamic parts of UML i.e., the verbs of the model representing behavior over time and space. • Grouping – the organizational parts of UML models e.g., packages, namespaces. • Annotational – explanatory parts of UML models e.g., a note. CEN 4010 Class 4 - 09/08
Overview of UML cont • There are four kinds of relationships in UML: • Dependency • Association • Generalization • Realization • Dependency (between two things) – a change to one thing may affect the semantics of the other thing. • Association – describes links i.e., a connection among objects. CEN 4010 Class 4 - 09/08
Overview of UML cont • Generalization (specialization/generalization) – objects of a specialized element (the child) are substitutable for objects of the generalized element (the parent). • Realization – a semantic relationship between classifiers, i.e., a classifier (interface) specifies a contract to be carried out by another classifier (class). CEN 4010 Class 4 - 09/08
Diagrams in UML • A diagram is a graphical representation of a set of elements, most often rendered as a connected graph of vertices (things) and arcs (relationships). • Diagrams in UML • Class • Object • Component • Deployment Static view of system CEN 4010 Class 4 - 09/08
Diagrams in UML cont • Diagrams in UML cont • Use case • Sequence • Collaboration • Statechart • Activity • A use case diagram shows a set of use cases and actors (a special kind of class) and their relationships. • Recall, a use case describes a function provided by the system from an external point of view. Dynamic view of system CEN 4010 Class 4 - 09/08
WatchUser WatchRepairPerson Example of Use Case Diagram SimpleWatch ReadTime SetTime ChangeBattery Use case diagram describing the functionality of a simple watch. CEN 4010 Class 4 - 09/08
Use Case Diagram cont. • The identification of actors and use cases results in the definition of the boundary of the system i.e., identify tasks accomplished by system and tasks accomplished by environment. • Actors are outside the boundary of the system. • Use cases are inside the boundary of the system. CEN 4010 Class 4 - 09/08
Class Diagram • A class diagram describes the system in terms of classes, attributes (data items, instance variables), operations (member functions, methods) and their relationships. • An attribute is a named property of a class that describes a range of values that instances of the property may hold. • An operation is the implementation of a service that can be requested from any object of the class to affect behavior. CEN 4010 Class 4 - 09/08
Example of Class Diagram SimpleWatch 1 1 1 1 2 2 1 1 PushButton Display Battery Time Details of the Time class Class Structure <class name> <attributes> <operations> CEN 4010 Class 4 - 09/08
Sequence Diagrams • Interaction diagrams – sequence and collaboration diagrams. • An interaction diagram shows an interaction, consisting of a set of objects and their relationships, including the messages that may be dispatched among them. • A sequence diagram is an interaction diagram that emphasizes the time-ordering of messages. CEN 4010 Class 4 - 09/08
Example of a Sequence Diagram Set_minutes use case CEN 4010 Class 4 - 09/08
UML Tools • Demonstration of Rational Rose • Use Case Stuff CEN 4010 Class 4 - 09/08