Use-Case Analysis. Architecture Oriented Analysis. R. Kuehl/J. Scott Hawker p. 1 R I T. Software Engineering

Size: px
Start display at page:

Download "Use-Case Analysis. Architecture Oriented Analysis. R. Kuehl/J. Scott Hawker p. 1 R I T. Software Engineering"

Transcription

1 Use-Case Analysis Architecture Oriented Analysis R. Kuehl/J. Scott Hawker p. 1

2 Notes The slides are based on UML use-case analysis techniques This is an introduction detailed techniques and notation will not be covered (see UML references) Learning the general use case analysis thought process is more important than any specific technique R. Kuehl/J. Scott Hawker p. 2

3 Use-Case Analysis - Steps Supplement the Use-Case Description For each use-case Find classes from use-case behavior Distribute use-case behavior to classes Model analysis class interactions in interaction diagrams For each resulting analysis class Describe responsibilities and attributes Describe associations Unify analysis classes Review checkpoints R. Kuehl/J. Scott Hawker p. 3

4 Step: Supplement the Use-Case Description Use-Case Specification The system displays a list of course offerings. Supplemented Use-Case Specification The system retrieves a list of course offerings from the course catalog legacy database. The system displays the course offerings. Capture additional information needed to understand the required internal behavior of the system Note: more detail may expose some solution structure R. Kuehl/J. Scott Hawker p. 4

5 Step: Find Classes from Use-Case Behavior The complete behavior of a use-case must be allocated to analysis classes Use-Case Specification I.e., functional decomposition R. Kuehl/J. Scott Hawker p. 5

6 Stereotypes as Analysis Classes Separation of concerns - system interface from application logic/control flow from persistent information as specialized class objects (in UML) Stereotype classes: Boundary Boundary classes: system boundary Interaction between the system and its actors Entity Control Entity classes: system information and associated behavior Control classes: system behavior coordination and sequencing Use-case flow of events R. Kuehl/J. Scott Hawker p. 6

7 Stereotype Class Collaboration Pattern Use Case <<actor>> Boundary Control Boundary External System Actor Boundary Entity Entity R. Kuehl/J. Scott Hawker p. 7

8 Why Stereotype Analysis Classes? Class stereotypes help Clarify and separate class roles - encapsulate Separate things that tend to change independently - modularize Class stereotypes are conceptually straightforward to begin analysis Supplement with non stereotype classes in future elaborations as needed Stereotype classes tend to go away in design Design pattern analogy model-view-controller R. Kuehl/J. Scott Hawker p. 8

9 Alternate Visualizations of the Same Thing <<boundary>> Boundary Boundary Boundary <<control>> Control Control Control <<entity>> Entity Entity Entity UML allows multiple graphical representations ( syntax ) of the same conceptual (semantic) model element R. Kuehl/J. Scott Hawker p. 9

10 Boundary Classes Model interaction between the system and its external environment Human user interaction External system interfaces External device interfaces Transform interchanged information and events Isolate internal and external system changes Changes to a communication protocol or GUI are isolated R. Kuehl/J. Scott Hawker p. 10

11 Finding Boundary Classes Student RegisterForCoursesForm Register For Courses <<actor>> Course catalog system CourseCatalogSystem Start with one boundary class per actor/use-case pair Consider all external information and events Concentrate on the responsibilities (NOT the details) User interface classes What information is presented and collected (NOT the GUI) System and device interface classes What protocols must be defined NOT how they are implemented R. Kuehl/J. Scott Hawker p. 11

12 Entity Classes Entity objects represent the information and resources managed inside the system Data (usually persistent) Structure (relationships) within and between objects Behavior associated with the information - passive Typically not specific to one use-case; examples: Banking: Account, Loan Actor related information: Student, Customer A technique: study the nouns Glossary, business/domain model, use-case flow of events, key abstractions (from architectural analysis) R. Kuehl/J. Scott Hawker p. 12

13 Key Abstractions Identify Key Objects in the Domain (e.g., Noun/Verb Analysis ) Student Professor Schedule Example: Wylie College Course Registration System CourseOffering Course CourseCatalog R. Kuehl/J. Scott Hawker p. 13

14 Control Classes Student Register For Courses <<actor>> Course catalog system Control classes model work flow Directs, coordinates tasks or jobs Typically, one control class per use case Delegates actor-visible behavior to the entity classes Orchestrate and Delegate Behavior Examples of control class responsibilities RegistrationController Decision logic (control the flow of events; state-dependent flows) Exception handling Computational algorithms Resource coordination Transaction management R. Kuehl/J. Scott Hawker p. 14

15 Analysis Classes for Register for Courses Student Register For Courses External system Course catalog system Requirements (Use-Case) Model Analysis Model View of Participating Classes in Use-Case Realization Register for Courses Student RegisterForCoursesForm RegistrationController External system CourseCatalogSystem Course catalog system Student Schedule CourseOffering R. Kuehl/J. Scott Hawker p. 15

