This chapter describes functional modeling as a means to document and understand requirements and to understand the function or external behavior of the system. This chapter also introduces use case points as a basis for project size estimation.
Trang 1PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Chapter 5:
Functional Modeling
Trang 2• Understand the process used to create
use cases and use-case diagrams
• Be able to create functional models using activity diagrams, use cases, and use-
case diagrams.
Trang 3PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
BUSINESS PROCESS MODELING WITH
ACTIVITY DIAGRAMS
Trang 4Business Process Modeling
• Business process models describe the
activities that collectively support a
business process
• A very powerful tool for communicating the analyst’s current understanding of the
requirements with the user
• Activity diagrams are used to model the
behavior in a business process
Trang 5PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Activity Diagram Syntax
Trang 6Sample Activity Diagram
Trang 7PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Guidelines for Activity Diagrams
1 Set the scope of the activity being
modeled
2 Identify the activities, control flows, and
object flows that occur between the
activities
3 Identify any decisions that are part of the
process being modeled
4 Identify potential parallelism in the
process
5 Draw the activity diagram
Trang 8USE-CASE DESCRIPTIONS
Trang 9PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Use Cases
• A use case illustrates the activities that are performed by users of a system.
• Describe basic functions of the system
– What the user can do
– How the system responds
• Use cases are building blocks for
continued design activities.
Trang 10Types of Use Cases
Trang 11PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Use Case Elements: Overview
Trang 12Use Case Elements:
Trang 13PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Use Case Elements: Flows
• Normal Flows
include only those steps that normally are
executed in a use case
• Sub-Flows
the normal flow of events decomposed to
keep the normal flow of events as simple as possible
• Alternate or Exceptional Flows
flows that do happen but are not considered to
be the norm
Trang 14Use Case Writing Guidelines
1 Write in the form of subject-verb-direct object
2 Make sure it is clear who the initiator of the step
is
3 Write from independent observer’s perspective
4 Write at about the same level of abstraction
5 Ensure the use case has a sensible set of
steps
6 Apply the KISS principle liberally.
7 Write repeating instructions after the set of
steps to be repeated
Trang 15PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
USE-CASE DIAGRAMS
Trang 16Use Case Diagram Syntax
• Actor
– person or system that derives benefit
from and is external to the subject
Trang 17PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Sample Use Case
Trang 18CREATING USE-CASE
DESCRIPTIONS
AND USE-CASE DIAGRAMS
Trang 19PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Identify the Major Use Cases
1 Review the activity diagram
2 Find the subject’s boundaries
3 Identify the primary actors and their goals
4 Identify and write the overviews of the
major use cases for the above
5 Carefully review the current use cases
Revise as needed
Trang 20PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Extend the Major Use Cases
6 Choose one of the use cases to expand
7 Start filling in the details of the chosen use
case
8 Write the normal flow of events of the use
case
9 If the normal flow of events is too complex or
long, decompose into sub flows
10.List the possible alternate or exceptional
flows
11.For each alternate or exceptional flow, list
how the actor and/or system should react
Trang 21PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Confirm the Major Use Cases
12.Carefully review the current set of use
cases Revise as needed
13.Start at the top again
Trang 22Create the Use Case Diagram
1 Draw the subject boundary
2 Place the use cases on the diagram
3 Place the actors on the diagram
4 Draw the associations
Trang 23PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
REFINING PROJECT SIZE AND EFFORT
ESTIMATION USING USE-CASE POINTS
Trang 24Use-Case Points
• A size and effort estimation technique that
was developed around use cases
– Better for OOSAD projects than function
points
• Requires at a minimum:
– The set of essential use cases
– The use case diagram
– All actors and use cases classified as simple, average, or complex
Trang 25PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Actor & Use Case Weighting
Tables
Unadjusted Use Case Points (UUCP) = UAW + UUCW
Unadjusted Use Case Weighting (UUCW)
Unadjusted Actor Weighting (UAW)
Trang 26Technical Complexity Factors
Technical Complexity Factor (TCF) = 0.6 + (0.01 * TFactor)
Trang 27PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Environmental Factors
Environmental Factor (EF) = 1.4 + (-0.03 * EFactor)
Trang 28Person-Hours Multiplier
If the sum of (number of Efactors E1 through
E6 assigned value < 3) and (number of
Efactors E7 and E8 assigned value > 3) ≤ 2
PHM = 20
Else If the sum of (number of Efactors E1
through E6 assigned value < 3) and (number
of Efactors E7 and E8 assigned value > 3) =
Trang 29PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition
Copyright © 2009 John Wiley & Sons, Inc All rights reserved
Computing Use-Case Points
• Adjusted Use Case Points (UCP) =
UUCP * TCF * ECF
• Effort in Person Hours =
UCP * PHM