You are on page 1of 1

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

M10_KEND3442_09_SE_C10.indd 313 24/01/13 3:12 PM

You might also like