0% found this document useful (0 votes)
48 views

Software Requirement Report Template

This document is a software requirements specification for a mobile application called "Resfebe" that allows users to combine illustrated pictures with letters to form words or phrases. The application will allow users to register, search for games by criteria, view game results in a list, select a game, and view top scorers. It will communicate with a backend server and database for data storage and retrieval. An administrator can manage the system and game options through a separate web portal. The mobile application has memory and storage limits of 20MB each. The SRS outlines the major functions, interfaces, users, and requirements for the proposed system.

Uploaded by

Tewhem
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

Software Requirement Report Template

This document is a software requirements specification for a mobile application called "Resfebe" that allows users to combine illustrated pictures with letters to form words or phrases. The application will allow users to register, search for games by criteria, view game results in a list, select a game, and view top scorers. It will communicate with a backend server and database for data storage and retrieval. An administrator can manage the system and game options through a separate web portal. The mobile application has memory and storage limits of 20MB each. The SRS outlines the major functions, interfaces, users, and requirements for the proposed system.

Uploaded by

Tewhem
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Akdeniz University

Department of Computer Engineering

Software Engineering
Project
Project short-name: project title

Software Requirements
Specification

Project Group Member Name, Project Group Member Name …

Team Leader: Team Leader’s Name


Product Owner: Product Owner’s Name

Instructor: Assoc. Prof. Ümit Deniz ULUŞAR

<Date>

This report is submitted to the Department of Computer Engineering of Akdeniz University of the
Software Engineering course CSE332.
Abbreviations
IP Internet Protocol

2 of 11
Contents
1 Introduction______________________________________________________1
1.1 Purpose_____________________________________________________________1
1.2 Product Scope________________________________________________________1
1.3 References__________________________________________________________1
2 Overall Description_________________________________________________1
2.1 Product Perspective___________________________________________________1
2.2 Product Functions_____________________________________________________1
2.3 User Classes and Characteristics_________________________________________1
2.4 Operating Environment________________________________________________1
2.5 Design and Implementation Constraints___________________________________1
2.6 User Documentation__________________________________________________2
2.7 Assumptions and Dependencies_________________________________________2
3 External Interface Requirements______________________________________2
3.1 User Interfaces_______________________________________________________2
3.2 Hardware Interfaces___________________________________________________2
3.3 Software Interfaces___________________________________________________2
3.4 Communications Interfaces_____________________________________________2
4 System Features___________________________________________________2
4.1 System Feature 1_____________________________________________________2
4.1.1 Description and Priority______________________________________________________2
4.1.2 Stimulus/Response Sequences________________________________________________2
4.1.3 Functional Requirements_____________________________________________________3
4.2 System Feature 2 (and so on)____________________________________________3
5 Use Cases________________________________________________________3
5.1 Creating an new account_______________________________________________3
5.2 Deleting an account___________________________________________________3
6 Nonfunctional System Requirements__________________________________4
6.1 Performance Requirements_____________________________________________4
6.2 Safety Requirements__________________________________________________4
6.3 Security Requirements_________________________________________________4
6.4 Software Quality Attributes_____________________________________________4
6.5 Business Rules________________________________________________________4
7 Other Requirements________________________________________________4
8 Proposed System__________________________________________________5
8.1 Overview____________________________________________________________5
8.2 Functional Requirements_______________________________________________5
8.3 Non-functional Requirements___________________________________________5
8.4 Pseudo Requirements_________________________________________________6
8.5 System Models_______________________________________________________6
8.5.1 Scenarios_________________________________________________________________6
8.5.1.1. Patient and Doctor Member of the System___________________________________6
8.5.2 Use-Case Model____________________________________________________________6
8.5.3 Object and Class Model______________________________________________________6
8.5.4 Dynamic Models___________________________________________________________7
8.5.5 User Interface_____________________________________________________________7
8.5.6 Test_____________________________________________________________________7

9 References_______________________________________________________7
10 Appendix A: Glossary_______________________________________________7

