Midterm Test
Test type: Closed-book examination
Number of questions: 7
Total points: 40
Test weight in course
grade: 14%
1
Briefly describe your team’s project
in CS426 (six to ten lines description) and give 4 examples of functional
requirements and 2 examples of non-functional requirements from your team’s
project.
[7 points]
2
Explain why UML is considered to be
a unified modeling language for
software systems.
[4 points]
3
Explain what is meant by use case and what is meant by scenario. Give an example of a use case,
using the template used in the textbook for use case specification. The flow of
events in the use case should include at least 5 steps. The use case can be
either related to your project or can be taken from any other application.
[7 points]
4
Outline the CRC
(Class-Responsibilities-Collaborators) analysis technique for finding analysis
classes in object-oriented modeling.
[5 points]
5
Explain the meaning of the relationship UML building block and
indicate what is meant by the navigability
of a relationship. Give an example of relationship between two classes and
indicate whether this relationship is navigable or not. Explain why it is or it
is not navigable.
[4 points]
6
Indicate the UML notations for activity diagrams (start and stop
states, action states, sub-activity states, transitions, decisions, forks,
joins, and swimlanes). Give an example of an activity diagram that includes at
least 6 action states, a fork, a join and two swimlanes. Provide some
additional (textual) description to your activity diagram to explain its
meaning.
[7 points]
7
CHOICE: Answer either (a) or (b)
below but not both.
(a) Explain what is meant by an interface, show the UML syntax for
interfaces, and indicate the advantages and disadvantages of using interfaces
in object-oriented modeling.
(b) Explain what is
a statechart diagram, show the UML syntax for statecharts
(detailed syntax for states and detailed syntax for transitions) and enumerate
the four types of event that trigger transitions. You need not explain each
type of event.
[6 points]