Fundamentals of Software Engineering PDF
Fundamentals of Software Engineering PDF
MIDTERM.README
1. All of the questions in this exam paper ask you do some part of a requirements analysis for
SweetDeals. Sweetdeals is a system that provides the user with items that are sold for a
low price in Addis Ababa. The requirements and background about the proposed system is
found on the next page.
3. This is a closed book exam. You may not use any reference materials during the exam; if
you have any notes on you please put them away.
4. You have 1½ hours to complete as much of the exam as possible. Answer all questions on
the separate answer sheet provided to you during the exam. The weight of each question is
indicated at the beginning of each question in parentheses.
7. Write your name on this cover sheet AND at the top of each page of this booklet, since
some pages might get detached.
1
Name:____________________________________________ID___________________________
Background
Assume that you are hired as a developer for a tech startup company called SweetDeals.
SweetDeals provides the user with the list of items that are sold for a low price in Addis Ababa.
Sellers can post items that they want to trade along with pictures of the item after registering in the
system. If a buyer found out that an item is bogus (fake) after they purchased it, they can mark the
item as bogus. If the report is found to be true, SweetDeals will delete the sellers account from the
system.
The system allows the buyer to browse the items found in different categories such as Fashion and
Electronics. The system will also allow the user to search for an item by entering its name. After
selecting an item, the user can browse through the different images of the item. The user can also
click on the buy button specifying their personal details such as name and shipping address and
number of items (s)he wants to buy. The system will be updated to reflect the changes. The buyer
will pay for the item in person when a SweetDeals delivery person delivers the product at the
buyers preferred address.
1. [2 pts] Assume that your team chose to use waterfall as a lifecycle model. Mention to
advantages and disadvantages of using a waterfall model for this project.
2. [6 pts] Identity at least three functional requirements and one non-functional requirement
for sweat deals. Note: You will lose makes if those functional requirements are bad
requirements.
3. [12 pts] Draw a use case diagram for your system. For each of the elements (actors, use
cases) write a one sentence description to let me understand your use case diagrams.
4. [10 pts] Write a formal use case description for one of the use cases in your system. Your
use case description must include Goal, Primary Actor, Level, Precondition, Success end
condition, failure end condition, trigger, main success scenario, extensions, and
alternatives. You may select any one of the use cases that you identified in Question#3.
But your use case must satisfy the following criteria:
a. Must have at least four steps in their main flow.
b. Must have at least one alternative flow.
c. Must have at least one extension.