Sample exam 1

advertisement
CS/SWE 421 Fall 2010
Mid-term Examination
Version A
Student Name:___________________________________
Student G#: ________________________
Student Signature for Honor Code:
________________________________
Part 1. Short answer (you may use bullet points)
1. Why is software engineering hard, as opposed to other types of engineering? In
other words, name some unique properties of this domain that explain why it is
more difficult to design a website (for example), as opposed to the hardware of a
motorcycle (for example). Your answer should generalize past any particular
software and hardware implementation. (6 pts)
2.
What information does the dependency relationship between two classes capture
in a UML class diagram? That is, how is this relationship more specialized than
the standard association? (4 pts)
3. Describe the difference between verification and validation. (6 pts)
4. Describe the RAD (Rapid Application Development) model. Then, explain what
types of software projects are best suited to this type of model. (10 pts).
5. List 5 properties of the eXtreme programming methodology that we have
discussed in class. For each property describe the associated benefit. (15 pts)
Part 2. Diagrams
1. Draw a UML Class Diagram for the following Grocery Store System below.
Make sure you document all variable and method types (arguments and return).
Document your assumptions, if any. (13 pts)
a. A single bill is associated with many items
b. An item is associated with one and only one bill
c. An item has an association with one and only one product
d. An item is a part of a bill
e. An item maintains a count of how many products were purchased, as well
as the product itself
f. Each product has a name, SKU number, regular price, and sale price
g. A bill is associated with one and only one customer
h. A customer is associated with at least one, and possibly more, bills
i. A customer is a generalization of a member customer
j. A customer has a name and address
k. A member customer has a bonuscard number
l. A bill has operations to calculate the total amount to be paid before sales
are applied, as well as after sales are applied
m. An item has an operations to calculate the total price of the product times
the quantity of products
2. Draw a swimlane diagram for the following online bookstore system. Each actor
is underlined below (i.e. should be a column in your diagram) (17 points)
The User enters a username and password. The Website then checks to see
whether or not the username and password match, first by retrieving this
information from the Database. If the username and password do not match, the
Website prompts the user to re-enter the same information. This cycle continues
until either the user enters correct information, or the maximum allowed number
of tries (maxTries) is exceeded, in which case the Website sends the user to an
error page.
If the User enters a valid username and password with the allowed number of
tries, the Website presents the user with a search page. The user then enters the
name of a book. The Website then consults the Database and returns all matching
results.
While searching for books, the User can also concurrently view their order history
(in a separate window or frame). On the order history menu, they can choose to
see the details of a previous order, or return an item from a previous order. The
order history window does not need to be synchronized with the rest of the
application until the user logs out of the system.
The User can purchase any book in their search results, or they can choose to log
out. If they choose to purchase a book, they are prompted to enter their shipping
and billing information. The Website then consults the Database and checks that
the credit card entered matches the shipping address. If this is the case, the
Website sends the User to a receipt page, otherwise the Website prompts the User
to re-enter their shipping and billing information.
After completing interaction with the Website, the User logs out of the system.
(answer on next page)
3. Draw a Use Case diagram for question 2 (the online bookstore) (9 pts)
Part 3. Multiple choice.
1. Label the following requirements as either functional (F) or non-functional (NF)
(10 pts):
a. The system shall conform to the process defined in document SPA-123.
_________
b. The system shall allow the user to enter a username
_________
c. The system shall store the username in a database
_________
d. The website user interface shall be 508 compliant
_________
e. The system shall undergo routine downtime for one hour each week
_________
2. Indicate whether the following are true always (A), sometimes (S), or never (N)
(10 points):
a. Requirements should be testable
_________
b. Actors in use cases are external systems
_________
c. A producer is also a consumer in a data flow diagram
_________
d. Requirements are complete and consistent before implementing code
_________
e. Prescriptive process models deliver software in increments
_________
Download