CS 6300: Assignment 1

Due, Friday September 15 in class.

  1. What (a) advantages do you see for having a unified modeling language for software engineering?

    (b) Disadvantages?

    Give each answer in a paragraph or bulleted list.
  2. Consider the class diagram for the library given below. Assume that you are modeling the problem domain of the GA Tech library. Modify the diagram accordingly. (If you are unsure about how the library works, you may wish to visit it or check its policies on the library web pages.)



  3. (a) Diagram the "borrow copy of a book" use case for the Tech library. (This is very simple; just a single use case.)

    (b) Explain why you chose to include or exclude the librarian or library staff member as an actor.

    (c) Describe the use case in more detail, giving an entry condition, a sequence of steps, and an exit condition.

    (d) Draw a sequence diagram for tbe "borrow copy of a book" scenario in which the book can be borrowed and is. (I.e. there is no need to consider situations such as the copy not being available, the patron having too many books on loan already, etc.)
  4. (a) Draw a statechart diagram for a BookCopy object in a library where, if it is not returned within three weeks it becomes overdue.

    (b) Describe or illustrate the simple change you would need to make to the class diagram in Question 2 to make it consistent with this new model of the BookCopy's state. (A sentence or two is sufficient, or a sketch of the fragment of the class diagram with the change made.)