Chapter Case: Campus Bikes Campus Bikes is a popular bicycle shop located near a major university. The business has grown and the owner,
Mark Turner, wants to install an up-to-date computer system to handle all business functions.
Campus Bikes sells several brands of new bikes, including everything from high-end racing models to beach
cruisers. In addition to sales of new bikes and accessories, Mark’s service department is always busy. The staff
includes Mark himself, a bookkeeper, two part-time sales reps, a full-time mechanic, and several part-time service
helpers who assemble bikes.
Before opening the shop three years ago, Mark worked for many years in his father’s auto dealership, Turner
Motors, and he learned all about the automobile business. In the bike shop, he runs a similar operation, but on a
much smaller scale. For example, sales orders are recorded on pre-printed forms, and service requests are written
up just as they would be in an auto service department.
Mark’s customers find him fair and reasonable. He likes to say that the main difference between his business and a
big-box retailer is that he knows his customers and will do whatever it takes to keep them happy.
You work at the college as a lab assistant in the computer information department. You earned a computer science
degree at a two-year school, and you recently decided to work toward your four-degree. The computer lab
manager, Jill, often suggests that local businesses contact you for help in troubleshooting IT issues.
This morning, you received a call from Mark, who wants to hire you as a consultant to help plan a system for
Campus Bikes. You learned that Jill had referred him, and you are excited to have this opportunity. It probably
didn’t hurt that both you and Jill had bought bikes from Mark, and already knew him. After spending several
weekends talking with Mark and the staff, you are ready to start. You decide to use an object-oriented approach
that will be easy to understand.
1. List possible objects in the new bike shop system, including their attributes and methods.
2. Identify at least three possible use cases and actors.
3. Create a use case diagram that shows how service requests are handled.
4. Create a state transition diagram that describes typical customer states and how they change based on
specific actions and events.