UNB Faculty of Computer Science CS3013
Software Engineering II
Assignment 3 February 6,
2001 due February 13, 2001 evening section
02B, course ID 153463
Question 1. Exercise 5, page 128 of the textbook. I have modified it slightly as follows:
Assume the FieldOfficer can invoke a
Help feature when filling in an EmergencyReport. The HelpReportEmergency feature provides
a detailed description for each field and specifies which fields are
required. Modify the ReportEmergency use case (see
Figure 4-11 on p. 116 of the text) to include this help functionality. Which relationship (“include” or “extend”)
should be used to relate the ReportEmergency and HelpReportEmergency?
Question 2. For the use case diagram for the banking
system (see Figure 1 below, also online as a Rational Rose .mdl file
here), write
up a use case and draw a sequence diagram for “Open Account”.
Figure 1. Preliminary use case diagram for a banking
system.
Figure 2. Preliminary class diagram for the banking
system.
The “Open Account” use case has the teller and
the customer as principal actors. The
basic action is for the teller to request the customer’s ID (if they have one),
and to create a new account for the customer as requested. There are two basic account types; a
chequing account (which comes with paper cheques) and a savings account (which
is automatically enabled for a debit card).
As mentioned above, create
(a)
a formal use case description for “Open Account”,
(b)
a scenario (write this up as in e.g. Fig. 4-5, p.109 of the text) for the “Open
Account” use case,
(c)
a sequence diagram for the use case scenario you created in (b),
(d)
an update (if necessary) to the main class diagram to add any new classes (with
their appropriate attributes and operations), along with any new attributes or
operations to the existing classes, as well as any new relationships between the
existing and/or new classes.
Save all of these changes and updates in the
modified Rational Rose .mdl file to be handed in with your assignment.
Question 3. For your updated banking system model from Question
2, add another use case called “Withdraw”.
Assume that there are two variations of the use case; one using an
Automated Teller Machine and one using a person (the Teller) for
assistance. As for Question 2, write up
a use case and draw a sequence diagram for “Withdraw”. Similar to the approach used in Question 2
above, create
(a)
a formal use case description for “WithdrawUsingATM”,
(b)
a scenario (write this up as in e.g. Fig. 4-5, p.109 of the text) for the “WithdrawUsingATM”
use case,
(c)
a sequence diagram for the use case scenario you created in (b),
(d)
an update (if necessary) to the main class diagram from Question 2 to add any
new classes (with their appropriate attributes and operations), along with any new
attributes or operations to the existing classes, as well as any new relationships
between the existing and/or new classes.
Save all of these changes and updates in the
modified Rational Rose .mdl file to be handed in with your assignment.
Note
that you must draw all diagrams using Rational Rose and submit printouts of the
diagrams with your printed assignment. All assignments
must be handed in on 8.5 by 11 inch paper, typed, with all pages numbered and
with a cover page giving the course information, student information, date, and
table of contents. Assignments should
be handed to the instructor in class, or placed in the wooden bin provided on
E-level between Head and Gillin Halls. In
addition, attach a floppy disk containing your modified .mdl file resulting
from Questions 2 and 3.