Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 5 – System Modeling 1. Systems and the Real World A real-world situation or problem Thinks about Makes comparisons A system that helps to understand.

Similar presentations


Presentation on theme: "Chapter 5 – System Modeling 1. Systems and the Real World A real-world situation or problem Thinks about Makes comparisons A system that helps to understand."— Presentation transcript:

1 Chapter 5 – System Modeling 1

2 Systems and the Real World A real-world situation or problem Thinks about Makes comparisons A system that helps to understand the real-world situation Designs Systems Developer INPUTOUTPUTPROCESS FEEDBACK A computer system that is used in the real-world

3 Introduction to UML UML - Unified Modelling Language - Unified - Modelling - Language - The UML is a set of different diagram types that can be used alone or together to describe all or part of a system. -Each diagram type can be used to describe a system - from a particular perspective e.g. classes show a logical view of the system

4 What is a Diagram? Diagrams - abstract shapes that are used to represent things or actions from the real world. Diagrams follow rules or standards The standards make sure that different people will interpret the diagram in the same way … assuming they know the notation. 40° Source: OO Analysis and Design with UML, Bennett, McRobb and Farmer, 2002 U M Language

5 An Example of a UML Diagram An activity diagram of the tasks involved in producing a book. Write Chapter Review Chapter AuthorPrinterTypesetterReviewer Typeset Book Correct Proofs Reset Book Print Book [book complete] [book not complete] Revise Chapter Source: OO Analysis and Design with UML, Bennett, McRobb and Farmer, 2002. U M Language

6 What’s the point of Diagrams? On their own Diagrams provide a convenient abstraction to clarify one’s own understanding to show to others for discussion, debate and clarification to provide high level documentation Diagrams are used to communicate information to people. Diagrams should therefore be clear, simple, unambiguous. - i.e. They should follow rules! UML defines a language, i.e. the rules, for drawing diagrams of computer systems to avoid ambiguity between developers. UML rules include the flexibility to keep diagrams clear and simple by showing only what needs to be shown. U M Language

7 Example: UML reduces ambiguity Business Process Order Item Ship via 1) A Visually rich but rather ambiguous diagram. 2) UML Activity Diagram describing the same flow of events. U M Language Customer requests Items Salesman agrees sale Items prepared for shipping Items shipped by Rail Items Shipped by Road Items Received by Customer

8 UML Classes at different levels of detail 1) A Valid UML Class 2) An equally valid alternative diagram for the same UML Class. Ant - currentPosition_X: Integer - currentPosition_Y: Integer - direction: Integer - speed: Integer - haveFood: Boolean - knownFoodPosition_X: Integer - knownFoodPosition_Y: Integer + newAnt() + drawAnt() + tellFoodLocation() + askFoodLocation() + moveAnt() - goToFood() - search ForFood() - carryFoodToNest() Key Point Users of UML should work at a level of abstraction appropriate to what they are trying to communicate. U M Language

9 Examining the Detail Write Chapter Review Chapter AuthorPrinterTypesetterReviewer Typeset Book Correct Proofs Reset Book Print Book [book complete] [book not complete] Revise Chapter Plan Chapter Produce First Draft Revise Draft [satisfied] [not satisfied] Add Exercises Add References to Bibliography Write Chapter Source: OO Analysis and Design with UML, Bennett, McRobb and Farmer, 2002. U M Language

10 History of UML Unified M L Booch Method Rumbaugh’s OMT 1995 Unified Method 0.8 OOPSLA 10/95 Jacobson’s Use CasesOther Methods UML 0.9 1996 UML patterners’ input UML 1.0 OMG Submission 1/97 UML 1.1 OMG Adoption 11/97 UML 1.3 RTF Report 1999 UML 1.4 2001 UML 2.0 Major new release 2005 UML 1.5 2003

11 Domain Model: UML - Where it came from and where it’s going. IBM International Consortium Object Management Group (OMG) Microsoft Is managed by… is a member of.. Unified Modelling Language (UML) uses created Software Engineering Key to UML Is related to Is a type of Organisations are stereotyped with blue class boxes. RAD Iterative/ prototyping method Booch Method Object oriented method Rumbaugh’s OMT Jacobson’s Use Cases Development method Based on a… The Microsoft Framework bought by... created Rational Software Corporation unified process (UP) created Rational Unified Process (RUP) created SSADM “Waterfall” development Method

12 Summary – The Key Points about UML It’s a set of diagrams with notation rules. Diagrams can be used in problem solving. Visual Modelling is a term used to describe an approach to problem solving which is based on using diagrams to model a problem or proposed solution. UML is now firmly established as the de facto world standard. UML has it historical roots in Object-Oriented Systems Development BUT... as a world standard for diagram notation it’s potentially valuable to –any systems development effort –any problem solving effort suitable for visual modelling Unified Modelling Language

13 The Nine UML Diagrams Use Case Class Activity StateSequence Collaboration Object Component Deployment