16 Step: Distribute Use-Case Behavior to Classes For each use-case flow of events (primary and exceptions) Identify participating analysis classes Allocate use-case responsibilities to those analysis classes Use analysis class stereotypes as a starting point and guide Boundary classes Entity classes Control classes Add supporting classes as necessary to expand and clarify model R. Kuehl/J. Scott Hawker p. 16

17 Guidelines: Allocating Responsibilities to Classes (continued) Who has the information needed to perform the responsibility? If one class, put the responsibility with the information If multiple classes, one class to model information with relationships to classes needed to perform the responsibility Cohesion and coupling rules Keep the client-supplier responsibilities clear clients need information and suppliers provide and manage information Re-factor Re-allocate data and responsibility among classes Reuse: Assign new responsibility to a class that has similar responsibility R. Kuehl/J. Scott Hawker p. 17

18 Step: Model Analysis Class Interactions in Interaction Diagrams Model analysis class behavior in UML communication and/or sequence interaction diagrams One interaction diagram for each variant of a usecase s flow of events Communication diagrams help focus on class responsibilities and relationships Sequence diagrams to capture details and trace flow of control Interaction diagrams should be traceable from use case flow steps Other behavioral modeling can also be used; e.g., state machines R. Kuehl/J. Scott Hawker p. 18

19 Sequence Diagrams The classes Client Supplier Client object Supplier object PerformResponsibility() PerformAnotherResponsibility() Object Lifeline : Client : Supplier 1. PerformResponsibility Reflexive message (Message to self) 1.1. PerformAnotherResponsibility Message Focus of Control (Activation) Hierarchical message numbering Sequence diagrams illustrate how objects interact with each other dynamically R. Kuehl/J. Scott Hawker p. 19

20 Build a Sequence Diagram for Register for Courses : Student Student wishes to create a new schedule A list of the available course offerings for this semester are displayed A blank schedule is displayed for the students to select offerings 1: // create schedule( ) : RegisterForCoursesForm 2: // get course offerings( ) 5: // display course offerings( ) 6: // display blank schedule( ) : RegistrationController : CourseCatalogSystem 3: // get course offerings() 4: // get course offerings( ) : Course Catalog : Schedule : Student Basic flow, create a schedule portion 7: // select 4 primary and 2 alternate offerings( ) 8: // create schedule with offerings( ) 9: // create with offerings( ) 10: // add schedule(schedule) At this, point the Submit Schedule subflow is executed. Sequence Diagram: Register for Courses / Register for Courses - Basic Flow (Submit Schedule) R. Kuehl/J. Scott Hawker p. 20

21 Communication Diagrams Communication diagrams show the static interactions and links among a set of collaborating objects. Message 1.1. PerformAnotherResponsibility : Client 1. PerformResponsibility : Supplier Client object Link Note: The client initiates the behavior and needs it done, the supplier is responsible for carrying out the behavior at the client s request. Supplier object R. Kuehl/J. Scott Hawker p. 21

22 Communication Diagram for Register for Courses Basic flow, create a schedule portion 5: // display course offerings( ) 6: // display blank schedule( ) 1: // create schedule( ) 7: // select 4 primary and 2 alternate offerings( ) : RegisterForCoursesForm : Student 2: // get course offerings( ) 8: // create schedule with offerings( ) 4: // get course offerings( ) : Course Catalog : RegistrationController 3: // get course offerings() : CourseCatalogSystem 9: // create with offerings( ) 10: // add schedule(schedule) : Student : Schedule R. Kuehl/J. Scott Hawker p. 22

23 Use-Case Analysis - Steps Supplement the Use-Case Description For each use-case Find classes from use-case behavior Distribute use-case behavior to classes Model analysis class interactions in interaction diagrams For each resulting analysis class add more detail Describe responsibilities and attributes Describe associations Unify analysis classes Review checkpoints R. Kuehl/J. Scott Hawker p. 23

24 Step: Describe Responsibilities A responsibility is an action an object can be invoked to provide or do Actions the object can perform on request Associated knowledge the object maintains and provides to other objects Messages on interaction diagrams define responsibilities Responsibilities evolve into one or more operations on classes in design Document responsibilities in one of two ways As analysis operations in diagrams Class operations with // pre-pended as a naming convention As textual description of the analysis class : Client // PerformAnotherResponsibility // PerformResponsibility Supplier : Supplier // PerformResponsibility // PerformAnotherResponsibility R. Kuehl/J. Scott Hawker p. 24

25 Communication Diagram for Register for Courses Basic flow, create a schedule portion with responsibilities 5: // display course offerings( ) 6: // display blank schedule( ) 1: // create schedule( ) 7: // select 4 primary and 2 alternate offerings( ) <<boundary>> RegisterForCoursesForm // submit schedule() // display course offerings() // display schedule() // create schedule() // select 4 primary 1: and // 2 create alternate schedule( offerings() ) // display blank schedule() 4: // get course offerings( ) : Course Catalog : Student 2: // get course offerings( ) 8: // create schedule with offerings( ) <<control>> RegistrationController // get course offerings() 1 // submit schedule() // create schedule with offerings() 3: // get course offerings() 9: // create with offerings( ) <<boundary>> CourseCatalogSystem // get course offerings() <<entity>> Student // add schedule() // has pre-requisites() 10: // add schedule(schedule) <<entity>> Schedule // create with offerings() // submit() // save() R. Kuehl/J. Scott Hawker p. 25

26 Step: Describe Attributes UML Notation Attributes represent information relevant to the domain During analysis, attribute types should be from the domain, not from the programming language Attribute names should clearly state what information the attribute holds Supplement with attribute description if necessary Use case Nouns that did not become classes Significant information for the class <<stereotype>> ClassName - (Private) Name : Type = InitialValue + (Public) Name: Type = InitialValue # (Protected) Name : Type = InitialValue <<entity>> CourseOffering coursenumber : String starttime : Time endtime : Time days : Enumeration numstudents : Integer R. Kuehl/J. Scott Hawker p. 26

27 Step: Describe Associations Associated with - a contextual relationship between objects of different classes They know about each other They are connected to each other For each X there is a Y An instance of an association between two objects (instances) is called a link The line between them Arrows show navigation J Clark : Professor Student. 1 CourseOffering courses Professor instructor n 0..n 0..n 1 Schedule prerequisites Course 0..n BIO_ : CourseOffering 0..n R. Kuehl/J. Scott Hawker p. 27

28 Association Labels Association names label the association link Verb phrase with one class the verb subject and the other the verb object Association roles define the contextual role an object instance plays for its associated object instance The face it presents to its associated object Acts like an alternative class name <<entity>> CourseOffering instructor teaches <<entity>> Professor departmenthead works in <<entity>> Department prerequisites <<entity>> Course 0..n (Class object Instances) R. Kuehl/J. Scott Hawker p. 28

29 Association Multiplicities There can be multiple associations between classes R. Kuehl/J. Scott Hawker p. 29

30 Finding Associations Start with a use-case realization interaction diagram Every link indicates that the object classes are related Define association name and role labels Define association multiplicities Navigability is optional Only model the more relevant domain links R. Kuehl/J. Scott Hawker p. 30

31 Associations Example 1 1 RegisterForCoursesForm RegistrationController currentschedule +registrant alternatecourses n n 1 0..n +primarycourses Student. Schedule CourseOffering R. Kuehl/J. Scott Hawker p. 31

32 <<boundary>> RegisterForCoursesForm // submit schedule() // display course offerings() // display schedule() // create schedule() // select 4 primary and 2 alternate offerings() // display blank schedule() <<entity>> Student // add schedule() // has pre-requisites() Register for Courses Realization (Complete View of Participating Classes) Show the classes, attributes, responsibilities, and associations involved in realizing this use case +registrant 0..1 <<control>> RegistrationController // get course offerings() 1 1 // submit schedule() // create schedule with offerings() currentschedule 0..1 <<entity>> Schedule grade <<boundary>> CourseCatalogSystem 0..n 1 // get course offerings() <<entity>> PrimaryScheduleOfferingInfob // is enrolled in?() // mark as enrolled in() <<entity>> CourseOffering number : String = "100" starttime : Time endtime : Time days : Enum +primarycourses // create with offerings() 1 0..n 0..n 0..4 // submit() // save() // add student() 0..n 0..2 // still open?() +alternatecourses // save().. The final object model for realizing the use case <<entity>> ScheduleOfferingInfo status // mark as selected() // is selected?() R. Kuehl/J. Scott Hawker p. 32

33 Step: Unify Analysis Classes Derive One Analysis Model Identify classes in the context of individual use cases for all the system s use cases Unify the individual results across all the use cases Merge classes that define similar behavior or represent the same phenomenon Merge entity classes that define the same attributes, even if their behavior is different (merge the behaviors) R. Kuehl/J. Scott Hawker p. 33

34 Step: Review Checkpoints Use-Case Level Have all use case main and sub-flows been handled, including exceptional cases? Have all the required classes been found? Has all behavior been unambiguously distributed to the right classes? Are all interaction diagram relationships clear and consistent? Can you trace class behavior back to use case scenarios? Have classes been unified across all use cases? R. Kuehl/J. Scott Hawker p. 34

35 Review Checkpoints Analysis Class Level Does the class represent a single, well-defined abstraction of the required behavior? Are all appropriate class collaborative relationships identified? Does the name of each class clearly reflect the role it plays? Are all attributes and responsibilities addressed and functionally cohesive? Are there unnecessary attributes or relationships? (remove them!) R. Kuehl/J. Scott Hawker p. 35

