23

Click here to load reader

UML For Project

Embed Size (px)

Citation preview

Page 1: UML For Project

Introduction to UML and Patterns for effective Use case

Page 2: UML For Project

What is UML?

•UML means Unified Modeling language.

Modeling language or Model

•Model means the final representation of product.

•UML is a standard language for designing and documenting a system.•UML is language use to define what system going to perform and how to perform .•Its is not pictorial representation but its graphical representation about system.•It is not a methodology, it is a language

•For example if you are building house or Bridge or something civil engineer first make model and taking model works make final output. Same way in software we can use this Model much before coding and execution.• UMl is language by which a technical architect can communication with developer

Page 3: UML For Project
Page 4: UML For Project

•Structural diagrams illustrate the static features of a model.

Structural Diagrams:

•Static features include classes and association, objects and links, and collaborations. These static features provide the framework in which the dynamic elements of the model execute. For example

•A Class defines the behaviors that types of objects can provide.•An association defines the type of relationship that objects can participate in.•A Deployment diagram models pieces of hardware (and people) that can perform work.•Components define pieces of software and procedures that need to be

deployed to processors.

Page 5: UML For Project

Behavioral Diagrams:

•Behavioral diagrams describe how the resources modeled in the Structural diagrams interact and how they each execute their capabilities.

•The behavioral diagram puts the resources in motion, in contrast to the structural view, which provides a static definition of the resources.

Page 6: UML For Project

The Use Case diagram models the users' expectation for using the system. The people and systems that interact with the target system are called actors.

Use Case diagram:

The features of the system that the actors use are called use cases. Some use cases interact with other use cases, a relationship modeled using dependency arrows.The goal of the Use Case diagram is to identify all the features that the clients expect the system to support, but it does not reveal any details about the implementation of these features.

Use cases can be written many different ways but the most common is to represent a view of the system from outside the system.

OverviewThe Use Case diagram is a unique graphical element, in that it is a diagram used to model how people expect to use a system. The diagram describes who the relevant users will be, the services they require of the system, and the services they need to provide to the system.

Page 7: UML For Project

So use case diagrams are consists of actors, use cases and their relationships.

Use Case Elements:

Actors:

Use Cases:

Relationships:

Include, Extend and Generalization

•Now as we have to discuss that the use case diagram is dynamic in nature there should be some internal or external factors for making the interaction.•Actors can be defined as something that interacts with the system.

•A single use case diagram captures a particular functionality of a system.

Page 8: UML For Project

Include:

•Must relationship•Within an include relationship, one use case explicitly includes the behavior of another use case at a specified point within a course of action.•The included use case doesn't stand alone; it has to be connected with one or more base use cases.

Add To Watch

list

Checkout

Login

<<INCLUDE

>>

<<INCLUDE>>

Page 9: UML For Project

Extend:

•Optional Relationship •You generally use this construct to factor out behavior that's optional or that occurs only under certain conditions

Check Order Status

Cancel Order

<<EXTEND>>

Page 10: UML For Project

Often called as Manage Users

Brief Description:•This use case explains the process of Create, update ,Delete and Search of any User in the system.

Case Study: CRUD Operations

Use Cases Relationship:Actors: Pre-conditions

<<INCLUDE>><<EXTEND>>

Admin

Create User

Update User

Search User

Delete User

Only Administrator

Manage User

Page 11: UML For Project

Basic Flow of Events:Create User:

Update User:

•Admin will go to the User creation form of the system•Admin will fill all the required information in the form•Admin will submit the form•Acknowledgement will shown to user about success/failure of the request

•Admin will go to the User lookup (for search) form of the system•System will display a list of User based on the criteria filled by the user. •Admin Updates the User information

•System validated the data sent by AdminDelete User:•Admin will go to the User lookup (for search) form of the system•System will display a list of User based on the criteria filled by the user. •Admin Delete the User information

•System validated the data sent by Admin

Page 12: UML For Project

Manage User Admin: CRUD Operations

Manage User

Create User

<<INCLUDE>>

Update User

Search User

Admin

<<INCLUDE>>

<<EXTEND>>

Delete User

<<INCLUD

E>>

<<EXTEND

>>

System Boundary

Page 13: UML For Project

Post Conditions:

•User details will be created/updated and reflected everywhere in the system•An successful operation message would be displayed to administrator

Exceptions:

If user don’t have sufficient permission then he will not be able to create/update User

Page 14: UML For Project

Defining the Use Case Approach:You need to answer questions such as the

following:•What functionality do we need to include and exclude?

•How does this system relate to other systems in our architecture?

•Who will use the system?

•Who or what does the system depend on?

•What products and/or results does the system provide?

•Why do the users/other systems need the specific set of features that this system provides?

Page 15: UML For Project

Advantages OF Use Case

Independent Of programming language.

•Communication with programmers and outside contractors will be more efficient•The right decisions are made before you are given poorly written code.

•Easy to understand and provide overall grip on project.

Page 16: UML For Project

Ecommerce Case Study

Flow Diagram Use Case

Page 17: UML For Project

Add Item to Cart

Item In

Basket?

Check Out

Add More Items

End Transaction

New Customer?

Enter Login Details

Enter Account Details

Create Account

Account Details Correct

?

Make Payment

Confirm Order

NO

YES

NO

YES

NO

YES Account

Register Confirmation

Confirm Payment

NO

YES

Page 18: UML For Project

Create Invoice

Place Order Order

InvoiceInvoice

End Transaction

Page 19: UML For Project

Use Cases for Customer, Merchant and Admin

Page 20: UML For Project

Search Products

Customer

Send Notificati

on<<INCLUDE>>

Buy Product

Write Product Review

Update Databas

e

<<INCLUDE>>Authentica

te User/Login

<<INCLUDE>

>

SearchProduct

View Product

<<INCLUD

E>><<IN

CLUD

E>>

System Boundary

Search Product Use Case

Page 21: UML For Project

Use Case Merchant Account

Merchant

Add/Delete Product

Add/Delete Image

Change Passwor

d

Edit Persona

l Profile

View Product

Login

Update Databas

e

<<INCLUD

E>>

<<INCLUDE>>

<<INCLUD

E>>

<<INCLUD

E>>

Authenticate User<<INCLUD

E>>

System Boundary

Merchant Account

Upload Images

<<INCLUDE>

>

Page 22: UML For Project

Use Case Admin Account

Admin

Add/Delete Product

Add/Delete

Merchant Account

Add/Delete

Merchant Ac.

Send mail/Newsletter

Backup Database

Add/Delete Image

Add/Delete

Reviews.Add/

Delete Customer Account.

Update Databas

e

<<INCLUDE>>

<<INCLUDE>><<INCLUDE>><<INCLUD

E>><<INCLUD

E>><<INCLUD

E>>

Upload Image

<<INCLUDE>>

Write Backup

File

<<INCLUDE>>

System Boundary

Admin Account

Send Notificatio

n

<<INCLUDE>>

<<INCLUDE

>>

Page 23: UML For Project

Thank you!!