Learning Outcomes: Guide students through the process of creating activity diagrams, using examples from the ExoticEscapes Travel Agency business domain.
Lab Lecture Workbook: Creating Activity Diagrams for Business Processes
Objective:
By the end of this lab, students will understand how to create activity diagrams to model key business processes in the ExoticEscapes Travel Agency system.
Part 1: Introduction to Activity Diagrams
Activity diagrams are part of UML (Unified Modeling Language) and are used to model the flow of actions in a business process.
They help visualize the sequence of activities, decision points, and parallel processes.
Key elements of activity diagrams:
1. Start node: Solid circle
2. End node: Solid circle with a border
3. Action: Rounded rectangle
4. Decision: Diamond
5. Fork and join: Solid bars for parallel activities
6. Swim lanes: To show which actor or system component is responsible for each action
Part 2: Steps to Create an Activity Diagram
Step 1: Identify the Process
Choose a key business process from the ExoticEscapes system.
We'll use "Create a Custom Travel Package" as our example.
Step 2: Determine the Start and End Points
Identify where the process begins and ends.
Example:
- Start: Customer initiates custom package request
- End: Travel package is finalized and ready for booking
Step 3: List the Main Activities
Break down the process into its main activities.
Example:
1. Customer submits travel preferences
2. System suggests initial itinerary
3. Travel Agent reviews and refines itinerary
4. Customer reviews itinerary
5. Finalize package details
6. Generate quote
7. Present to customer
Step 4: Identify Decision Points
Determine where the process flow might branch based on decisions.
Example:
- Does the customer approve the itinerary?
- Does the customer accept the final quote?
Step 5: Identify Parallel Activities
Determine if any activities can occur simultaneously.
Example:
- While the Travel Agent is refining the itinerary, the System could be checking availability of accommodations and activities.
Step 6: Draw the Diagram
Use a diagramming tool (like Lucidchart, Draw.io, or even pen and paper) to create the activity diagram.
Exercise 1: Create a basic activity diagram for the "Create a Custom Travel Package" process using the steps and examples provided above.
Part 3: Advanced Elements in Activity Diagrams
1. Swim Lanes
Swim lanes divide the activity diagram into columns, each representing a different actor or system component responsible for specific activities.
Example for ExoticEscapes:
- Customer
- System
- Travel Agent
Exercise 2: Enhance your "Create a Custom Travel Package" activity diagram by adding swim lanes for Customer, System, and Travel Agent.
2. Object Flows
Object flows show how objects or data move through the process.
Example:
- Travel Preferences object flowing from Customer to System
- Itinerary object flowing between System, Travel Agent, and Customer
Exercise 3: Add object flows to your diagram to show how the Travel Preferences and Itinerary objects move through the process.
3. Interrupts and Exceptions
Use dashed arrows to show interrupts or exceptions in the normal flow.
Example:
- Customer cancels the package creation process
- System detects unavailable accommodation
Exercise 4: Add an exception to your diagram for when a customer cancels the package creation process mid-way.
Part 4: Creating a Complex Activity Diagram
Now, let's create a more complex activity diagram for the entire booking process at ExoticEscapes.
Step 1: Identify the larger process
"Book an Exotic Travel Experience"
Step 2: List main activities and decision points
1. Browse destinations
2. Choose destination
3. Create custom package or select pre-made package
4. Review and modify package
5. Check availability
6. Make payment
7. Confirm booking
8. Generate travel documents
Decision points:
- Custom or pre-made package?
- Is the chosen package available?
- Payment successful?
Step 3: Identify parallel activities
- While customer reviews package, system checks preliminary availability
- After payment, system simultaneously confirms booking and begins generating travel documents
Step 4: Define swim lanes
- Customer
- ExoticEscapes System
- Travel Agent
- Payment Gateway
Step 5: Draw the diagram
Exercise 5: Create a comprehensive activity diagram for the "Book an Exotic Travel Experience" process, incorporating all elements discussed (swim lanes, object flows, parallel activities, decision points).
Part 5: Analyzing and Refining Activity Diagrams
Once you've created an activity diagram, it's important to analyze and refine it:
1. Check for completeness: Ensure all possible paths are represented
2. Verify correct use of symbols: Start/end nodes, actions, decisions, forks/joins
3. Confirm logical flow: The process should make sense when "walked through"
4. Seek feedback: Have peers or stakeholders review the diagram
5. Refine and simplify: Remove unnecessary complexity or redundant steps
Exercise 6: Analyze your "Book an Exotic Travel Experience" activity diagram. Identify at least three areas for improvement and implement these refinements.
Conclusion:
Activity diagrams are powerful tools for visualizing and understanding business processes.
By mastering their creation, you'll be better equipped to analyze, communicate, and improve the workflows within the ExoticEscapes Travel Agency system.
Final Assignment:
Create activity diagrams for two additional key processes in the ExoticEscapes system (e.g., "Manage Customer Profiles" and "Coordinate with Local Partners"). Apply all the concepts learned in this lab, including basic and advanced elements. Provide a brief analysis of each diagram, highlighting potential process improvements or system features suggested by your visual representation.
This lab workbook provides a comprehensive guide to creating activity diagrams, from basic concepts to advanced techniques, all within the context of the ExoticEscapes Travel Agency business domain. It offers step-by-step instructions and practical exercises to reinforce learning and apply the concepts directly to their project.