Software Architecture & Design Pattern

Slides:



Advertisements
Similar presentations
Unified Modeling Language
Advertisements

2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
UML – Class Diagrams.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
Unified Modeling Language
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Unified Modeling Language, Version 2.0
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
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,
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
TAL7011 – Lecture 4 UML for Architecture Modeling.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
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 Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Software Engineering Lecture 8 Object-Oriented Analysis.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
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.
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
CompSci 280 S Introduction to Software Development
Introduction to UML.
Appendix 3 Object-Oriented Analysis and Design
UML Diagrams By Daniel Damaris Novarianto S..
The Movement To Objects
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
UML PPt by: Hong Qing Yu.
The Unified Modeling Language
IMPORTANT NOTICE TO STUDENTS:
Unified Modeling Language
University of Houston-Clear Lake
Introduction to UML.
Introduction to the Unified Modeling Language
Chapter 20 Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Software Design Lecture : 15.
Software Design Lecture : 14.
Copyright 2007 Oxford Consulting, Ltd
Sample Test Questions Please identify the use cases of the system that cover all the behaviors described in the system specification. Please identify.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Appendix A Object-Oriented Analysis and Design
Chapter 4 System Modeling.
Appendix A Object-Oriented Analysis and Design
Uml diagrams In ooad.
Introduction to OOAD and the UML
Presentation transcript:

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

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 - abstraction of object - behavior of object - description of interface Dynamic Model Functional Model 2

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

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

Software Architecture & Design Pattern OO Models System Level Class Level Object Model Display entities in system requirements statement, system drawing, system block diagram, system diagram, system specification Display entities in class diagram and class specifications Dynamic Model Display interactions and states in system interaction diagram, system interaction scenario, and system state diagram Display interactions and states in object interaction diagrams, object interaction scenario, and state diagrams Functional Model Display transformations in system operation table and system operation specification Display transformations in operation tables and specification 5

Software Architecture & Design Pattern Object Model Types OODBTG Reference Model OMG Core Object Model COM/DCOM EXPRESS Open Distributed Processing (ISO/IEC JTC1/SC21/WG7) Management Information Model (ISO/IEC JTC1/SC21/WG4) SQL3 (H2) C++ (J16) OO COBOL (J4) Smalltalk (J20) Eiffel Emerald 6

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

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

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

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

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

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

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

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

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

Software Architecture & Design Pattern Relationship Association Generalization Aggregation Interaction 16

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

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

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

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

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

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

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

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

Software Architecture & Design Pattern 25

Software Architecture & Design Pattern Questions ? 26