Sample SRS - KMS
Sample SRS - KMS
Release 1.0
i
3.2.3.4 Update Operation................................................................................................................13
3.2.3.5 Delete Operation.................................................................................................................13
3.2.4 Link Management...................................................................................................................13
ii
List of Figures
Figure 1 Cyclic Development Methodology...................................................................................................5
Figure 2 System Environment.........................................................................................................................5
Figure 3 The levels of access and data provision to the..................................................................................6
Figure 4 The components of the KMS............................................................................................................7
List of Tables
Table 1 Company Information......................................................................................................................10
Table 2 Announcement Information.............................................................................................................11
Table 3 User Information..............................................................................................................................12
Table 4 User Permission Table......................................................................................................................13
iii
1 Introduction
1.1 Purpose
This subsection should
a. Delineate the purpose of the SRS;
b. Specify the intended audience for the SRS.
1.3 Glossary
This subsection should provide the definitions of all terms, acronyms, and abbreviations required to
properly interpret the SRS. This information may be provided by reference to one or more appendixes in
the SRS or by reference to other documents.
Term Definition
KMS - Knowledge An online system that satisfy the knowledge creation,
Management System capturing, sharing and application requirements of the
SMEs, the Clusters, the Beneficiary, and the TAT, as
defined in the Terms of Reference (ToR) document of the
Project. KMS System is cited simply “The System”.
SME Small and Medium size Enterprise (the company)
Ministry of Economy A Public Authority of the KMS System. The beneficiary of
(MoE) the Project. MoE will host and own the KMS System as
delivered. MoE will use the system to capture, share,
distribute and apply the information, and will benchmark
the clusters with the others by getting proper information
1
from the system.
Adding, creating, viewing, reading, changing, updating,
Publish
removing and deleting the content
Editor A member that examines a content submitted to the KMS
system by a member, and has the ability to recommend
approval of the content for publication or to request that
changes be made in the content, and has the ability and the
authority to publish the content. Normally, the KMS
Coordinator is the Editor.
Software Requirements A document that completely describes all of the functions
Specification of a proposed system and the constraints under which it
must operate. For example, this document.
Stakeholder Any person with an interest in the project who is not a
developer.
1.4 References
This subsection should
a. Provide a complete list of all documents referenced elsewhere in the SRS;
b. Identify each document by title, report number (if applicable), date, and publishing organization;
c. Specify the sources from which the references can be obtained.
[1] IEEE. IEEE Std 830-1998 IEEE Recommended Practice for Software
Requirements Specifications. IEEE Computer Society, 1998.
[2] SME-Empowering Project’s Inception Report, ECORYS.
The next chapter, the Overall Description section, of this document gives an overview of
the functionality of the KMS System. It describes the informal requirements and is used
to establish a context for the technical requirements specification in the next chapter.
The third chapter, Requirements Specification section, of this document is written
primarily for the developers and describes in technical terms the details of the
functionality of the KMS System.
Both sections of the document describe the same software product in its entirety, but are
intended for different audiences and thus use different language.
2
2 Overall Description
This section of the SRS should describe the general factors that affect the product and its requirements.
This section does not state specific requirements. Instead, it provides a background for those requirements,
which are defined in detail in Section 3 of the SRS, and makes them easier to understand.
Product Functions
This subsection of the SRS should provide a summary of the major functions that the software will
perform. For example, an SRS for an accounting program may use this part to address customer account
maintenance, customer statement, and invoice preparation without mentioning the vast amount of detail
that each of those functions requires. Sometimes the function summary that is necessary for this part can
be taken directly from the section of the higher-level specification (if one exists) that allocates particular
functions to the software product. Note that for the sake of clarity
a. The functions should be organized in a way that makes the list of functions understandable to the
customer or to anyone else reading the document for the first time.
b. Textual or graphical methods can be used to show the different functions and their relationships.
Such a diagram is not intended to show a design of a product, but simply shows the logical relationships
among variables.
The initial release (Release 1 of the KMS System) will have four major functions as
described in the subsections below.
.
3
Member Users
2.2.1 KMS Coordinator
Non-Member Users
2.2.6 Visitors
A Visitor is any user visiting the system portal who is not a registered member. This user
does not have to login to the system, but has limited access. S/he can only view, read, and
download the content permitted.
2.3 Constraints
Constraints will be added later.
This subsection of the SRS should provide a general description of any other items that will limit the
developer’s options. These include
a. Regulatory policies;
b. Hardware limitations (e.g., signal timing requirements);
c. Interfaces to other applications;
d. Parallel operation;
e. Audit functions;
f. Control functions;
g. Higher-order language requirements;
h. Signal handshake protocols (e.g., XON-XOFF, ACK-NACK);
i. Reliability requirements;
j. Criticality of the application;
k. Safety and security considerations
4
3 Requirements Specification
3.1 External Interface Requirements
This should be a detailed description of all inputs into and outputs from the software system. It should
complement the interface descriptions in section 2 and should not repeat information there. It should
include both content and format as follows:
a. Name of item;
b. Description of purpose;
c. Source of input or destination of output;
d. Valid range, accuracy, and/or tolerance;
e. Units of measure;
f. Timing;
g. Relationships to other inputs/outputs;
h. Screen formats/organization;
i. Window formats/organization;
j. Data formats;
k. Command formats;
l. End messages.
User interfaces
3.1.1.1 The system will allow access using web browsers. Most common browsers will
be supported.
Hardware interfaces
There are no external hardware interface requirements for KMS.
Software interfaces
There are no external software interface requirements for KMS.
Communications interfaces
There are no external communications interface requirements for KMS.
These include
a. Validity checks on the inputs
b. Exact sequence of operations
c. Responses to abnormal situations, including
1. Overflow
2. Communication facilities
3. Error handling and recovery
d. Effect of parameters
5
e. Relationship of outputs to inputs, including
1. Input/output sequences
2. Formulas for input to output conversion
It may be appropriate to partition the functional requirements into subfunctions or subprocesses. This does
not imply that the software design will also be partitioned that way.
Company Management
3.2.1 Company Information
3.2.1.1 The system shall maintain at a minimum the information in Table 1.
Property Mandatory Explanation
Name Yes Can contain Turkish and International characters
Registration Number Yes Can contain numerical characters
E-mail Yes Can contain International characters
Phone No Can contain numerical characters
Address No Can contain text
Product Category Yes NACE Codes
Web Page No Can contain International characters
Cluster(s) registered Yes Can contain Turkish and International characters, shows the
clusters that the company is a member
User Management
3.2.9 User Information
3.2.9.1 The system shall keep at a minimum the information contained in Error:
Reference source not found.
Property Mandatory Explanation
Name Yes Can contain Turkish and International characters
Surname Yes Can contain Turkish and International characters
E-mail Yes Can contain International characters
Phone No Can contain numeric characters
Address No Can contain text
Company/Foundation Yes Can contain Turkish and International characters
Name
6
3.2.10 Add/Create Operation
3.2.10.1 It is not needed to register visitors, since they can only view some definite pages
and information.
3.2.10.2 KMS Coordinator: Is added to the system by the System Administrator.
3.2.10.3 Cluster Coordinator: Is added by the KMS Administrator.
3.2.10.4 User can register to the system by clicking the “Register” link on the main page
and filling out the form with the required information.
3.2.10.5 Company Representative is defined during the “Add Company” process and is
added to the system as a user.
3.2.11 View Operation
Delete Operation
Link Management
3.2.11.1 The system shall allow authorized users to enter related links to be viewed by all
the users
3.2.11.2 Links can be entered to the system by the KMS coordinator or cluster
coordinator.
3.2.11.3 Obsolete links are deleted from the system again by the KMS coordinator.
Static numerical requirements are sometimes identified under a separate section entitled Capacity.
Dynamic numerical requirements may include, for example, the numbers of transactions and tasks and the
amount of data to be processed within certain time periods for both normal and peak workload conditions.
NOTE: Numerical limits applied to one specific function are normally specified as part of the processing subparagraph
description of that function.
There are no performance requirements.
Standards compliance
This subsection should specify the requirements derived from existing standards or regulations. They may
include the following:
7
a. Report format;
b. Data naming;
c. Accounting procedures;
d. Audit tracing.
For example, this could specify the requirement for software to trace processing activity. Such traces are
needed for some applications to meet minimum regulatory or financial standards. An audit trace
requirement may, for example, state that all changes to a payroll database must be recorded in a trace file
with before and after values.
Reliability
This should specify the factors required to establish the required reliability of the software system at time of
delivery.
Availability
This should specify the factors required to guarantee a defined availability level for the entire system such
as checkpoint, recovery, and restart.
Security
This should specify the factors that protect the software from accidental or malicious access, use,
modification, destruction, or disclosure. Specific requirements in this area could include the need to
a. Utilize certain cryptographical techniques;
b. Keep specific log or history data sets;
c. Assign certain functions to different modules;
d. Restrict communications between some areas of the program;
e. Check data integrity for critical variables.
Maintainability
This should specify attributes of software that relate to the ease of maintenance of the software itself. There
may be some requirement for certain modularity, interfaces, complexity, etc. Requirements should not be
placed here just because they are thought to be good design practices.
Portability
This should specify attributes of software that relate to the ease of porting the software to other host
machines and/or operating systems. This may include the following:
a. Percentage of components with host-dependent code;
b. Percentage of code that is host dependent;
c. Use of a proven portable language;
d. Use of a particular compiler or language subset;
e. Use of a particular operating system.
8
3.6 Other Requirements