System_Requirements_Specification

advertisement
Tutor Me Tutoring Web Service Software Requirements Specification
Tutor Me Tutoring Web Service
Software Requirements Specification
TeamHD, autumn 2010, 48440 Software Engineering
Group Members
Andrew Corke - 10332056
Alex Constanti - 10702811
John Gorgees - 00054433
David Du - 10021259
Ravneel Chand - 10701720
Frederik Ruhm – 10937821
1
Tutor Me Tutoring Web Service Software Requirements Specification
1 Table of Contents
1
Table of Contents ............................................................................................................................ 2
1.1
Table of Tables......................................................................................................................... 4
1.2
Table of Figures ....................................................................................................................... 4
2
Document Revision.......................................................................................................................... 6
3
Introduction ..................................................................................................................................... 7
3.1.1
4
3.2
Overview and Scope ................................................................................................................ 7
3.3
Definitions ............................................................................................................................... 7
Information description................................................................................................................... 8
4.1
System context diagram .......................................................................................................... 8
4.2
Definitions ............................................................................................................................... 8
4.2.1
Acronyms ......................................................................................................................... 8
4.2.2
Data Dictionary ................................................................................................................ 8
4.3
5
6
7
1.1 Purpose ...................................................................................................................... 7
Entity relationship diagram ..................................................................................................... 9
Requirements ................................................................................................................................ 10
5.1
Information Requirements .................................................................................................... 10
5.2
Raw Requirements ................................................................................................................ 11
5.3
Formal Requirements ............................................................................................................ 12
Functional description ................................................................................................................... 14
6.1
Use case diagram................................................................................................................... 14
6.2
Use case diagrams ................................................................................................................. 15
6.2.1
Use Case One - Search ................................................................................................... 15
6.2.2
Use Case Two - Registration .......................................................................................... 16
6.2.3
Use Case Three – Account Activation ............................................................................ 17
6.2.4
Use Case Four – Update Profile ..................................................................................... 18
6.2.5
Use Case Five – Change Account Password .................................................................. 19
Behavioural description................................................................................................................. 20
7.1
FB-05 - The system shall show an error when an invalid grouping request is made ............ 20
7.2
FB-06 to FB-07 the system shall double check registering users email and password ......... 21
7.3
FB-08 The system shall require registering users to prove they are human ........................ 22
2
Tutor Me Tutoring Web Service Software Requirements Specification
7.4
FB-09 The system shall reload all entered data if a field is submitted incorrectly during
registration ........................................................................................................................................ 23
7.5
FB-10 The system shall send an account activation email upon successful registration ...... 24
7.6
FB-13 The system shall activate a user's account when the user has interacted with the
activation email ................................................................................................................................. 25
7.7
FB-15 to FB-20 Registered users shall be able to record their details on the TMTWS ......... 26
7.8
FB-27 The system shall validate the password by checking that the new password
submitted is the same each time ...................................................................................................... 27
7.9
FB-28 The system shall alert the registered user if the new password is invalid ................. 28
7.10
FB-29 The system shall change the password if the submitted password is valid................ 29
7.11
FB-31 The system shall ignore duplicated addresses ............................................................ 30
7.12 FB-46 The system shall alert the administrator upon successful account modification by an
administrator ..................................................................................................................................... 31
7.13 FB-47 The system shall alert the tutor upon successful account modification by an
administrator ..................................................................................................................................... 32
8
9
Performance requirements ........................................................................................................... 33
8.1
Page response times.............................................................................................................. 33
8.2
Storage space ........................................................................................................................ 33
8.3
Backup ................................................................................................................................... 33
8.4
Reliability ............................................................................................................................... 33
8.5
Survivability ........................................................................................................................... 33
Non-Functional description ........................................................................................................... 34
9.1
Overview................................................................................................................................ 34
9.2
Useability ............................................................................................................................... 34
9.2.1
Specification .................................................................................................................. 34
9.2.2
Reference ...................................................................................................................... 34
9.3
Supportability and maintenance ........................................................................................... 35
9.3.1
Specification .................................................................................................................. 35
9.3.2
Reference ...................................................................................................................... 35
9.4
Reliability ............................................................................................................................... 35
9.4.1
Specification .................................................................................................................. 35
9.4.2
Reference ...................................................................................................................... 35
9.5
Scalability ............................................................................................................................... 35
9.5.1
Specification .................................................................................................................. 35
3
Tutor Me Tutoring Web Service Software Requirements Specification
9.5.2
9.6
Reference ...................................................................................................................... 35
Reusability ............................................................................................................................. 35
9.6.1
Specification .................................................................................................................. 35
9.6.2
Reference ...................................................................................................................... 35
10
Constraints ................................................................................................................................ 36
10.1
Interface Constraints ............................................................................................................. 36
10.2
Platform Constraints ............................................................................................................. 36
10.3
Architectural constraints ....................................................................................................... 36
10.4
Design and development constraints .................................................................................... 36
11
Traceability Matrix..................................................................................................................... 37
12
Draft only Bibliography - ravneel............................................................................................... 39
13
Appendix 1 - Team HD meeting minutes .................................................................................. 40
13.1
Meeting 1 .............................................................................................................................. 40
13.1.1
Issues ............................................................................................................................. 40
13.1.2
Action............................................................................................................................. 40
13.2
Meeting 2 .............................................................................................................................. 40
13.2.1
Issues ............................................................................................................................. 40
13.2.2
Action............................................................................................................................. 40
13.3
Meeting 3 .............................................................................................................................. 40
13.3.1
Issues ............................................................................................................................. 40
1.1 Table of Tables
Table 1: Document Revision Control ....................................................................................................... 6
Table 2: Acronyms ................................................................................................................................... 8
Table 3: Data dictionary .......................................................................................................................... 9
Table 4: Information requirements from user problem statement ...................................................... 11
Table 5: Raw Requirements................................................................................................................... 12
Table 6: Formal Requirements .............................................................................................................. 13
Table 7: Definition of Requirements Aspects ........................................................................................ 34
1.2 Table of Figures
Figure 1: System context Diagram........................................................................................................... 8
Figure 2: System architecture ................................................................................................................. 8
Figure 3: Entity relationship diagram ...................................................................................................... 9
Figure 4: System Use Case Diagram ...................................................................................................... 14
Figure 5: Use Case 1 – Search ................................................................................................................ 15
4
Tutor Me Tutoring Web Service Software Requirements Specification
Figure 6: Use Case 2 – Registration ....................................................................................................... 16
Figure 7: Use Case 3 - Account Activation ............................................................................................. 17
Figure 8: Use Case 4 – Update Profile ................................................................................................... 18
Figure 9: Use Case 5 – Change Account Password ................................................................................ 19
Figure 10: State diagram - FB-05 ........................................................................................................... 20
Figure 11: Swim lane diagram - FB-05 ................................................................................................... 20
Figure 12: State diagram - FB-06 to FB-07............................................................................................. 21
Figure 13: Swim lane diagram - FB-06 to FB-07 .................................................................................... 21
Figure 14: Sate diagram - FB-08 ............................................................................................................ 22
Figure 15: Swim lane diagram - FB-08 ................................................................................................... 22
Figure 16: State Diagram – FB-09 .......................................................................................................... 23
Figure 17: Swim lane diagram - FB-09 ................................................................................................... 23
Figure 18: State diagram - FB-10 ........................................................................................................... 24
Figure 19: Swim Lane diagram - FB-10 .................................................................................................. 24
Figure 20: State diagram - FB-13 ........................................................................................................... 25
Figure 21: Swim lane diagram - FB-13 ................................................................................................... 25
Figure 22: State diagram - FB-15 to FB-20............................................................................................. 26
Figure 23: Swim lane diagram - Registered FB-15 to FB-20 .................................................................. 26
Figure 26: State diagram - FB-27 ........................................................................................................... 27
Figure 27: Swim lane diagram – FB-27 .................................................................................................. 27
Figure 24: State diagram - FB-28 ........................................................................................................... 28
Figure 25: Swim lane diagram - FB-28 ................................................................................................... 28
Figure 30: State diagram - FB-29 ........................................................................................................... 29
Figure 31: Swim lane diagram - FB-29 ................................................................................................... 29
Figure 32: State diagram - FB-31 ........................................................................................................... 30
Figure 33: Swim lane diagram - FB-31 ................................................................................................... 30
Figure 34: State diagram - FB-46 ........................................................................................................... 31
Figure 35: Swim lane diagram - FB-46 ................................................................................................... 31
Figure 36: State diagram - FB-47 ........................................................................................................... 32
Figure 37: Swim lane Diagram - FB-47 .................................................................................................. 32
5
Tutor Me Tutoring Web Service Software Requirements Specification
2 Document Revision
Revision
0.01
0.02
0.03
Primary Author
Andrew Corke
Frederick Ruhm
Andrew Corke
Date of Revision
2010/04/03
2010/04/06
2010/04/07
0.04
0.05
Frederik Ruhm
Andrew Corke
2010/04/07
2010/04/07
Description of Revision
First compilation of Document
Added diagrams. Added Bibliography
Formatting and editing. Added
Traceability Matrix
Added further group member work
Edit formatting
Table 1: Document Revision Control
6
Tutor Me Tutoring Web Service Software Requirements Specification
3
Introduction
3.1.1 1.1 Purpose
The Tutor Me Tutorial Web Service (TMTWS) is intended to provide a means of introducing teaching
staff, wanting to offer services as tutors and students, wishing to hire a tutor.
3.2 Overview and Scope
The purpose of the Software Requirements Specification (SRS) document is to define the client
requirements of the Tutor Me Tutorial Web Service (TMTWS) and formally document the
specifications derived from the client requirements. The SRS is intended for the client, [client name
here], as well as the system developers.
The SRS lists the requirements as TeamHD understands the client wants and TeamHD have found are
feasible.
3.3 Definitions
Specifications in this Document will use the following naming convention. The first part of the
requirement name will be two letters, representing the categorisation of the requirement. The
letters will be followed by two numbers, representing the unique numerical identification of the
requirement. The first letter shall indicate the requirement stage.


