Advertisement
Guest User

Untitled

a guest
Dec 9th, 2019
375
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Latex 47.01 KB | None | 0 0
  1. \documentclass{scrreprt}
  2. \usepackage{color}
  3. \usepackage{float}
  4. \usepackage{graphicx}
  5. \usepackage{listings}
  6. \usepackage{underscore}
  7. \usepackage[bookmarks=true]{hyperref}
  8. \usepackage[utf8]{inputenc}
  9. \usepackage[english]{babel}
  10. %\setcounter{tocdepth}{3}
  11. \setcounter{secnumdepth}{3}
  12. \hypersetup{
  13.     bookmarks=false,    % show bookmarks bar?
  14.     pdftitle={Software Requirement Specification},    % title
  15.     pdfauthor={Alistair Bahr},                     % author
  16.     pdfsubject={Malware},                        % subject of the document
  17.     pdfkeywords={malware, virus, worm, phishing, trojan, malicious}, % list of keywords
  18.     colorlinks=true,       % false: boxed links; true: colored links
  19.     linkcolor=blue,       % color of internal links
  20.     citecolor=black,       % color of links to bibliography
  21.     filecolor=black,        % color of file links
  22.     urlcolor=purple,        % color of external links
  23.     linktoc=page            % only page is linked
  24. }%
  25. \def\myversion{2.0 }
  26. \date{27.11.2019}
  27. %\title{%
  28.  
  29. %}
  30. \usepackage{hyperref}
  31. \begin{document}
  32.  
  33. \begin{flushright}
  34.    \rule{16cm}{5pt}\vskip1cm
  35.    \begin{bfseries}
  36.        \Huge{SOFTWARE REQUIREMENTS\\ SPECIFICATION}\\
  37.        \vspace{1.9cm}
  38.        for\\
  39.        \vspace{1.9cm}
  40.        Tennis Club Application\\
  41.        \vspace{1.9cm}
  42.        \LARGE{Version \myversion }\\
  43.        \vspace{1.9cm}
  44.        Prepared by Alistair Bahr\\
  45.        \vspace{1.9cm}
  46.        \today\\
  47.    \end{bfseries}
  48. \end{flushright}
  49.  
  50. \tableofcontents
  51.  
  52.  
  53. \chapter*{Revision History}
  54.  
  55. \begin{center}
  56.    \begin{tabular}{|c|c|c|}
  57.        \hline
  58.         Date & Reason For Changes & Version\\
  59.        \hline
  60.         October 25, 2019 & First Version & 1.0\\
  61.        \hline
  62.         \today & General improvements & 2.0\\
  63.        \hline
  64.    \end{tabular}
  65. \end{center}
  66.  
  67. \chapter{Introduction}
  68.  
  69. \section{Purpose}
  70. In this document, which follows the IEEE SRS document standard, the requirements of the Tennis Club Application are described. This software will replace the current system of archiving data about the matches, as well as providing additional features, like a live score which can be viewed and easier access to player data. In the current system, which relies solely on paper, it is very time-consuming, to access or store data in the archive. Also there are big problems with the current system, because data can get lost or fraudulently altered.
  71.  
  72. \section{Document Conventions}
  73. There are no specific document conventions used.
  74.  
  75. \section{Intended Audience and Reading Suggestions}
  76. This document is intended for the shareholders of the tennis club, as well as the developers of the application.
  77. Following after this heading are the product scope, an overall description and definitions about the tennis club application. Afterwards more information about the user interface’s requirements and the software’s features in correlation to their requirements. In the end non-functional requirements will be described.
  78.  
  79. \section{Project Scope}
  80. The aim for this software project is to replace the current way of archiving data about players and matches, as well as granting specific groups of people differing amounts of access to the data.
  81. There are three main parts of the application. First the archive, the referee UI and lastly the live match view.
  82. The archive in its limited version is intended for everyone, even without a user account, and shows all match information but only non-sensitive data about the players. But there is also a non-limited version of the archive which is only intended for shareholders. This version gives access to sensitive data about the players, like a home address.
  83. After logging in with a referee account, the user gets access to a referee user interface, which allows setting the score of a particular match, while it is going on. The data of this is also viewable via the live match view.
  84. The live match view is also accessible to everyone, even without an account, and reflects the data, the referee enters while a match is running.
  85.  
  86.  
  87. \chapter{Overall Description}
  88.  
  89.  
  90. \section{Product Perspective}
  91. This software replaces an existing analogue system. It is designed from ground up. The software itself is part of a system, which allows storage of data about matches and access to previously saved matches and players.
  92. \subsection{External interface requirements}
  93. \subsubsection{User interface requirements}
  94.  
  95. \noindent
  96. \begin{tabular}{|p{0.2\textwidth}|p{0.2\textwidth}|p{0.5\textwidth}|}
  97.    \hline
  98.    \textbf{Requirement No.} & \textbf{Title}          & \textbf{Description}                                                                                                                                \\ \hline
  99.    UI.1            & Log in         & The software shall allow log in, for the access to some parts of the software                                                              \\ \hline
  100.    UI.2            & Create account & The software shall allow the possibility to create a player account, in case a player did not register yet.                                \\ \hline
  101.    UI.3            & Links          & The software shall present links to the archive and the live score view on the start page and a link to the start page on all other pages. \\ \hline
  102. \end{tabular}
  103.  
  104. \subsubsection{Hardware interface requirements}
  105. The application shall support all commonly used web browsers for pc’s and smartphones.
  106.  
  107.  
  108. \section{Product Functions}
  109. The software incorporates the following use cases:\newline\newline
  110. \begin{tabular}{|p{3cm}|p{9cm}|}
  111.    \hline
  112.    \textbf{Use Case ID}   & \textbf{UC.1}                                                                                                                                                                                                                                                                                    \\
  113.    \hline
  114.    \textbf{Use case name} & Update score                                                                                                                                                                                                                                                                            \\
  115.    \hline
  116.    \textbf{Actor}         & Referee                                                                                                                                                                                                                                                                                 \\
  117.    \hline
  118.    \textbf{Description}   & Referee updates a live score                                                                                                                                                                                                                                                            \\
  119.    \hline
  120.    \textbf{Pre-condition} & The Referee needs to be logged in, An active account is required, An ongoing match session is required                                                                                                                                                                                  \\
  121.    \hline
  122.    \textbf{Scenario}      & 1. The system displays the current score\newline
  123.    2. The referee decides to alter the current data \newline
  124.    3. The referee uses the interface to alter the current score line \newline
  125.    4. The system displays and saves the new altered score line \\
  126.    \hline
  127.    \textbf{Result}        & The live score is altered                                                                                                                                                                                                                                                               \\
  128.    \hline
  129.    \textbf{Exceptions}    & None                                                                                                                                                                                                                                                                                    \\
  130.    \hline
  131. \end{tabular}\newline\newline
  132.  
  133. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  134.    \hline
  135.    \textbf{Use Case ID}   & \textbf{UC.2}                                                                                                                                                                                 \\
  136.    \hline
  137.    \textbf{Use case name} & Finalize match                                                                                                                                                                       \\
  138.    \hline
  139.    \textbf{Actor}         & Referee                                                                                                                                                                              \\
  140.    \hline
  141.    \textbf{Description}   & Referee finalizes the match                                                                                                                                                          \\
  142.    \hline
  143.    \textbf{Pre-condition} & The Referee needs to be logged in, An active account is required, An ongoing match session is required                                                                               \\
  144.    \hline
  145.    \textbf{Scenario}      & 1. The system displays the current score line \newline 2. The referee opts to end the match \newline 3. The system persists the final score \newline 4. The system locks the interface  \\
  146.    \hline
  147.    \textbf{Result}        & The match ends                                                                                                                                                                       \\
  148.    \hline
  149.    \textbf{Exceptions}    & None                                                                                                                                                                                 \\
  150.    \hline
  151. \end{tabular}\newline\newline
  152.  
  153. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  154.    \hline
  155.    \textbf{Use Case ID}   & \textbf{UC.3}                                                                                                                                                                                                                                                                                                                                                                       \\
  156.    \hline
  157.    \textbf{Use case name} & Set up match information                                                                                                                                                                                                                                                                                                                                                   \\
  158.    \hline
  159.    \textbf{Actor}         & Administrator                                                                                                                                                                                                                                                                                                                                                              \\
  160.    \hline
  161.    \textbf{Description}   & The Administrator sets up the match information                                                                                                                                                                                                                                                                                                                            \\
  162.    \hline
  163.    \textbf{Pre-condition} & A user with an active Administrator account needs to be logged in                                                                                                                                                                                                                                                                                                          \\
  164.    \hline
  165.    \textbf{Scenario}      & 1. The Administrator opts to create a new match session \newline 2. The System redirects the administrator to the match creation page \newline 3. The Administrator enters the appropriate match data \newline 4. The Administrator opts to finalize the match creation process \newline 5. The System checks the inserted data \newline 6. The System persists the new match data  \\
  166.    \hline
  167.    \textbf{Result}        & The User views the live score                                                                                                                                                                                                                                                                                                                                              \\
  168.    \hline
  169.    \textbf{Exceptions}    & 5.\newline System message “Invalid message” 5.1~ Return user to step 4                                                                                                                                                                                                                                                                                                       \\
  170.    \hline
  171. \end{tabular}\newline\newline
  172.  
  173. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  174.    \hline
  175.    \textbf{Use Case ID}   & \textbf{UC.4}                                                                                                                                                                                                                                                                                                                                                                                                                               \\
  176.    \hline
  177.    \textbf{Use case name} & Create Referee and Admin Accounts                                                                                                                                                                                                                                                                                                                                                                                                  \\
  178.    \hline
  179.    \textbf{Actor}         & Administrator                                                                                                                                                                                                                                                                                                                                                                                                                      \\
  180.    \hline
  181.    \textbf{Description}   & The administrator creates a referee or administrator account                                                                                                                                                                                                                                                                                                                                                                       \\
  182.    \hline
  183.    \textbf{Pre-condition} & A user with an active Administrator account needs to be logged in, An ongoing match session is required, Active internet connection is needed                                                                                                                                                                                                                                                                                      \\
  184.    \hline
  185.    \textbf{Scenario}      & 1. The Administrator opts to create a high-access account \newline 2. The system redirects the administrator to the account creation page \newline 3. The Administrator enters the intended user’s details \newline 4. The Administrator chooses to finalize the account creation \newline 5. The System checks if the filled information is valid \newline 6. The System persists the new account and sends an email to the intended user  \\
  186.    \hline
  187.    \textbf{Result}        & The User views the live score                                                                                                                                                                                                                                                                                                                                                                                                      \\
  188.    \hline
  189.    \textbf{Exceptions}    & 1. System message “Invalid credentials” 1.1~~ Return user to step 4                                                                                                                                                                                                                                                                                                                                                          \\
  190.    \hline    
  191. \end{tabular}\newline\newline
  192.  
  193. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  194.    \hline
  195.    \textbf{Use Case ID}   & \textbf{UC.5}                                                                                                                                                                                                                                                                            \\
  196.    \hline
  197.    \textbf{Use case name} & Retrieve sensitive information                                                                                                                                                                                                                                                  \\
  198.    \hline
  199.    \textbf{Actor}         & Tennis Board/Administrator                                                                                                                                                                                                                                                      \\
  200.    \hline
  201.    \textbf{Description}   & A member of the Tennis Board chooses to retrieve sensitive information                                                                                                                                                                                                          \\
  202.    \hline
  203.    \textbf{Pre-condition} & An account with elevated privileges is needed, The member needs to be logged in, Active internet connection is needed                                                                                                                                                           \\
  204.    \hline
  205.    \textbf{Scenario}      & 1. A board member navigates to the club’s webpage \newline 2. The System displays the member with options \newline 3. The member opts to retrieve sensitive data about a player (e.g. a player's profile) \newline 4. The system displays the sensitive information to the member  \\
  206.    \hline
  207.    \textbf{Result}        & A member of the board retrieves some desired sensitive data                                                                                                                                                                                                                     \\
  208.    \hline
  209.    \textbf{Exceptions}    & None                                                                                                                                                                                                                                                                            \\
  210.    \hline    
  211. \end{tabular}\newline\newline
  212.  
  213. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  214.    \hline
  215.    \textbf{Use Case ID}   & \textbf{UC.6}                                                                                                                                                                                                                                                                           \\
  216.    \hline
  217.    \textbf{Use case name} & View live score                                                                                                                                                                                                                                                                \\
  218.    \hline
  219.    \textbf{Actor}         & No particular Actor everyone has access to this use case                                                                                                                                                                                                                       \\
  220.    \hline
  221.    \textbf{Description}   & A user views the live score                                                                                                                                                                                                                                                    \\
  222.    \hline
  223.    \textbf{Pre-condition} & At least one ongoing tennis match session is required, Active internet connection is needed                                                                                                                                                                                    \\
  224.    \hline
  225.    \textbf{Scenario}      & 1. The User navigates to the club’s website \newline 2. The System displays the user with the options \newline 3. The User opts to view the live score development \newline 4. The System redirects the user to the appropriate page where the current live scores are displayed  \\
  226.    \hline
  227.    \textbf{Result}        & The User views the live score                                                                                                                                                                                                                                                  \\
  228.    \hline
  229.    \textbf{Exceptions}    & None                                                                                                                                                                                                                                                                           \\
  230.    \hline
  231. \end{tabular}\newline\newline
  232.  
  233. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  234.    \hline
  235.    \textbf{Use Case ID}   & \textbf{UC.7}                                                                                                                                                                                                                                                                                                                                                                             \\
  236.    \hline
  237.    \textbf{Use case name} & Retrieve non-sensitive data                                                                                                                                                                                                                                                                                                                                                      \\
  238.    \hline
  239.    \textbf{Actor}         & Everyone no user restriction                                                                                                                                                                                                                                                                                                                                                     \\
  240.    \hline
  241.    \textbf{Description}   & A user retrieves sensitive data                                                                                                                                                                                                                                                                                                                                                  \\
  242.    \hline
  243.    \textbf{Pre-condition} & Active internet connection is needed                                                                                                                                                                                                                                                                                                                                             \\
  244.    \hline
  245.    \textbf{Scenario}      & 1. The interested user navigates to the club’s page \newline 2. The system displays the user with the available options \newline 3. The user opts to retrieve information about some non-sensitive information (e.g. match details) \newline 4. The system redirects the user to the page with the desired information \newline 5. The system displays the desired chosen information  \\
  246.    \hline
  247.    \textbf{Result}        & The User views the live score                                                                                                                                                                                                                                                                                                                                                    \\
  248.    \hline
  249.    \textbf{Exceptions}    & 4. The user opts to see sensitive data \newline 4.1 System message “You are not authorized to access this page” \newline 4.2 Return to step 3                                                                                                                                                                                                                                 \\
  250.    \hline
  251. \end{tabular}\newline\newline
  252.  
  253. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  254.    \hline
  255.    \textbf{Use Case ID}   & \textbf{UC.8}                                                                                                                                                                                                                                                                                                                                                                                                                     \\
  256.    \hline
  257.    \textbf{Use case name} & Register account                                                                                                                                                                                                                                                                                                                                                                                                         \\
  258.    \hline
  259.    \textbf{Actor}         & Tennis Player                                                                                                                                                                                                                                                                                                                                                                                                            \\
  260.    \hline
  261.    \textbf{Description}   & A user registers a normal account in the web page                                                                                                                                                                                                                                                                                                                                                                        \\
  262.    \hline
  263.    \textbf{Pre-condition} & Active internet connection is needed                                                                                                                                                                                                                                                                                                                                                                                     \\
  264.    \hline
  265.    \textbf{Scenario}      & 1. The interested user navigates to the club’s page \newline 2. The system displays the user with the available options \newline 3. The user opts to register an account \newline 4. The System redirects the user to the registration page \newline 5. The user fills in the appropriate information \newline 6. The System checks the inserted information \newline 7. The System persists the data and send an email to the user  \\
  266.    \hline
  267.    \textbf{Result}        & The User views the live score                                                                                                                                                                                                                                                                                                                                                                                            \\
  268.    \hline
  269.    \textbf{Exceptions}    & 6. System message “Invalid Data” \newline 6.1 Return to step 5                                                                                                                                                                                                                                                                                                                                                      \\
  270.    \hline
  271. \end{tabular}\newline\newline
  272.  
  273. \noindent\begin{tabular}{|p{3cm}|p{9cm}|}
  274.    \hline
  275.    \textbf{Use Case ID}   & \textbf{UC.9}                                                                                                                                                           \\
  276.    \hline
  277.    \textbf{Use case name} & View profile                                                                                                                                                   \\
  278.    \hline
  279.    \textbf{Actor}         & Tennis Player/Board Member/Administrator                                                                                                                       \\
  280.    \hline
  281.    \textbf{Description}   & A user decides to view their profile                                                                                                                           \\
  282.    \hline
  283.    \textbf{Pre-condition} & Active internet connection is needed, A registered account is required, The user needs to have logged in                                                       \\
  284.    \hline
  285.    \textbf{Scenario}      & 1. The user opts to view their profile \newline 2. The System redirects the user to their profile page \newline 3. The System displays the user’s information  \\
  286.    \hline
  287.    \textbf{Result}        & The User views the live score                                                                                                                                  \\
  288.    \hline
  289.    \textbf{Exceptions}    & None                                                                                                                                                           \\
  290.    \hline
  291. \end{tabular}\newline\newline
  292.  
  293.  
  294. \section{User Classes and Characteristics}
  295. \subsection{Third Parties / Media}
  296. As third parties or media users are meant, who represent the biggest number of overall users. The users do not need a user account and have quite limited access to the application. They have only access to non-sensitive data on user profiles, they can watch the live score during a game and look into the archive.
  297.  
  298. \subsection{Tennis club members / Players}
  299. This user group represents the biggest amount of user accounts. They have only a few more rights than a non-registered person. Namely viewing non-sensitive parts of other profiles and the entirety of theirs.
  300.  
  301. \subsection{Referee}
  302. A referee has an user account, which is prepared by an administrator. It can’t be created directly. With this account you have access to the referee user interface, which allows the modification and finalization of a current tennis match.
  303.  
  304. \subsection{Administrator}
  305. As an administrator you have full access to the software and its data. Even to the database itself.
  306.  
  307. \subsection{Board members/Shareholders}
  308. Shareholders and board members get elevated access to all the parts of the software’s interface, although they don’t have direct database access.
  309.  
  310. \section{Operating Environment}
  311.  
  312. \begin{tabular}{|p{3cm}|p{4cm}|p{7cm}|}
  313.    \hline
  314.    \textbf{REQNR.}         & \textbf{Title}               & \textbf{Explanation}                                                                                                                          \\
  315.    \hline
  316.    \textbf{NONF-OPERENV.1} & Device Support      & The application shall be usable from a range of devices. Most notably PC’s and smartphones                                           \\
  317.    \hline
  318.    \textbf{NONF-OPERENV.2} & Internet connection & Because of the remote data storage and the application being a website, an internet connection will be required in order to use it.  \\
  319.    \hline
  320.    \end{tabular}
  321.    
  322.  
  323. \section{Design and Implementation Constraints}
  324.  
  325. \begin{tabular}{|p{3cm}|p{4cm}|p{7cm}|}
  326. \hline
  327. \textbf{ Constraint ID } & \textbf{ Title } & \textbf{ Explanation }                                                                                                  \\
  328. \hline
  329. \textbf{ CONSTR.1 }      & Data safety laws & The application shall abide latest policies regarding storage, usage, processing and deletion in relation to the GDPR.  \\
  330. \hline
  331. \textbf{ CONSTR.2 }      & Maintenance      & The maintenance shall be handled by a non-biased (in regards to tennis matches) administrator                           \\
  332. \hline
  333. \textbf{ CONSTR.3 }      & Data Access      & Full data access via the database is only granted to the administrator.                                                 \\
  334. \hline
  335. \end{tabular}
  336.  
  337. \section{User Documentation}
  338.  
  339. No specific documentation is provided.
  340.  
  341.  
  342. \section{Assumptions and Dependencies}
  343. It is assumed, that the software is maintained by an administrator. Other than that, there are no further factors that influence the requirements stated in this document.
  344.  
  345. \section{Apportioning of requirements}
  346. There are no requirements, that are delayed until future versions.
  347.  
  348. \chapter{Specific Requirements}
  349.  
  350. \section{External Interface Requirements}
  351.  
  352. \subsection{User Interfaces}
  353. Every user class has the same interface with a differing amount of options and data. This is done in order to ensure security and data integrity. For example, a referee only has a view like shown in Fig. 3.1.\newline
  354.  
  355. \begin{figure}[h]
  356.    \centering
  357.    \includegraphics[width=0.7\textwidth]{images/refeere-ui.png}    
  358.    \caption{the referee UI}
  359. \end{figure}
  360.  
  361. \begin{figure}[hbt!]
  362.    \centering
  363.    \includegraphics[width=0.7\textwidth]{images/startpage.png}    
  364.    \caption{start page}
  365. \end{figure}
  366.  
  367. \subsubsection{Public}
  368. Every user first has to log in. For that, there are fields for username and password in addition to a login button in the top right of the website (Fig. 3.2).
  369. If someone who isn’t logged in opens the profile of a player only public information is shown. Sensitive data is only shown to those user groups who are allowed access to such data.
  370.  
  371. \subsubsection{Tennis Member/Player}
  372. Normal users can view the live score of the current match. They can also view their profile with all data, other profiles only with non-sensitive data.
  373.  
  374. \subsubsection{Tennis Board}
  375. User accounts of board members have access to all sensitive and non-sensitive data from all players. For that they have to choose a specific account from the members list.
  376.  
  377. \subsubsection{Administrator}
  378. Administrators, like board members can also view sensitive data. But in addition, they are able to create referee and other admin accounts. Also, they can set up match information via the match creation page.
  379.  
  380. \subsubsection{Third Parties}
  381. Have the same rights as any user without an account.
  382.  
  383. \subsubsection{Referee}
  384. Is able to update the live score.
  385.  
  386. \subsubsection{Tennis association}
  387. Has the same rights as any user without an account.
  388.  
  389. \section{Hardware Interfaces}
  390. The software is not dependent on any specific hardware. It can be run from a smartphone browser as well as from a notebook / pc.
  391.  
  392. \section{Software Interfaces}
  393. A web interface is used, to ensure that it is runnable on all devices. That means a smartphone as much as it means a desktop pc. Necessary is only a web browser and an active internet connection.
  394.  
  395. \section{Communications Interfaces}
  396. The software uses HTTPS as its only communication interface.
  397.  
  398. \chapter{System Features}
  399. \begin{tabular}{|p{3cm}|p{3cm}|p{7.4cm}|}
  400.    \hline
  401.    \textbf{ ID } & \textbf{ Hierarchy  } & \textbf{ User Class }  \\
  402.    \hline
  403.    C1            & 1                     & Public                 \\
  404.    \hline
  405.    C2            & 2                     & Player                 \\
  406.    \hline
  407.    C3            & 3                     & Referee                \\
  408.    \hline
  409.    C4            & 4                     & Tennis Board           \\
  410.    \hline
  411.    C5            & 5                     & Administrator          \\
  412.    \hline
  413. \end{tabular}\newline\newline\newline
  414. \begin{tabular}{|p{1cm}|p{2cm}|p{3cm}|p{7cm}|}
  415.    \hline
  416. \textbf{ID} & \textbf{User Class} & \textbf{ Function }               & \textbf{ Description }                                                                                                                                                                                                    \\
  417. \hline
  418. UC.1          & C3                    & Update score                      & The referee has to update the score of each player after they scored a point, so that in the end the proper result can be archived and sent to the tennis association, but also to enable people to view the live score.  \\
  419. \hline
  420. UC.2          & C3                    & Finalize match                    & After a match the referee has to finalize the match. After that it can’t be altered anymore and will automatically be archived. Also, the results are sent to the tennis association.                                     \\
  421. \hline
  422. UC.3          & C4                    & Set up match information          & Before a match an administrator has to set up the matches information in the system i.e. the player’s names. Only afterwards can the referee do their job.                                                                \\
  423. \hline
  424. UC.4          & C4                    & Create Referee and Admin Accounts & Accounts with elevated rights can only be created by already existing administrators.                                                                                                                                     \\
  425. \hline
  426. UC.5          & C4, C5                & Retrieve sensitive information    & Elevated user accounts have access to sensitive information about players.                                                                                                                                                \\
  427. \hline
  428. UC.6          & C1, C2, C3, C4, C5    & View live score                   & Everyone can view the score of a game while it is running.                                                                                                                                                                \\
  429. \hline
  430. UC.7          & C1, C2, C3, C4, C5    & Retrieve non-sensitive data       & Everyone can access information about past matches.                                                                                                                                                                       \\
  431. \hline
  432. UC.8          & C2                    & Register account                  & New players or those without an already existing account, can create it.                                                                                                                                                  \\
  433. \hline
  434. UC.9          & C2, C3, C4, C5        & View profile                      & All registered users have access to basic information about any other user.                                                                                                                                               \\
  435. \hline
  436. \end{tabular}
  437.  
  438.  
  439. \section{System Feature 1 - Archive}
  440.  
  441. \begin{figure}[h!]
  442.    \centering
  443.    \includegraphics[width=0.5\textwidth]{./images/navigate.png}    
  444.    \caption{user profile}
  445. \end{figure}
  446.  
  447.  
  448. \subsection{Description and Priority}
  449. In the archive data about all players and past matches is saved. Non-sensitive player data consists of country of origin, gender and name in addition to stats about earlier matches. When logged in with an account with sufficient rights, i.e. board member/administrator/player themselves, sensitive data will be shown in addition. Sensitive data consists of the home address of the player. \textbf{\newline priority: high \newline cost: high}
  450.  
  451. \subsection{Functional Requirements}
  452. \begin{tabular}{|p{0.2\textwidth}|p{0.2\textwidth}|p{0.1\textwidth}|p{0.4\textwidth}|}
  453.    \hline
  454.    \textbf{Requirement ID}&\textbf{Title}&\textbf{Use case relation}&\textbf{Explanation}\\
  455.    \hline
  456.    FREQ.AR.1 & Finalize Match & UC.2 & In order for match data to be saved in the archive, it has to be entered and then finalized by a referee. \\
  457.    \hline
  458.    FREQ.AR.2 & Set up match information & UC.4 & The match information has to be set up by an administrator, so that a referee can update the scores.\\
  459.    \hline
  460.    FREQ.AR.3 & Register account & UC.8 & A tennis player must register an account, otherwise they will not show up in the archive\\
  461.    \hline
  462.    FREQ.AR.4 & View profile & UC.9 & To make use of the archive saving player data, the system must allow a way to view the profiles\\
  463.    \hline
  464.    FREQ.AR.5 & Retrieve non-sensitive data & UC.7 & To make use of the archive saving match data, the system must allow a way to view past matches\\
  465.    \hline
  466.    FREQ.AR.6 & Retrieve sensitive information & UC.5 & Board members and administrators shall have access to sensitive about players like their home address.\\
  467.    \hline
  468. \end{tabular}
  469.  
  470. \section{System Feature 2 - Referee interface}
  471.  
  472. \begin{figure}[h!]
  473.    \centering
  474.    \includegraphics[width=0.7\textwidth]{./images/refeere-ui.png}    
  475.    \caption{Referee's user interface}
  476. \end{figure}
  477.  
  478. \subsection{Description and Priority}
  479. The referee interface allows the referee to note down the score of a match while it is running. The data about the match, like who plays whom, is setup in advance by an administrator. After the match is complete, the referee finalizes the data, after which it is saved to the archive. \textbf{\newline priority: high \newline cost: low}
  480.  
  481. \subsection{Functional Requirements}
  482. \begin{tabular}{|p{0.2\textwidth}|p{0.2\textwidth}|p{0.1\textwidth}|p{0.4\textwidth}|}
  483.    \hline
  484.    \textbf{Requirement ID}&\textbf{Title}&\textbf{Use case relation}&\textbf{Explanation}\\
  485.    \hline
  486.    FREQ.RI.1 & Update score & UC.1 & The referee must be able to update the score in their interface in order for the live score to change or be visible at all. \\
  487.    \hline
  488.    FREQ.RI.2 & Set up match information & UC.3 & The match needs to be set by an administrator, so that on the live score the player's names can be displayed. \\
  489.    \hline
  490. \end{tabular}
  491.  
  492. \section{System Feature 3 - Live score}
  493.  
  494. \begin{figure}[h!]
  495.    \centering
  496.    \includegraphics[width=0.7\textwidth]{./images/livematches.png}    
  497.    \caption{live matches}
  498. \end{figure}
  499.  
  500. \subsection{Description and Priority}
  501. The live score is a way for people to follow a match without needing to attend it personally. All updates to the score done by the referee are directly visible in the live score.\textbf{\newline priority: low \newline cost: low}
  502.  
  503. \subsection{Functional Requirements}
  504. \begin{tabular}{|p{0.2\textwidth}|p{0.2\textwidth}|p{0.1\textwidth}|p{0.4\textwidth}|}
  505.    \hline
  506.    \textbf{Requirement ID}&\textbf{Title}&\textbf{Use case relation}&\textbf{Explanation}\\
  507.    \hline
  508.    FREQ.LS.1 & View live score & UC.6 & The live score must be able to be viewed by the user. \\
  509.    \hline
  510.    FREQ.LS.2 & Update Score & UC.1 & In order to display the score as the match progresses, the referee must be able to update the score. \\
  511.    \hline
  512.    FREQ.LS.3 & Set up match information & UC.3 & The names of the players can only be shown if the match is properly set up by an administrator. \\
  513.    \hline
  514. \end{tabular}
  515.  
  516. \chapter{Other Non-functional Requirements}
  517.  
  518. \section{Performance Requirements}
  519. There are no performance requirements for this project.
  520.  
  521. \section{Safety Requirements}
  522. There are no specific safety requirements.
  523.  
  524. \section{Security Requirements}
  525. \begin{tabular}{|p{0.2\textwidth}|p{0.2\textwidth}|p{0.5\textwidth}|}
  526.    \hline
  527.    \textbf{Requirement ID}& \textbf{Title} & \textbf{Explanation}\\
  528.    \hline
  529.    NFREQ.SE.1 & User authentication & the actor shall authenticate themselves via username and password in order to access anything not available to the public. \\
  530.    \hline
  531.    NFREQ.SE.2 & Access restriction & certain parts of the application are only accessible to certain user groups.\\
  532.    \hline
  533.    NFREQ.SE.3 & Data protection & The application shall comply with the GDPR.\\
  534.    \hline
  535. \end{tabular}
  536.  
  537.  
  538. \section{Software Quality Attributes}
  539. The application has to be very reliable, because without it the referee is not able to properly mark down scores in a match. Also, interested fans would not be able to follow matches otherwise.
  540.  
  541. \section{Business Rules}
  542. There are no additional business rules.
  543.  
  544. \chapter{Appendix}
  545. \section{Glossary}
  546. \subsection{References}
  547. https://connect.fontys.nl/instituten/fhtenl_studies/studies/INF/PRJ3/StudyMaterial/IEEE_Standard_IEEE\%20Recommended\%20Practice\%20for\%20Software\%20Requirements\%20Specifications.pdf
  548.  
  549. \subsection{Definitions}
  550.    \begin{tabular}{|p{3cm}|p{9cm}|}
  551.        \hline
  552.         Player & A person, who plays tennis in the tennis club\\
  553.        \hline
  554.         Referee & A person, usually not part of the tennis club, who acts as a judge for a match of tennis. They enter the data about the match while it occurs and afterwards submit it to the archive.\\
  555.        \hline
  556.         Archive & A section of the software, which saves data about matches and players, as well as granting access to them.\\
  557.        \hline
  558.        Administrator & A person, with full access to all systems. This includes the database itself.\\
  559.        \hline
  560.    \end{tabular}
  561.  
  562. \subsection{Abbreviations}
  563.    Abbreviations for unique identifiers are used in this document. Here’s a list of them, with “.X” representing a number:  \newline\newline
  564.    \noindent
  565.    \begin{tabular}{|p{3cm}|p{9cm}|}
  566.        \hline
  567.        UC.X & Use Case \\
  568.        \hline
  569.        UI.X & User Interface \\
  570.        \hline
  571.        NONF-OPERENV.X & Non-functional operating environment \\
  572.        \hline
  573.        CONSTR.X & Constraint \\
  574.        \hline
  575.        FREQ.AR.X & Functional requirement for the archive\\
  576.        \hline
  577.        FREQ.RI.X & Functional requirement for the referee interface \\
  578.        \hline
  579.        FREQ.LS.X & Functional requirement for the live score \\
  580.        \hline
  581.        NFREQ.SE.X & Non-functional requirement for security \\
  582.        \hline
  583.    \end{tabular}
  584.  
  585. \end{document}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement