Part A

Requirements Elicitation and Validation

  • Give reasons why the process of requirements elicitation and validation an iterative one? Answer in 4 to 7 sentences of your own words.
  • What roles does the requirement documentation play in the process of requirements elicitation and validation? Answer in 4 to 7 sentences of your own words.
  • Explain the differences between scenarios and use cases? What would be their relationship between scenarios and use cases in a requirements document? Answer in 4 to 7 sentences of your own words.
  • Assuming that you are going to create a tool to automate the job of an employee, and you are scheduled to interview her. Would it be useful to prepare a set questions? If not, why not? If so, why?, and would you stick to those questions during the interview? Answer in 4 to 7 sentences of your own words.
  • Write down the key differences between requirement goals and requirement specifications.
  • Develop each of the following requirement goals into a set of requirement specifications. These goals do not provide all of the necessary information, so it is up to you to make any assumptions that you need to make in order to do this:
    • "The tab tool can take a plain text document, and convert tabs to spaces, spaces to tabs or change the tab size."
    • "The tab tool will be easy to use."
    • "The website will support multiple browsers.
    • "The website will support multiple users."

Part B

Class Diagram

Draw a UML class diagram that models the aspects of a real estate agents business that are described below.

  • The agency handles the sale and rental of properties on behalf the owners of the properties. A property can be owned by one or more people or by a company.
  • An employee, known as the "agent", supervises the sale of a property. There can be more than one agents involved with a sale.
  • At the time of sale, details of the sale contract such as price, deposit paid and settlement date are recorded.
  • There is a rental agreement established for each rental, which records information such as the length of the rental, and payment method.
  • Each rental property has an associated rental agent. A rental agent will supervise the rental. The rental agent will arrange and record any property maintenance required (such as calling a plumber to fix a problem with the hot water system). The rental agent will perform regular inspections of the property and make an inspection report.

Your model must show

  • named classes
  • named associations and association multiplicity
  • example attributes of classes (at least 3 attributes, but as many as possible)


Do it using pencil and rubber first. Commit this to electronic form when you have convinced yourself that it works. Consider using BOUML to draw the class diagram.


  • In case the diagram gets too complex, it may be best to have two diagrams, one for selling and one for renting, or even several diagrams.
  • You should be able to find more than one aggregation and more than one generalisation.
  • BOUML allows you to set the page size, and page orientation.
  • There are many possible correct answers here, and I do not expect to see the same answer twice.

Part C

Statechart diagram

Draw a statechart that models the operation of the tape recorder which is described below.

A single cassette tape recorder has the following seven control buttons which govern its operation. See image.

The machine can play, fast forward and reverse, or record in either direction (right to left or left to right). We summarise its operations as follows:

  • The single arrow buttons initiate replay of a tape. When the end of tape is reached, the machine will automatically continue playing in the reverse direction, i.e. play the other side of the tape.
  • The double arrow buttons initiate high speed tape winding. The movement stops when the end of the tape is reached.
  • The stop button stops tape movement due to play, record or fast motion.
  • The record button initiates recording from an external source such as a CD player, microphone or radio. The direction of tape movement is the same direction that the tape was moving when last it was stopped. Recording stops when the end of tape is reached.
  • The play, record and fast forward buttons only function when the tape is stopped --- otherwise they have no effect.
  • The pause button temporarily stops operation of the tapedeck. The pause remains on until the pause is released. While the pause is on, the tape deck could be set to record, or to play or to fast forward or reverse, but no recording, playing or fast motion would actually happen while the pause is on.


Once you have this worked out on paper, use a drawing program.


  • Do it first using pencil and paper.
  • Then use a drawing program to create this diagram.
  • The lecture slide titled "Controlling State Explosion with Statecharts" has some ideas that might simplify your diagram(s).
  • The previous hint had an "s" in brackets.
Academic Honesty!
It is not our intention to break the school's academic policy. Projects posted are only used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly fill out the form. Please provide a valid email address and we'll get back to you in less than 24 hours. We will be sending an invoice through PayPal upon confirmation. We are a non profit organization however we need an amount to keep this organization running, and to be able to complete our research and development.