1. Dewey Dezmal is a systems analyst consulting for the Ruminski Public Library to develop a new information system. He meets with the library director, Peri Otticle, who provides an overview of the library's needs.
2. The current system allows patrons to borrow books and magazines, checks items for overdue returns, and allows patrons to reserve items. Peri explains some key terms like how the library can have multiple copies of a title.
3. Dewey is tasked with creating UML diagrams to model the library system, including a use case diagram, use case steps and scenarios, a class diagram using packages, and sequence diagrams.
1. Dewey Dezmal is a systems analyst consulting for the Ruminski Public Library to develop a new information system. He meets with the library director, Peri Otticle, who provides an overview of the library's needs.
2. The current system allows patrons to borrow books and magazines, checks items for overdue returns, and allows patrons to reserve items. Peri explains some key terms like how the library can have multiple copies of a title.
3. Dewey is tasked with creating UML diagrams to model the library system, including a use case diagram, use case steps and scenarios, a class diagram using packages, and sequence diagrams.
1. Dewey Dezmal is a systems analyst consulting for the Ruminski Public Library to develop a new information system. He meets with the library director, Peri Otticle, who provides an overview of the library's needs.
2. The current system allows patrons to borrow books and magazines, checks items for overdue returns, and allows patrons to reserve items. Peri explains some key terms like how the library can have multiple copies of a title.
3. Dewey is tasked with creating UML diagrams to model the library system, including a use case diagram, use case steps and scenarios, a class diagram using packages, and sequence diagrams.
Chapter 10 • Object-Oriented Systems Analysis and Design Using UML 313
Consulting Opportunity 10.3
Developing a Fine System That Was Long Overdue:
Using Object-Oriented Analysis for the Ruminski Public Library System* A s Dewey Dezmal enters the high-ceilinged, wood-paneled reading room of the Ruminski Public Library, a young woman, As Dewey looks up from the report, he says to Peri, “I’m beginning to understand the patron (or user) requirements. I seated at a long, oak table, pokes her head out from behind a moni- see lots of similarities between my old university library and tor, sees him, and stands, saying, “Welcome. I’m Peri Otticle, the yours. One item I didn’t see covered, though, was how you director of the library. I understand you are here to help us develop decide what the library should collect and what it should get our new information system.” rid of.” Still in awe of the beauty of the old library building and the Peri chuckles and replies, “That’s an insightful question. juxtaposition of so much technology amid so much history, Dewey The library staff handles the purchase of new books and jour- introduces himself as a systems analyst with a small IT consulting nals for the library. If something is popular, more than two firm, People and Objects, Inc. copies are purchased. We can create, update, and delete infor- “It’s the first time I’ve been assigned to this type of project, mation about titles and copies of books and journals, patrons, although it’s actually interesting for me, because my degree is from loan of materials, and reservations in the system.” the Information Studies School at Upstate University. You can Dewey looks up from his note pad and says, “I’m still a major in library science or IT there, so lots of my classmates went little confused. What’s the difference between the terms title on to work in public libraries. I opted for the IT degree.” and copy?” “We should work well together, then,” Peri says. “Let’s go Peri responds, “The library can have several copies of a to my office so we don’t disturb any patrons, and I can talk you title. Title normally refers to the name of a book or journal. through a report I wrote.” Copies of a title are actually lent out from the library.” As they pass the beautiful, winding staircase seemingly sculpted Based on Dewey’s interview with Peri and the require- in wood, Peri notices Dewey looking at the surroundings and says, ments description in her report, as well as your own experi- “You may wonder about the grandeur of the building, because we ence using library services, use UML to answer the following are a public institution. We are fortunate. Our benefactor is Valerian questions. (Note: It is important to make sure your solutions Ruminski. In fact, he has donated so much money to so many librar- are logical and workable. State your assumptions clearly ies that the staff affectionately calls him ‘Valerian the Librarian.’” whenever necessary.) As they pass several patrons, Peri continues, “As you can see, it’s a very busy place. And, regardless of our old surroundings, we 1. Draw a use case diagram to represent actors and use don’t dwell in the past.” cases in the system. Dewey reads the report Peri has handed him. One large sec- 2. For each use case, describe the steps (as we did to orga- tion is titled “Summary of Patrons’ Main Requirements,” and the nize the use cases). bulleted list states: 3. Describe scenarios for the steps. In other words, create a patron and write up an example of the patron as he or � A library patron who is registered in the system can borrow she goes through each step. books and magazines from the system. 4. Develop a list of things. � The library system should periodically check (at least once per 5. Create sequence diagrams for use cases based on steps week) whether a copy of a book or journal borrowed by a patron and scenarios. has become overdue. If so, a notice will be sent to the patron. 6. Complete the class diagram by determining relationships � A patron can reserve a book or journal that has been lent out between classes and defining the attributes and methods or is in the process of purchase. The reservation should be can- of each class. Use the grouping thing called package to celed when the patron checks out the book or journal or through simplify the class diagram. a formal canceling service. *Based on a problem written by Dr. Wayne Huang.
Putting UML to Work
UML provides a useful toolset for systems analysis and design. As with any other product cre- ated with the help of tools, the value of UML deliverables in a project depends on the expertise with which the systems analyst wields the tools. The analyst will initially use the UML toolset to break down the system requirements into a use case model and an object model. The use case