1 Advanced DataBases 12-6212 Unified Modelling Language An Introduction and Use Case Lecture 2 Susan Curtis.

Slides:



Advertisements
Similar presentations
UML an overview.
Advertisements

Introduction to UML: Structural &Use Case Modeling
Karolina Muszyńska Based on:
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
CS3773 Software Engineering Lecture 03 UML Use Cases.
Object-Oriented Analysis and Design
Object-Oriented Database SystemsCSCI 397C-16 Unified Modeling Language (UML) Prepared By: Keith Bryant 02 Nov 99 - Page 1.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Documenting Requirements using Use Case Diagrams
Unified Modeling (Part I) Overview of UML & Modeling
COMP1007 Intro to Systems Requirements © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Intro to System Requirements Lecture 2 Use-Cases.
Requirements Analysis 4. 1 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Use-Cases.
© Copyright Eliyahu Brutman Programming Techniques Course.
Itntroduction to UML, page 1 Introduction to UML.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Unified Modeling Language 7/12/2015B.Ramamurthy1 The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson, and Jim Rumbaugh.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Metadata Tools and Methods Chris Nelson Metanet Conference 2 April 2001.
Introduction to UML 1 Quick Tour Why do we model? What is the UML? Foundation elements Unifying concepts Language architecture Relation to other OMG technologies.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
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.
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,
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
TAL7011 – Lecture 4 UML for Architecture Modeling.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
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.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
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.
The Unified Modeling Language (UML)
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Systems Analysis and Design in a Changing World, Fourth Edition
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.
UML (Unified Modeling Language)
UML Review of Use case diagrams. 2 Unified Modeling Language The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson,
Chapter 3: Introducing the UML
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
Object Oriented Analysis and Design Introduction to Rational Rose.
1 BTS330 Visual Modeling. What is Visual Modeling? 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
SWE 214 (071) Introduction to UML Slide 1 Introduction to UML.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 An Overview of UML. 2 The Unified Modeling Language UML is a graphical language used by software engineers to model software systems during development.
UML (Unified Modeling Language)
Introduction to UML.
Systems Analysis and Design in a Changing World, Fourth Edition
Evolution of UML.
Introduction to Unified Modeling Language (UML)
Software Architecture & Design Pattern
Introduction to Object Oriented Analysis, Design and Unified Modeling Language (UML) Shanika Karunasekera.
The Unified Modeling Language
Introduction to UML.
Software Design Lecture : 15.
Visual Modeling Using Rational Rose
Presentation transcript:

1 Advanced DataBases Unified Modelling Language An Introduction and Use Case Lecture 2 Susan Curtis

2 Provide structure for problem solving Experiment to explore multiple solutions Furnish abstractions to manage complexity Reduce time-to-market for business problem solutions Decrease development costs Manage the risk of mistakes Why do we model?

3 UML: What is it? Rumbaugh's OMT Modeling: Rumbaugh Jacobson's Objectory: Jacobson Booch's OO Analysis and Design: Booch 1994 OMG has adopted it as standard Jacobson OOSE Use Case … … Sequence Diagrams Rumbaugh OMT Object Model State Transition Diagrams (STDs)

4 Define an easy-to-learn but semantically rich visual modeling language Unify the Booch, OMT, and Objectory modeling languages Include ideas from other modeling languages Incorporate industry best practices Address contemporary software development issues –scale, distribution, concurrency, executability, etc. Provide flexibility for applying different processes Enable model interchange and define repository interfaces UML Goals

5 UML Components Use Case Diagrams Class Diagrams State-Transition Diagrams Interaction Diagrams –Sequence –Collaboration Component Diagrams Deployment Diagrams

6 The basic building blocks of UML are: –model elements (classes, interfaces, components, use cases, etc.) –relationships (associations, generalization, dependencies, etc.) –diagrams (class diagrams, use case diagrams, interaction diagrams, etc.) Simple building blocks are used to create large, complex structures –cf. elements, bonds and molecules in chemistry –cf. components, connectors and circuit boards in hardware Building Blocks

7 Gathering Requirements “Ours is a world where people don’t know what they want and are prepared to go through hell to get it.” Scope. System Boundary User Requirements.

8 Modelling requirements with ‘Use Cases’ A use case represents an atomic transaction through the system. A use case shows how the system uses data elements. The use case is the basis for the business rules that constrain your design. A use case provides for measurement and validation of the database product.

9 Use Case Modelling in UML Staff contact client Actor Use case System boundary Communication association

10 What is use case modeling? use case model: a view of a system that emphasizes the behavior as it appears to outside users. A use case model partitions system functionality into transactions (‘use cases’) that are meaningful to users (‘actors’).

11 Use Cases Can Provide a Basis for:  Software code directory structure  Project management infrastructure  Work Allocation  Software integration and test  System test  Project Management metrics capture  Project Technical metrics capture

12 Use Case and Database Modelling Basis of: What data does the user need? How will they use the data? –Must store all the data required for the system –Shouldn’t store data not required

13 Interface Implications Each use case linked to an actor should be visible as a interface (menu) option If there is a sub-use case – particularly one that is labelled extends is a sub menu option A user should be able to see the transactions they can activate at the first menu level

14 How to do Use case modelling ActorsUse Cases  Identify Actors and Use Cases model  Construct a use case model  Document the use case normal course of events  Identify use case dependencies  Document use case alternative course of events  Find potential objects  Select objects

15 How to Identify Use Cases Use CaseA Use Case is a statement of functionality required of the software, expressed in the format ActorActionSubjectActorActionSubject An Actor represents a stimulus to the software system. The stimulus can be internal or external. An Action represents a capability of the software system. A Subject represents the item acted upon by an Action of the software system (potential object).

16

17

18 Document the Use Case Normal Course of Events Actor who initiated it High level description Description of major steps (course of events) Preconditions (state before execution) Post-condition (state after execution) Assumptions Are there any alternative course of events? Remember - this will be used for testing!

19 How to handle overlap between use cases?  Minor variants versus different use cases – a matter of judgement.  Use cases can have basic course and alternative course.  Can have a form of specialisation – one use case extends another. Can have a form of generalisation - several use cases have commonality (uses).

20 A Simple Use Case Model

21 Uses Uses implies a must do transaction

22 Extends Extends implies a may do (optional) transaction

23 Extends

24 Scenarios A scenario is a step by step description of a particular instance of a use case. It gives an example of how one specific (named) actor goes through the use case. It will detail any exceptions to the main course through the use case. Scenarios are an excellent way of validating the user requirements.

25 Using Rational Rose

26 UML Components Use Case Diagrams Class Diagrams State-Transition Diagrams Interaction Diagrams –Sequence –Collaboration Component Diagrams Deployment Diagrams

27 Object-Oriented Systems Analysis and Design using UML : Bennett, McRobb & Farmer. UML Toolkit : Eriksson & Penker. Object-Oriented Analysis : objects in plain English : Brown. Books in the library