Question: consulting Opportunity 103 developing a fine System That Was Long Overcle. Using object-oriented Analysis for the Ruminski Public Library System As Dewey Dezmal enters the

consulting Opportunity 103 developing a fine System That Was Long Overcle. Using object-oriented Analysis for the Ruminski Public Library System As Dewey Dezmal enters the high-ceilinged, wood-paneled reading room of the Ruminski Public Library, a young woman, seated at a long, oak table, pokes her head out from behind a computer screen, sees him, and stands, saying, "Welcome. I'm Perl Otticle, the director of the library. I understand you are here to help us develop our new Information system." Still in awe of the beauty of the old library building and the juxtaposition of so much technology amid so much history, Dewey introduces himself as a systems analyst with a small IT consulting firm, People and Objects, Inc. "It's the first time I've been assigned to this type of project, although it's actually interesting for me, because my degree is from the Information Studies School at Upstate University. You can major in library science or IT there, so lots of my classmates went on to work in public libraries. I opted for the IT degree. "We should work well together, then," Perl says. "Let's go to my office so we don't disturb any patrons, and I can talk you through a report I wrote." As they pass the beautiful, winding staircase seemingly sculpted in wood, Peri notices Dewey looking at the surroundings and says, 'You may wonder about the grandeur of the building, because we are a public institution. We are fortunate. Our benefactor is Valerian Ruminski. In fact, he has donated so much money to so many libraries that the staff affectionately calls him Valerian the Librarian." As they pass several patrons, Peri continues, "As you can see, it's a very busy place. Even though we also have many online readers who just browse materials online. And, regardless of our old surroundings, we don't dwell in the past." Dewey reads the report Peri has handed him. One large section is titled "Summary of Patrons' Main Requirements, and the bulleted list states: A library patron who is registered in the system can borrow books and magazines from the system. The library system should periodically check (at least once per week) whether a copy of a book or journal borrowed by a patron has become overdue. If so, a notice will be sent to the patron A patron can reserve a book or journal that has been lent out or is in the process of purchase. The reservation should be canceled when the patron checks out the book or journal or through a formal canceling service As Dewey looks up from the report, he says to Peri, "I'm beginning to understand the patron (or user) requirements. I see lots of similarities between my old university library and yours. One item I didn't see covered, though, was how you decide what the library should collect and what it should get rid of." Peri chuckles and replies, "That's an insightful question. The library staff handles the purchase of new books and journals for the library. If something is popular, more than two coples are purchased. We can create, update, and delete information about titles and copies of books and journals, patrons, loan of materials, and reservations in the system." Dewey looks up from his notepad and says, "I'm still a little confused. What's the difference between the terms title and copy?" Peri responds, "The library can have several copies of a title. Title normally refers to the name of a book or journal. Copies of a title are actually lent out from the library." Based on Dewey's interview with Peri and the requirements description in her report, as well as your own experience using library services, use UML to answer the following questions. (Note: It is important to make sure your solutions are logical and workable. State your assumptions clearly whenever necessary.) 1. Draw a use case diagram to represent actors and use cases in the system. 2. For each use case, describe the steps (as we did to organize the use cases). 3. Describe scenarios for the steps. In other words, create a patron and write up an example of the patron as he or she goes through each step. 4. Develop a list of things. 5. Create sequence diagrams for use cases based on steps and scenarlos. 6. Complete the class diagram by determining relationships between classes and defining the attributes and methods of each class. Use the grouping thing called package to simplify the dass diagram