Software Requirements
Assignment 2
Version 1.0
Author(s) Asif Gill
Copyright Statement
This template is developed and owned by Dr. Asif Q. Gill. Any part of this document cannot be used without the explicit permission of the Author. Students enrolled in the 31269 BRM Autumn 2014 @ UTS are allowed to use this template for developing and submitting their assignments during May 2014 and June 2014.
Table of Contents
1. DOCUMENT MANAGEMENT 3
1.1 REVISION HISTORY 3
1.2 INTENDED AUDIENCE 3
1.3 REFERENCE DOCUMENTS 3
1.4 GLOSSARY 3
2. INTRODUCTION 4
2.1 DOCUMENT PURPOSE 4
2.2 PROJECT PURPOSE 4
2.3 PROJECT SCOPE 4
2.3.1 In Scope 4
2.3.2 Out of Scope 4
2.4 ASSUMPTIONS 4
3. FUNCTIONAL REQUIREMENTS 5
3.1 USER STORY MAP 5
3.2 USER STORIES AND USE CASES 5
3.2.1 Use Case: Name of the Use Case 5
3.2.2 Use Case: 5
3.3 SEQUENCE DIAGRAMS 6
4. DATA REQUIREMENTS 6
4.1 CLASS DIAGRAM 6
4.2 STATE TRANSITION DIAGRAM 6
5. NON-FUNCTIONAL REQUIREMENTS 6
5.1 USER INTERFACE REQUIREMENTS 6
5.2 SECURITY REQUIREMENTS 6
5.3 PERFORMANCE REQUIREMENTS 6
6. BIBLIOGRAPHY 6
7. APPENDICES 6
1. Document Management
1.1 Revision History
Date Version Description of Change Author
12/01/2014 0.1 Initial Draft Asif Gill
17/02/2014 0.2 Changed use case diagram based on the feedback from team
Changes class diagram based on tutor feedback
Added …. ..
… 0… …. ..
… 1.0 Final Signed Off/ Submitted
1.2 Intended Audience
Name Title Action
Sign-off
Review
Info Date
Approved
Asif Gill Lecturer Review and Sign Off
… ..
… ..
1.3 Reference Documents
Ref Name Description Location
O1 BRM Lectures … UTSOnline
1.4 Glossary
Term Description / Meaning
OP System Online Purchase System
BR Business Requirements
…
2. Introduction
2.1 Document Purpose
This document presents the business requirements for the… which have been documented by using the …..template.
Requirements priority indicators used within this document:
• H = High. Must be met before the project can be launched.
• M = Medium. Should be met unless there is a good reason it cannot be at this stage.
• L = Low. Optional, nice to have requirement.
It is important to understand that this template is a guideline to help you in your assignment. This template is not a complete solution of any problem.
2.2 Project Purpose
ABC requires a new an online Job Advertisement and Application Submission (JAAS) system…
2.3 Project Scope
Project boundary diagram goes here (a high level use case diagram).
Project boundary diagram example…
The use case diagram for your Assignment 2 can have different relationships (than this diagram) between use cases.
2.3.1 In Scope
Ref. Item Description
SC001 Purchase Ticket As a passenger, I want to buy a ticket via Online Ticketing System so that I can travel from one city to another city in Australia.
SC002 ..
2.3.2 Out of Scope
Ref. Item Description
OC001 Sell Ticket
OC002
2.4 Assumptions
Ref. Item Description
A001 Integration OP System has already integration with the external Credit Card System.
A002 …
3. Functional Requirements
3.1 User Story Map
Insert your user story map here. See the following user story map example from lecture and tutorial.
The user story map for Assignment 2 should have different processes than the following map and user stories should be based on JAAS case study.
Each user story must have an id (number) and be estimated and prioritised and user stories with High priority must be shown in the top rows, ones with Medium priority in the middle rows, and ones with Low priority in bottom rows.
3.2 User Stories and Use Cases
3.2.1 Use Case Name: Buy Ticket
Use Case ID UC101: Buy Ticket
User Story As a passenger, I want to buy a ticket via Online Ticketing System so that I can travel from one city to another city in Australia.
Goal Buy a ticket online for traveling from one destination to another destination.
Priority H, M, L
Actors Primary Actor – Passenger
Secondary Actor – Credit Card System, Printing System
Pre-conditions The passenger has access to the Online Ticketing System.
The passenger has a valid credit card.
Post-conditions The passenger has successfully bought the ticket via the Online Ticketing System.
Trigger The passenger launches the Online Ticketing (OT) system via their internet browser.
Main Flow 1. The (OT) system displays the OT system landing page and displays the hyperlink to list the available tickets i.e. departure, destination, types, dates and fare.
2. The passenger clicks on the hyperlink to list the available tickets.
3. The OT system displays the available tickets to select from.
4. The passenger selects the desired ticket and presses the “Buy Ticket” button.
5. The OT system displays the “Pay Fare” page for the selected ticket and requests for payment.
6. The passenger chooses to “Pay via Credit Card”.
7. The OT system asks the passenger to enter their credit card details.
8. The passenger submits the credit card details.
9. The OT system checks the credit card number format and processes the credit card details via the “Credit Card” System”.
Please see “UC102: Pay via Credit Card Fare” for credit card payment processing details.
10. The OT system successfully receives the payment via the “Credit Card” System” and displays the payment receipt.
If the OT system does not receive the payment, then refer to Alternate Flow 2 “Failed Payment”.
11. The passenger chooses to “Print Receipt”.
Please see “UC103: Print Receipt” for receipt printing process details.
12. The OT system successfully prints the payment receipt via the “Printing System”.
13. The use case ends.
Exceptions Exception1. Step 1 – If the OT system in not available and the system is down.
Exception2. Steps 1-12 – passenger closes the browser window anytime, and then the OT system blocks the transaction at that point in time and log the activity.
Exception3. Step 12 – printer does not respond.
Includes/Extends/Inherits UC102: Pay via Credit Card, UC103: Print Receipt
Supporting Information Passenger, Purchased Ticket, Payment and Receipt information needs to be stored on a central server.
Non-functional Requirements Performance: All pages must load and display within two (2) seconds of a button click at least 97% of the time.
Security: Secure credit card transaction
Alternate Flow 2 “Failed Payment”
Trigger The OT system does not receive the payment.
Step 1. The OT system takes the passenger to the fare and payment options page.
2. The OT system displays the payment error message “Insufficient Funds”.
3. Re-join at Step 5 in the Main Flow. .
Alt Flow N/A
Post conditions The OT system successfully displayed the payment error message.
Exceptions Exception1. Steps1-2 – passenger closes the browser window anytime, and then the OT system blocks the transaction at that point in time and logs the activity.
3.2.2 Use Case Name: …..
Use Case ID
User Story
Goal
Priority
Actors
Pre-conditions
Post-conditions
Trigger
Main Flow
Exceptions
Includes/Extends/Inherits
Supporting Information
Non-functional Requirements
Alternate Flow 1
Trigger
Step
Alt Flow
Post conditions
Exceptions
Alternate Flow 2
Trigger
Step
Post conditions
Exceptions
NOTE: For your assignment 2, you need to narrate four use cases - two for hiring manager and two for candidate use cases.
Sequence Diagrams
See below sequence diagram example from lecture.
This is indicative only and we do not claim it to be the best and only solution.
NOTE: For your assignment 2, you need to document two sequence diagrams - draw sequence diagrams for any one use case of your choice for hiring manager and one for any candidate use case.
Use case main flow should match with the messages in the sequence diagram and should be in a logical sequence.
4. Data Requirements
4.1Class Diagram
See below class diagram example from lecture.
Attributes and methods are missing. For your assignment you need to provide them for each class. Document one class diagram.
4.2 State Transition Diagram
See below state transition diagram example from lecture.
The diagram is not complete and lacks the events from one state to other. The state transition diagram for Assignment 2 should have events between states that triggers the transition from one state to another. Draw 1 state transition diagram for “Job Application” object
Make sure you label the diagram with the events as discussed in the lecture.
5. Non-functional requirements
5.1 User Interface Requirements
See below wireframe example. Source: Smart Draw - http://www.smartdraw.com/examples/view/wireframe+-+online+store+-+1/
NOTE: Assignment 2 should have two wireframes, one for the hiring manager use case and one for the candidate use case. Make sure the user interface/wireframe is linked to the narrative of use case.
5.2 Security Requirements
SRID User Case ID Security Requirements
SR001 UC101 Credit card number must be masked as “********”
5.3 Performance Requirements
PRID User Case ID Performance Requirements
PR001 UC101 Credit card payment must be processed in less than 5 seconds.
6. Bibliography
7. Appendices