36 Conclusion Use-Case Analysis is a useful technique for requirements validation From the use case requirements can I identify a feasible interaction of objects? Are the requirements complete, correct, etc.? A side-effect is developing one possible object design approach The Rational Unified Process provides a useful technique for use-case analysis Boundary, Entity, and Control classes in collaboration Judge in context how much breadth and depth of use case analysis is valuable. R. Kuehl/J. Scott Hawker p. 36

Use Case Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003

Use Case Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Use Case Design FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Copyright 1998-1999 Rational Software, all rights reserved 1 Objectives: Use-Case Design

More information

18-Design. Analysis and Design Workflow. Worker Responsibilities. So what do we do next? CMPSCI520/620 Design. Rick Adrion 2003 (except where noted) 1

18-Design. Analysis and Design Workflow. Worker Responsibilities. So what do we do next? CMPSCI520/620 Design. Rick Adrion 2003 (except where noted) 1 CMPSCI520/620 8- and Workflow Readings OOAD Using the UML Copyright 994-998 Rational Software, all rights reserved Architect Architectural Architectural Describe Concurrency Describe Distribution Review

More information

Subsystem Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003

Subsystem Design. FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Subsystem Design FROM Dr. Giuseppe Calavaro, Ratiolal TO Students in the DISP, University of Roma Tor Vergata 2003 Copyright 1998-1999 Rational Software, all rights reserved 1 Objectives: Subsystem Design

More information

2

2 9 UC Design 1 2 3 4 5 6 7 Representing Subsystems on a Sequence Diagram Interfaces Represent any model element that realizes the interface No message should be drawn from the interface Subsystem Component

More information

17-Design. Jackson System Development (JSD) Step 1: Entity/action step. Student Loan Example. CMPSCI520/620 Design ***DRAFT*** 11/4/04

17-Design. Jackson System Development (JSD) Step 1: Entity/action step. Student Loan Example. CMPSCI520/620 Design ***DRAFT*** 11/4/04 CMPSCI520/620 ***DRAFT*** 11/4/04 17- Readings OOAD Using the UML Copyright 1994-1998 Rational Software, all rights reserved will post Jackson System Development (JSD) Phases the modeling phase Entity/action

More information

DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume 2

DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume 2 IBM Rational University DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume 2 DEV475 Mastering Object-Oriented Analysis and Design with UML 2.0 Student Guide, Volume

More information

6 Identify Design Elements

6 Identify Design Elements 6 Identify Design Elements 1 2 3 Identify Design Elements in Context [Early Elaboration Iteration] [Inception Iteration (Optional)] Define a Candidate Architecture Perform Architectural Synthesis Analyze

More information

Index. Add Diagram > Sequence Diagram command,

Index. Add Diagram > Sequence Diagram command, Quatrani.book Page 183 Monday, May 8, 2006 11:56 AM Index A abstraction, 3 actions completing before processing, 54 55 data flowing through, 53 passing control between, 51 performing, 155 157 as round-cornered

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop detailed sequence diagrams

More information

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop interaction diagrams based on the principles of object responsibility and use case controllers

More information

The Unified Modeling Language. Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL

The Unified Modeling Language. Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL The Unified Modeling Language Asst.Prof.Dr. Supakit Nootyaskool IT-KMITL UML: requirement VS. Design models Identify 2 All the classes or things Elementary business process Necessary step to carry out

More information

Object Oriented Analysis and Design - Part2(Design)

Object Oriented Analysis and Design - Part2(Design) Object Oriented Analysis and Design - Part2(Design) Exam A QUESTION 1 Which statement is true about elements within the subsystem and public visibility? A. Only the subset of elements that define the subsystems

More information

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far University of Calgary Department of Electrical and Computer Engineering SENG 609.23: Object Oriented Analysis and Design Behrouz Homayoun Far Evaluation Test () 20:00 20:30 PM Instructions: 1. This booklet

More information

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A G R A M S ) WHAT IS CLASS DIAGRAM? A class diagram

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

Chapter 10 Object-Oriented Design Principles

Chapter 10 Object-Oriented Design Principles Chapter 10 Object-Oriented Design Principles Dr. Supakit Nootyaskool Faculty of Information Technology King Mongkut s Institute of Technology Ladkrabang Outline Object-oriented design: bridging from analysis

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization 2016 Software Engineering 2 (Zoom-Into Design) Requirement Requirement Specification (Functional & Non- Functional) analysis Requirement

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

Topic : Object Oriented Design Principles

Topic : Object Oriented Design Principles Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities

More information

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models CS 494 Object-Oriented Analysis & Design UML Class Models Overview How class models are used? Perspectives Classes: attributes and operations Associations Multiplicity Generalization and Inheritance Aggregation

More information

Introduction to UML. Danang Wahyu utomo

Introduction to UML. Danang Wahyu utomo Introduction to UML Danang Wahyu utomo danang.wu@dsn.dinus.ac.id 085 740 955 623 Evolution of OO Development Methods History of OOAD leading to UML Why Model? Analyse the problem domain - Simplify reality

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

Rational Unified Process

Rational Unified Process 6- Readings OOAD Using the UML Copyright 994-998 Rational Software, all rights reserved [Partly] posted Rational Unified Process The Unified Modeling Language (UML) is a language for specifying, visualizing,

More information

Chapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model.

Chapter 6: Entity-Relationship Model. The Next Step: Designing DB Schema. Identifying Entities and their Attributes. The E-R Model. Chapter 6: Entity-Relationship Model The Next Step: Designing DB Schema Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use

More information

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester Lab Manual Object Oriented Analysis And Design TE(Computer) VI semester Index Sr. No. Title of Programming Assignment Page No. 1 2 3 4 5 6 7 8 9 10 Study of Use Case Diagram Study of Activity Diagram Study

More information

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Modeling Applications using Language Mappings Programmer s Reference Manual How to use this Reference Card: The consists of a set of fundamental modeling elements which appear

More information

Experiment no 4 Study of Class Diagram in Rational Rose

Experiment no 4 Study of Class Diagram in Rational Rose Experiment no 4 Study of Class Diagram in Rational Rose Objective-: To studyclass Diagram in Rational Rose. References-: www.developer.com The Unified Modeling Language User Guide by Grady Booch Mastering

More information

The Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes.

The Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes. Chapter 6: Entity-Relationship Model Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common data organization model The Relational

More information

What is use case modeling? 10 - UML Overview. Use-Case diagrams CMPSCI520/620. Rick Adrion 2003 (except where noted) 1

What is use case modeling? 10 - UML Overview. Use-Case diagrams CMPSCI520/620. Rick Adrion 2003 (except where noted) 1 What is use case modeling? 10 - UML Overview 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

More information

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches Introduction to Software Engineering ECSE-321 Unit 9 Architectural Design Approaches Requirement Elicitation Analysis (Software Product Design) Architectural Design Detailed Design Architectural Design

More information

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa SOFTWARE MODELING AND DESIGN UML, Use Cases, Patterns, and Software Architectures Hassan Gomaa George Mason University, Fairfax, Virginia Ki Cambridge UNIVERSITY PRESS Contents Preface P"U

More information

Hippo Software BPMN and UML Training

Hippo Software BPMN and UML Training Hippo Software BPMN and UML Training Icon Key: www.hippo-software.co.uk Teaches theory concepts and notation Teaches practical use of Enterprise Architect Covers BPMN, UML, SysML, ArchiMate Includes paper

More information

SE 1: Software Requirements Specification and Analysis

SE 1: Software Requirements Specification and Analysis SE 1: Software Requirements Specification and Analysis Lecture 9: UML Class (Concept), Object, Communication Diagrams Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445

More information

Index. : (colon), 80 <<>> (guillemets), 34, 56

Index. : (colon), 80 <<>> (guillemets), 34, 56 : (colon), 80 (guillemets), 34, 56 A Abstraction, 3 Acronyms, 54 Action field, 140 Actions tab, 140 ActiveX controls (Microsoft), 163 Activities. See also Activity diagrams basic description of, 241

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes 5.1 What is UML? The Unified Modelling Language is a standard graphical language

More information

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015 Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 09/29/2015 http://cs.gsu.edu/~ncasturi1 Class Announcements Grading is done for the Deliverable #2 (Requirement Elicitation)

More information

CASE TOOLS LAB VIVA QUESTION

CASE TOOLS LAB VIVA QUESTION 1. Define Object Oriented Analysis? VIVA QUESTION Object Oriented Analysis (OOA) is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary

More information

UML Tutorial. Unified Modeling Language UML Tutorial

UML Tutorial. Unified Modeling Language UML Tutorial UML Tutorial Unified Modeling Language UML Tutorial A Unified Modeling Language is a language for specifying, constructing, visualizing and documenting the software system and its components. UML is a

More information

Project Overview and Scope

Project Overview and Scope Project Overview and Scope MISSION What problem does this project address? Historically, students tend to skip class. This system aids instructors in tracking the attendance of their students. It will

More information

Architecture and the UML

Architecture and the UML Architecture and the UML Models, Views, and A model is a complete description of a system from a particular perspective Use Case Use Case Sequence Use Case Use Case Use Case State State Class State State

More information

COSC 3351 Software Design. An Introduction to UML (I)

COSC 3351 Software Design. An Introduction to UML (I) COSC 3351 Software Design An Introduction to UML (I) This lecture contains material from: http://wps.prenhall.com/esm_pfleeger_softengtp_2 http://sunset.usc.edu/classes/cs577a_2000/lectures/05/ec-05.ppt

More information

Object-Oriented Design and Modeling Using the UML

Object-Oriented Design and Modeling Using the UML Design Classes Object-Oriented Design and Modeling Using the UML Based on Chapter 18 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007

