Download as pdf or txt
Download as pdf or txt
You are on page 1of 32

Safe House App - Software Requirements Specification

Version 1.0

Safe House App


Software Requirement Specification

7th July 2020

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
1
Document Information

Category Information

Project Safe House App

Document Software Requirement Specification

Document Version 1.0


Safe House App - Software Requirement Specification
Identifier
v1.0.docx
Status Draft

Author(s) Fritz Fabo, Omer Farooq

Approver(s)
Issue Date 03/07/2020

Document Revision History

Author Date Version Description

Omer Farooq 03/07/2020 1.0 Draft

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
i
Definition of Terms, Acronyms, and Abbreviations
This section should provide the definitions of all terms, acronyms, and abbreviations required to
interpret these terms correctly. This information may be provided by reference to the project
Glossary.

Term Description
App Application

Android Google's Android Mobile Operating System

iOS Apple's iOS Mobile Operating System


SRS Software Requirement Specification

AWS Amazon Web Services


ARDS Amazon Relational Database Service
HD High Definition
SD Standard Definition
RTSP Real Time Streaming Protocol

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
ii
List of Table
Table 1 – Document Status ................................................................................................................................ 1
Table 2 – Tools & Technology .......................................................................................................................... 26

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
iii
List of Figures
Figure 1: Block Diagram ...................................................................................................................................... 3
Figure 2: Functional Decomposition Diagram ................................................................................................... 5
Figure 3: Initial Screen ........................................................................................................................................ 9
Figure 4: User Login ............................................................................................................................................ 9
Figure 5: Sign Up ............................................................................................................................................... 10
Figure 6: Verify Account .................................................................................................................................... 10
Figure 7: Homepage .......................................................................................................................................... 11
Figure 8: Add Camera ....................................................................................................................................... 11
Figure 9: Camera Setting .................................................................................................................................. 13
Figure 10: Single Camera Live Feed ............................................................................................................... 13
Figure 11: All Camera's Feed ........................................................................................................................... 14
Figure 12: View Recording ................................................................................................................................ 14
Figure 13: Modify Account ................................................................................................................................ 15
Figure 14: Amazon Kinesis Video Stream – Flow ........................................................................................... 16
Figure 15: Safe House App interaction with Amazon Kinesis Video Stream ............................................... 18
Figure 16: Sequence Diagram - Signup / Verify Account ............................................................................... 19
Figure 17: Sequence Diagram - Login ............................................................................................................. 20
Figure 18: Sequence Diagram - Add Camera ................................................................................................. 21
Figure 19: Sequence Diagram - View Live Feed ............................................................................................ 22
Figure 20: Sequence Diagram - View Recorded Feed ................................................................................... 23
Figure 21: Sequence Diagram - Voice Communication to Camera ............................................................... 24
Figure 22: Activity Diagram ............................................................................................................................... 25

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
iv
Contents
Document Information ................................................................................................................................ i
Document Revision History ....................................................................................................................... i
Definition of Terms, Acronyms, and Abbreviations ............................................................................... ii
1. Purpose................................................................................................................................................ 1
2. Document Status ................................................................................................................................ 1
3. Intended Audience & Reading Suggestions .................................................................................. 2
7. Project Requirement .......................................................................................................................... 6
7.1 User Story.................................................................................................................................... 6
7.2 Mobile App................................................................................................................................... 8
7.3 Surveillance Camera ............................................................................................................... 15
7.4 Web Services: Amazon API Gateway ................................................................................... 16
7.5 Database: Amazon RDS ......................................................................................................... 17
7.6 Streaming Service: Amazon’s Kinesis Video Streams ....................................................... 17
8. Process Sequence Diagram ........................................................................................................... 19
8.1 Signup / Verify Account ........................................................................................................... 19
8.2 Login ........................................................................................................................................... 20
8.3 Add Camera .............................................................................................................................. 21
8.4 View Live Feed for Single Camera / All Camera(s) ............................................................ 22
8.5 View Recorded Feed ............................................................................................................... 23
8.6 Voice Communication to Camera .......................................................................................... 24
9. Activity Diagram ................................................................................................................................ 25
10. Development Tools & Technology............................................................................................. 26

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
v
Safe House App - Software Requirements Specification
Version 1.0

