Use-Case Analysis. Architecture Oriented Analysis. R. Kuehl/J. Scott Hawker p. 1 R I T. Software Engineering
|
|
- Gordon Cox
- 5 years ago
- Views:
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 Copyright 1998-1999 Rational Software, all rights reserved 1 Objectives: Use-Case Design
More information18-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 informationSubsystem 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 information2
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 information17-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 informationDEV475 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 information6 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 informationIndex. 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 informationOBJECT 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 informationObjectives. 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 informationThe 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 informationObject 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 informationUniversity 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 informationS 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 informationObject-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 informationChapter 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 informationOBJECT 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 informationAnalysis 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 informationTopic : 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 informationA - 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 informationIntroduction 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 information06. 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 informationChapter 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 informationRational 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 informationChapter 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 informationObject-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 informationLab 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 informationUnified 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 informationExperiment 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 informationThe 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 informationWhat 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 informationIntroduction 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 informationSOFTWARE 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 informationHippo 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 informationSE 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 informationIndex. : (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 informationCHAPTER 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 informationObject-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 informationSoftware 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 informationCASE 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 informationUML 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 informationProject 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 informationArchitecture 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 informationCOSC 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 informationObject-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 informationIntroduction 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 informationStatic 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 informationINTERNAL 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 informationInterface (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 informationUML 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 informationOutline 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 informationClass 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 informationPrinciples 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 information09. 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 informationIntroduction 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 informationUML 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 informationOutline 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 informationSoftware 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 informationIntegrity 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 informationSEEM4570 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 informationSoftware 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 informationDHANALAKSHMI 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 information3. 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 informationCSCU9T4: 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 informationProgress 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 informationA 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 informationCSI 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 informationBasic 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 informationIntroduction 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 informationTopic 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 informationClass 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 informationRequesting 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 informationUML 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 informationSEEM4570 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 informationChapter 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 informationChapter 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 informationSoftware 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 informationSOFTWARE 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 informationComponents 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 informationSoftware 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 informationWhat 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 informationFor 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 informationUML 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 informationLecture 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 informationSoftware 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 informationElements 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 informationChapter 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 informationFundamentals 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 informationSE 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 informationBackup 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 informationSOFTWARE 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 informationToday 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 informationObject-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 informationCS 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 informationCh 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 informationLab # 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 informationAllenhouse 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 informationSequence 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 informationPertemuan 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 informationObject 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