More information

Introduction to Unified Modelling Language (UML)

Introduction to Unified Modelling Language (UML) IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Introduction to Unified

More information

Static Modeling. SWE 321 Fall2014

Static Modeling. SWE 321 Fall2014 Static Modeling SWE 321 Fall2014 Copyright 2014 Hassan Gomaa and Robert Pettit All rights reserved. No part of this document may be reproduced in any form or by any means, without the prior written permission

More information

INTERNAL ASSESSMENT TEST III Answer Schema

INTERNAL ASSESSMENT TEST III Answer Schema INTERNAL ASSESSMENT TEST III Answer Schema Subject& Code: Object-Oriented Modeling and Design (15CS551) Sem: V ISE (A & B) Q. No. Questions Marks 1. a. Ans Explain the steps or iterations involved in object

More information

Interface (API) Design

Interface (API) Design Interface (API) Design Architect s Perspective R. Kuehl/J. Scott Hawker p. 1 What is an API? Exposes the public facing functionality of a software component Operations, inputs, and outputs Exposes functionality

More information

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus

UML 2.0 UML 2.0. Scott Uk-Jin Lee. Division of Computer Science, College of Computing Hanyang University ERICA Campus UML 2.0 Division of Computer Science, College of Computing Hanyang University ERICA Campus Introduction to UML 2.0 UML Unified Modeling Language Visual language for specifying, constructing and documenting