1. Purpose
This SRS document provides a complete description and details of all the functionalities, the
wireframes for mobile app of what is to be expected from the Safe House App, the web
services architecture, communication model between the real camera(s) and the technologies
that are to be used in order the develop the product. The developers will follow this document
for their milestones in this project, as It will illustrate the purpose and complete declaration for
the development of the system.

2. Document Status
The SRS document can be at different stages during its creation and further updating. Below
is the available status, which can be marked against this document.

Requirements that are under discussion but


Proposed
have not yet been approved
Requirements that are feasible and have been
Approved
approved by the client
Requirements that are pending and being
Pending
finalized by the client later.
Draft Requirements that are under review.

Table 1 – Document Status

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
1
Safe House App - Software Requirements Specification
Version 1.0

3. Intended Audience & Reading Suggestions


The intended audience for this SRS is person or groups wanting to be a detailed yet overall
insight into the project. Some parts of the SRS are more technical than others and are thus
targeted at technical-minded readers. These parts are in particular mobile apps, web services,
security camera requirements, security requirements, and technical standards requirements.
The primary audience for this document will be developers, software architects, testers, and
business users.
Other parts are less technical and are targeted more towards a business-like understanding
of the project. This is, in particular, the functional requirement, which has a direct influence on
the economic outcome of the project.

4. User/Actor
The Camera Owner will be the primary actor that will be interacting with the Safe House App
over his/her mobile app. Non-Human entities would be Surveillance Camera.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
2
Safe House App - Software Requirements Specification
Version 1.0

5. Project Scope
The basic idea behind the Safe House App is to provide remote streaming to the end-user on
his mobile device having an iOS/Android as Operating System, from the security camera(s)
installed within his premises.

Safe House App : Block Diagram


Mobile Application Tier Embed Application Tier

Safe House App Safe House App Surveillance


Android iOS Camera

Internet

Logical Tier: Cloud

Amazon API Gateway Amazon Kinesis


Video Streams

Database Tier: Cloud

Amazon Relational Database


Service (ARDS)

Figure 1: Block Diagram

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
3
Safe House App - Software Requirements Specification
Version 1.0

Safe House App will have a different set of functionalities available at the user’s disposal,
which are.

(1) User account signup.


(2) Email verification.
(3) Log in with the user/password.
(4) Add a camera to the Safe House App by scanning a unique QR Code over the camera.
(5) View Live Feed for a single camera or all available cameras.
(6) Voice communication through mobile device mic to camera.
(7) View past camera footage stored within the camera’s SD Card.
(8) Download compressed videos from the available footage within the camera’s SD Card.
(9) Modify camera settings through the Application.

As depicted in the Block Diagram, 3 primary tiers will be within the product. The Application
tier is divided into two parts. Mobile Application Tier and Embed Application Tier. These two
tiers communicate with each other through the Logical Tier, which will be a Web Service to
perform routine operations. Within the logical tier, there will be video stream services that will
be implemented RTSP protocol, which is to ensure smooth transmission of the live and
recorded video stream. The Logic Tier web services in interconnected with the Database,
which is hosted in Database Tier.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
4
Safe House App - Software Requirements Specification
Version 1.0

6. Functional Decomposition Diagram


The functional decomposition diagram will break down a system smaller and simpler parts.

Safe House
App

Surveillance
User
Camera

Sign Up Add a Camera

Remove a
Login
Camera

Log Out View Live Feed

Account Send Voice


Verification To Camera

View Live Feeds


[All Cameras]

Camera
Setting

View
Recording

Take Image

Record Video

Figure 2: Functional Decomposition Diagram

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
5
Safe House App - Software Requirements Specification
Version 1.0

7. Project Requirement
The Safe House App is divided across different technology tiers, integrated to perform the
required user stories. This document will look into all aspects in order to provide an
understanding of how the App information flow works from one end to the other and vice
versa. To be precise, the overall functionality is divided into the layers, as defined below.

(1) Mobile App (iOS/Android)


(2) Camera (Embedded)
(3) Web Services
(4) Database

Each of the layers has its development using different technology stack and integrated.

7.1 User Story


The primary user of the Safe House App will be the Camera Owner. Camera Owner will be
able to perform certain operations over the Mobile App that will be communicating to the
installed cameras through the Web Services hosted over the cloud along with the Database.
Below are the user stories that show the user actions associated with the Mobile App.

