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

Use Case

The document discusses object-oriented development and use case modeling. It describes objects, classes, inheritance, and how object-oriented modeling is more iterative than traditional development. It also outlines the benefits of use case modeling and defines key concepts like use cases, actors, associations, and other relationships.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

Use Case

The document discusses object-oriented development and use case modeling. It describes objects, classes, inheritance, and how object-oriented modeling is more iterative than traditional development. It also outlines the benefits of use case modeling and defines key concepts like use cases, actors, associations, and other relationships.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

Use Case

Program Studi S1 Sistem Informasi


Fakultas Sains dan Teknologi, Universitas Airlangga
Semester Genap 2023/2024

Ira Puspitasari, S.T., M.T., Ph.D.


Object Oriented Development

• Object
• Basic unit of systems analysis and design
• Combines data and the processes that operate on those data
• Data in object can be accessed only by operations associated with that
object
• Object-oriented modeling
• Based on concepts of class and inheritance
• Objects belong to a certain class and have features of that class
• May inherit structures and behaviors of a more general, ancestor class

2
Object Oriented Development

• More iterative and incremental than traditional structured development


• Systems analysis: Interactions between system and users analyzed to
identify objects
• Design phase: Describes how objects will behave and interact;
grouped into classes, subclasses, and hierarchies
• Implementation: Some classes may be reused from existing library of
classes, others created or inherited
• Objects are reusable
• Object-oriented development can potentially reduce time and cost of
development.

3
User-Centered Development and
Use-Case Modeling

User-centered development – a process of systems development


based on understanding the needs of the stakeholders and the
reasons why the system should be developed.
Use-case modeling – the process of modeling a system’s functions in
terms of business events, who initiated the events, and how the
system responds to those events.
• Use-case modeling has roots in object-oriented modeling.
• Gaining popularity in non-object development environments because of its
usefulness in communicating with users.
• Compliments traditional modeling tools.
7-4
Benefits of Use-Case Modeling

• Provides tool for capturing functional requirements.


• Assists in decomposing system into manageable pieces.
• Provides means of communicating with users/stakeholders
concerning system functionality in language they understand.
• Provides means of identifying, assigning, tracking, controlling, and
management system development activities.
• Provides aid in estimating project scope, effort, and schedule.

7-5
Benefits of Use-Case Modeling

• Aids in defining test plans and test cases.


• Provides baseline for user documentation.
• Provides tool for requirements traceability.
• Provides starting point for identification of data objects or entities.
• Provides specifications for designing user and system interfaces.
• Provides means of defining database access requirements.
• Provides framework for driving the system development project.

7-6
System Concepts for Use-Case Modeling

Use case – a behaviorally related sequence of steps (scenario), both


automated and manual, for the purpose of completing a single business
task.
• Description of system functions from the perspective of external users in
terminology they understand.

Use-case diagram – a diagram that depicts the interactions between the


system and external systems and users.
• graphically describes who will use the system and in what ways the user
expects to interact with the system.

Use-case narrative – a textual description of the business event and how


7-7
the user will interact with the system to accomplish the task.
Sample Use-
Case Model
Diagram

8
Basic Use-Case Symbols

Use case – subset of the overall system functionality


• Represented by a horizontal ellipse with name
of use case above, below, or inside the ellipse.

Actor – anyone or anything that needs to interact with the


system to exchange information.
• human, organization, another information system,
external device, even time.

Temporal event – a system event triggered by time.


• The actor is time.

7-9
Four Types of Actors

Primary business Primary system External server External receiver


actor actor actor actor
• The stakeholder • The stakeholder • The stakeholder • The stakeholder
that primarily that directly that responds to that is not the
benefits from the interfaces with a request from primary actor but
execution of the the system to the use case. receives
use case. initiate or trigger • e.g. the credit something of
• e.g. the employee the business or bureau value from the
receiving the system event. authorizing a use case.
paycheck • e.g. the bank credit card • e.g. the
teller entering charge warehouse
deposit receiving a
information packing slip

7-10
Use Case
a relationship between an actor and a use case in which
Association an interaction occurs between them.
Relationship

• Association modeled as a solid line connecting the actor and the use case.
• Association with an arrowhead touching the use case indicates that the use case was
initiated by the actor. (1)
• Association lacking arrowhead indicates a receiver actor. (2)
• Associations may be bidirectional or unidirectional.

7-11
Use Case Extends Relationship

Extension use case –use case consisting of


steps extracted from another use case to
simplify the original.
• Extends the functionality of the original use
case.
• Generally not identified in the requirements
phase
• Extends relationship represented as arrow
beginning at the extension use case and
pointing to use case it is extending.
• Labeled <<extends>>.