2 of 11
1 Introduction
1.1 Purpose

<Identify the product whose software requirements are specified in this document, including the
revision or release number. Describe the scope of the product that is covered by this SRS, particularly
if this SRS describes only part of the system or a single subsystem.>

The purpose of this document is to give a detailed description of the requirements for the “Resfebe”
game. It will illustrate the purpose and complete declaration for the development of the software. It
will also explain system constraints, interface and interactions. This document is primarily intended to
be proposed to a customer for its approval and a reference for developing the first version of the
system for the development team.

1.2 Product Scope


<Provide a short description of the software being specified and its purpose, including relevant
benefits, objectives, and goals. Relate the software to corporate goals or business strategies. If a
separate vision and scope document is available, refer to it rather than duplicating its contents here.>

The “Resfebe” is a mobile application which helps people to combines the illustrated pictures with
individual letters to depict words and/or phrases. The application will be free to download from either
a mobile phone application store or similar services.
Players will provide their info for the registration. An administrator will use the web-portal in order to
administer the system and monitor player activities.
Furthermore, the software needs Internet connection to fetch and display results. All system
information is maintained in a database, which is located on a web-server. The software also interacts
with the mobile phones ……… software which is required to be an already installed application on the
user’s mobile phone. By using the mobile application, users can view …... The application also has the
capability of representing both summary and detailed information about the top scorers.

1.3 References
<List any other documents or Web addresses to which this SRS refers. These may include user
interface style guides, contracts, standards, system requirements specifications, use case documents,
or a vision and scope document. Provide enough information so that the reader could access a copy of
each reference, including title, author, version number, date, and source or location.>

2 Overall Description
2.1 Product Perspective
<Describe the context and origin of the product being specified in this SRS. For example, state
whether this product is a follow-on member of a product family, a replacement for certain existing
systems, or a new, self-contained product. If the SRS defines a component of a larger system, relate
the requirements of the larger system to the functionality of this software and identify interfaces
between the two. A simple diagram that shows the major components of the overall system,
subsystem interconnections, and external interfaces can be helpful.>

This system will consist of two parts: one mobile application and one web portal. The mobile
application will be used to play the game and view the top scores while the web portal will be used for
managing the information about the game and the system as a whole.
The mobile application will need to communicate to the server to download xxxxx and register the
score. …
Since this is a data-centric product it will need somewhere to store the data. For that, a database will
be used. Both the mobile application and web portal will communicate with the database, however in
slightly different ways. The mobile application will only use the database to get data while the web
portal will also add and modify data. All of the database communication will go over the Internet.
The mobile application has some restrictions about the resource allocation. To avoid problems with
overloading the operating system the application is only allowed to use 20 megabytes of memory
while running the application. The maximum amount of hard drive space is also 20 megabytes.

1 of 11
2.2 Product Functions
<Summarize the major functions the product must perform or must let the user perform. Details will
be provided in Section 3, so only a high level summary (such as a bullet list) is needed here. Organize
the functions to make them understandable to any reader of the SRS. A picture of the major groups of
related requirements and how they relate, such as a top level data flow diagram or object class
diagram, is often effective.>

With the mobile application, the users will be able to search for games. The result will be based on the
criteria the user inputs. There are several search criteria and it will be possible for the administrator of
the system to manage the options for those criteria that have that.
The result of the search will be viewed in a list view, depending on what criteria included in the
search. The list view will have one list item for each game matching the search criteria and show a
small part of the game information so the user can identify the game. The users will be able to either
select a game to play or get information top player scores, or view the information of a specific game.
The web portal will provide functionality to manage the system and the game information. It will also
provide information about the system, for example show when there is a new update.

2.3 User Types and Characteristics


<Identify the various user classes that you anticipate will use this product. User classes may be
differentiated based on frequency of use, subset of product functions used, technical expertise,
security or privilege levels, educational level, or experience. Describe the pertinent characteristics of
each user class. Certain requirements may pertain only to certain user classes. Distinguish the most
important user classes for this product from those who are less important to satisfy.>

