SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Assignment 2: Requirements Improvement

Release date: Tuesday, 23.10.12 - Due date: Sunday, 28.10.12, 23:59


Task 05: Towards an Editor for UML Class Diagram

12 = 5+2+5 points

In preparation of some topics to come, we assume that we want to develop an editor for UML Class Diagrams.
And no, we never want you to create such an editor. You will see, where this task will leed in a few weeks.

a) Use Abbott's method to create a Domain Object Model for Class Diagrams based on the following text:

A class is a type. A class owns attributes and operations. The operations have zero or more parameters and may raise exceptions. Exceptions are types. A class has a class as super class. Attributes, Operations and Parameters have a type. Attributes, Operations and Parameters have a name.

b) Review the Domain Object Model that you created. There is some repetition. Change the model, to eliminate this repetition.

c) Describe the (fine grained) Use Case of adding one attribute to a class in the editor. You may assume that the editor is already showing a rectangular shape for a class. Give us precondition, postcondition, flow of events. Describe the change in the entity objects and the displayed diagram.

:-D New Tip: Here is another use case, to illustrate what we would like to get from you: :-D

Use Case Description: "Define Super Class"

Illustrations for: "Define Super Class"


Task 06: Distinguish between Completeness, Consistency, Clearness, Correctness

7 points
The terms “Completeness”, “Consistency”, “ Clearness”, and “Correctness” are motivated and defined on the slides 15-22 of the last lecture (accessible using your SVN account). If you are interested in more details and explanation you might consult the standard IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications (accessible from within the university network).

Requirements should be correct, clear, consistent, and complete. The following task is meant to practice these four quality attributes, so that you have a better understanding about how these terms are used. Maybe you get as well a first idea about how to look for incorrect, unclear, inconsistent, and incomplete requirements.

Your colleague reviewed a requirements document and listed eleven sentences that are obviously not good. To classify the problems you are now asked to complete the table below that tells the other team members which quality is missing and explains it shortly.

Here are the eleven sentences from the requirements document:

  • (01) The total amount due on the bill includes VAT.
  • (02) For parties who plan difficult negotiations, two extra rooms next to the conference room are offered for half the price of the conference room.
  • (03) The check out has to be acknowledged.
  • (04) During public holidays, children accompanied by their parents pay only a forth of the amount their parents pay.
  • (05) The stay can be longer than reserved. In this case the total amount due is the product of the fee for the rooms and the number of nights the guest stayed.
  • (06) The deposit for a reservation is exactly a third of the total amount due on the final bill when the customer checks out.
  • (07) On the back of each receipt printed there is a recipe printed.
  • (08) As it is customary the bill shows the total amount due excluding VAT.
  • (09) The regular fee for parties is $500 per evening. A firework at the end of the party can be booked for $100 extra.
  • (10) Bunks are not provided.
  • (11) To raise awareness of current ecological issues the carbon footprint of printing a receipt will be printed on each receipt.

Here is the table that you should complete. Your colleague already started with the work:

Sentence(s) Missing Quality Explanation
(11) Correctness That's for sure not required. Although global warming is a serious issue, the contribution of printing receipts is clearly irrelevant.
(08) and ( _ ) Consistency
(02) and ( _ ) Clearness
(03) Completeness
(04) How much do children have to pay when there is no public holiday?
( _ ) and (06)
( _ )
( _ )

Context for Task 07-08

Here are some preliminary requirements for a Time Tracking Application:

  • (01) The Time Tracking Application allows keeping track of the actual working time of all the users.
  • (02) The workers work in two shifts.
  • (03) When a worker starts his work the time is registered.
  • (04) When a worker leaves later than 30 minutes after the end of his shift, he can enter a short description of the reason for working overtime.
  • (05) Workers shall not see the reasons for the overtime of their colleagues.
  • (06) If a worker of the first shift is leaving before 2 p.m. the system shall give a notice.
  • (07) Managers can shift the regular working hours temporarily. The maximal shift is 4 hours.
  • (08) The monthly report highlights entries using “18 pt Times New Roman” font with color red,
  • (09) where workers arrived too early or too late for their duty period.
  • (10) Managers, workers and the work council will meet regularly to review the social impacts of the time tracking system.

Task 07: Warmup for the Sophist REgelwerk

10 = 4+3+3 points

a) Demonstrate in detail, how to apply the rules. Take sentence (3) and apply rule R1:

  • Which textual clue tells you, that this rule is relevant for the sentence?
  • Which problem does rule R1 address in general?
  • Describe this problem in respect to sentence (3)!
  • State a question that you could ask a customer to solve the problem. Give an example how the sentence without the problem could look like.

b) Demonstrate how to identify implicit assumptions (presuppositions) using one of the sentences (e.g. (10)).

  • Name the steps of the rule in general.
  • Execute the steps of the rule with respect to the sentence.
  • Describe the result that you find.

c) Find a definition for the following words:

  • “to leave” (or any other verb)
  • “colleague” (or any other noun)
  • “regular” (or any other adjective)

One for each definition is enough, if it has the right form.


Task 08: Review these requirements using the Sophist REgelwerk

8 points

You should roughly understand what the Time Tracking Application is meant to be. Nevertheless, there are many issues with these requirements. Give us eight issues of at least three different types. The first row of the table gives you one example. You should use what you learned about the Sophist REgelwerk (and the final remarks of the last lecture).

SentenceClue on the language level pointing to a problem? What is the problem?What could you ask to clarify the requirement?
(03) “a” Extension of the requirement not explicit.
(Generalization: Substantives without a reference, R15: Only use indefinite articles in definitions)
To whom does this requirement apply? To all workers?
( _ )
( _ )
( _ )
( _ )
( _ )
( _ )
( _ )
( _ )
teaching/lectures/atsc/2012/assignment_2.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2020