7-12
Use Case Uses Relationship
Abstract use case – use case that reduces
redundancy in two or more other use cases by
combining common steps found in both.
• Available by any other use case that requires its
functionality.
• Generally not identified in requirements phase
• Relationship between abstract use case
and use case that uses it is called a
uses (or includes) relationship.
• Depicted as arrow beginning at original use
case and pointing to use case it is using.
• Labeled <<uses>>.

7-13
Use Case Depends On Relationship

Depends On – use case relationship that specifies


which other use cases must be performed before
the current use case.
• Can help determine sequence in which use
cases need to be developed.
• Depicted as arrow beginning at one
use case and pointing to use case it depends
on.
• Labeled <<depends on>>.

7-14
Use Case Inheritance
Relationship
Inheritance – a use case relationship in which
the common behavior of two actors initiating
the same use case is extrapolated and assigned
to a new abstract actor to reduce redundancy.
• Other actors can inherit the interactions of
the abstract actor.
• Depicted as an arrow beginning at one
actor and pointing to the abstract actor
whose
interactions the first actor inherits.

7-15
Use Case
Inheritance
Relationship

7-16
The Process of Requirements
Use-Case Modeling

• Objective is to elicit and analyze enough requirements information to prepare


a model that:
• Communicates what is required from a user perspective.
• Is free of specific details about how system will be implemented.

• To effectively estimate and schedule project, may need to include preliminary


implementation assumptions.
• Steps
1. Identify business actors.
2. Identify business use cases.
3. Construct use-case model diagram.
4. Documents business requirements use-case narratives.
7-17
Step 1: identify Business Actors

• When looking for actors, ask the following questions:


• Who or what provides inputs to the system?
• Who or what receives outputs from the system?
• Are interfaces required to other systems?
• Are there events that are automatically triggered at a
predetermined time?
• Who will maintain information in the system?
• Actors should be named with a noun or noun phrase
7-18
Sample List
of Actors

7-19
Step 2: Identify Business
Requirements Use Cases

§ Business Requirements Use Case - a use case


created during requirements analysis to capture
the interactions between a user and the system
free of technology and implementation details.
§ During requirements analysis, strive to identify
and document only the most critical, complex,
and important use cases, often called essential
use cases.

7-20
Step 2: Identify Business Requirements
Use Cases

• When looking for use cases, ask the following questions:


• What are the main tasks of the actor?
• What information does the actor need form the system?
• What information does the actor provide to the system?
• Does the system need to inform the actor of any changes or events that have
occurred?
• Does the actor need to inform the system of any changes or events that have
occurred?

• Use cases should be named with a verb phrase specifying the goal
of the actor (i.e. Submit Subscription Order)
7-21
Sample
Use-Case
Glossary

7-22
Sample
Use-Case
Glossary

7-23
Sample
Use-Case
Glossary

7-24
Step 3:
Construct
Use-Case
Model
Diagram

7-25
Step 4: Document Business
Requirements Use-Case
Narratives

• Document first at high level to quickly obtain an


understanding of the events and magnitude of
the system.
• Then expand to a fully-documented business
requirement narrative.
• Include the use case’s typical course of
events and its alternate courses.

7-26
Sample
High-Level
Version of
a Use-Case
Narrative

7-27
Sample
Expanded
Version
of a Use-
Case
Narrative

7-28
Sample
Expanded
Version
of a Use-
Case
Narrative

7-29
Sample
Expanded
Version
of a Use-
Case
Narrative

7-30
Use Cases and
Project Management
• Use-case model can drive entire development
effort.
• Project manager or systems analyst uses business
requirements use cases to estimate and schedule
the build cycles of the project.
• Build cycles are scoped on the basis of the
importance of the use case and the time it
takes to implement the use case.
• To determine importance of use cases, will create:
• Use-case ranking and evaluation matrix
• Use-case dependency diagram
7-31
Use-Case Ranking
and Priority Matrix

• In most projects, the most important use cases are


developed first.
• Use-case ranking and priority matrix – a tool used to evaluate use
cases and determine their priority.
Evaluates use cases on 1-5 scale against six criteria.
1. Significant impact on the architectural design.
2. Easy to implement but contains significant functionality.
3. Includes risky, time-critical, or complex functions.
4. Involves significant research or new or risky technology.
5. Includes primary business functions.
6. Will
7-32
increase revenue or decrease costs.
Sample Use-Case Ranking
and Priority Matrix

7-33

You might also like