Chapter 10: Establishing Requirements
This assignment involves you tackling the requirements activity. For this assignment, we offer some comments, and some partial feedback to help get you started on each part of the assignment. These samples below are based around the assumption that we are dealing with a cinema, but you may be focusing on another kind of system.
(a) The form of data gathering you use will depend on your circumstances. There are plenty of people to talk to about how they obtain tickets for an event. Remember to look closely at the intent, and not to be blinded by the way things are now. Also refer to the data gathering guidelines for requirements on page 370.
(b) One user profile is a male student aged 17 who is partially deaf. A scenario for this user might be.
"Dan enjoys taking part in virtual chat environments. Late one night, he is in conversation with someone who recommends that he go and see the latest James Bond movie which has just come out. It's too late to phone the local cinema to see if it's on there, so he decides to use the internet to obtain some tickets for the following weekend. At the cinema website he looks for the film titles currently showing. The structure of the site is quite clear, and it's possible to go straight to the information about films and showing times. The James Bond movie is indeed showing. From this page, he can indicate the time of his choice and order the tickets. He chooses the 7pm performance, but the system tells him that this is fully-booked and offers him alternatives: the 5.30pm and the 8pm showings both have available seats. The system displays the seating plan for the cinema which shows the available seats for each showing, and how much each costs. Dan then chooses the seats and showing time that he wants and confirms the booking. Next year, when he has his own bank account, he'll be able to pay for tickets online too and they can be posted to him, but for now he must collect the tickets from the box office and pay for them an hour before the film starts. As he is partially deaf, he needs to double-check that the cinema is equipped with suitable sound amplification technology that links in to his hearing aid. Having completed his order, he returns to chatting with his friends."
(c) The tasks Dan was involved with were:
- Finding if the film was on at the cinema
- Finding out the times of the showing
- Choosing the showing
- Choosing the seat
- Confirming the booking
- Checking for other facilities at the cinema
Note that this is not a complete HTA, but is a starting point.
(d) There are many different use cases you may choose to develop for this system. One which focuses on the scenario above would be constructed from the tasks listed in (c) and decomposed to provide step-by-step actions from each of the user and the ticket website.
(e) Some basic considerations and example requirements from this scenario are given below. Your scenarios may be very different, and will hence yield very different requirements:
The system should be able to offer alternative showing times if the one chosen is fully-booked.
Film titles, showing times and ticket prices will be needed
Environmental (physical, social, organisational, technical)
The user might be in a variety of physical settings, and at different times of day, e.g. at home, in the street, in the rain, etc. In our scenario Dan was probably sitting at a desktop computer but he could have been using a cell phone.
There are potentially many different kinds of user. You must decide who your website is targeted for: children under 18? only adults with a credit card? What about visually impaired users, or the elderly who may have difficulties controlling their movement?
The website should be usable the first time, without any training.
This is an expression of the Volere requirement for the functional requirement.