There are three types of users that interact with the system: users of the mobile application, data
providers and administrators. Each of these three types of users has different use of the system so
each of them has their own requirements.
The mobile application users can only use the application to perform xxx. This means that the user
have to be able to xxx, choose xxxx from that search and then xxxx. In order for the users to get a
relevant search result there are multiple criteria the users can specify and all results matches all of
those.

With the mobile application, the users will be able to search for games. The result will be based on the
criteria the user inputs. There are several search criteria and it will be possible for the administrator of
the system to manage the options for those criteria that have that.
The result of the search will be viewed in a list view, depending on what criteria included in the
search. The list view will have one list item for each game matching the search criteria and show a
small part of the game information so the user can identify the game. The users will be able to either
select a game to play or get information top player scores, or view the information of a specific game.
The web portal will provide functionality to manage the system and the game information. It will also
provide information about the system, for example show when there is a new update.

2.4 Operating Environment


<Describe the environment in which the software will operate, including the hardware platform,
operating system and versions, and any other software components or applications with which it must
peacefully coexist.>

2.5 Design and Implementation Constraints


<Describe any items or issues that will limit the options available to the developers. These might
include: corporate or regulatory policies; hardware limitations (timing requirements, memory
requirements); interfaces to other applications; specific technologies, tools, and databases to be used;
parallel operations; language requirements; communications protocols; security considerations;

2 of 11
design conventions or programming standards (for example, if the customer’s organization will be
responsible for maintaining the delivered software).>

The Internet connection is also a constraint for the application. Since the application fetches data from
the database over the Internet, it is crucial that there is an Internet connection for the application to
function.
Both the web portal and the mobile application will be constrained by the capacity of the database.
Since the database is shared between both application it may be forced to queue incoming requests
and therefor increase the time it takes to fetch data.

2.6 User Documentation


<List the user documentation components (such as user manuals, on-line help, and tutorials) that will
be delivered along with the software. Identify any known user documentation delivery formats or
standards.>

2.7 Assumptions and Dependencies


<List any assumed factors (as opposed to known facts) that could affect the requirements stated in
the SRS. These could include third-party or commercial components that you plan to use, issues
around the development or operating environment, or constraints. The project could be affected if
these assumptions are incorrect, are not shared, or change. Also identify any dependencies the
project has on external factors, such as software components that you intend to reuse from another
project, unless they are already documented elsewhere (for example, in the vision and scope
document or the project plan).>

One assumption about the product is that it will always be used on mobile phones that have enough
performance. If the phone does not have enough hardware resources available for the application, for
example the users might have allocated them with other applications, there may be scenarios where
the application does not work as intended or even at all.

3 External Interface Requirements


3.1 User Interfaces
<Describe the logical characteristics of each interface between the software product and the users.
This may include sample screen images, any GUI standards or product family style guides that are to
be followed, screen layout constraints, standard buttons and functions (e.g., help) that will appear on
every screen, keyboard shortcuts, error message display standards, and so on. Define the software
components for which a user interface is needed. Details of the user interface design should be
documented in a separate user interface specification.>

A first-time user of the mobile application should see the log-in page when he/she opens the
application, see Figure 2. If the user has not registered, he/she should be able to do that on the log-in
page.
If the user is not a first-time user, he/she should be able to see the search page directly when the
application is opened, see Figure 3. Here the user chooses the type of search he/she wants to
conduct.
Every user should have a profile page where they can edit their e-mail address, phone number and
password, see Figure 4. Also, the user can set the mobile application to his/her preferred language.
The “P” icon shows where the user can click to navigate to his/her profile page.

Figures.

3.2 Hardware Interfaces


<Describe the logical and physical characteristics of each interface between the software product and
the hardware components of the system. This may include the supported device types, the nature of
the data and control interactions between the software and the hardware, and communication
protocols to be used.>

