UML Diagram Types. Use Cases do the Following. Use Case Diagram



Similar documents
Use Cases. Use Cases Diagrams

Interaction Diagrams. Use Cases and Actors INTERACTION MODELING

Applying Use Cases to Microcontroller Code Development. Chris Gilbert Cypress Semiconductor

Tutorial - Building a Use Case Diagram

Object-Oriented Design Guidelines

Use Cases. Massimo Felici. Massimo Felici Use Cases c

Introduction. UML = Unified Modeling Language It is a standardized visual modeling language.

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Communication Diagrams

Chap 1. Introduction to Software Architecture

3.1 Use Case Diagrams

The «include» and «extend» Relationships in Use Case Models

Applying 4+1 View Architecture with UML 2. White Paper

To introduce software process models To describe three generic process models and when they may be used

Course Code and Name Year - Semester. Number of marks

Requirements / Use Case Specification

Mastering increasing product complexity with Collaborative Systems Engineering and PLM

Chapter 4 Software Lifecycle and Performance Analysis

BCS Certificate in Systems Modelling Techniques Syllabus

Use Case Diagrams. Tutorial

CSC340S Asst3 Information System Design Detailed Marking Scheme

COSC 3351 Software Design. Recap for the first quiz. Edgar Gabriel. Spring For the 1 st Quiz

Developing Complex Systems using DOORS and UML

Menouer Boubekeur, Gregory Provan

Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page:

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

PHP Code Design. The data structure of a relational database can be represented with a Data Model diagram, also called an Entity-Relation diagram.

Object-oriented design methodologies

Writing Use Case Scenarios for Model Driven Development

Implementation Workflow

Software Engineering. System Models. Based on Software Engineering, 7 th Edition by Ian Sommerville

Using Use Cases on Agile Projects

Business Process Modeling with Structured Scenarios

Object Oriented Programming. Risk Management

Analysis and Design with UML

Overview. System Definition Webster s Dictionary. System Engineering Hierarchy. System Engineering. Computer-Based Systems [PRE2005]

Section C. Requirements Elicitation

Chapter 10 Practical Database Design Methodology and Use of UML Diagrams

Object-Oriented Systems Analysis and Design

A UML Introduction Tutorial

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Automated Modeling of Legacy Systems Using the UML

Case studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design

Masters of Science in Software & Information Systems

Object Oriented Design

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

User experience storyboards: Building better UIs with RUP, UML, and use cases

What is a life cycle model?

Project Management Planning

The Role of Use Cases in Requirements and Analysis Modeling

Software Project Management and UML

System Behaviour Analysis with UML and Ptolemy. Scope and goals

How to make a good Software Requirement Specification(SRS)

Lectures 2 & 3: Introduction to Modeling & UML. Getting started

UML TUTORIALS THE USE CASE MODEL

Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture

Quiz Examination in Software Engineering Theory

Lab Manual: Using Rational Rose

Designing a Home Alarm using the UML. And implementing it using C++ and VxWorks

UML Activity Diagrams: Versatile Roadmaps for Understanding System Behavior

Managing Variability in Software Architectures 1 Felix Bachmann*

Modeling Agent Mobility with UML Sequence Diagram

IRA 423/08. Designing the SRT control software: Notes to the UML schemes. Andrea Orlati 1 Simona Righini 2

Assuming the Role of Systems Analyst & Analysis Alternatives

Basic Unified Process: A Process for Small and Agile Projects

Chapter 3. Technology review Introduction

LAB 3: Introduction to Domain Modeling and Class Diagram

Software Design Document (SDD) Template

Chapter 19. Activity Diagrams

Rational Unified Process for Systems Engineering RUP SE1.1. A Rational Software White Paper TP 165A, 5/02

Karunya University Dept. of Information Technology

A Software Development Platform for SOA

i. Node Y Represented by a block or part. SysML::Block,

RUP Design. Purpose of Analysis & Design. Analysis & Design Workflow. Define Candidate Architecture. Create Initial Architecture Sketch

The UML «extend» Relationship as Support for Software Variability

SOA Enabled Workflow Modernization

Adapted for a textbook by Blaha M. and Rumbaugh J. Object Oriented Modeling and Design Pearson Prentice Hall, 2005.

White Paper What Solutions Architects Should Know About The TOGAF ADM

Information Technology Career Field Pathways and Course Structure

Business Modeling with UML

Sofware Requirements Engineeing

Syllabus M.C.A. Object Oriented Modeling and Design usung UML

Business Process Modeling Across the Life Cycle

