Case Study: Whirlwind Courier Services As an employee of a large international courier and shipping service, Mike Morten met with many companies that shipped and received packages almost every day.
He was frequently asked if his company could deliver local packages on the same day. Over several months, he observed that there appeared to be a substantial need for courier services in the city in which he lived.
He decided that he would form his own courier delivery company called Whirlwind to fill this need. Mike began by listing his mobile telephone number in the Yellow Pages. He also sent letters to all those companies that had requested same-day courier service that his prior company had not been able to serve. He hoped that through good service and word-of-mouth advertising that his business would grow.
He also began other advertising and marketing activities to promote his services. At first, Mike received delivery requests on his business mobile phone. However, it was not long before his customers were asking if he had a Web site where they could place orders for shipments.
He knew that if he could get a Web presence that he could increase his exposure and help his business grow. After he had been in business only a few short months, Mike discovered he needed to have additional help. He hired another person to help with the delivery and pickup of packages. It was good to see the business grow, but another person added to the complexity of coordinating pickups and deliveries.
With the addition of a new person, he could no longer “warehouse” the packages out of his delivery van. He now needed a central warehouse where he could organise and distribute packages for delivery. He thought that if his business grew enough to add one more delivery person that he would also need someone at the warehouse to coordinate the arrival and distribution of all the packages.
Tasks: The tasks for this assignment will be divided into two (2) main parts.
Part A: Will focus on defining the stakeholders, how to elicit requirements as well as identify some functional and non-functional requirements. You will also be required to provide some initial technology recommendations and characterise Small and Medium-Sized Enterprises (SMEs) in general with regard to their challenges to utilise IT solutions when compared to large enterprises (with evidence).
Part B: Will focus on the functional and data requirements of the product, including the development of a use case diagram, creating an events table, creating an ERD diagram as well as a Context Diagram and Level 0 DFD. Please follow the standard report writing format and structure. (See Assignment Guide for further information)
Answer the following questions with clear statements and evidence.
1. Who are the stakeholders for Whirlwind? How involved should Whirlwind’s customers be in system definition? As the business grows, who else might be potential stakeholders and interested in system functions?
2. If you were commissioned to build a system for Mike, how would you determine the requirements? Be specific in your answer. Make a list of the questions that need answered.
3. What are the primary functional requirements for the system as described so far in the case?
4. What technology and communication requirements do you see? What are the hardware requirements, and what kind of equipment will provide viable options to the system? What would you recommend to Mike?
5. Briefly describe some possible non-functional requirements for the system.
6. Based on literature research, briefly (ca. 0.5 page) describe some relevant general challenges Small and Medium Enterprises (SMEs) are facing when it comes to utilising cutting-edge IT-based solutions, compared to large enterprises. Substantiate your argument with evidence from ca. 5 reputable literature sources.
Please use the appropriate modelling tools (Visio or similar) to complete any modelling requirements.
When Mike got an order, only on his phone at first, he recorded when he received the call and when the shipment would be ready for pickup. Sometimes, customers wanted immediate pickup; sometimes, they were calling to schedule a later time in the day for pickup.
Once he arrived at the pickup location, Mike collected the packages. It was not uncommon for the customer to have several packages for delivery. In addition to the name and address of the delivery location, he also recorded the time
He noted the desired delivery time, the location of the delivery, and the weight of the package to determine the courier cost. When he picked up the package, he printed out a label with his portable printer that he kept in the delivery van.
At first, Mike required customers to pay at the time of pickup, but he soon discovered that there were some regular customers who preferred to receive a monthly bill for all their shipments. He wanted to be able to accommodate
those customers. Bills were due and payable upon receipt.
To help keep track of all the packages, Mike decided that he needed to scan each package as it was sorted in the warehouse. This would enable him to keep good control of his packages and avoid loss or delays.
The delivery of a package was fairly simple. Upon delivery, he would record information about when the delivery was made and who received it. Because some of the packages were valuable, it was necessary in those instances to have someone sign for the package upon delivery.
7. From the description so far, identify all the actors who will be using the system.
8. Using the actors who you identified, develop a list of use cases based on the user goal technique. Draw a use case diagram for these use cases.
9. Using the event decomposition technique for each event you identify in the description here, name the event, state the type of event, and name the resulting use case. If required, complete/modify your use case diagram for these use cases.
Whirlwind courier services grew and changed over the years. At first, Mike received requests for package pickups on his mobile phone, recorded that information in a log, and would then drive around to retrieve all the packages later in the day.
However, he soon discovered that with another driver, it was difficult to coordinate pickups between the two of them from his van. It was not long before he reorganised his business and turned the warehouse employee into a driver. Then, he stayed in the warehouse himself, and his two employees made all the pickups and deliveries.
This worked well because he could control and coordinate the pickups and deliveries better. It was also easier for him to receive pickup requests working at a desk rather than trying to do it while driving a delivery van.
As he thought about how his business was growing and the services he provided to his customers, Mike began to itemize the kinds of information he would need to maintain. Of course, he needed to maintain information about his customers.
Some of his customers were businesses; some were individuals. He needed to have basic address and contact information for every customer. Also, for his
corporate customers, he needed to identify a primary contact person.
It was mostly his corporate customers who wanted to receive monthly statements listing all their shipments during the month and the total cost. Mike needed to distinguish which customers paid cash and which wanted monthly statements. In fact, for those who paid monthly, he needed to keep a running account of such things as when they were last billed, when they paid, and any outstanding balances.
Finally, when payments were received, either for individual shipments or from monthly invoices, he needed to record information about the payment: type of payment, date, and amount. Although this was not a sophisticated billing and payment system, Mike thought it would suffice for his needs.
Next, he started thinking about his packages and shipments. At the time that a request for a pickup came in, he needed to keep track of it as some type of delivery request or delivery order. At that point in time, Mike mostly needed to know who the customer was, where the pickup location was, and what date and time the package(s) would be ready for pickup.
He also recorded the date and time that he received the order. A delivery order was considered “open” until the delivery van arrived at the pickup location and the packages were all retrieved. At that point, the delivery order was satisfied.
Once the packages were retrieved, each package needed to be uniquely identified. Mike needed to know when it was picked up and which delivery person picked it up. Other important information was the “deliver to” entity name and the address. He also needed to identify the type of delivery. Some packages were high priority, requiring sameday delivery. Others were overnight. Of course, the weight and cost were recoded so the customer could either pay or have it added to the monthly invoice.
In the courier and delivery business, one of the most important information requirements is the date and time stamp. For each package it is important to know when it was picked up, when it arrived at the warehouse, when it
went back out on the delivery run, and when it was delivered. When possible, it is also important to have names associated with each of these events.
10. Using the noun technique, read through this case and identify all the nouns that may be important for this system. Once you have identified all the nouns, identify which are entities and which are attributes of these primary entities. Construct an ERD based on the entities and attributes you have identified. Identify Primary Keys. Determine what relationships should be among the entities. Add cardinality constraints, being especially cognizant of zero-to-many versus one-to-many differences.
11. Based on the information so far, draw a) a Context Diagram and b) a Level 0 Data Flow Diagram (DFD).