USER STORY ACCEPTANCE CRITERIA


Camera Owner needs to create Ensure the camera owner can:
an account in the Safe house
 Download the app from Apple’s App Store or
App
Google’s Play Store.
 Navigate to the signup page.
 Fill out account information.
 Receive an email for verification with security code
generated against its email id.
 The user will enter the security code along with
email id to activate his account. This will be during
signup only, however.
 Usual Login will just require User Id and Password.
Camera Owner needs to add a
Ensure the camera owner can:
camera to his account
 Log in to the app

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
6
Safe House App - Software Requirements Specification
Version 1.0

 Navigate to the add new device page


 Scan the QR code of the camera
 Once the camera is added, the user has to pair the
camera with a mobile device Bluetooth manually.
Once paired, the user will set the Wi-Fi Login
credentials over to the camera through Bluetooth.
 View the live feed of the newly added camera in the
homepage of the app
Camera Owner needs to view Ensure the camera owner can:
the live feed of all the cameras
 Log in to the app
in his account
 View the live feed of all the cameras on the account
in the homepage of the app
Camera Owner needs to Ensure the camera owner can:
communicate with voice through
 Log in to the app
the camera
 View the live feed of the camera
 Against the selected camera, press the microphone
icon to communicate with voice
Camera Owner needs to view Ensure the camera owner can:
the video history of his camera
 Log in to the app
 View the live feed of the camera
 Use the video navigation bar to go backward and
view the video history.
Camera Owner needs to Ensure the camera owner can:
download the video history of his
 Log in to the app
camera
 Users will view the earlier recording.
 Whatever video is to be recorded, the user can click
on Record Button.
 The Application will start saving the recording until
Record Button is stopped.
Camera Owner needs to modify Ensure the camera owner is able to:
the settings of my camera
 Log in to the app.
 View the live feed of the camera.
 Navigate to the settings of the camera.
 Modify the settings of the camera.
 Apply the modified setting to the camera.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
7
Safe House App - Software Requirements Specification
Version 1.0

7.2 Mobile App


House Safe App is to be developed over iOS and Android. Both platforms will offer the same
functionality along with layout. Below are the initial wireframes along with the description
providing an overview of what features are available to the Camera Owner. Below are the
development environment details which are to be configured by the iOS and Android
developers.

Android Development Environment

 Android Studio
 Target SDK Version 29

iOS Development Environment

 xCode 9/10
 Swift 3 / 4
 iOS SDK 13 / 14

Below are the wireframes for Mobile App that will provide an overview of how the Camera
Owner will interact with the product. Each wireframe has a description of what it offers.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
8
Safe House App - Software Requirements Specification
Version 1.0

Figure 3: Initial Screen Figure 4: User Login


 This will be Safe House App initial screen  Once the user clicks on Login, this screen
will appear.
 Signup and Login options to start with
 The user will enter his email id along with
password and press Login to continue.
 In case the password is forgotten, the
camera owner has an option to proceed
with Forget Password.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
9
Safe House App - Software Requirements Specification
Version 1.0

Figure 5: Sign Up Figure 6: Verify Account


 For a new Camera Owner, this screen will  Upon Sign Up, the user will be taken to the
appear when the user selects Sign Up on Verify Account screen.
Initial Screen
 The user will enter Email Id along with
 The user will enter his email id and Confirmation Code sent over the email.
password to proceed.
 Upon verification, users will be activated,
 Upon Sign Up, an email will be sent to the and the Safe House Homepage will open
user’s email id with verification code. up.
 In case the user has already signed up,
and account verification is pending.
Camera Owner can click Verify to open up
the Verify Account screen.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
10
Safe House App - Software Requirements Specification
Version 1.0

Figure 7: Homepage Figure 8: Add Camera


 The homepage will have the option to Add  Each camera will have a unique QR Code.
a Camera along with a list of the already
 Camera Owner can scan the QR code;
existing camera added against the
once successfully code is scanned, the
account.
system will process the stream and add the
 Each camera has its own status, which can camera details against the account
either be Online or Offline. accordingly.
 Each camera has an option to View Feed,  In case, the user faces an issue while
View Recording and Camera Setting scanning. There is an option to Enter key
that will pop up a textbox for the user to
 View Feed will take the user to Live enter the camera’s key manually.
Camera Feed.
 By default, the camera name will be the
 View all feed will take the user to a screen