14 A Quick Tour of the Nine Diagrams Requirements View Use Case Diagrams Logical (Static) View Class Diagrams Object Diagrams Dynamic View Collaboration Diagrams Sequence Diagrams State Diagrams Activity Diagrams Physical (Static) View Component Diagrams Deployment Diagrams

15 Use Case Diagrams These diagrams show the users and what functions the system must provide for them. The functions are described as “transactions of value”. Use Case Class Activity StateSequence Collaboration Object Component Deployment Sales Coordinator Sales Manager Review Sales Performance Add a Customer Update Customer Details Take a Customer Booking Review Staff Performance Booking Sales System

16 Class Diagrams These diagrams present the static (logical) structure of the system. They are the core of the UML notation and of an object-oriented design. Use Case Class Activity StateSequence Collaboration Object Component Deployment Customer Corporate Customer Customer Contact Event Booking Item required for Booking Internal Customer Room Venue Stock Items

17 Object Diagrams An Example of Object Diagram Use Case Class Activity StateSequence Collaboration Object Component Deployment Basically the same as a Class diagram but showing single Object Instances and their relationships rather than Classes.

18 Collaboration Diagrams Note that these are Object Diagrams with added message arrows to show the messages. These diagrams show the sequence of message sent between collaborating objects for a particular task. The diagrams highlight the relationships between the collaborating objects. Note that in UML 2.0 collaboration diagrams have been renamed Communication Diagrams Use Case Class Activity StateSequence Collaboration Object Component Deployment :Customer :Customer Contact Sales Coordinator 1. Add Customer() 2. Add Contact() 3. Confirm Details()

19 Sequence Diagrams These diagrams show the sequence of message sent between collaborating objects for a particular task. They highlight the flow of control between the objects. Use Case Class Activity StateSequence Collaboration Object Component Deployment Add Customer() Add Contact() Confirm Details() :Customer :Customer Contact Sales Coordinator

20 Notation of Interaction Diagrams (Sequence and Collaboration Diagrams) Some Computer Aided Software Engineering (CASE) tools allow you to generate collaboration diagrams from sequence diagrams (and vice versa). The diagrams show the same information but using different notation. Add Customer() Add Contact() Confirm Details() :Customer :Customer Contact Sales Coordinator :Customer :Customer Contact Sales Coordinator 1. Add Customer() 2. Add Contact() 3. Confirm Details() Messages are numbered Messages are arranged vertically over time

21 State Diagrams A Statechart, (or state, or state transition diagram) illustrates the states an object can be in and the transitions which move the object between these states. Guard Conditions using [square brackets] determine which transitions are possible. Use Case Class Activity StateSequence Collaboration Object Component Deployment Provisional Confirmed Complete Invoiced Cancelled [Deposit received] [Cancelled]

22 Activity Diagrams These diagrams describe the flow of activities or tasks. They are basically just flow charts! They have - decision points - synchronisation bars The synchronisation bars show activities that can happen in either order or even at the same time. In UML 2.0 the syntax for activities has been changed to the same syntax as states, i.e. a box with rounded corners. Use Case Class Activity StateSequence Collaboration Object Component Deployment [No] Check availability Get a quote Make a Provisional Booking Pay Deposit Attend Event Pay Balance Cancel? [Yes]

23 Notation of Transition Diagrams (Activity and State Diagrams) Start state black circle Decision points diamond Guard conditions in square brackets Final state black circle in white circle [campaign to add] [no campaign to add] Add a New Client Assign Staff Contact Add New Campaign

24 Component Diagrams Component diagrams illustrate the physical structure of the system in terms of its Software. They show the software components and the dependencies between them. Use Case Class Activity StateSequence Collaboration Object Component Deployment Salesperson Diary & Contacts Customer Database Event Booking User Interface Events System Salesperson Diary & Contacts In UML 2.0 these diagrams have been renamed Composite Structure diagrams. The syntax for component has been changed to a rectangle with the component symbol in the top right hand corner – like this:

25 Deployment Diagrams Deployment diagrams illustrate the physical architecture of the system in terms of the Hardware it is deployed on and the communication links between hardware nodes. Use Case Class Activity StateSequence Collaboration Object Component Deployment :Salesperson’s PC :Booking Server >

26 Implementation Diagrams - Component and Deployment Diagrams together Here’s an example where a Deployment Diagram shows the physical deployment of the implementation Components. It shows how and where the components will be implemented, including the dependencies between components that are physically on different nodes. :Salesperson’s PC :Booking Server > Customer Database Salesperson Diary & Contacts Event Booking User Interface Events System

27 The Nine UML Diagrams Use Case Class Activity StateSequence Collaboration Object Component Deployment

28 Seminar CASE Tools (Computer Aided Software Engineering).


Download ppt "Chapter 5 – System Modeling 1. Systems and the Real World A real-world situation or problem Thinks about Makes comparisons A system that helps to understand."

Similar presentations


Ads by Google