1 / 26

UML Basics: A Comprehensive Guide for Software Development Methodology

Dive into Unified Modeling Language (UML) concepts, diagrams, and relationships for effective software design and architecture. Learn about object modeling, dynamic models, and UML elements. Perfect for architects, analysts, and developers.

bcolbert
Download Presentation

UML Basics: A Comprehensive Guide for Software Development Methodology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Architecture & Design Pattern • Lecture 4 Software Development Methodology • Object Model • OO Analysis • OO Modeling/UML Basics • Software Development Process 1

  2. Software Architecture & Design Pattern • Object Model • The collection of concepts used to describe objects in a particular object-oriented language, specification, or analysis and design methodology • Object Model • - abstraction of object • - behavior of object • - description of interface • Dynamic Model • Functional Model 2

  3. Software Architecture & Design Pattern • Object Properties/Attributes • Attributes • Operations/methods(synch vs. asynch) • Messages • Specification of behavioral semantics • State • Object lifetime • Behavior/state grouping • Communication model • Events 3

  4. Software Architecture & Design Pattern Entity/Object • Java Object Model • Packages • Classes • Interfaces • Dynamic Loading 4

  5. Software Architecture & Design Pattern 5

  6. Software Architecture & Design Pattern 6

  7. Software Architecture & Design Pattern System Level Dynamic Model - system events and states 7

  8. Software Architecture & Design Pattern Class Level Dynamic Model - interaction, messaging and states among objects 8

  9. Software Architecture & Design Pattern Object Functional Model Describes the operations, services, input/output, and dynamics of an object in a system. 9

  10. Software Architecture & Design Pattern Transformation of Operations of a Functional Model 10

  11. Software Architecture & Design Pattern Classes and Relationships - Object Model Objects, Messages and States - Dynamic Model 11

  12. Software Architecture & Design Pattern • OO Modeling/UML Basics • UML elements • UML relationships • UML model/diagram 12

  13. Software Architecture & Design Pattern • UML (Unified Modeling Language) • "The Unified Modeling Language (UML) is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system.” • --- OMG definition 13

  14. Software Architecture & Design Pattern • UML Basics • UML consists of • - elements • - relationship • - diagrams • UML models • - Use Case model • - Class (Logic) model • - Component (Physical) model • - Interaction/Communication model • - Deployment model 14

  15. Software Architecture & Design Pattern • UML Elements • Use Case • class • interface • component • node • message • state • package • note 15

  16. Software Architecture & Design Pattern • Relationship • Association • Generalization • Aggregation • Interaction 16

  17. Software Architecture & Design Pattern Association A link between objects that is a general mapping between the classes. An association relationship may be described as "has a", "associated with", or "knows about". 17

  18. Software Architecture & Design Pattern Aggregation An association with "part of" semantics. An aggregation relationship may be described as "part of" or "bill of materials" between an assembly (whole) object and part objects. 18

  19. Software Architecture & Design Pattern Generalization Indicates a commonality between a superclass and subclasses. It indicates that the superclass and subclass have common attributes, operations, and relationships. It is a "type of" relationship. 19

  20. Software Architecture & Design Pattern Interaction (events or messages) A call or communication between objects. An interaction relationship may be described as "calls", "interacts", or "communicates with". 20

  21. Software Architecture & Design Pattern System event- a stimulus for a system Object event- a stimulus that may result in transition to a new state for a state-based object Message - a stimulus from one object to another object, which invokes an operation 21

  22. Software Architecture & Design Pattern • UML Diagrams • Structural Modeling • class diagram • component diagram • package diagram • deployment diagram • Behavioral Modeling • Use Case diagram • sequence diagram • interaction diagram • state diagram 22

  23. Software Architecture & Design Pattern • Use Case Model • A Use Case represents a discrete unit of • interaction between a user (human or machine • or other system) and the system. • Each Use Case describes the functionality to • be built in the proposed system. 23

  24. Software Architecture & Design Pattern • Use Case • A technique for capturing functional requirements • of systems. Each use case provides one or more • scenarios that convey how the system should • interact with the users called actors to achieve a • specific business goal or function • Three Key Elements in Use Case • Actor • System • Scenario • Goal 24

  25. Software Architecture & Design Pattern 25

  26. Software Architecture & Design Pattern Questions ? 26

More Related