camera’s key, which is editable later on
showing up all the available camera feed. from Camera Settings.
 View Recording will take the user to the old
camera’s recording that is stored within the
Camera SD Card.
 In order to add a new camera to the
account, the user can select Add a
Camera.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
11
Safe House App - Software Requirements Specification
Version 1.0

 User Icon, will have an option to either


Logout or Modify Account Settings.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
12
Safe House App - Software Requirements Specification
Version 1.0

Figure 9: Camera Setting Figure 10: Single Camera Live Feed


 Each camera has its setting that can be  The Live feed for a single camera will have
accessed through the homepage. camera controls.
 Camera Name can be changed as per the  There will be HD or SD, which will change
location of the installed camera. the output resolution of the camera feed.
 Each camera must be connected to the Wi-  Other options are Zoom, Pause Feed,
Fi. Upon clicking on the Connect button, Move Camera [if the camera supports].
the device will transfer the Wi-Fi
 Users can also record the continuous feed
credentials through Bluetooth to the
or snap the feed, which will be saved on
camera.
device local storage.
 For cameras supporting 4G/LTE, there is
 There is an option for the mic, which upon
an option to test the connection.
pressing, will transmit the voice from the
 Rotate Camera option, for now, is disabled mobile device to the camera speaker.
and will be used later in the updates.
 Speaker will receive an audio feed for the
 Camera Temperature and Battery levels camera to the mobile device [if the camera
are displayed for information purposes. supports voice recording].
 Remove the camera will delete the camera
against the Camera Owner account.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
13
Safe House App - Software Requirements Specification
Version 1.0

Figure 11: All Camera's Feed Figure 12: View Recording


 View all feeds from the homepage will  Each camera has an option to view
show up the grid of feeds for all the active recording that is stored within Camera’s
cameras against the camera owner SD Card.
account.
 Upon opening, all available dates, along
 If tapped, this will open up the single- with 24 hours, will be available for users to
camera feed for the selected camera. select.
 There will be HD or SD, which will change
the output resolution of the camera
recording.
 Other options are Zoom, Pause Feed,
Move Camera [if the camera supports].
 Speaker will receive an audio feed for the
camera to the mobile device [if the camera
supports voice recording].
 Users can also record the old recording or
snap the recording, which will be saved on
device local storage.
Note: Features against Callout 1,2,3 will be
available for future development

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
14
Safe House App - Software Requirements Specification
Version 1.0

Figure 13: Modify Account


 Modify Account opens up from User Icon
on Home Page.
 Users can change the account Password
from here.

7.3 Surveillance Camera


Surveillance cameras are external equipment’s that interact with the Safe House App through
Video Streaming Services. The camera’s firmware will have features to stream audio and
video feeds along with previous recordings through Video Streaming Server using Real-Time
Streaming Protocol (RTSP). Each camera that is scanned through the Safe House App will
operate setup the camera stream to the Streaming Server.
In Safe House App product, we will be utilizing Amazon’s Kinesis Video Streams, which is a
service offered by AWS Cloud. The producer is a source that puts data into a Kinesis video
stream. A producer can be any video-generating device, such as a security camera in our

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
15
Safe House App - Software Requirements Specification
Version 1.0

case. A producer can also send non-video data, such as audio feeds, images, or RADAR
data. Consumer, in this case, will be Safe House App that will access the Continuous
Consumer Service for live feed and Batch Consumer for recorded feed.

Figure 14: Amazon Kinesis Video Stream – Flow

Developers can refer https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/what-is-


kinesis-video.html for more information on Amazon’s Kinesis Video Stream Services and its
implementation.

7.4 Web Services: Amazon API Gateway


There will be RESTful APIs hosted over the cloud, which will be used to interact with the Safe
House App. Amazon API Gateway will be utilized in order to provide seamless availability and
scalability to the camera owners. Amazon API Gateway is a fully managed service that
makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any
scale. Below are the primary functions of the Web Services that will be consumed by the
House Safe Mobile Applications.

(1) Signup

(2) Login

(3) Account Verification

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
16
Safe House App - Software Requirements Specification
Version 1.0

(4) Adding Camera: Adding a camera will register the camera into the Amazon Kinesis
Stream Service. Against each camera, a unique token is provided by the service is to
be stored within the Database. This token is utilized to view the stream or view the
previous recordings by passing it to the Amazon Kinesis Stream Service.

