Uploaded by Gift R Banda

SRS Document

advertisement
Table of Contents
INTRODUCTION ............................................................................................................................................. 3
PURPOSE OF THE DOCUMENT ................................................................................................................................... 3
OVERVIEW ............................................................................................................................................................ 3
BUSINESS CONTEXT ................................................................................................................................................ 3
OVERVIEW .................................................................................................................................................... 4
APPLICATION USER CHARACTERISTICS ........................................................................................................................ 4
PRODUCT FUNCTIONS ............................................................................................................................................. 4
CONSTRAINTS ........................................................................................................................................................ 4
FUNCTIONAL REQUIREMENTS ....................................................................................................................... 5
REGISTRATION OF USER ........................................................................................................................................... 5
SEARCH FUNCTIONALITY .......................................................................................................................................... 5
GOOGLE APPLICATION PROFILE INTERFACES (GOOGLE APIS) .......................................................................................... 6
FILTER FUNCTIONALITY ............................................................................................................................................ 6
GEO-LOCATION...................................................................................................................................................... 7
NOTIFICATIONS FUNCTIONALITY ................................................................................................................................ 7
NON-FUNCTIONAL REQUIREMENTS ............................................................................................................... 8
APPLICATION AFFINITY/COMPATIBILITY ...................................................................................................................... 8
SECURITY .............................................................................................................................................................. 8
PERFORMANCE REQUIREMENTS ................................................................................................................... 9
SYSTEM ................................................................................................................................................................ 9
SCALABILITY .......................................................................................................................................................... 9
NON-FUNCTIONAL ATTRIBUTES ..................................................................................................................... 9
EXTENSIBILITY ........................................................................................................................................................ 9
SECURITY .............................................................................................................................................................. 9
BIBLIOGRAPHY ............................................................................................................................................ 11
Introduction
Purpose of the Document
The purpose of this document is to provide a detailed description of the Kwathu
android application. This document will provide a general description of the
development of the application, the functional and non-functional requirements,
performance requirements and the interface of the application. This document will
also include use case diagrams and other relevant application attributes.
Overview
The Kwathu android application is being developed in order to address one of the
main challenges that is being faced by the Transport and Tourism Industry in Malawi1.
The Kwathu android application will provide its users with the fully functional
system that will provide the necessary information that will assist in connecting them
to attraction sites within the country of Malawi. The application is intended on making
the process of finding adequate information concerning attraction sites easier and time
efficient.
Business Context
The Kwathu android application is not only means of providing a source of relevant
information for its users but it is also a means by which businesses can reach out to
their customers. This creates an opportunity for the application to have a means of
generating revenue through the provision of prime advertising space for companies
and businesses that are looking to have their services and products hosted on the
application. This means of generating revenue can be used to promote the application
and help strengthen ties between the application and the business partners that are
interested in the application.
1
“Lack of efficient connectivity to attraction sites in terms of air and road transport and ICT” (Malawi National Tourism Conference,
Sunbird Capital, Lilongwe6th April, 2017)
Application User Characteristics
The users of this application can be generalized into two groups, local native users and
visiting tourists. The purpose of categorizing the users of the application is to allow us
to create user specified content. When the user is registering their user account with
the system they will be prompted to submit their nationality so that the application
my present them with information that takes into consideration whether or not they’re
a tourist or a local user.
The administrators of the application will also be considered as users of the system.
Their input is paramount to the application being able to function in the intended
manner that the application is being developed. They will be responsible with
ensuring that the management and maintenance of the application are kept within the
intended scope of the application. They will also be responsible with making sure that
they keep up to date with trending technological developments that can be used to
improve the user experience and functionality of the application.
Product Functions
The Kwathu Android application will allow its users to find out information about
local events, tourist attraction sites and service providers within Malawi. Users of the
application will have access to a live feed that will be adapted to their preferred
interests. The user will have the options of rating places that they have visited and
leave reviews.
Constraints
The application is being developed to help challenge the current economic state of the
nation of Malawi by creating a means by which the Transport and Tourism industry
can gain exposure to the general local public and international community too so as
to increase the interactions, information and data exchange within the industry.
The application’s greatest challenge is caused by the one thing that it is being built to
help overcome. The current economic state of the nation Malawi makes resources hard
to come by and service provision poor. Internet rates are high in the country but the
core operations of the application are pivoted on the need to have internet access so
that the application can make use of
Functional Requirements
The following requirements are not presented in any operational order but are given
a rating in terms of criticality:
Extremely Critical
Very Critical
Critical
Less Critical
Non-Critical
Extreme
Very
Normal
Less
Non
Registration of user
Description - Having installed the Kwathu application on their device the user
will be prompted to register as a user by inputting their email address and
creating a user name and password for their account. Once the user has signed
up and registered an account they will then be allowed access to the system
and its functionalities.
Criticality – Extreme
Dependencies – The user will need to have a working email address so that
they can be able to register to the system otherwise they will not be able to
access the applications functionalities.
Search Functionality
Description – The application should be able to allow the user to search for any
events or attractions that are stored within the application database. The search
functionality must be presented in a manner that allows the user to find it easy
to use without having to go through many pages/activities to get to it. The
search functionality should be developed so as to work with Google APIs
Google Custom Search2 that can be setup so as to
Criticality – Extreme
Dependencies – The search functionality and usability will rely mainly on the
setup of the database and how it will work in conjunction with the Google APIs.
Google Application Profile Interfaces (Google APIs)
Description – The Kwathu applications ability to interact with the user in a
seemingly intelligent manner will be largely because of the use of Google
Application Profiles Interfaces. Making use of APIs allows us to add a lot of
important functionalities and services to the application without making it a
bulky system. The APIs also provide the application with the provision of
making use of googles user metadata so as to make the application seem to be
tailor made for each individual based on their user metadata.
Criticality – Extreme
Dependencies – In order for the application to make adequate use of the API
services it needs to have an internet connection that allows it to connect with
the API services online. The API service is fully dependent on there being an
internet connection.
Filter Functionality
Description – The filter functionality allows the user to be able to refine their
search based on whether they would like their search to be location, price, rating
or service specific. What this does is that it allows the user to have their results
given to them by the application in a very specific and precise way. The filter
functionality works in hand with the search functionality and acts as a second
means of refining the information that the application has to present to the user.
The filter functionality is very important to the system because it allows the
2
Google Application Profile Interfaces (APIs)
user to avoid having to go through so many results before they can get to the
result that they are looking for.
Criticality – Very
Dependencies – The means by which the filter will be developed will really
depend on the form in which the database will be setup so as to ensure that
there are no conflicting requests made by the user when they are filtering out
the information they need.
Geo-location
Description – The application should be able to adapt the notifications that are
on the home page in accordance with the current location of the user. This
allows the user to stay up to date with the events and attractions worth visiting
that are within actual visiting reach. This makes the application more efficient
in relaying information that is relevant. When the user first installs and
initializes the application they will be prompted by the application and
requested to allow the application to be able to locate the devices location when
in use so that the home page is update as needed. In the instance that the user
does not want to user geo-location feature they will be allowed to manually
choose the location that they are interested in.
Criticality – Very
Dependency – In order for this functionality to be operational there is need for
the user to allow the application to use the users location to make such choices
and so if the user does not allow the application to do so then the user will not
have the privilege of using such services.
Notifications Functionality
Description – The notification functionality is mainly meant to keep the user
of the application up to date with the events that are happening within a certain
range of their current location. The user of the application will be able to turn
the notifications on or off as the prefer. In order for the system to be able to
identify what events or places the user of the application is interested they will
have to undergo a rather short survey upon first signing up to the application.
Criticality – Normal
Dependency – The notifications functionality depends on to main features, the
first is whether or not the user of the application has turned on their location
option which allows the application to identify the current location of the user
so that it can make reference to nearby places that are within the users vicinity.
The second dependency is whether or not the user chose to take the short
survey when signing up for the application. The results of that survey will
provide the system with a means of filtering out the notifications so as to notify
the user about places that they would be most interested in
Non-Functional Requirements
Application Affinity/Compatibility
Considering the demography of the users of the application it is important to make
sure that the application is compatible with as many users of the system as possible.
This is why it imperative that the application work on Android 5.1 (Lollipop) or
higher. This will ensure that we have the largest possible number of users of the
system whilst also maintaining a higher level of performance as possible.
Security
In order to ensure that the users that are giving ratings and reviews are actual users
every user will be required to have a user account so that we can authenticate and
confirm the identity of the user. This is why unless a user registers to the application
via their email they will be restricted from using the application allowing the
administrator to trace activity that happens within the application.
Performance Requirements
System
The application will on any android device that is using Android 5.13 or greater. The
application will be developed so that it can work on the device that it is installed on.
The application is going to respond to the devices screen in terms of resolution and
window sizing.
Scalability
With the purpose of reaching as many users as possible the application should be
developed so as to facilitate an increase in the user count so as not to have the
application lagging or straining due to the number of users on the system.
Non-Functional Attributes
Extensibility
In order to be able to keep users of the application up to date and well informed of the
many options that the application offers to them there is need for the application to be
largely extensible. This improve the range of options that the application can facilitate
therefore allowing the application to be as inclusive and variant a s possible.
Security
In regards to the information and user data that are related to the user’s interactions
with the application it is important that we keep such data and information safe do
that the user’s data does not end up being used for malicious. This data should be kept
safe form any unauthorized personal. The integrity and authenticity of the data is also
an important aspect of the systems security.
3
Android 5.1 Lollipop (API 22)
Bibliography
Kendall, K. E., & Kendall, J. E. (2014). Systems Analysis and Design. Pearson.
Davidson, A. (2009). The Law of Electronic Commerce. Cambridge University Press.
Schneider, G. (n.d.). Electronic Commerce (11th Edition ed.). Stamford.
Download