More information

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1.

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1. Outline of UML and Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule Feb. 27th 13:00 Scope and Goal 14:30 Basic Concepts on Representing the World (object, class, association,

More information

Class diagrams and architectural design

Class diagrams and architectural design Class diagrams and architectural design Perdita Stevens School of Informatics University of Edinburgh More unified modelling language We saw use case diagrams, which are part of UML, the Unified Modelling

More information

Principles of Software Construction: Objects, Design and Concurrency. Just enough UML. toad

Principles of Software Construction: Objects, Design and Concurrency. Just enough UML. toad Principles of Software Construction: Objects, Design and Concurrency Just enough UML 15-214 toad Christian Kästner Charlie Garrod School of Computer Science With slides from Klaus Ostermann Learning Goals

More information

09. Component-Level Design

09. Component-Level Design 09. Component-Level Design Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 What is Component OMG UML Specification defines a component as OO view a

More information

Introduction to UML Dr. Rajivkumar S. Mente

Introduction to UML Dr. Rajivkumar S. Mente Introduction to UML Dr. Rajivkumar S. Mente Assistant Professor, Department of Computer Science, Solapur University, Solapur rajivmente@rediffmail.com Introduction to UML UML is a language used for 1.

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling

More information

Outline of Unified Process

Outline of Unified Process Outline of Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule(3/3) March 12 13:00 Unified Process and COMET 14:30 Case Study of Elevator Control System (problem definition,

More information

Software Architecture. Lecture 5

Software Architecture. Lecture 5 Software Architecture Lecture 5 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements : tactics

More information

Integrity 10. Curriculum Guide

Integrity 10. Curriculum Guide Integrity 10 Curriculum Guide Live Classroom Curriculum Guide Integrity 10 Workflows and Documents Administration Training Integrity 10 SCM Administration Training Integrity 10 SCM Basic User Training

More information

SEEM4570 System Design and Implementation. Lecture 10 UML

SEEM4570 System Design and Implementation. Lecture 10 UML SEEM4570 System Design and Implementation Lecture 10 UML Introduction In the previous lecture, we talked about software development life cycle in a conceptual level E.g. we need to write documents, diagrams,

More information

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/17/2015

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/17/2015 Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 09/17/2015 http://cs.gsu.edu/~ncasturi1 Requirement Elicitation 2 Requirement Engineering First step for understanding the

More information

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI Department of Computer Science and Engineering CS6502 - OBJECT ORIENTED ANALYSIS AND DESIGN 2 & 16 Mark Questions & Answers Year / Semester: III / V Regulation:

More information

3. UML Class Diagrams Page 1 of 15

3. UML Class Diagrams Page 1 of 15 3. UML Class Diagrams Page 1 of 15 The UML Class Diagram: Part 1 In the last article, we saw what use cases were, and how to identify and create use cases. Taking the series ahead, in this article, we

More information

CSCU9T4: Managing Information

CSCU9T4: Managing Information CSCU9T4: Managing Information CSCU9T4 Spring 2016 1 The Module Module co-ordinator: Dr Gabriela Ochoa Lectures by: Prof Leslie Smith (l.s.smith@cs.stir.ac.uk) and Dr Nadarajen Veerapen (nve@cs.stir.ac.uk)

More information

Progress Report. Object-Oriented Software Development: Requirements elicitation and analysis. Object-oriented analysis, design, implementation

Progress Report. Object-Oriented Software Development: Requirements elicitation and analysis. Object-oriented analysis, design, implementation Progress Report Object-Oriented Software Development: Requirements elicitation and analysis CS 4354 Fall 2012 Jill Seaman So far we have learned about the tools used in object-oriented design and implementation

More information

A Conceptual Model of the UML

A Conceptual Model of the UML CONTENT A Conceptual Model of the UML Building Blocks of the UML 1. Things [1.1] Structural Things (1.1.1) Class (1.1.2) Interface (1.1.3) Collaboration: (1.1.4) Use case (1.1.5) Components: (1.1.6) Node:

More information

CSI 32. Lecture Object-Oriented Paradigm. UML (Unified Modeling Language)

CSI 32. Lecture Object-Oriented Paradigm. UML (Unified Modeling Language) Lecture 3 1.4 Object-Oriented Paradigm UML (Unified Modeling Language) The Object-Oriented Paradigm - data and operations are paired - programs are composed of self-sufficient modules (objects) each module

More information

Basic Structural Modeling. Copyright Joey Paquet,

Basic Structural Modeling. Copyright Joey Paquet, Basic Structural Modeling Copyright Joey Paquet, 2000 1 Part I Classes Copyright Joey Paquet, 2000 2 Classes Description of a set of objects sharing the same attributes, operations and semantics Abstraction

More information

Introduction to Unified Modelling Language (UML)

Introduction to Unified Modelling Language (UML) IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Introduction to Unified

More information

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics.

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Topic 3 Unified Modeling Language UML Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Contents: 1. Structure diagrams 2. Behavior diagrams What

More information

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch

Class diagrams. Modeling with UML Chapter 2, part 2. Class Diagrams: details. Class diagram for a simple watch Class diagrams Modeling with UML Chapter 2, part 2 CS 4354 Summer II 2015 Jill Seaman Used to describe the internal structure of the system. Also used to describe the application domain. They describe

More information

Requesting Grade Changes Online

Requesting Grade Changes Online Requesting Grade Changes Online Navigating to Your Grade List Instructors 1. Log into myuvm > myuvm.uvm.edu 2. Select Submit Grade Change from the Faculty Grade Maintenance channel on the Grading page.

More information

UML Extension for Objectory Process for Software Engineering

UML Extension for Objectory Process for Software Engineering UML Extension for Objectory Process for Software Engineering version 1.1 1 September 1997 Rational Software Microsoft Hewlett-Packard Oracle Sterling Software MCI Systemhouse Unisys ICON Computing IntelliCorp

More information

SEEM4570 System Design and Implementation Lecture 11 UML

SEEM4570 System Design and Implementation Lecture 11 UML SEEM4570 System Design and Implementation Lecture 11 UML Introduction In the previous lecture, we talked about software development life cycle in a conceptual level E.g. we need to write documents, diagrams,

More information

Chapter 2: The Object-Oriented Design Process

Chapter 2: The Object-Oriented Design Process Chapter 2: The Object-Oriented Design Process In this chapter, we will learn the development of software based on object-oriented design methodology. Chapter Topics From Problem to Code The Object and

More information

Chapter 6: Entity-Relationship Model

Chapter 6: Entity-Relationship Model Chapter 6: Entity-Relationship Model Database System Concepts, 5th Ed. See www.db-book.com for conditions on re-use Chapter 6: Entity-Relationship Model Design Process Modeling Constraints E-R Diagram

More information

Software Design and Implementation. Example Architecture KIWC

Software Design and Implementation. Example Architecture KIWC Software Design and Implementation Example Architecture KIWC Previously on SDI What is design? What is traceability? What is architecture? Why architectures are important? Architectural styles KWIC The

More information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a

More information

Components Based Design and Development. Unit 3: Software Design Quick Overview

Components Based Design and Development. Unit 3: Software Design Quick Overview Components Based Design and Development Computer Engineering Studies Universidad Carlos III de Madrid Unit 3: Software Design Quick Overview Juan Llorens Högskolan på Åland Finland / Universidad Carlos

More information

Software Architectures. Lecture 6 (part 1)

Software Architectures. Lecture 6 (part 1) Software Architectures Lecture 6 (part 1) 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements

More information

What s Next. INF 117 Project in Software Engineering. Lecture Notes -Spring Quarter, Michele Rousseau Set 6 System Architecture, UML

What s Next. INF 117 Project in Software Engineering. Lecture Notes -Spring Quarter, Michele Rousseau Set 6 System Architecture, UML What s Next INF 117 Project in Software Engineering Lecture Notes -Spring Quarter, 2008 Michele Rousseau Set 6 System Architecture, UML Set 6 2 Announcements kreqs should be complete Except minor changes

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD TM : , Course Code : MCS-032 Course Title : Object Oriented Analysis and Design Assignment Number : MCA (3)/032/Assign/2014-15 Assignment Marks : 100 Weightage : 25% Last Dates for Submission : 15th October,

More information

UML class diagrams. Nigel Goddard. School of Informatics University of Edinburgh

UML class diagrams. Nigel Goddard. School of Informatics University of Edinburgh UML class diagrams Nigel Goddard School of Informatics University of Edinburgh A class Book A class as design entity is an example of a model element: the rectangle and text form an example of a corresponding

More information

Lecture 17 Engineering Design Resolution: Generating and Evaluating Architectures

Lecture 17 Engineering Design Resolution: Generating and Evaluating Architectures Lecture 17 Engineering Design Resolution: Generating and Evaluating Architectures Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

Elements of a Class Diagram. Class Diagram

Elements of a Class Diagram. Class Diagram Elements of a Class Diagram Class Diagram Lecture 3C A class diagram is a diagram showing a collection of classes and interfaces, along with the collaborations and relationships among classes and interfaces.

More information

Chapter 5: Structural Modeling

Chapter 5: Structural Modeling Chapter 5: Structural Modeling Objectives Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. Understand the processes used to create CRC cards, class

More information

Fundamentals of Health Workflow Process Analysis and Redesign

Fundamentals of Health Workflow Process Analysis and Redesign Fundamentals of Health Workflow Process Analysis and Redesign Unit 10.3f Process Mapping Entity-Relationship Diagrams Slide 1 Welcome to the Entity-Relationship Diagrams Subunit. This is the fifth and

More information

SE 1: Software Requirements Specification and Analysis

SE 1: Software Requirements Specification and Analysis SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 U Waterloo SE1 (Winter 2006)

More information

Backup then Download Data file

Backup then Download Data file Backup then Download Data file When copying content from one Moodle course to a new semester s course, an instructor must complete three tasks: 1. Backup the original course s content, WITHOUT user data

More information

SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay. Lecture #10 Process Modelling DFD, Function Decomp (Part 2)

SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay. Lecture #10 Process Modelling DFD, Function Decomp (Part 2) SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay Lecture #10 Process Modelling DFD, Function Decomp (Part 2) Let us continue with the data modeling topic. So far we have seen

More information

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading: CompSci 280 S2 2107 Introduction to Software Development Today s Agenda Topics: Introduction Activity Diagram Object interaction Sequence Diagram Reading: Booch G.,The Unified Modeling Language User Guide,

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

CS 4604: Introduction to Database Management Systems. B. Aditya Prakash Lecture #5: Entity/Relational Models---Part 1

CS 4604: Introduction to Database Management Systems. B. Aditya Prakash Lecture #5: Entity/Relational Models---Part 1 CS 4604: Introduction to Database Management Systems B. Aditya Prakash Lecture #5: Entity/Relational Models---Part 1 E/R: NOT IN BOOK! IMPORTANT: Follow only lecture slides for this topic! Differences

More information

Ch t 8 Chapter 8. System Models

Ch t 8 Chapter 8. System Models Ch t 8 Chapter 8. System Models Objectives To explain why the context t of a system should be modelled d as a part of requirements engineering process To describe behavioural modelling, data modelling

More information

Lab # 1. Structuring System Requirements: Diagrams

Lab # 1. Structuring System Requirements: Diagrams Lab # 1 Structuring System Requirements: Diagrams Objectives 1. Use Case diagrams 2. Class Objects (CO) diagrams 3. Context Data Flow Diagrams (Context DFDs) 4. Level-0 Data Flow Diagrams (Level-0 DFDs)

More information

Allenhouse Institute of Technology (UPTU Code : 505) OOT Notes By Hammad Lari for B.Tech CSE V th Sem

Allenhouse Institute of Technology (UPTU Code : 505) OOT Notes By Hammad Lari for B.Tech CSE V th Sem UNIT-1 ECS-503 Object Oriented Techniques Part-1: Object-Oriented Programming Concepts What Is an Object? Objects are key to understanding object-oriented technology. Look around right now and you'll find

More information

Sequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c

Sequence Diagrams. Massimo Felici. Massimo Felici Sequence Diagrams c Sequence Diagrams Massimo Felici What are Sequence Diagrams? Sequence Diagrams are interaction diagrams that detail how operations are carried out Interaction diagrams model important runtime interactions

More information

Pertemuan 8. Object Oriented Modeling and Design

Pertemuan 8. Object Oriented Modeling and Design Pertemuan 8 Object Oriented Modeling and Design References Rumbaugh, James et al., Object Oriented Modeling and Design, 1991, Prentice Hall, Inc., USA, ISBN: 0 13 629841 9 9 Coad, Peter and Yourdon, Edward,

More information

Object Model. Object Orientated Analysis and Design. Benjamin Kenwright

Object Model. Object Orientated Analysis and Design. Benjamin Kenwright Object Model Object Orientated Analysis and Design Benjamin Kenwright Outline Submissions/Quizzes Review Object Orientated Programming Concepts (e.g., encapsulation, data abstraction,..) What do we mean

More information