(5) Managing Camera Settings

(6) Delete Camera: Deleting a camera disassociates the token from Amazon Kinesis
Stream Service.

(7) Providing a list of the camera(s) against Camera Owner account

(8) Exception Logging [Service/App Level]

All the operations that are related to video streaming, i.e., view a live feed, view previous
recordings, transmitting audio to the camera from mobile app, getting camera parameters like
temperature and battery level will be handled through the streaming services which in this
product will be Amazon’s Kinesis Video Stream Services.

7.5 Database: Amazon RDS


House Safe App will be having a database located over the cloud that will interact with the
Web Services hosted over Amazon API Gateway. Data related to Camera Owner login
credentials, list of cameras assigned to Camera Owner’s account, exceptions occurred within
the user device will be stored within the Database and will be utilized through the web
services. As the database load will not be massive, Amazon RDS for MySQL will be the most
suitable database suite that can be used. Amazon RDS allows developers to use the AWS
Management Console or a simple set of web services APIs to create, delete, and modify
relational database instances (DB Instances).

7.6 Streaming Service: Amazon’s Kinesis Video


Streams
The issue with utilizing web service to get the stream directly from the camera is that it will
lock the entire web services, and other features will not be consumable by the same users,
and other users will also have deadlocks while attempting to access the web service. Amazon
Kinesis Video Streams is a fully managed AWS service that can be used to stream live video

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
17
Safe House App - Software Requirements Specification
Version 1.0

from devices to the AWS Cloud or build applications for real-time video processing or batch-
oriented video analytics.
The Safe House App will interact with the Kinesis Video Stream to

(1) Adding Camera

(2) Deleting Camera

(3) View Live Feed: Kinesis Video Stream offers Continuous Consumer endpoint, which
will require the unique token provided by the service at the time of adding a camera.
With this token, the live feed of the camera will start appearing over the mobile app.

(4) View Recorded Feed: Kinesis Video Stream offers Batch Consumer endpoint, which
will require the unique token provided by the service at the time of adding a camera
along with video reference that could be a date and time stamp. With these
parameters, the recorded feed of the camera will start appearing over the mobile app.
A constraint here will be the SD Card storage availability within the camera. The Mobile
App will only have those timespans and date available against which the recording is
available within the storage.

(5) Receive Camera Parameters like Temperature and Camera Battery Levels.

(6) For recorded feed, information related to available recordings in terms of date and
timespan will be required to provide a navigation bar to the user in order to move back
and forth, as shown in [Figure 12: View Recording].

Safe House App


Real-time and playback
Services using
Kinesis Video Stream API
To access and retrieve
Indexed and live videos
Along with camera parameters

Figure 15: Safe House App interaction with Amazon Kinesis Video Stream

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
18
Safe House App - Software Requirements Specification
Version 1.0

8. Process Sequence Diagram


A sequence diagram illustrates how the different parts of a system interact with each other to
carry out a function, and the order in which the interactions occur when a particular use case
is executed. These are self-explanatory and tiers usage becomes quite visible to the
developer. Below are the sequence diagrams for the significant use cases.

8.1 Signup / Verify Account

Camera Own er / Safe Amazon API


Amazon RDS
Ho use Mo bile App Gateway

Signup / Pass on Email /Password


Verify
Insert details to data base

Response

Generate Verification Code


and Email to User

Response

Open Account
Verification

Pass on Email /Verification Code


Verify Code

Response
Response

Open Homepage

Figure 16: Sequence Diagram - Signup / Verify Account

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
19
Safe House App - Software Requirements Specification
Version 1.0

8.2 Login

Camera Owner / Safe Amazon API


Amazon RDS
House Mobile App Gateway

Pass on User Login/Password

Validate result from Database


User Login
Response

Response

Open Homepage

Figure 17: Sequence Diagram - Login

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
20
Safe House App - Software Requirements Specification
Version 1.0

8.3 Add Camera

Camera Owner / Safe Amazon API Amazon Kinesis


Amazon RDS
House Mobile App Gateway Video Streams

User taps Add Camera


on Homepage

Add Camera
User scans BR Code
User Logged In or
Already Enter Camera Serial
Number

Pass on camera details/user id


Request Camer Add for Stream