R: Raw Requirement
F: Formal Requirement
The second letter shall indicate the nature of the requirement.



F: Functional
B: Behavioural
N: Non-Functional
7
Tutor Me Tutoring Web Service Software Requirements Specification
4 Information description
4.1 System context diagram
Store Information
Database
General User
Search for Tutors
Retrieve information
Tutor Me
Tutoring Web
Service
Tutor
Administrator
Edit Account Infomation
Enter Detail
Figure 1: System context Diagram
Figure 2: System architecture
4.2 Definitions
4.2.1 Acronyms
Acronym
TMTWS
SRS
CAPTA
Description
Tutor Me Tutoring Web Service
Software Requirement Specification
Completely Automated Public Turning test to tell Computers and Humans
Apart
Table 2: Acronyms
4.2.2
Term
Data Dictionary
Definition
8
Tutor Me Tutoring Web Service Software Requirements Specification
Term
User
Registered
user
Tutor
Administrator
Student
Admin
Double Check
Definition
Any person or process that interacts with the TMTWS system
A registered user is a person that has their personal information stored and verified
by the TMTWS system.
A user that is registered on the TMTWS system. Tutors have more privileges than
students, but fewer privileges than administrators.
A registered user of the TMTWS system. Administrators have the most privileges of
all users.
An unregistered user. Students are only able to view and search for tutors.
See Administrator
A means of verifying entered data. The data is requested twice. Both inputs are
compared character by character. If the data entered both times is the same, the
data is assumed to be correct. If the comparison finds any difference between the
data entered, the data is assumed to be incorrect.
Table 3: Data dictionary
4.3 Entity relationship diagram
Figure 3: Entity relationship diagram
9
Tutor Me Tutoring Web Service Software Requirements Specification
5 Requirements
5.1 Information Requirements
User
Requirement
URD-001
URD-002
URD-003
URD-004
URD-005
URD-006
URD-007
URD-008
URD-009
URD-010
URD-011
URD-012
URD-013
URD-014
URD-015
URD-016
URD-017
URD-018
URD-019
URD-020
URD-021
URD-022
URD-023
URD-024
URD-025
URD-026
URD-027
URD-028
URD-029
URD-030
URD-031
URD-032
URD-033
URD-034
URD-035
URD-036
URD-037
URD-038
URD-039
URD-040
Description
1. Search By:
Subject
Rate/Price
Area
Availability
2. Error Catch: Invalid Search Criteria
1. Data Validity Check
Double entry of email
Double entry of password
2. Captcha System (distorted Image)
3. Re-load info on input data error
4. Send Account Activation Email which includes code
Tutor receive Activation email, including the identifier
User to send it back (maybe by clicking on the link)
System activates account and notifies tutor
1. Fields and space available for user to add/update details
first name
last name
rates
availability
area
subjects
additional information
2. Error Catch: Data validity, such as changes to email, password, phone numbers, etc
1. Tutor must be logged in
2. Tutor clicks edit password hyperlink
3. Change account password form is shown
4. Input: Old password, new password, new password (again)
5. Validate input: old password must match stored password, new password must
match new password (again)
6. For valid input: Tutor password is changed to new password
7. For invalid input: user is informed of specific error(s)
1. The list of tutoring subjects shall be set by the Administrator - F
2. The system shall ignore duplicated subjects entries - B
3. The subject list should be accessed through a website - F
4. The system shall confirm the changed subject list - B
5. The subject list shall be restricted to administrators only - NF
1. Update Service area list via front
2. Error Catch: if area already exists, system will catch and ignore
3. Optional: Have a system where Service areas can be requested, allowing for
expansion to meet customer and tutor needs, maybe make it as an "other" field,
where they specify and it is then sent to the administrators some how
10
Tutor Me Tutoring Web Service Software Requirements Specification
User
Requirement
URD-041
URD-042
URD-043
URD-044
URD-045
URD-046
URD-047
URD-048
URD-049
URD-050
URD-051
URD-052
URD-053
URD-054
Description
admin must be able to modify availability
availability page needs to make provisions for create/update availability dates
system must notify administrator of successful creates/updates
the system will not allow double up on availabilities
system should not allow dates past
Edit Tutor List; Admin (Sample Use Case 9)
[backend (homepage)]
backend login
tutor list (table or query)
system updates the list
confirmation message about successful modification
Edit user account list (Sample Use Case 10)
user accounts must editable by administrator
successful user adds and deletes must prompt a notification email (possibly to both
admin and user)
5. Create account skeleton and confirmation messages displayed to tutor
User provides credentials
System validates user login
System relates user to relevant web page
Table 4: Information requirements from user problem statement
5.2 Raw Requirements
Requirement
ID
RF-01
RF-02
RF-03
RF-04
RB-05
RB-06
RB-07
RB-08
RB-09
RB-10
RN-11
RN-12
RB-13
RN-14
RB-15
RB-16
RB-17
RB-18
RB-19
RB-20
RB-21
Requirement Description
Users shall be able to group Tutors by subject
Users shall be able to group Tutors by rate charged
Users shall be able to group Tutors by area
Users shall be able to group Tutors by availability
The system shall show an error when an invalid grouping request is made
The system shall double check registering users email
The system shall double check registering users Password
The system shall require registering users to prove they are human
The system shall reload all entered data if a field is submitted incorrectly during
registration
The system shall send an account activation email upon successful registration
Activation emails shall be unique
Activation emails shall require the user to interact with the TMTWS
The system shall activate a user's account when the user has interacted with the
activation email
Information stored on the TMTWS shall be publicly available
Registered users shall be able to record their first name on the TMTWS
Registered users shall be able to record their last name on the TMTWS
Tutors shall be able to record their rates charged on the TMTWS
Tutors shall be able to record their availability on the TMTWS
Tutors shall be able to record their area on the TMTWS
Tutors shall be able to record their subjects on the TMTWS
Registered users shall be able to record additional information on the TMTWS
11
Tutor Me Tutoring Web Service Software Requirements Specification
Requirement
ID
RB-22
RF-23
RN-24
RF-25
RF-26
RB-27
RB-28
RB-29
RF-30
RB-31
RN-32
RB-33
RN-34
RF-35
RB-36
RB-37
RN-38
RB-39
RB-40
RB-41
RN-42
RN-43
RF-44
RN-45
RB-46
Requirement Description
The system shall validate data entered
Registered users shall be able to change their log in password
Registered users shall have to be logged in to change their log in password
To change their password, registered users shall have to enter their current
password
To change their password, registered users shall have to enter a new password
twice
The system shall validate the password by checking that the new password
submitted is the same each time
The system shall alert the registered user if the new password is invalid
The system shall change the password if the submitted password is valid
The list of tutoring locations shall be set by the Administrator
The system shall ignore duplicated addresses
The subject list should be accessed through a website
The system shall confirm the changed location list
The location list shall be restricted to administrators only
The administrator shall be able to change the area list
The system shall alert the administrator of any duplicate locations
The system may have an area request process available to tutors
The administrator shall be able to change the availability slots accessible to tutors
The system shall alert the administrator upon successful change of availability
The system shall alert the administrator of any duplicate availability slots
The system shall alert the administrator of any dates past entered
Validate All Entered Dates
The system shall have an administrator only section
Administrators shall be able to modify tutor accounts
Administrators shall be able to modify student accounts
The system shall alert the administrator upon successful account modification by
an administrator
Table 5: Raw Requirements
5.3 Formal Requirements
Requirement
ID
FB-05
FB-06
FB-07
FB-08
FB-09
FB-10
FB-13
FB-15
FB-16
FB-17
Requirement Description
Priority
The system shall show an error when an invalid grouping request is made
The system shall double check registering users email
The system shall double check registering users Password
The system shall require registering users to prove they are human
The system shall reload all entered data if a field is submitted incorrectly
during registration
The system shall send an account activation email upon successful
registration
The system shall activate a user's account when the user has interacted
with the activation email
Registered users shall be able to record their first name on the TMTWS
Registered users shall be able to record their last name on the TMTWS
Tutors shall be able to record their rates charged on the TMTWS
M
M
M
H
L
M
M
M
M
H
12
Tutor Me Tutoring Web Service Software Requirements Specification
Requirement
ID
FB-18
FB-19
FB-20
FB-21
FB-22
FB-27
FB-28
FB-29
FB-31
FB-46
FB-47
FF-01
FF-02
FF-03
FF-04
FF-23
FF-25
FF-30
FF-44
FN-11
FN-12
FN-14
FN-24
FN-42
FN-43
Requirement Description
Priority
Tutors shall be able to record their availability on the TMTWS
Tutors shall be able to record their area on the TMTWS
Tutors shall be able to record their subjects on the TMTWS
Registered users shall be able to record additional information on the
TMTWS
The system shall validate data entered
The system shall validate the password by checking that the new
password submitted is the same each time
The system shall alert the registered user if the new password is invalid
The system shall change the password if the submitted password is valid
The system shall ignore duplicated addresses
The system shall alert the administrator upon successful account
modification by an administrator
The system shall alert the tutor upon successful account modification by
an administrator
Users shall be able to group Tutors by subject
Users shall be able to group Tutors by rate charged
Users shall be able to group Tutors by area
Users shall be able to group Tutors by availability
Registered users shall be able to change their log in password
To change their password, registered users shall have to enter their
current password
The list of tutoring locations shall be set by the Administrator
Administrators shall be able to modify tutor accounts
Activation emails shall be unique
Activation emails shall require the user to interact with the TMTWS
Information stored on the TMTWS shall be publicly available
Registered users shall have to be logged in to change their log in
password
The system shall validate all entered dates
The system shall have an administrator only section
H
H
H
L
M
H
M
M
L
M
L
H
H
H
H
M
H
L
M
M
M
M
H
L
H
Table 6: Formal Requirements
13
Tutor Me Tutoring Web Service Software Requirements Specification
6 Functional description
6.1 Use case diagram
Figure 4: System Use Case Diagram
14
Tutor Me Tutoring Web Service Software Requirements Specification
6.2 Use case diagrams
6.2.1
Use Case One - Search
Use Case 1: Search
Guest
System
User Inputs
Search Criteria
to system
Notifies User of
Incorrect Search
Criteria
Fail
If User Inputs Invalid
Search Criteria
Pass
Search results
displayed
System retrieves search
results from database
Figure 5: Use Case 1 – Search
15
Tutor Me Tutoring Web Service Software Requirements Specification
6.2.2
Use Case Two - Registration
Use Case 2: Registration
Tutor
System
Tutor fills in
registration form,
and submits
Notify user of input
Field error page
reCapture is requested in
the URD as the computer
check, but we can us any
method, as long as the
result is achieved
Fail
Data
Check (inc. Email,
Password &
Computer)
Pass
Already signed
up error page
Fail
Check that email
entered does not exist
in system
Pass
Create
Account (but not
activated)
Display
Confirmation
page
Send Activation
Email
Figure 6: Use Case 2 – Registration
16
Tutor Me Tutoring Web Service Software Requirements Specification
6.2.3
Use Case Three – Account Activation
Figure 7: Use Case 3 - Account Activation
17
Tutor Me Tutoring Web Service Software Requirements Specification
6.2.4
Use Case Four – Update Profile
Figure 8: Use Case 4 – Update Profile
18
Tutor Me Tutoring Web Service Software Requirements Specification
6.2.5
Use Case Five – Change Account Password
Use Case 5: Change Account Password
Tutor
System
Tutor clicks on
‘Edit Password’
link
Tutor enters old
password once
and new
password twice
Check
correctness of old
password
Data error,
re-enter data
Fail
Pass
Fail
New
password entered
twice check
Pass
Password
change
confirmation
page
Change account
password to new
password entered
Figure 9: Use Case 5 – Change Account Password
19
Tutor Me Tutoring Web Service Software Requirements Specification
7 Behavioural description
7.1 FB-05 - The system shall show an error when an invalid grouping
request is made
Figure 10: State diagram - FB-05
Figure 11: Swim lane diagram - FB-05
20
Tutor Me Tutoring Web Service Software Requirements Specification
7.2 FB-06 to FB-07 the system shall double check registering users email
and password
Figure 12: State diagram - FB-06 to FB-07
Figure 13: Swim lane diagram - FB-06 to FB-07
21
Tutor Me Tutoring Web Service Software Requirements Specification
7.3 FB-08 the system shall require registering users to prove they are
human
Figure 14: Sate diagram - FB-08
Figure 15: Swim lane diagram - FB-08
22
Tutor Me Tutoring Web Service Software Requirements Specification
7.4 FB-09 the system shall reload all entered data if a field is submitted
incorrectly during registration
Figure 16: State Diagram – FB-09
Figure 17: Swim lane diagram - FB-09
23
Tutor Me Tutoring Web Service Software Requirements Specification
7.5 FB-10 the system shall send an account activation email upon
successful registration
Figure 18: State diagram - FB-10
Figure 19: Swim Lane diagram - FB-10
24
Tutor Me Tutoring Web Service Software Requirements Specification
7.6 FB-13 the system shall activate a user's account when the user has
interacted with the activation email
Figure 20: State diagram - FB-13
Figure 21: Swim lane diagram - FB-13
25
Tutor Me Tutoring Web Service Software Requirements Specification
7.7 FB-15 to FB-20 Registered users shall be able to record their details on
the TMTWS
Figure 22: State diagram - FB-15 to FB-20
Figure 23: Swim lane diagram - Registered FB-15 to FB-20
26
Tutor Me Tutoring Web Service Software Requirements Specification
7.8 FB-27 the system shall validate the password by checking that the new
password submitted is the same each time
Figure 24: State diagram - FB-27
Figure 25: Swim lane diagram – FB-27
27
Tutor Me Tutoring Web Service Software Requirements Specification
7.9 FB-28 the system shall alert the registered user if the new password is
invalid
Figure 26: State diagram - FB-28
Figure 27: Swim lane diagram - FB-28
28
Tutor Me Tutoring Web Service Software Requirements Specification
7.10 FB-29 the system shall change the password if the submitted password
is valid
Figure 28: State diagram - FB-29
Figure 29: Swim lane diagram - FB-29
29
Tutor Me Tutoring Web Service Software Requirements Specification
7.11 FB-31 the system shall ignore duplicated addresses
Figure 30: State diagram - FB-31
Figure 31: Swim lane diagram - FB-31
30
Tutor Me Tutoring Web Service Software Requirements Specification
7.12 FB-46 the system shall alert the administrator upon successful account
modification by an administrator
Figure 32: State diagram - FB-46
Figure 33: Swim lane diagram - FB-46
31
Tutor Me Tutoring Web Service Software Requirements Specification
7.13 FB-47 the system shall alert the tutor upon successful account
modification by an administrator
Figure 34: State diagram - FB-47
Figure 35: Swim lane Diagram - FB-47
32
Tutor Me Tutoring Web Service Software Requirements Specification
8 Performance requirements
There is no reference to any performance requirements; however it is in this project’s best interest
to have some associated requirements to enhance the system’s lifecycle.
8.1 Page response times
There are no concrete requirements specifying page response times in the industry as there are
many contributors to a sufficient or sufficiently slow response.
Some of the main focus points include the connection speed of the client’s access point be it a
personal computer or a handheld device for example. It is therefore in the customer’s best interest
to recommend a minimum modem of 64KBs and above for a satisfactory experience.
8.2 Storage space
The client has not specified any storage requirements for this project; therefore it is recommended
that the databases be maintained on commercial grade relational data management system (RDMS)
to provide a reliable service and supportability.
8.3 Backup
The system should employ a backup solution to reduce downtime. A suitable backup plan should be
further discussed with the customer based on the cost and availability of space to include redundant
servers mirroring configuration and table space data. A strong recommendation is to utilise SUN’s
RAID0 configuration coupled with an offsite tape backup solution.
8.4 Reliability
It is recommended that the system utilise redundant architecture in order to reduce the down time
due to unforseen incidents or maintenance windows. This recommendation is made on behalf of the
customer and shall be the subject of a focus group in the design stages.
8.5 Survivability
This requirement ties in with the backup specification above. Basically, we would like to advise the
customer that essentially, deploying an offsite tape backup plan of table space configurations and
databases will necessarily mean that the system will be back up and running with a minimum
downtime in case of a natural disaster, fire or any other catastrophe.
33
Tutor Me Tutoring Web Service Software Requirements Specification
9 Non-Functional description
9.1 Overview
Requirements mentioned below were specified vaguely during our team meetings and were open to
a wide range of subjective interpretations. Reference was therefore made to Mannion and Keepence,
1995 to elicit the ‘SMART’ requirements:
Aspect
Specific:
Definition
Unambiguous, using consistent terminology, simple and at the appropriate level of
detail.
Measurable: It is possible to verify that this requirement has been met, tests available
Attainable:
Technically feasible, technical “do-ability” of the requirement?
Realizable:
Realistic, given the resources and skill? Do you have access to the development
infrastructure needed? Do you have access to the run-time infrastructure needed? Do
you have enough time?
Traceable:
linked from its conception through its specification to its subsequent design,
implementation
Table 7: Definition of Requirements Aspects
From Coleman (1998) we were able to utilise tools for analysing and documenting non-functional
requirements in conjunction with the user requirements.
9.2 Useability
9.2.1 Specification
The requirements are not very specific about the ease of which the users are able to either create an
account, access or search the TMTWS. However, reference is made in several scenarios which may
require some attention:
The user shall be able to group a tutor search using the following criteria:




Subject
Rates ($)
Area
Availability
The system shall show an error when:



An invalid search criteria is specified
Invalid data input during registration and profile update (including password reset)
Invalid or duplicate service area is entered by administrator
9.2.2 Reference
URD 006, URD 011, URD 025, URD 032, URD 039
34
Tutor Me Tutoring Web Service Software Requirements Specification
9.3 Supportability and maintenance
9.3.1 Specification
As a run-time quality, the supportability of the system is critical due to the inevitable need to modify:



Registered user accounts
Subject list, areas and dates of service
System configuration to incorporate new requirements
9.3.2 Reference
URD 033, URD 046, URD 047, URD 050, URD 052
9.4 Reliability
9.4.1 Specification
The requirements did not specify any need of reliability from the system. As such, the system will run
in a stand-alone mode with no redundancy. At this stage all that shall be required is a serial
connection to the system to allow system administrators to log in and backup data in the event of a
network fault condition.
Optionally, the ground work may be attempted for future incorporation of a tape backup system, or
an active-standby configuration.
9.4.2
n/a
Reference
9.5 Scalability
9.5.1 Specification
The requirements make no reference to the scalability of the system in the event that the storage
space becomes larger causing latency in the user interface. It is in the best interest of the design
team to keep on record some suggestions as to how the system may be scaled in the future to
upgrade the database and network connectivity bandwidth.
9.5.2
n/a
Reference
9.6 Reusability
9.6.1 Specification
Although no mention is made of the reusability of the TMTWS system, preparing for future systems
will agree with the sales team. It is therefore a recommendation that the equipment and third party
applications used to deploy this system are sought from a source that have a long standing contract
with our firm. This is to ensure future the recycling of the devices.
9.6.2
n/a
Reference
35
Tutor Me Tutoring Web Service Software Requirements Specification
10 Constraints
10.1 Interface Constraints