3 of 11
3.3 Software Interfaces
<Describe the connections between this product and other specific software components (name and
version), including databases, operating systems, tools, libraries, and integrated commercial
components. Identify the data items or messages coming into the system and going out and describe
the purpose of each. Describe the services needed and the nature of communications. Refer to
documents that describe detailed application programming interface protocols. Identify data that will
be shared across software components. If the data sharing mechanism must be implemented in a
specific way (for example, use of a global data area in a multitasking operating system), specify this
as an implementation constraint.>

3.4 Communications Interfaces


<Describe the requirements associated with any communications functions required by this product,
including e-mail, web browser, network server communications protocols, electronic forms, and so on.
Define any pertinent message formatting. Identify any communication standards that will be used,
such as FTP or HTTP. Specify any communication security or encryption issues, data transfer rates,
and synchronization mechanisms.>

4 System Features / Requirements


<This template illustrates organizing the functional requirements for the product by system features,
the major services provided by the product. You may prefer to organize this section by use case,
mode of operation, user class, object class, functional hierarchy, or combinations of these, whatever
makes the most logical sense for your product.>

4.1 User Class 1 <Administrator>


4.1.1 System Feature 1
<Don’t really say “System Feature 1.” State the feature name in just a few words.>

4.1.1.1. Description and Priority


<Provide a short description of the feature and indicate whether it is of High, Medium, or Low priority.
You could also include specific priority component ratings, such as benefit, penalty, cost, and risk
(each rated on a relative scale from a low of 1 to a high of 9).>

4.1.1.2. Stimulus/Response Sequences


<List the sequences of user actions and system responses that stimulate the behavior defined for this
feature. These will correspond to the dialog elements associated with use cases.>

4.1.1.3. Functional Requirements


<Itemize the detailed functional requirements associated with this feature. These are the software
capabilities that must be present in order for the user to carry out the services provided by the
feature, or to execute the use case. Include how the product should respond to anticipated error
conditions or invalid inputs. Requirements should be concise, complete, unambiguous, verifiable, and
necessary. Use “TBD” as a placeholder to indicate when necessary information is not yet available.>

<Each requirement should be uniquely identified with a sequence number or a meaningful tag of some
kind.>

D: FR1
TITLE: Download mobile application
DESC: A user should be able to download the mobile application through either an application store or
similar service on the mobile phone. The application should be free to download.
RAT: In order for a user to download the mobile application.
DEP: None

ID: FR2
TITLE: Download and notify users of new releases
DESC: When a new/updated version or release of the software is released, the user should check for
these manually. The download of the new release should be done through the mobile phone in the
same way as downloading the mobile application.
RAT: In order for a user to download a new/updated release.
DEP: FR1

ID: FR3

4 of 11
TITLE: User registration - Mobile application
DESC: Given that a user has downloaded the mobile application, then the user should be able to
register through the mobile application. The user must provide user-name, password and e-mail
address. The user can choose to provide a regularly used phone number.
RAT: In order for a user to register on the mobile application.
DEP: FR1

ID: FR4
TITLE: User log-in - Mobile application
DESC: Given that a user has registered, then the user should be able to log in to the mobile
application. The log-in information will be stored on the phone and in the future the user should be
logged in automatically.
RAT: In order for a user to register on the mobile application.
DEP: FR1, FR3

ID: FR5
TITLE: Retrieve password
DESC: Given that a user has registered, then the user should be able to retrieve his/her password by
e-mail.
RAT: In order for a user to retrieve his/her password. DEP: FR1

ID: FR6
TITLE: Mobile application - Search
DESC: Given that a user is logged in to the mobile application, then the first page that is shown
should be the search page. The user should be able to search for a xxxx, according to several search
options. The search options are xxx, xxxx, xxxxx and xxxx. There should also be a free-text search
option. A user should be able to select multiple search options in one search.
RAT: In order for a user to search for a xxxxx.
DEP: FR4