The Tropos and MaSE Agent-Oriented Software Engineering Methodologies. Msury Mahunnah, Tallinn University of Technology

Introduction. Introduction. Software Engineering. Software Engineering. Software Process. Department of Computer Science 1

Master Data Services Training Guide. Modeling Guidelines. Portions developed by Profisee Group, Inc Microsoft

Software Engineering. Software Testing. Based on Software Engineering, 7 th Edition by Ian Sommerville

Chapter 10 Practical Database Design Methodology and Use of UML Diagrams

What are some effective standards-based classroom assessment practices?

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

The Project Management Plan will be used to guide, communicate and coordinate project efforts.

Towards an automated testing framework to manage variability using the UML Testing Profile

Software Architecture

The Role of Business Capabilities in Strategic Planning. Sneaking up on Quality Using Business Architecture in a learning corporation

Lecture 9: Requirements Modelling

Transcription:

UML Diagram Types Dynamic Models activity diagrams statechart diagrams interaction diagrams sequence diagrams collaboration diagrams use case diagrams Structural Models class diagrams object diagrams packages Architectural Models component diagrams deployment diagrams Use Cases do the Following Model of entire system subsystem class Focus on what, not how Forum for domain experts and developers to meet on common ground Provide method of decomposition of complex problem Basis for testing each element during development Use Case Diagram def n: diagram that shows a set of use cases and actors and their relationships Contents use cases actors dependency, generalization, and association relationships

Use Case def n: a description of a set of sequences of actions, including variants, that a system performs to yield an observable result of value to an actor every interesting system interacts with human or automated actors specifies the of a system or part of a system captures intended, without specifying how is implemented aids common understanding of end users and domain experts denote essential system or subsystem basis for test cases as they evolve during development Use Case Definition set of sequences: each sequence represents the interaction of the things outside the system and within the system system level functions that help visualize, construct, and document the intended of your system during requirements capture and analysis represents functional requirements of system as a whole Use Case Definition interaction with actors: coherent set of roles external to the system can be human or automated variants: differences between closely related used cases specialized versions of other use cases common parts of other use cases extend the of other use cases

Use Case Definition tangible work: some measurable accomplishment that, from the perspective of a given actor, is of value system level functions that help visualize, construct, and document the intended of your system during requirements capture and analysis represents functional requirements of system as a whole Use Case Convention ellipse simple name (name) or path name (package::name) may have attributes, operations, state Actor def n: a coherent set of roles that users play when interacting with a use case role that a human, hardware device, or another system plays with system live outside of the system Convention stick figure actors can be specializations of each other connected to use case by association, indicating communication between use case and actor

Organizing Use Cases Generalization similar to generalization between classes e.g., child inherits and meaning of parent use case child may override or add to of parent child may be substituted for parent Organizing Use Cases con t Include base use case explicitly incorporates the of another use case at a location specified in the base included base class never stands alone, but is instantiated as part of some larger base avoids redundant description of same flow of events Convention dependency from base use case to included use case stereotype <<include>> or <<uses>> on dependency Organizing Use Cases con t Extend base use case implicitly incorporates the of another use case at a location specified indirectly by the extending use case base use case may stand alone, but under certain conditions may be extended by of another use case models part of a use case that the user may see as optional separates optional from mandatory model a conditional subflow model several subflows that may be inserted at a certain point Convention dependency from extended use case to base use case stereotype <<extend>> or <<extends>> on dependency

What it Means Generalizing a Set of Behavior use generalization Extracting Common Behavior use include Distinguishing Variants use extend Scenarios def n: specific sequence of actions that illustrates scenarios:use cases as instances:classes first describe with text (flow of events) next, describe with interaction diagrams main flow exceptional flow Model Context of System Establish bounds of system Things outside system describe context To Model Identify actors that surround the system Organize actors using generalization Populate a use case diagram with these actors and specify paths of communication

Model Requirements of System Describes what the system should do a design feature, property, or of a system carry out req mts faithfully, predictably, and reliably To Model Establish context of system For each actor, consider the that each expects or requires of the system Name common s as use cases Factor common and variant Model the uses cases, actors, and relationships into a use case diagram Use adornments for clarity To Model Identify actors that interact with the element Organize actors into general and specialized roles Consider common interactions with use cases Consider exceptional interactions with use cases Organize s using include and extend relationships Hints and Tips Name a reasonable partition of the system Factor common Factor variant Describes flow of events clearly enough for an outsider to understand Use scenarios that specify normal and variant