Accessibility constraints
o The Systems needs to cater for the visually impaired
 colour blindness
 Text size
 size of page, is it percentage or pixels etc
User computer knowledge
o Generation Compatibility
o ‘Easy to use’
o Cater for both the young and mature target audiences
10.2 Platform Constraints

Browser compatibility, include
o Windows internet explore
o Mozilla Firefox
o Google Chrome
o Opera(windows mobile)
o Apple safari
10.3 Architectural constraints




Size of the database
Type of database used
o Use tried and tested database, such as Oracle, My SQL etc
Program language used,
o JavaScript
o Cold Fusion
o PHP
o .Net
o ASPX
o HTML 4/5
o CSS
IEEE general software standards
10.4 Design and development constraints


Time to Market
o Allocate certain amount of time to complete and have up and running
Developer skill
o More skilled developers may cost more and blow budget, but they may speed up
development time
36
Tutor Me Tutoring Web Service Software Requirements Specification
11 Traceability Matrix
Usage Scenario
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario One
Scenario Two
Scenario Two
Scenario Two
Scenario Two
Scenario Two
Scenario Two
Scenario Two
Scenario Three
Scenario Three
Scenario Three
Scenario Three
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Four
Scenario Five
Scenario Five
Scenario Five
Scenario Five
Scenario Five
Scenario Five
Scenario Five
Scenario Six
Scenario Six
User Requirement
URD-001
URD-001
URD-001
URD-001
URD-001
URD-001
URD-002
URD-003
URD-004
URD-005
URD-006
URD-007
URD-007
URD-008
URD-009
URD-010
URD-011
URD-012
URD-013
URD-014
URD-015
URD-016
URD-017
URD-017
URD-017
URD-017
URD-017
URD-017
URD-017
URD-018
URD-019
URD-020
URD-021
URD-022
URD-023
URD-024
URD-025
URD-026
URD-027
URD-028
URD-029
URD-030
URD-031
URD-032
URD-033
URD-034
Raw Requirement
RF-01
RF-02
RF-03
RF-04
RB-05
RN-14
RF-01
RF-02
RF-03
RF-04
RB-05
RB-06
RB-07
RB-06
RB-07
RB-08
RB-09
RB-10
RB-10
RN-11
RN-12
RB-13
RB-15
RB-16
RB-17
RB-18
RB-19
RB-20
RB-21
RB-15
RB-16
RB-17
RB-18
RB-19
RB-20
RB-21
RB-22
RF-23
RN-24
RF-25
RF-26
RB-27
RB-28
RB-29
RF-30
RB-31
Formal Requirement
FF-01
FF-02
FF-03
FF-04
FB-05
FN-14
FF-01
FF-02
FF-03
FF-04
FB-05
FB-06
FB-07
FB-06
FB-07
FB-08
FB-09
FB-10
FB-10
FN-11
FN-12
FB-13
FB-15
FB-16
FB-17
FB-18
FB-19
FB-20
FB-21
FB-15
FB-16
FB-17
FB-18
FB-19
FB-20
FB-21
FB-22
FF-23
FN-24
FF-25
Merged with FB-07
FB-27
FB-28
FB-29
FF-30
FB-31
37
Tutor Me Tutoring Web Service Software Requirements Specification
Usage Scenario
Scenario Six
Scenario Six
Scenario Six
Scenario Seven
Scenario Seven
Scenario Seven
Scenario Eight
Scenario Eight
Scenario Eight
Scenario Eight
Scenario Eight
Scenario Nine
Scenario Nine
Scenario Nine
Scenario Nine
Scenario Nine
Scenario Nine
Scenario Nine
Scenario Ten
Scenario Ten
Scenario Two
Scenario Eleven
User Requirement
URD-035
URD-036
URD-037
URD-038
URD-039
URD-040
URD-041
URD-042
URD-043
URD-044
URD-045
URD-046
URD-047
URD-047
URD-048
URD-049
URD-050
URD-050
URD-051
URD-052
URD-053
URD-054
Raw Requirement
RN-32
RB-33
RN-34
RF-35
RB-36
RB-37
RN-38
Merged with RB-04
RB-39
RB-40
RB-41
RN-43
RN-43
RF-44
RF-44
RF-44
RB-46
RF-44
RN-45
RB-46
Design consideration
Implicit system quality
Formal Requirement
Merged with FB-20
Merged with FB-20
Merged with FB-20
Merged with FB-43
Merged with FB-45
Merged with FB-19
Merged with FB-43
N/A
Merged with FB-45
Merged with FB-45
Merged with FB-45
FN-43
FN-43
FF-44
FF-44
FF-44
FB-46
FF-44
FB-46
FB-46
N/A
See user roles
38
Tutor Me Tutoring Web Service Software Requirements Specification
12 Draft only Bibliography - ravneel
Author/s Year, Title, Edition, Publisher, Place of publication.
Malan, R & Bredemeyer, D 2001, Defining Non-Functional Requirements, Bredemeyer Consulting
Mannion, M & Keepence, B. 1995, SMART Requirements
Draft only - ravneel
39
Tutor Me Tutoring Web Service Software Requirements Specification
13 Appendix 1 - Team HD meeting minutes
13.1 Meeting 1
Date: 2010-03-09
Present: Andrew, Alex, Freddie, Ravneel, David
Apologies:
13.1.1 Issues
Software requirements specification discussed.
Scope of requirements informally analysed.
13.1.2 Action
Andrew: upload list of requirements
Everybody: Add more specific requirements
13.2 Meeting 2
Date: 2010-03-16
Present: Andrew, Alex, Freddie, Ravneel, John
Apologies: David
13.2.1 Issues
John is a new member to Team HD
Begin SRS
13.2.2 Action
Everybody: Expand separate use cases
13.3 Meeting 3
Date: 2010-03-23
Present: Alex, Freddie, Ravneel, John
Apologies: Andrew
13.3.1 Issues
Entire SRS reviewed in detail and revised.
In the system, students will not be registered, they will be guests. All guests (teachers, students,
parents) will be treated as anonymous guests.
40
Download