CS 501: Software Engineering Fall 2000 Lecture 13 Object-Oriented Design III.

Slides:



Advertisements
Similar presentations
UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Advertisements

A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Software Testing and Quality Assurance
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
1 CS 501 Spring 2007 CS 501: Software Engineering Lecture 16 Object Oriented Design 2.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 18 Object Oriented Design II.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 15 Object Oriented Design 1.
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 16 Object Oriented Design 2.
CS 501: Software Engineering Fall 2000 Lecture 11 Object-Oriented Design I.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Software Engineering Lecture 9 Object-Oriented Design II.
© Copyright Eliyahu Brutman Programming Techniques Course.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
CS 501: Software Engineering Fall 2000 Lecture 12 Object-Oriented Design II.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 16 Object Oriented Design 2.
CS 501: Software Engineering Fall 2000 Lecture 15 System Architecture II Distributed and Real Time Systems.
CS CS 5150 Software Engineering Lecture 16 Object Oriented Design 2.
SE-565 Software System Requirements More UML Diagrams.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 16 Object Oriented Design I.
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
1 Introduction to UML DIAGRAMS & CLASS DIAGRAM Chapter 7,8 主講人 : 許勝杰
CS CS 5150 Software Engineering Lecture 18 Program Design 3.
CS 501: Software Engineering Fall 1999 Lecture 18 (a) Project Reports (b) Object-Oriented Design III.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 11 Subsystem Design.
CS CS 5150 Software Engineering Lecture 17 Object Oriented Design 3.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
1 Interaction diagrams and activity diagrams Speaker: 陳 奕 全 Real-time and Embedded System Lab 15 August 2002.
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 17 Object Oriented Design 3.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
Software Engineering Lecture 10 UML vs. ERD.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
The Unified Modeling Language Part II Omar Meqdadi SE 2730 Lecture 9 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
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.
Software Engineering Lecture 8 Object-Oriented Analysis.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
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.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
Technical Module C Object Modeling Objects Object – a valuable resource: Money (Account Receivable) Material (Product) Machines (Delivery Truck) Personnel.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
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.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 15 System Architecture III.
System Architecture CS 560. Project Design The requirements describe the function of a system as seen by the client. The software team must design a system.
CHAPTER
UML Diagrams By Daniel Damaris Novarianto S..
Unified Modeling Language
UML Diagrams Jung Woo.
CS 501: Software Engineering Fall 1999
CS 501: Software Engineering
UML dynamic Modeling (Behavior Diagram)
Interactions.
Unified Modeling Language
CS 501: Software Engineering
IMPORTANT NOTICE TO STUDENTS:
Analysis models and design models
Review CSE116 2/21/2019 B.Ramamurthy.
CS 501: Software Engineering
Presentation transcript:

CS 501: Software Engineering Fall 2000 Lecture 13 Object-Oriented Design III

2 Administration Midterm examination Monday, October 16, 7:30 to 8:30 pm, Phillips 219 Closed book About 5 questions on the material covered in lectures

3 Comments on Presentations Presentation Standard of graphics has been high Some text too small (diagrams, screen dumps) Content Level of detail Requirements v. design The client defines the requirements Well done, but time is short. What is your critical path?

4 Modeling Dynamic Aspects of Systems Interaction diagrams: set of objects and their relationships including messages that may be dispatched among them Sequence diagrams: time ordering of messages Collaboration diagrams: structural organization of objects that send and receive messages Activity diagram: flow chart showing flow of control from activity to activity Statechart diagram: models a state machine

5 Bouncing Ball Diagrams Example: Client Servers domain name TCP connection HTTP get

6 Actions on Objects call return send create destroy returnCopy(c) okToBorrow()local status notifyReturn(b)asynchronous signal > stereotypes

7 Links Copy LibraryMember +borrowCopy() +returnCopy() 1 0..*on loan libMem:LibraryMember c:Copy borrowCopy(c) association message link class object

8 Sequence Diagram: Change in Cornell Program Cornellian :MEngStudent 1 : getName() sequence numbers added to messages :PhDStudent 1.1 : name 2: new PhDStudent(name) 3: >

9 Sequence Diagram: Borrow copy of a Book BookBorrower libMem: LibraryMember theCopy:Copy theBook:Book borrow(theCopy) okToBorrow borrow

10 Class Inheritance Diagram Object Component Container Panel Applet HelloWorld ImageObserver interface

11 Sequence Diagram:Painting Mechanism :Thread:Toolkit:ComponentPeertarget:HelloWorld run callbackLoop handleExpose paint

12 Activity Diagram: Process Modeling Release work order Assign tasksReschedule [materials not ready] [materials ready] guard expression branch

13 Activity Diagram: Parallel Activities DecompressStream audioStream video fork join start state stop state

14 State Diagram State diagram for class Book not borrowable returned() borrowable borrowed()[not last copy] borrowed()[last copy] guard expression

15 Implementation Modeling Subsystem A grouping of elements that specifies what a part of a system should do. Component (UML definition) "A distributable piece of implementation of a system, including software code (source, binary, or executable) but also including business documents, etc., in a human system." A component can be thought of as an implementation of a subsystem.

16 Component Diagram HelloWorld.class hello.java hello.hml hello.jpg executable component

17 Components and Classes agent.dll AgentAction Policy PatternSearch

18 Components and Classes agent.dll Realizes AgentAction PatternSearch Policy extended component

19 Components and Classes Classes represent logical abstractions. Components represent physical things. Components may live on nodes. Classes have attributes and operations directly. Components have operations that are reachable only through interfaces.

20 Interfaces simulation.exe render.java IRender dependency interface realization

21 Application Programming Interface (API) API is an interface that is realized by one or more components. simulation.exe IModelsILighting IRender

22 Components and Replaceability Components allow system to be assembled from binary replaceable elements. A component is physical -- bits not concepts A component can be replaced by any other component(s) that conforms to the interfaces. A component is part of a system. A component provides the realization of a set of interfaces.