Software Systems Design – 4 Class Diagrams (dynamic)

Slides:



Advertisements
Similar presentations
Software Engineering-II
Advertisements

Agate Ltd Case Study-Requirments Analysis
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
Interaction Diagrams Activity Diagram State Machine Diagram
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 5: Restaurant.
L3-5d-S1 Class Diagrams © M.E. Fayad SJSU -- CmpE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room.
Requirements Analysis Classes & Associations b510.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis.
HCI Designing Interface Objects. The presentation layer How prototyping can be used to try out different interface designs How to model boundary classes.
COMP1007 Intro to Systems Requirements © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Intro to Systems Requirements Lecture 4 Identifying.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 1 Introduction to Object-Oriented Programming and Software Development.
Requirements Analysis 2 What objects collaborate to achieve the goal of a use case?
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 1 Introduction to Object-Oriented Programming and Software Development.
Chapter 6 Functional Modeling
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
03/12/2001 © Bennett, McRobb and Farmer Use Case Diagrams Based on Chapter 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
Use Case Analysis – continued
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 1 Introduction to Object-Oriented Programming and Software Development.
An Introduction to Rational Rose Real-Time
LECTURE 5 SEQUENCE DIAGRAM 1. INTRODUCTION – SYSTEM SEQUENCE DIAGRAM A system sequence diagram is a fast and easily created artifact that illustrates.
System Analysis Overview Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach.
Systems Analysis and Design in a Changing World, Fifth Edition
Chapter 6 The Traditional Approach to Requirements
Systems Analysis and Design in a Changing World, Fifth Edition
Section 02Systems Documentation1 02 Systems Documentation And Franchise Colleges By MANSHA NAWAZ.
CSE301 University of Sunderland Harry R Erwin, PhD
Data Flow Diagrams.
CONCEPTS OF OBJECT ORIENTED PROGRAMMING. Topics To Be Discussed………………………. Objects Classes Data Abstraction and Encapsulation Inheritance Polymorphism.
An Introduction to Software Architecture
The Unified Modeling Language Part I Omar Meqdadi SE 2730 Lecture 6 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Message Analysis Table.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Approaching a Problem Where do we start? How do we proceed?
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 02. Objects,
Kyung Hee University System Functional Model OOSD 담당조교 석사과정 이정환.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
Collaboration Diagrams CSIS3600. What is a Collaboration Diagram Collaboration diagrams illustrate interactions between objects The collaboration diagram.
♦ Use Case Model  Detailled use case - Important  Use case diagram- Refactoring Use case diagram  > 1 Last Lectures.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour UML Sequence Diagram.
Lecture 1: Introduction to Software Engineering WXGE6103 Software Engineering Process and Practice Object-oriented Design.
© 2010 Bennett, McRobb and Farmer1 Requirements Analysis 2: Realizing Use Cases Based on Chapter 7 of Bennett, McRobb and Farmer: Object Oriented Systems.
How to start to write a scientific paper Ashgan Mohamed, Ph.D Assistant Professor Cairo University.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Design Model Lecture p6 T120B pavasario sem.
CS251 – Software Engineering Lecture 9: Software Design Slides by Mohammad El-Ramly, PhD
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
UML - Development Process 1 Software Development Process Using UML.
Fusion Design Overview Object Interaction Graph Visibility Graph Class Descriptions Inheritance Graphs Fusion: Design The overall goal of Design is to.
Communication Diagrams Lecture 8. Introduction  Interaction Diagrams are used to model system dynamics  How do objects change state?  How do objects.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
Slide 1 Project team 1. gathers requirements from the users (Ch. 4) 2. models the overall business process using __________ 3. identifies _________ using.
Software Systems Design – 5 Sequence Diagrams Klaas Sikkel Software SystemsDesign - 51.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
COM 117 Introduction to Application Building Introduction to the module Learning outcomes Assessment Lecture on DFDs Practical activity Tutorial activity.
UML Diagrams: Class Diagrams The Static Analysis Model
Object-Oriented Analysis and Design
Modelling Concepts Based on Chapter 5 Bennett, McRobb and Farmer
Introduction to Unified Modeling Language (UML)
Object-Orientated Analysis, Design and Programming
Unified Modeling Language
IMAT5205 Systems Analysis and Design
Software Design Lecture : 15.
Software Design Lecture : 14.
Software Analysis.
Use Case Analysis – continued
Presentation transcript:

Software Systems Design – 4 Class Diagrams (dynamic) Klaas Sikkel Software Systems Design - 4

Today’s topic Software Systems Design - 4

Contents From use cases to class diagrams “Analysis class diagram” Collaborations Communication diagram Use case class diagram “Analysis class diagram” Integration of use case class diagrams Further analysis Software Systems Design - 4

Positioning in the design thread Part 4 (this lecture) gives a more structured approach to deriving a class diagram. However, it’s hard to apply if have no experience with class diagrams Therefore we did Part 3 (static class diagrams) first, so that you have some idea about the entity classed that could be involved. Software Systems Design - 4

Agate Ltd. (Case A in Bennett et al.) Agate Ltd. runs publicity campaigns. For one client there can be multiple campaings Each campaign consists of a number of different clients Software Systems Design - 4

Use case Adding a new advert to a campaign Bennett Fig. 7.13 Software Systems Design - 4

A Collaboration Bennett Fig. 7.15 Software Systems Design - 4

A Collaboration Boundary Control object object Entity objects Software Systems Design - 4

BCE Objects/Classes Boundary object: provides interface with the outside world Control object: implements the logic involved in realising this use case Entity object: ‘regular’ object inside the systems Software Systems Design - 4

Communication diagram (1) Bennett Fig.7.16 Software Systems Design - 4

Communication diagram (2) Bennett Fig. A3.2 Software Systems Design - 4

Corresponding class diagram (use case class diagram) Bennett Fig. A3.3 Software Systems Design - 4

Communication diagram notations (1) Standard Com.d. notation BCE notation boundary / control / entity object :Campaign Software Systems Design - 4

Communication diagram notations (2) *: loop; repeat message for all instances Sequential numbering of messages 1, 2, 3, … n Hierachical numbering of messages 3, 3.1, 3.1.1, 3.1.1.1, 3.1.1.2, 3.1.2, etc Software Systems Design - 4

BCE style with hierachical numbering Bennett Fig. A3.11 Software Systems Design - 4

Use case class diagram Bennett Fig. A3.12 Software Systems Design - 4

Other use case CDs (only entity classes) From Bennett, Figs. 7.17, A.6 Software Systems Design - 4

Combined class diagram (“Analysis class diagram”) Bennett Fig. A3.13 Software Systems Design - 4

Overview of method For relevant use cases 1.1. Get extended use case description 1.2. Design communication diagram 1.3. Derive use case class diagram Combine use case CD’s into analysis CD Improve analysis class diagram 3.1. Verify correctness (does is match the case description) 3.2. Add further details (data elements, further use cases) Software Systems Design - 4

Overview of method (contd.) 3.1. Verify correctness (does is match the case description) We will do this in the lab exercise 3.2. Add further details (data elements, further use cases) See Bennett for an example Software Systems Design - 4

Static vs. Dynamic Class diagrams Static (D-3) Abstracts from methods More detailed semantics of generalization A model of information about the real world that should be represented in the system Dynamic (D-4) Includes methods Abstracts from data types and generalization details Constructed by analysing how the system realizes various use cases Software Systems Design - 4

Exercise Service department of internetshop RedHot: handling of products that need repair If a product is broken, the customer calls the Customer Service. An employee creates a service record. The customer receives an e-mail with instructions for sending it in, and label for sending a parcel free of charge. Software Systems Design - 4

Draw comm. diagram for this use case Actor action System response 1   2 Displays list of customers 3 Selects the customer 4 Displays products purcha-sed by this customer 5 Selects product to be serviced 6 Creates service record 7 Enters problem descr. 8 Stores problem description 9 Creates customer instructions 10 Sends e-mail to customer Software Systems Design - 4