Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO...
-
Upload
dominick-walsh -
Category
Documents
-
view
223 -
download
2
Transcript of Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO...
![Page 1: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/1.jpg)
Unified ModelingUnified ModelingLanguageLanguage
![Page 2: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/2.jpg)
Object Oriented MethodsObject Oriented Methods
► What are object-oriented (OO) methods?What are object-oriented (OO) methods? OO methods provide a set of techniques for OO methods provide a set of techniques for
analyzing, decomposing, and modularizing analyzing, decomposing, and modularizing software system architecturessoftware system architectures
In general, OO methods are characterized by In general, OO methods are characterized by structuring the system architecture on the basis of structuring the system architecture on the basis of its objects (and classes of objects) rather than the its objects (and classes of objects) rather than the actions it performsactions it performs
► What are the benefits of OO?What are the benefits of OO? OO enhances key software quality factors of a OO enhances key software quality factors of a
system and its constituent componentssystem and its constituent components► What is the rationale for using OO?What is the rationale for using OO?
In general, systems evolve and functionality In general, systems evolve and functionality changes, but objects and classes tend to remain changes, but objects and classes tend to remain stable over timestable over time
![Page 3: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/3.jpg)
UMLUML
► Is a language. It is not simply a notation for drawing diagrams, but a complete language for capturing knowledge (semantics) about a subject and expressing knowledge (syntax) regarding the subject for the purpose of communication.
► It is the result of unifying the information systems and technology industry’s best engineering practices (principals, techniques, methods and tools).
![Page 4: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/4.jpg)
UML (contd)UML (contd)
► Unified because it … Combines main preceding OO methods (Booch by
Grady Booch, OMT by Jim Rumbaugh and OOSE by Ivar Jacobson)
► Modeling because it is … Primarily used for visually modeling systems.
Many system views are supported by appropriate models
► Language because … It offers a syntax through which to express
modelled knowledge
![Page 5: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/5.jpg)
UML ElementsUML Elements
► Functional requirements viewFunctional requirements view Emphasizes the functional requirements of the Emphasizes the functional requirements of the
system from the user's point of view.system from the user's point of view.
► Static structural viewStatic structural view Emphasizes the static structure of the system Emphasizes the static structure of the system
using objects, attributes, operations, and using objects, attributes, operations, and relationships.relationships.
► Dynamic behavior viewDynamic behavior view Emphasizes the dynamic behavior of the system Emphasizes the dynamic behavior of the system
by showing collaborations among objects and by showing collaborations among objects and changes to the internal states of objects.changes to the internal states of objects.
![Page 6: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/6.jpg)
UML (again)UML (again)
► What it is • A language for capturing and expressing
knowledge • A technology for visual development modeling • A set of well-founded guidelines • A milestone generator • A popular (therefore supported) technology
► What it is not • A visual programming language or environment • A database specification tool • A development process (i.e. an SDLC) • A silver bullet • A quality guarantee
![Page 7: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/7.jpg)
UML DiagramsUML Diagrams► Functional Requirements
Use-Case (relationship between actors and system functions)
► Structure Class (static class structure) Object (same as class - only using class instances – i.e.
objects) Package (logical grouping of classes) Component (code structure) Deployment/Implementation (mapping of software to
hardware)
► Behavior State (states of objects in a particular class) Sequence (Object message passing structure) Collaboration/Communication (same as sequence but also
shows context - i.e. objects and their relationships) Activity (sequential flow of activities i.e. action states)
![Page 8: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/8.jpg)
Main 4 UML Diagrams
► Use-Case► Class► Sequence► State/Statechart
![Page 9: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/9.jpg)
![Page 10: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/10.jpg)
Use Case Diagram
► Components Actor Goals Relationships
► Use-case Relationship Uses – Consumes Generalization - Specialization Extends - Inherits
![Page 11: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/11.jpg)
![Page 12: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/12.jpg)
![Page 13: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/13.jpg)
![Page 14: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/14.jpg)
![Page 15: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/15.jpg)
![Page 16: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/16.jpg)
![Page 17: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/17.jpg)
![Page 18: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/18.jpg)
![Page 19: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/19.jpg)
Structural Concepts
► Actor► Attribute► Class► Components
Include files Header files Link libraries Modules Executables
► Interface► Object► Package
![Page 20: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/20.jpg)
Structural Concepts
► Activity► Event► Message► Method► Operation► State► Use case (goal)
![Page 21: Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods? OO methods provide a set of techniques for analyzing, decomposing,](https://reader037.fdocuments.us/reader037/viewer/2022110103/56649f2f5503460f94c497df/html5/thumbnails/21.jpg)
Relationship Concepts
► Aggregation► Association► Composition► Dependency► Generalization► Multiplicity► Navigability► Realization► Stereotype