06
  • This Tutorial is based on questions from the book Software Engineering 10 by Ian Sommerville and is based on the material covered in chapter 4.

    Week 6 Tutorial

    Requirements Engineering

    1.
    When would you recommend against the use of an agile method for developing a software system?

    2.
    Discover ambiguities or omissions in the following statement of requirements for part of a ticket-issuing system:
    An automated ticket-issuing system sells rail tickets. Users select their destination and input a credit card and a personal identification number. The rail ticket is issued and their credit card account charged. When the user presses the start button, a menu display of potential destinations is activated, along with a message to the user to select a destination. Once a destination has been selected, users are requested to input their credit card. Its validity is checked and the user is then requested to input a personal identifier. When the credit transaction has been validated, the ticket is issued.

    3.
    Write a set of non-functional requirements for the ticket-issuing system, setting out its expected reliability and response time.

    4.
    Using your knowledge of how an ATM is used, develop a set of use cases that could serve as a basis for understanding the requirements for an ATM system. You should use the Use Case Diagram that was presented in the Week 5 lecture and you should concentrate on developing the textual description for the following Use cases.

    Withdraw Cash
    Display Balance
    Print Statement
    Change PIN
    Deposit Cash

    Suggested layout for Use case description
    Use case name
    Actors
    Inputs
    Outputs
    Normal Operation
    Exception
    Incorrect PIN

    Download PDF Version
  • The first task in this Lab is based on the Use Cases material previously presented. You are also required to develop use cases as part of your assignment. The second task is to work in your project groups to review the progress on your assignment. You should be thinking about what your use case diagram should look like.

    Week 6 Lab

    Task 1

    You should spend no more than one hour on task 1.

    Identify Actors and Use Cases

    The purpose of this exercise is to identify actors and use cases for a simulated project.You have been introduced to the online Course Registration System that is the case study throughout this module. For this exercise, use information and artifacts from the Course Registration System case study. First identify the actors in the example system. “Student” is identified as an actor. Who or what else interacts with this system? Refer to the questions for identifying actors.

    For each of these actors, identify the types of interactions each might have with our system. Refer to the questions for identifying use cases and the guidelines for naming use cases.

    Objectives

    In this exercise, complete the following tasks:
    Identify the actors who interact with the system.
    Identify the use cases.
    Sketch a use-case diagram for the system.

    You have just been assigned the job of lead system analyst for a new system. You have been given a problem description (“Initial System Requests” below). Your first task is to understand the requirements for the new system. From the Initial Requests, you develop a use-case model of the requirements. In this first part of the modelling process, you identify actors and use cases and develop a use-case diagram.

    As you look at the initial requests for the system, note that the requirements are far from complete. Note what assumptions you make, as well as what other information you want to ask your customer.

    Directions

    1. Read the Initial System Requests document. As a whole class with the instructor leading the activity:
    Run a short use-case workshop to decide on actors and use cases.
    2. Draw the use-case diagram on easel paper or the board.
    Show actors,
    use cases,
    and communicates-associations.
    3. Compare the diagram with the sample solution.
    4. Discuss the “Discussion Topics” at the end of this exercise.

    Initial System Requests

    Wylie College is planning to develop a new online Course Registration System. The new Web-enabled system replaces its much older system developed around mainframe technology. The new system allows students to register for courses from any Internet browser. Professors use the system to register to teach courses and to record grades. Because of a decrease in federal funding, the college cannot afford to replace the entire system at once. The college will keep the existing course catalogue database where all course information is maintained. This database is an Ingres relational database running on a DEC VAX. The legacy system performance is poor, so the new system accesses course information from the legacy database but does not update it. The registrar’s office continues to maintain course information through another system.

    Students can request a printed course catalog containing a list of course offerings for the semester. Students can also obtain the course information online at any time. Information about each course, such as professor, department, credit hours, and prerequisites assists students in making informed decisions. The new system allows students to select four course offerings for the coming semester. In addition, each student indicates two alternate choices in case the student cannot be assigned to a primary selection. Courses have a maximum of ten and a minimum of three students. The registration process closes on the first or second day of classes for the semester. Any course with fewer than three students enrolled on the day registration closes is cancelled. All courses without an instructor on the day registration closes are cancelled. Students enrolled in cancelled classes are notified that the course has been cancelled, and the course is removed from their schedules. The registration system sends information about all student enrolments to the Billing System so that the students can be billed for the semester. For the first two weeks of the semester, students are allowed to alter their course schedules. Students may access the online system during this time to add or drop courses. Changes in schedules are immediately sent to the Billing System so that an updated bill can be sent to the student.

    At the end of the semester, the student can access the system to view an electronic report card. Since student grades are sensitive information, the system must employ security measures to prevent unauthorized access. All students, professors, and administrators have their own identification codes and passwords. Professors must be able to access the online system to indicate which courses they want to teach. They also need to see which students signed up for their course offerings. In addition, professors can record the grades for the students in each class.

    Identify Actors

    Who uses the system?
    Who gets information from the system?
    Who provides information to the system?
    Where in the organization is the system used?
    Who supports and maintains the system?
    What other systems use this system?

    Identify Use Cases

    What are the goals of each actor?
    What will the actor use the system for?
    Will the actor create, store, change, remove, or read data in the system?
    Will the actor need to inform the system about external events or changes?
    Will the actor need to be informed about certain occurrences in the system?
    Does the system supply the business with all of the correct behaviour?

    Create the Use Cases as a pen and paper exercise.

    Task 2

    In this task you should turn your attention to your assignment and look at producing Use Case diagrams to support the requirements elicitation process. Spend the remaining hour looking for appropriate use cases from the text in your assignment.

    Complete an Appendix B meeting report by the end of this lab. In this report you should report explicitly on the work that you have done and demonstrate how you have been storing your files on line to allow sharing of the documents that you have been producing.

    NB

    This is now week 6 and the clock is ticking regarding finishing your assignment. By this point you should be able to produce detailed user stories for each feature/activity that you have developed. You should also be able to produce a Use case diagram and supporting textual descriptions.

    Download PDF Version
    Download Key Abstraction Form