ID: FR7
TITLE: Mobile application - Profile page
DESC: On the mobile application, a user should have a profile page. On the profile page a user can
edit his/her information, which includes the password, e-mail address and phone number. A user
should also be able to choose what language the mobile application should be set to. The different
language choices are Turkish and English.
RAT: In order for a user to have a profile page on the mobile application.
DEP: FR1

ID: FR8 Feature: Create an account

ID: FR9 Feature: Delete an account

ID: FR10 Feature: Update an account

ID: FR11 Feature: Manage information

5 Use Cases
5.1 Creating an new account

The purpose of this use case is to describe the procedure of creating an account in the system
Pre-conditions:
None

5 of 11
Post-conditions:
• An account is created for the user
Basic Flow:
1. The user is in the homepage
2. The user clicks on “new account” link and is taken to the account creation page
3. The user enters all their information and clicks “create” button
4. If the username already exits, an error message appears alerting the user and asking the user to
choose another username. If the username does not exist, a confirmation appears letting the user
know that the account has been created

5.2 Deleting an account


…..

6 Nonfunctional System Requirements

Figure 1 An example figure

6.1 Performance Requirements


<If there are performance requirements for the product under various circumstances, state them here
and explain their rationale, to help the developers understand the intent and make suitable design
choices. Specify the timing relationships for real time systems. Make such requirements as specific as
possible. You may need to state performance requirements for individual functional requirements or
features.>

ID: NF1
TAG: Response Time < ID: FR6 TITLE: Mobile application - Search >
GIST: The fastness of the search
SCALE: The response time of a search
METER: Measurements obtained from 1000 searches during testing.
MUST: No more than 2 seconds 100% of the time.
WISH: No more than 1 second 100% of the time.

ID: NF2
TAG: Response Time for < ID: FR4 TITLE: User log-in - Mobile application >
GIST: The fastness of the search
SCALE: The response time of a search
METER: Measurements obtained from 1000 searches during testing.
MUST: No more than 2 seconds 100% of the time.
WISH: No more than 1 second 100% of the time.

6 of 11
6.2 Safety Requirements
<Specify those requirements that are concerned with possible loss, damage, or harm that could result
from the use of the product. Define any safeguards or actions that must be taken, as well as actions
that must be prevented. Refer to any external policies or regulations that state safety issues that
affect the product’s design or use. Define any safety certifications that must be satisfied.>

6.3 Security Requirements


<Specify any requirements regarding security or privacy issues surrounding use of the product or
protection of the data used or created by the product. Define any user identity authentication
requirements. Refer to any external policies or regulations containing security issues that affect the
product. Define any security or privacy certifications that must be satisfied.>

6.4 Software Quality Attributes


<Specify any additional quality characteristics for the product that will be important to either the
customers or the developers. Some to consider are: adaptability, availability, correctness, flexibility,
interoperability, maintainability, portability, reliability, reusability, robustness, testability, and
usability. Write these to be specific, quantitative, and verifiable when possible. At the least, clarify the
relative preferences for various attributes, such as ease of use over ease of learning.>

6.5 Business Rules


<List any operating principles about the product, such as which individuals or roles can perform which
functions under specific circumstances. These are not functional requirements in themselves, but they
may imply certain functional requirements to enforce the rules.>

7 Other Requirements
<Define any other requirements not covered elsewhere in the SRS. This might include database
requirements, internationalization requirements, legal requirements, reuse objectives for the project,
and so on. Add any new sections that are pertinent to the project.>

8 References
For the references you can use programs like Zotero (https://www.zotero.org/)

Object-Oriented Software Engineering, Using UML, Patterns, and Java, 2nd Edition, by Bernd
Bruegge and Allen H. Dutoit, Prentice-Hall, 2004, ISBN: 0-13-047110-0.

9 Appendix A: Glossary
<Define all the terms necessary to properly interpret the SRS, including acronyms and abbreviations.
You may wish to build a separate glossary that spans multiple projects or the entire organization, and
just include terms specific to a single project in each SRS.>

7 of 11

You might also like