0% found this document useful (0 votes)
94 views

Introduction To UML: Software Engineering BIT-8

The actors are Student and Library Staff. The use cases are Issue Book, Return Book, Read Newspapers/Magazines, Access E-Books, Maintain Records, Charge Fine, and Manage Library. The Student can issue books, return books, read newspapers/magazines, and access e-books. The Library Staff maintains records and charges fines. The Librarian manages the library.

Uploaded by

gopalgupta3
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
94 views

Introduction To UML: Software Engineering BIT-8

The actors are Student and Library Staff. The use cases are Issue Book, Return Book, Read Newspapers/Magazines, Access E-Books, Maintain Records, Charge Fine, and Manage Library. The Student can issue books, return books, read newspapers/magazines, and access e-books. The Library Staff maintains records and charges fines. The Librarian manages the library.

Uploaded by

gopalgupta3
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 29

Introduction to UML

SOFTWARE ENGINEERING

BIT-8
APRIL, 16,2008
Agenda
Part 1:
Why modeling?
 Introduction to Unified Modeling Language.

 Uses of UML

 Mapping Diagrams.

Part 2:
Use-Case Diagrams
 Actors/Use-cases

Part 3:
 Lab-Task: Case Study
Modeling

A model is a simplified representation of a


complex reality.
Complex systems and software cannot be
understood without properly modeling them.
Today, software are getting complex and
consequently we need to understand them
through modeling.
Modeling

In simple words, we need simpler representations for


complex models and modeling is a mean for dealing
with complexity.

A modeling method comprises a language and also a


procedure for using the language to construct models.

Modeling is the only way to visualize your design and


check it against requirements before you start to code. 
Unified Modeling Language (UML)

UML is a notational system which is principally graphical


and aims at modeling system using object oriented
concepts.
UML is termed as a “Visual Modeling Language’.
Generally UML is used for modeling software systems.
UML consists of :
 Views: shows different faces of the system and links with the process
 Diagrams: are basically the graphs that explain the contents of view.

 Model Elements: are contained within the diagrams.


Unified Modeling Language

UML is a complete language for capturing knowledge


about a subject and then expressing that knowledge i.e.
gathering requirements and then modeling those
requirements.

Such modeling includes two phases :


 Analysis
 Design
Unified Modeling Language

UML

Analysis Phase: Design Phase:


•It is tightly connected to the
analysis phase, as it starts
•System is described by a set from the identification of
of requirements. requirements and continues
up till the detailed
•USE-CASE DIAGRAM specification of those
requirements.
•Class Diagrams
•Interaction Diagrams
•State Chart Diagrams
•Deployment Diagrams
USE-CASE DIAGRAMS

SOFTWARE ENGINEERING
BIT-8
Use-Case Diagram

Use Case Diagram is used to describe the


functionalities provided by a system and the users
associated with that system.
The Use case diagram is used to identify the primary
elements and processes that form the system.
The primary elements are termed as "actors" and the
processes are called "use cases."
The Use case diagram shows which actors interact with
each use case.
Use-Case Diagram

The main purpose of the use-case diagram is:

 to help development teams visualize the functional


requirements of a system

 To help identify relationship of "actors" (human beings who will


interact with the system) with essential processes

 and understand the relationships among different use cases


Elements of a use-case diagram

Use-case diagrams contain the following


elements:
• Actors, which represent users of a system,
including human users and other systems.
• Use Cases, which represent functionality or
services provided by a system to users.
Actor

Definition:
The outside entity which communicates with the system:
 A Person (user)
 An external system
 Physical Environment

 An Actor has a unique name and an optional description

Symbol:

UML notation used to represent an actor


Actor (Example)

Consider the following scenario related to a


“University Management System” :
 In a university management system, a Student can submit the
assignments, the instructor marks those assignments and
then uploads the result. The Student is allowed to view the
Results.
 Now, by recalling the definition of actor, can you identify the
actors in this System?

Student
Instructor
Actor (Example/2)

Student Instructor

Student is an external Instructor is another


entity which interacts external entity which
with the system. Student interacts with the
is a user of this system, university management
Student as some services are Instructor system.
used by it.
Use-case

Represent functionality or services provided by a


system to users.
It is a description of set of sequence of actions that a
system perform that produces an observable result.
A use case represents a class of functionality provided
by the system as an event flow.
Use cases describe the interaction between a primary
actor and the system itself
Use-case

The use case technique is used in software and systems


engineering to capture the functional requirements of a
system.
Each use case describes how the actor will interact with
the system to achieve a specific goal.
 One or more scenarios may be generated from each
use case, corresponding to the detail of each possible
way of achieving that goal.
Symbol :
UML notation used to represent a use-case
Use-case (Example)

Consider the same example again:


 In a university management system, a Student can submit the
assignments, the instructor marks those assignments and then
uploads the result. The Student is allowed to view the Results.
 Now, by recalling the definition of use-case, can you identify the
use-cases in this System?

 Submit Assignments
 Mark Assignments
 Upload Results
 View Results
Use-case (Example/2)

The use-cases are linked with the functional


requirements of this system. In this example :
 Student submit the assignments.
 Instructor marks the assignments.

 Instructor upload the marks.

 Student can view the marks.

It is now clear that how actors are interacting with


different use-cases of this system.
Now, lets combine actors and use-cases in one diagram?
Easy ?
Symbols in Use-Case Diagrams

ACTOR

USE-CASE

INTERACTION:
denotes set of messages exchanged among objects

NOTES/COMMENTS
Use-Case Diagram (University Management System)

SYSTEM
Submit BOUNDARY
Assignments

Mark
Student Assignments

Upload
Results

View Results
Instructor

Package: University Management System


Extending Use-Case Diagram

SOFTWARE ENGINEERING
BIT-8
Lab-Exercise
(Extracting Use-cases)

1 HOUR EXERCISE
Use-Case Associations

 Use case association is the relationship between use


cases
 Important types:
 Extends
 A use case extends another use case
 Include
 A use case uses another use case (“functional
decomposition”)
<<Include>>: Functional Decomposition

A function in the original problem statement is too


complex to be solved immediately.
What’s the Solution?
 Describe the function as the aggregation of a set of simpler functions
 The associated use case is decomposed into smaller use cases
<<include>> Example

The include association from Use Case A to Use Case B


indicates that an instance of A performs all the
behavior described in B
Base <<include>>
(A) Supplier (B)

In <<include>> association, the base case cannot exist


alone. It is always called with the supplier use case
<<Extend>> Association for Use Cases

Problem:
 The functionality in the original problem statement needs to
be extended.
Solution:
 An extend association from Use Case B to Use Case A indicates
that B is an extension of A.

<<extend>>
A B
Example

 Example:
 The use case “ReportEmergency” is complete by itself
, but can be extended by the use case “Help” for a
specific scenario in which the user requires help
Note: In an extend association, the base use case can
be executed without the use case extension

<<extend>>

ReportEmergency Help

Field Officer
Lab-Exercise

Read the following case :

 Identify the actors


 Identify (extract ) the use cases
 Construct a proper use-case diagram (with proper symbols &
notations)
Case-Study

Consider the Library Management System of SEECS. A


Student is allowed to issue books for a period of two
weeks. Student can read newspapers/magazines in the
library and can even access the databases for e-books.
The Library Staff is responsible for maintaining the records
of students and along with the issued books. The Staff
marks an entry in the register whenever a student issue or
return a book. A fine is charged on a student if he/she fail
to return the book on time. The Librarian is there to
manage the staff, check the records and prepare reports
for DG/DEAN.

You might also like