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