Experience systems analysis and design by working on a
project with real-world application. You will have an opportunity to apply the knowledge you gain from
the textbook and the lectures and to demonstrate your ability to not only understand the material, but
to think critically about the material and the way it is applied.
All 3 assignments will be based on the same business problem. You will be asked to analyze the business
problem, investigate the system requirements, and create the necessary models for your internal
The Business Problem (Same as Assignment 1):
You have been asked to develop software for a pharmaceutical retail service named [email protected]
[email protected] aims to allow customers in the Toronto area to order drugs and basic medical supplies
online (eg. bandages), and then have it delivered straight to their homes. The [email protected] system
must be able to handle customer registration, ordering, billing, and delivery. It must also handle internal
business processes such as inventory/stock levels, physical order fulfillment, employee information and
status, and managerial reports.
[email protected] aims to stock both non-prescription medication (eg. Tylenol) as well as medication that
does require a prescription (eg. Antibiotics). Any customers who order prescription medication must
have a valid prescription from a physician, and the order will be fulfilled by a licensed pharmacist
employed by [email protected] The Pharmacist will also provide instructions for correct usage of the
prescription drug (eg. “Take 2 daily”) to the customer.
Customers will be required to make an account with [email protected] to be able to order. On registration,
customers will be required to provide their personal information, billing information, and delivery
[email protected] will outsource all their deliveries to an external courier service called TPS (Toronto Postal
Service). The [email protected] system should automatically interact with the TPS system and create a
courier request for every order (assume TPS provides an API to their system). [email protected] will stock
their inventory at a single warehouse and all physical order fulfillment will occur there. You can assume
for simplicity’s sake that as long as the TPS system receives the necessary order information, then they
will handle package pick-up and delivery.
Customers should be able to interface with [email protected] via a mobile app. Employees will interface
with the same app but have their own accounts with necessary privileges and features.
Besides the ability to order drugs and supplies, customers should also be able to access their own order
and billing history, update their personal info, etc… Managerial staff should be able to see general
summary reports of sales and inventory. Pharmacists and other staff should be able to see any
information that is relevant to their job (ie. only pharmacists need to see a customer’s prescription).
This is not a complete description of the targeted system. It is your job as a systems’ analyst to search
for more information, understand the business problem, and canvas any needed requirements in depth.
This could include but is not limited to: health-insurance/OHIP/UHIP related processes, inventory reordering from suppliers, or social-media presence. You are required to show that you have done diligent
research into the business problem by eliciting some further requirements in addition to all of the
requirements stated above. Assuming you have already done this in Assignment 1, you can use the
same elicited requirements in Assignments 2 and 3.
1) Create a full set of Use Case Diagrams for the [email protected] system. (30 marks)
a. Be aware of appropriate usage of <> and <>.
b. One single comprehensive UCD is also acceptable.
2) Create a CRUD table showing use cases and corresponding domain classes. (10 marks)
3) Write a fully developed use case description for 1 major use case. (ie: vital to the business
function) (10 marks)
4) Create an activity diagram to show the flow of activities for the Customer creates an Order use
case. (15 marks)
a. Hint: there will be at least 1 branch in the diagram.
5) Create a UI storyboard for the Pharmacist actor for the use case: Pharmacist fulfills prescription
order. (15 marks)
a. Reminder: Employees of [email protected] interface with the system via mobile app (see
business problem description). Think about what the Pharmacist Employee would need
to see and do to complete their job and realize this use case.
6) Create a system sequence diagram to accompany your UI storyboard from #5 for the Pharmacist
fulfills prescription order use case. (20 marks)
a. Note: Although the UI storyboard is for the Pharmacist actor, the Pharmacist is not the
only external actor involved in this use case. Think about what data must be passed
between external actors and the system and do not forget to include them on your SSD.