ser ex3 questions

2

Click here to load reader

Upload: andreluizpsilveira77

Post on 20-Jul-2016

225 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Ser Ex3 Questions

Universität Stuttgart Institute of Industrial Automation and Software Engineering

Prof. Dr.-Ing. Dr. h. c. P. Göhner

WS 04/05 1 10 Nov 2004, Gt

Exercise 3 Introduction to UML (2)

Question 3.1 Class Identification

Your task is to develop a computer system for a university library. Currently, the library uses a program written in the 1960s in an antiquated language. With that, the library carries out some simple administrative tasks and processes a catalogue on card basis.

You have to create an interactive system that can handle both activities online.

After intensive examinations the following requirements exist:

• Books and magazines. In the library, there are books and magazines. There can be more than one copy of a book. Some books are only available for short time borrowing. All other books can be borrowed for three weeks by members of the library. Magazines can be borrowed only by employees. Members may borrow up to six units, employees of the library up to twelve units at a time. New books and magazines arrive regularly at the library, old ones will be dumped from time to time. At the end of every year the magazines of the current year will be sent away to bind them together.

• Borrowing. It is important, that the system can track when books and magazines have been borrowed and returned in, because the actual system can already do that. The new system should also give out reminders when the borrowing time span has been exceeded. A future requirement could be, that a user can extend the borrowing time span, if the book is not reserved by another person.

• Search. The system should allow the users to search for a book of a certain topic or of a certain author, etc. It should also be possible to check, if this book is available for borrowing, or, if not to reserve it immediately. The search is accessible to everybody.

a) Are these requirements complete? Which further questions should also be asked?

b) As first step, identify all candidate classes of the system by identification of the nouns in the requirements description.

c) Sort out all nouns, which are obviously less suited as a class, to create a sensible list of classes of the systems. Justify your decisions.

d) (Discussion question) Do you have other suggestions for the solution? Why?

Question 3.2 Identify classes and specify attributes

At a university there are student employees (hiwis) and normal employees to be administrated. For every person, the name (consists of first name and last name) and the address (consists of zip code, city and street) has to be saved.

For hiwis, it also has to be saved the matriculation number and the beginning and end of the contract, as well as the weekly work time. Every hiwi earns the same hourly rate. For every normal employee the date of hiring has to be saved.

Page 2: Ser Ex3 Questions

Software Engineering for Real-Time Systems Exercise 3: Introduction to UML (2)

WS 04/05 2 10 Nov 2004, Gt

a) Identify classes and attributes and depict them in a diagram. Create a description for every class. All attributes have to be specified. Are there elementary classes?

Question 3.3 Object diagram and class diagram

In a library, the following books are available:

• Ken Follet, Pillars of the Earth, 1990

• Noah Gordon, The Medicus, 1987

• Nicholas Evans, The Horse Whisperer, 1995

For every library member, name, address, birth date and its number are saved. Hans Müller, born 1 march 1995 from Bochum borrows "Pillars of the Earth", that has to be returned not later than 12 may 1998. This date will be written into the book. Else Wallersee from Dortmund, born 26 march 1975 borrows "The Medicus" and "The Horse Whisperer". Both books have to be returned not later than 14 may 1998.

a) Identify objects and their associations and depict them in an object diagram.

b) Identify the classes and their associations on the basis of the found objects and depict them in a class diagram.