01.01.2015 Views

UML Weekend Crash Course™ - To Parent Directory

UML Weekend Crash Course™ - To Parent Directory

UML Weekend Crash Course™ - To Parent Directory

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Session 15—Applying the Activity Diagram to the Case Study 163<br />

Now you have all the pieces you need to do a bit of organizing. One opportunity to<br />

watch for is concurrency. Identify tasks that may be done at the same time because they<br />

don’t depend on one another. For example, Figure 15-6 shows that notifying accounts<br />

payable and updating inventory don’t overlap or depend on one another so they can be<br />

modeled as concurrent activities. Use the fork bar to show that you want to follow both<br />

logical paths at the same time. Use the synchronization bar to show that you’re done with<br />

the concurrent tasks and want to continue on a single logical path. In this example, after<br />

all the updates and notifications are done, you can print the confirmation.<br />

Notify Accounts<br />

Payable of the<br />

updated<br />

Purchase Order<br />

Update<br />

inventory for the<br />

Products received<br />

Display the<br />

"Accounts<br />

Payable notified"<br />

message<br />

Display "inventory<br />

updated<br />

successfully"<br />

message<br />

Print the<br />

receiving<br />

confirmation<br />

done<br />

Figure 15-6 Modeling the concurrency opportunity<br />

Figure 15-7 puts all the segments together. Notice in the bottom left below the activity<br />

labeled “Display “invalid item” error message” I added another merge point to bring<br />

together the segments from Figures 15-4 and 15-5.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!