UML Activity Diagrams in Software Design

undefined
 
CSSE 374
:
UML Activity Diagrams
These slides and others derived from Shawn Bohner, Curt Clifton,
Alex Lo, and others involved in delivering 374.
S
t
e
v
e
 
C
h
e
n
o
w
e
t
h
O
f
f
i
c
e
:
 
M
o
e
n
c
h
 
R
o
o
m
 
F
2
2
0
P
h
o
n
e
:
 
(
8
1
2
)
 
8
7
7
-
8
9
7
4
E
m
a
i
l
:
 
c
h
e
n
o
w
e
t
@
r
o
s
e
-
h
u
l
m
a
n
.
e
d
u
C
h
a
n
d
a
n
 
R
u
p
a
k
h
e
t
i
O
f
f
i
c
e
:
 
M
o
e
n
c
h
 
R
o
o
m
 
F
2
0
3
P
h
o
n
e
:
 
(
8
1
2
)
 
8
7
7
-
8
3
9
0
E
m
a
i
l
:
 
r
u
p
a
k
h
e
t
@
r
o
s
e
-
h
u
l
m
a
n
.
e
d
u
 
Left 
- The system has to DO things.
How do you show, at a high level,
What it does?
 
Learning Outcomes: Patterns, Tradeoffs
 
I
d
e
n
t
i
f
y
 
c
r
i
t
e
r
i
a
 
f
o
r
 
t
h
e
 
d
e
s
i
g
n
 
o
f
 
a
s
o
f
t
w
a
r
e
 
s
y
s
t
e
m
 
a
n
d
 
s
e
l
e
c
t
 
p
a
t
t
e
r
n
s
,
c
r
e
a
t
e
 
f
r
a
m
e
w
o
r
k
s
,
 
a
n
d
 
p
a
r
t
i
t
i
o
n
 
s
o
f
t
w
a
r
e
t
o
 
s
a
t
i
s
f
y
 
t
h
e
 
i
n
h
e
r
e
n
t
 
t
r
a
d
e
-
o
f
f
s
.
E
x
a
m
i
n
e
 
t
h
e
 
u
s
e
 
o
f
 
U
M
L
 
A
c
t
i
v
i
t
y
D
i
a
g
r
a
m
s
T
h
i
s
 
w
i
l
l
 
 
n
o
t
 
b
e
 
a
 
p
a
r
t
 
o
f
 
a
n
y
 
H
W
 
o
r
d
o
c
u
m
e
n
t
a
t
i
o
n
 
f
o
r
 
M
i
l
e
s
t
o
n
e
 
5
.
L
i
k
e
l
y
 
a
 
q
u
e
s
t
i
o
n
 
o
n
 
f
i
n
a
l
 
e
x
a
m
 
Q
3
UML Activity Diagrams
 
Essentially Modern Version of
Flowcharts and/or Data Flow
Diagrams
Easy to understand
 
Used to model:
Business processes
Workflows
Data Flows
Complex algorithms/UCs
Symbols
 
Activity Diagram UML
Syntax
 
Old Data Flow Diagrams…
 
Now done as Activity Diagrams
 
Hierarchy Representation:
Rake Symbol
 
Expanded Delivery Order
Activity Diagram
Post Office Showdown
 
Think that he might
be watching too
many martial arts
films?
 
Signal Notation
 
NextGen POS: 
NextGen POS: 
Reducing Complexity
 
NextGen Process Sale UC benefits from activity diagram due to its complexity
Activity Diagram Guidelines
 
Use when need to depict
processes with complex flow
Conditional or iterative
Use rake notation for sub-
activity diagrams
Keeps parent diagram simple
Maintain a consistent level of
abstraction within a diagram
 
Exercise on 
Activity Diagrams
 
W
e
l
l
 
d
o
 
i
n
 
c
l
a
s
s
 
B
r
e
a
k
 
u
p
 
i
n
t
o
 
y
o
u
r
 
t
e
a
m
s
S
k
e
t
c
h
 
a
n
 
a
c
t
i
v
i
t
y
 
d
i
a
g
r
a
m
 
f
o
r
c
r
e
a
t
i
n
g
 
a
n
 
a
c
c
o
u
n
t
,
 
w
i
t
h
 
u
s
e
r
n
a
m
e
&
 
p
a
s
s
w
o
r
d
,
 
o
n
 
a
 
w
e
b
s
i
t
e
.
B
e
 
s
u
r
e
 
t
o
 
i
n
c
l
u
d
e
 
s
w
i
m
 
l
a
n
e
s
 
f
o
r
t
h
e
 
U
s
e
r
,
 
t
h
e
 
S
y
s
t
e
m
,
 
a
n
d
 
a
n
e
x
t
e
r
n
a
l
 
C
A
P
T
C
H
A
 
S
e
r
v
i
c
e
.
Y
o
u
r
 
d
i
a
g
r
a
m
 
s
h
o
u
l
d
 
i
n
c
l
u
d
e
:
a
 
c
h
e
c
k
 
t
h
a
t
 
t
h
e
 
p
a
s
s
w
o
r
d
 
i
s
 
v
a
l
i
d
,
a
 
c
h
e
c
k
 
t
h
a
t
 
t
h
e
 