Response with Camera Token Details

Save details to Database

Response

Response with details

Open Homepage
with new Camera details
visible

Figure 18: Sequence Diagram - Add Camera

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
21
Safe House App - Software Requirements Specification
Version 1.0

8.4 View Live Feed for Single Camera / All


Camera(s)

Camera Owner / Safe Amazon API Amazon Kinesis Surveillance


Amazon RDS
House Mobile App Gateway Video Streams Camera

User taps View Feed


Continuous loop Continous Camera Feed
on Homepage
View Live Feed for Single Camera Untill Stream Disconnects
[Single Camera]
Pass on camera details/user id
User Logged In
Already Get Camera related details

Response
Response with Camera
Parameters

Continuous loop Fetch Live Stream based on Parameter


of selected Camera
Untill Stream Disconnects
Continous Camera Feed over RTSP
in continouse cycle

Figure 19: Sequence Diagram - View Live Feed

A similar sequence will be used for the Live Feed of all cameras. Instead of a single camera, the web
service will respond with all the camera parameters. The Safe House App will request the Kinesis Video
Stream for all the feeds against the camera parameters.

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
22
Safe House App - Software Requirements Specification
Version 1.0

8.5 View Recorded Feed

Camera Owner / Safe Amazon API Amazon Kinesis Surveillance


Amazon RDS
House Mobile App Gateway Video Streams Camera

User taps View Recording


on Homepage
View Recorded Feed for Single Camera

[Single Camera]
Pass on camera details/user id
User Logged In
Already Get Camera related details

Response
Response with Camera
Parameters

Continuous loop Fetch Recorded Feed based on Parameter


of selected Camera Fetch Recording
Untill Recording paramters based on Camera ID
like datetime are valid and last recorded
available parameter

Response
Continous
Continous Camera Feed over RTSP feed as
in continouse cycle per SD Card

Figure 20: Sequence Diagram - View Recorded Feed

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
23
Safe House App - Software Requirements Specification
Version 1.0

8.6 Voice Communication to Camera

Camera Owner / Safe Amazon Kinesis Surveillance


House Mobile App Video Streams Camera

User Presses Mic


Voice Button in Camera
Communication to Controls
Camera
User Logged In Covert Audio to
Already and Viewing Byte Stream
Live Feed

Transmit Byte Stream


to Kinesis Service
Tranmist Byte
Stream to Camera

Convert Audio Byte


Stream to Audio

Play Audio

Figure 21: Sequence Diagram - Voice Communication to Camera

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
24
Safe House App - Software Requirements Specification
Version 1.0

9. Activity Diagram
This activity diagram will give a bird’s eye view of what Safe House App will cover different
flows.

Start

Initial Screen

User Registered New User


Invalid User

Enter Email /
Fill User Details
Password

Recieve Confirmation
Code over email

Enter Confirmation
Valid User
Code to verify

View Homepage

Open Camera
Successfully Added
Add a Camera View Recording View Feed View all Feeds User Menu
Settiings

Successfully Added

Scan QR Code Navigate throught User Camera Control Change Camera All available cameras
Date and Time to perform actions Settings feed displayed in
Control Grid

Use Mic to send


Recording will load Click Save Logout Modify User Settings
Audio to Camera
Unable to Scan
accordingly

Unable to Add
Enter Serial Number
Save Recording / Click Save
Image of Recording

End

Figure 22: Activity Diagram

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
25
Safe House App - Software Requirements Specification
Version 1.0

10. Development Tools & Technology


Different development tools and technology will be utilized for this entire product to be developed.
Below develop provides the detail accordingly.

Application Tools & Technology

Android App  Android Studio


[Android Device]  Target SDK Version 29

 xCode 9/10
iOS App
 Swift 3 / 4
[Apple iPhone Device]
 iOS SDK 13 / 14

 RESTful API
Web Services
 Web Server: Apache Web Server
[Amazon API Gateway]
 PHP 7.4.5
Database
[ Amazon Relational Database  MySQL 5.1 or above
Service]

Streaming Service  A black box in nature


[Amazon Kinesis Video Streams]  Configuration Based over AWS Cloud

Surveillance Camera  TBA

Table 2 – Tools & Technology

Copyright  Fritz Fabo. All rights reserved.


Unauthorized copy or use of this document is strictly prohibited
26

You might also like