L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.

Slides:



Advertisements
Similar presentations
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Advertisements

Object-Oriented Analysis and Design
UML Unified Modeling Language Basic Concepts. UML What is the UML*? UML stands for Unified Modeling Language The UML combines the best of the best from:
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
L3-5c-S1 Object Diagrams © M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department,
UML Overview Unified Modeling Language Basic Concepts.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
L16-S1 Object Diagrams 2003 SJSU -- CmpE Software Patterns Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering.
L28-S1 Interaction Diagrams 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room.
L3-5d-S1 Class Diagrams © M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room.
© M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering.
L26-S1 Interactions 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Unified Modeling (Part I) Overview of UML & Modeling
Rational Worldwide Software Symposium
© M.E. Fayad SJSU -- CmpE Database Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering San José.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
L5-S1 Class Diagrams 2003 SJSU -- CmpE Software Patterns Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering San.
© Copyright Eliyahu Brutman Programming Techniques Course.
L8-S1 CRC Cards 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
© M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Software Architecture and the UML Grady Booch. 2 Dimensions of software complexity Higher technical complexity - Embedded, real-time, distributed, fault-tolerant.
1 Introduction to UML DIAGRAMS & CLASS DIAGRAM Chapter 7,8 主講人 : 許勝杰
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Software Architecture and the UML Grady Booch. 2 Dimensions of software complexity Higher technical complexity - Embedded, real-time, distributed, fault-tolerant.
Unified Modeling Language User Guide Section 1—Getting Started.
L1-S1Introduction 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Object Oriented Analysis and Design using the UML CIS 520 Advanced Object-Oriented Design.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
L4-S1 Modeling Concepts 2003 SJSU -- CMPE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Unified Modeling Language
1 Introduction to UML. 2 What is UML? UML is an acronym for Unified Modeling Language. Unified –Combines the best from existing object- oriented software.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
1 The Unified Modeling Language. 2 The Unified Modeling Language (UML) is a standard language for writing software blueprints. The UML may be used to.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Introduction to OOAD and the UML
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Software Engineering Lecture 8 Object-Oriented Analysis.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
UML Diagrams for Caradon developers Daniel DG Moth Core Development Group, Research Student University of Brighton, MSc Object Oriented Software Technology.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Diagrams. Typically, we view the static parts of a system using one of the four following diagrams. 1. Class diagram 2. Object diagram 3. Component diagram.
L3-S1Analysis Heuristics 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
M. ARIFUR RAHMAN OBJECT ORIENTED ANALYSIS & DESIGN 1.0 System Modeling.
Object-Oriented Analysis & Design
Course Outcomes of Object Oriented Modeling Design (17630,C604)
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
UML: Unified modeling language
Rational Worldwide Software Symposium
Component-Based & Software Reuse
The Unified Modeling Language
Unified Modeling Language
Rational Worldwide Software Symposium
Rational Worldwide Software Symposium
Uml diagrams In ooad.
Presentation transcript:

L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College of Engineering San José State University One Washington Square San José, CA

L6-S2 UML Overview 2003 SJSU – CmpE --- M.E. Fayad 2 Lesson 6: Unified Modeling Language (UML) Overview

L6-S3 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Lesson Objectives 3 The value of the UML Contribution to the UML Building Blocks of the UML Diagrams in the UML

L6-S4 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Is an open standard Supports the entire software development lifecycle – Debate Supports diverse applications areas Is based on experience and needs of the user community Supported by many tools 4 The Value of the UML

L6-S5 UML Overview 2003 SJSU – CmpE --- M.E. Fayad 5 Contributions to the UML Guess who?

L6-S6 UML Overview 2003 SJSU – CmpE --- M.E. Fayad The UML is a language for –visualizing –specifying –constructing –documenting the artifacts of a software-intensive system 6 Overview of the UML

L6-S7 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Things Relationships Diagrams 7 Building Blocks of the UML

L6-S8 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Structural things –mostly static parts of a model class, interface, collaboration, use case, active class, component, node Behavioral things –dynamic parts of UML models interaction, state machine Grouping things –organizational parts of UML package, subsystem Other things –explanatory parts of UML note Things in the UML

L6-S9 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Dependency –a semantic relationship between two things in which a change to one thing (the independent thing) may affect the semantics of the other thing (the dependent thing) Association –a structural relationship that describes a set of links Relationships (1) 9

L6-S10 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Generalization –a specialization/generalization relationship in which the child shares the structure and the behavior of the parent Realization –a realization is a relationship in which one classifier, such as an interface or a use case, specifies a "contract" that another classifier, such as a class or a collaboration, guarantees to carry out 10 Relationships (2)

L6-S11 UML Overview 2003 SJSU – CmpE --- M.E. Fayad 11 Diagrams in UML Use Case Diagrams Use Case Diagrams Use Case Diagrams Scenario Diagrams Scenario Diagrams Collaboration Diagrams State Diagrams State Diagrams Component Diagrams Component Diagrams Component Diagrams Deployment Diagrams State Diagrams State Diagrams Object Diagrams Scenario Diagrams Scenario Diagrams Statechart Diagrams Use Case Diagrams Use Case Diagrams Sequence Diagrams State Diagrams State Diagrams Class Diagrams Activity Diagrams Models +

L6-S12 UML Overview 2003 SJSU – CmpE --- M.E. Fayad A diagram is a view into a model –Presented from the aspect of a particular stakeholder –Provides a partial representation of the system –Is semantically consistent with other views In the UML, there are nine standard diagrams –Static views: use case, class, object, component, deployment –Dynamic views: sequence, collaboration, statechart, activity 12 Diagrams

L6-S13 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Shows a set of use cases and actors and their relationships 13 Use Case Diagram

L6-S14 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures system functionality as seen by users Built in early stages of development Purpose –Specify the context of a system –Capture the requirements of a system –Validate a system’s architecture –Drive implementation and generate test cases Developed by analysts and domain experts 14 Use Case Diagram

L6-S15 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Shows a set of classes, interfaces, and collaborations and their relationships 15 Class Diagram (1)

L6-S16 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures the vocabulary of a system Addresses the static design view of a system Built and refined throughout development Purpose –Name and model concepts in the system –Specify collaborations –Specify logical database schemas Developed by analysts, designers, and implementers 16 Class Diagram (2)

L6-S17 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Shows a set of objects and their relationships 17 Object Diagram (1)

L6-S18 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Represents static snapshots of instances of the things found in class diagrams Addresses the static design view or static process view of a system Built during analysis and design Purpose –Illustrate data/object structures –Specify snapshots Developed by analysts, designers, and implementers 18 Object Diagram (2)

L6-S19 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Shows the organizations and dependencies among a set of components 19 Component Diagram (1)

L6-S20 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Addresses the static implementation view of a system Built as part of architectural specification Purpose –Organize source code –Construct an executable release –Specify a physical database Developed by architects and programmers 20 Component Diagram (2)

L6-S21 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Shows the configuration of run-time processing nodes and the components that live on them 21 Deployment Diagram (1)

L6-S22 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures the topology of a system’s hardware Built as part of architectural specification Purpose –Specify the distribution of components –Identify performance bottlenecks Developed by architects, networking engineers, and system engineers 22 Deployment Diagram (2)

L6-S23 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Shows the flow from activity to activity within a system 23 Activity Diagram (1)

L6-S24 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures dynamic behavior (activity- oriented) A special kind of statechart diagram Purpose –Model the function of a system –Model the flow of control among objects –Model business workflows –Model operations 24 Activity Diagram (2)

L6-S25 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Emphasizes the time-ordering of messages 25 Sequence Diagram (1)

L6-S26 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures dynamic behavior (time- oriented) A kind of interaction diagram Purpose –Model flow of control –Illustrate typical scenarios 26 Sequence Diagram (2)

L6-S27 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Emphasizes the structural organization of the objects that send and receive messages 27 Collaboration Diagram (1)

L6-S28 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures dynamic behavior (message- oriented) A kind of interaction diagram Purpose –Model flow of control –Illustrate coordination of object structure and control 28 Collaboration Diagram (1)

L6-S29 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Shows a state machine, consisting of states, transitions, events, and activities 29 Statechart Diagram (1)

L6-S30 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Captures dynamic behavior (event- oriented) Purpose –Model object lifecycle –Model reactive objects (user interfaces, devices, etc.) 30 Statechart Diagram (2)

L6-S31 UML Overview 2003 SJSU – CmpE --- M.E. Fayad 31 Architecture and the UML Organization Package, subsystem Dynamics Interaction State machine Design ViewImplementation View Process View Components Classes, interfaces, collaborations Active classes Deployment View Nodes Use Case View Use cases

L6-S32 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Use-case driven –use cases are used as a primary artifact for establishing the desired behavior of the system, for verifying and validating the system’s architecture, for testing, and for communicating among the stakeholders of the project Architecture-centric –a system’s architecture is used as a primary artifact for conceptualizing, constructing, managing, and evolving the system under development 32 UML Software Development Life Cycle (1)

L6-S33 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Iterative –one that involves managing a stream of executable releases Incremental –one that involves the continuous integration of the system’s architecture to produce these releases 33 UML Software Development Life Cycle (2)

L6-S34 UML Overview 2003 SJSU – CmpE --- M.E. Fayad  Inception Define the scope of the project and develop business case  Elaboration Plan project, specify features, and baseline the architecture  Construction Build the product  Transition Transition the product to its users 34 Lifecycle Phases time InceptionElaborationConstruction Transition time

L6-S35 UML Overview 2003 SJSU – CmpE --- M.E. Fayad T/F UML is a model for developing software. A use case diagram shows a set of use cases, actors, and their relationships. Use case diagrams are dynamic models. An interaction diagram shows the flow of activities within the system. Sequence diagrams emphasizes the time-ordering of the messages. 35 Discussion Questions

L6-S36 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Use Case Models Use Case Diagrams Use Case Templates Use Cases 36 Questions for the Next Lecture

L6-S37 UML Overview 2003 SJSU – CmpE --- M.E. Fayad Task 1: Problem Statement for team projects are needed (see sample problems on OOPSLA – DesignFest). This is due on the third week of the semester. Task 2: Identify the team members of your team. Select a team name and me, the team name, team’s members’ names, their s, phone numbers -- Immediately. Task 3: Think about extra assignments and writing essays. me if you like to start right away. Please note that problem statements must be submitted electronically as MS Word format. 37 Tasks for Next Lecture