u
s
e
r
n
a
m
e
 
h
a
s
 
n
o
t
 
a
l
r
e
a
d
y
 
b
e
e
n
 
u
s
e
d
a
 
c
h
e
c
k
 
t
h
a
t
 
u
s
e
r
 
e
n
t
e
r
e
d
 
C
A
P
T
C
H
A
 
t
e
x
t
 
c
o
r
r
e
c
t
l
y
D
e
c
i
d
e
 
w
h
a
t
 
o
r
d
e
r
 
t
h
e
s
e
 
c
h
e
c
k
s
 
s
h
o
u
l
d
 
b
e
 
d
o
n
e
 
i
n
,
 
a
n
d
 
d
o
 
t
h
o
s
e
 
i
n
p
a
r
a
l
l
e
l
 
t
h
a
t
 
m
a
k
e
 
s
e
n
s
e
!
 
Go for it…
Slide Note

Cyclist image from http://health.usnews.com/health-news/family-health/brain-and-behavior/slideshows/protect-against-alzheimers/2.

Embed
Share

UML Activity Diagrams provide a modern way to visualize business processes, workflows, data flows, and complex algorithms in software systems. They use symbols to represent different parties involved, actions performed, transitions, and control flows. These diagrams help in modeling data flows, object flows, and the overall flow of activities in a system. By understanding the syntax, partitions, and hierarchy representation of UML Activity Diagrams, software designers can effectively communicate and design software systems to meet specific criteria and trade-offs.

  • UML Activity Diagrams
  • Software Design
  • Business Processes
  • Data Flows
  • Control Flow

Uploaded on Sep 30, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Left - The system has to DO things. How do you show, at a high level, What it does? CSSE 374: UML Activity Diagrams Steve Chenoweth Office: Moench Room F220 Phone: (812) 877-8974 Email: chenowet@rose-hulman.edu Chandan Rupakheti Office: Moench Room F203 Phone: (812) 877-8390 Email: rupakhet@rose-hulman.edu These slides and others derived from Shawn Bohner, Curt Clifton, Alex Lo, and others involved in delivering 374.

  2. Learning Outcomes: Patterns, Tradeoffs Identify criteria for the design of a software system and select patterns, create frameworks, and partition software to satisfy the inherent trade-offs. Examine the use of UML Activity Diagrams This will not be a part of any HW or documentation for Milestone 5. Likely a question on final exam Q3

  3. UML Activity Diagrams Essentially Modern Version of Flowcharts and/or Data Flow Diagrams Easy to understand Used to model: Business processes Workflows Data Flows Complex algorithms/UCs Symbols

  4. Activity Diagram UML Syntax Partitions. Show different parties involved in the process start Customer Service Fulfillment Finance Action. It does something. There is an automatic transition on its completion. Receive Video Order A transition supports modeling of control flow. Object Node. An object produced or used by actions. This allows us to model data flows or object flows. Fork. One incoming transition, and multiple outgoing parallel transitions and/or object flows. Fill Order Send Invoice Invoice Order Receive Payment Deliver Order Join. Multiple incoming transitions and/or object flows; one outgoing transition. The outgoing continuation does not happen until all the inputs arrive from all flows. Close Order end of activity

  5. Old Data Flow Diagrams DFD for Automated Course Registration System process accept/deny reply 2 1 Check Applicant Qualification application Check Course Availability Applicant application application course data student data data flow external actor Courses Applications Students data store, such as a DB, DB table, or file

  6. Now done as Activity Diagrams

  7. Hierarchy Representation: Rake Symbol Fill Order the rake symbol (which represents a hierarchy) indicates this activity is expanded in a sub-activity diagram Deliver Order

  8. Expanded Delivery Order Activity Diagram Deliver Order Decision: Any branch happens. Mutual exclusion [ else ] [ rush ] Deliver Regular Deliver Rush Merge: Any input leads to continuation. This is in contrast to a join, in which case all the inputs have to arrive before it continues.

  9. Post Office Showdown Think that he might be watching too many martial arts films?

  10. Signal Notation A time signal Receive Video Order 30 days since sent last invoice, and no payment received Resend Invoice Fill Order Send Invoice Deliver Order Receive Payment Accept a signal Cancel request Close Order Cancel Order

  11. NextGen POS: Reducing Complexity Customer Cashier Authorization Service NextGen POS Shop and Fill Cart Cart Enter Cart Items Calculate Taxes and Discounts [ cash payment ] [ else ] Submit Authorization Request Authorize Payment Receipt Create Receipt Hand Over Items NextGen Process Sale UC benefits from activity diagram due to its complexity

  12. Activity Diagram Guidelines Use when need to depict processes with complex flow Conditional or iterative Use rake notation for sub- activity diagrams Keeps parent diagram simple Maintain a consistent level of abstraction within a diagram

  13. Exercise on Activity Diagrams We ll do in class Break up into your teams Sketch an activity diagram for creating an account, with username & password, on a website. Be sure to include swim lanes for the User, the System, and an external CAPTCHA Service. Your diagram should include: a check that the password is valid, a check that the username has not already been used a check that user entered CAPTCHA text correctly Decide what order these checks should be done in, and do those in parallel that make sense!

  14. Go for it

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#