[1] Requirement Specification eRhODIS Application.pdf

Embed Size (px)

Citation preview

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    1/24

    eRhODISRequirement Specification

    Functional & Non Functional Requirements

    RhODISAndroid Development : eRhODISApplication

    ersion !"#

    $his document contains the requirements specification of the eRhODISapplication and adetailed description of the functional and non%functional requirements"

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    2/24

    han'e (istor)

    Date Version Description Updated By

    *+ Au'ust ,*!# !"* reated document" -ideon*+ Au'ust ,*!# !"* Added main sections

    as discussed"-ideon

    #* Octo.er ,*!# !"* han'ed theScala.ilit) and/erformancesections" AddedA0S details"

    -ideon

    !1 Novem.er ,*!# !", Added Requirements -ideon

    2 Fe.ruar) !"# Added Requirementsre'ardin' securit)"

    -ideon

    *Changes will be displayed in red throughout the document.

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e , of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    3/24

    $a.le of ontents

    Introduction"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+Or'ani4ational Structure""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""+

    /urpose""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""5Document onventions""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""5/ro6ect Scope"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""5References"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""2S)stem Description""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""7Functional Requirements"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""8

    S)stem Features""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""89ain S)stem""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""8

    Main system functional requirements.......................................................................................10

    Requirement Num.er **!"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!*Requirement Num.er **,"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!*

    Requirement Num.er **#"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!!Requirement Num.er **1"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!!Requirement Num.er **+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!,Requirement Num.er **+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!,Requirement Num.er **5"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!#Requirement Num.er **2"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!#Requirement Num.er **7"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!1Requirement Num.er **8"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!1Requirement Num.er *!*"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!1Requirement Num.er *!!"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!+Requirement Num.er *!,"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!+Requirement Num.er *!#"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!+Requirement Num.er *!1"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!5Requirement Num.er *!+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!5Requirement Num.er *!5"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!5Requirement Num.er *!2"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!2Requirement Num.er *!7"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!2Requirement Num.er *!8"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!7Requirement Num.er *,*"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!7Requirement Num.er *,!"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!8Requirement Num.er *,,"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!8

    Requirement Num.er *,#""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",*se ases"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",!9ain S)stem"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",!;asic Save /rocedure""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",!

    ser Interface Description""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",,Non Functional Requirements""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",,

    /erformance"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",,Scala.ilit)""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",, """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",,Securit)"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",#9aintaina.ilit)"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",#

    sa.ilit)""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",#

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e # of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    4/24

    Availa.ilit)"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",#Open Issues""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",#-lossar)""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",1

    -lossar)""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""",1

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e 1 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    5/24

    Introduction

    RhODIS is a pro6ect that ?as initiated .) the eterinar)-enetics @a.orator) of the niversit) of /retoria in order to help ?ith the pli'ht of the

    rhinos" $he eterinar) -enetics @a.orator) is collectin' DNA samples of rhinos across thecountr) to create a data.ase usin' the unique DNA profile of individual rhinos"$he 'oal is for all rhinos to .e on the s)stem" $his ?ill deter poachers and assist inforensic prosecutions"

    RhODIS?as first used in a rhino poachin' case in ,*!* and resulted in a ietnameseciti4en .ein' sentenced to !* )ears imprisonment for havin' rhinoceros horns frompoached rhinos in his .a''a'e ?hen he ?as apprehended at OR $ham.o InternationalAirport" South African National /ars have partnered ?ith RhODIS since ,*!*and in association ?ith the Forensics Science @a.orator) of the South African /oliceServices have pla)ed a e) role in the development and implementation of the RhODIS Bit

    for sample collection"

    $he South African Department of Cnvironmental Affairs introduced amendments to thenorms and standards for sample collection and identification of live and poached rhinosunder the National Cnvironmental 9ana'ement: ;iodiversit) Act !* of ,**1 ?hich requiresthat samples are collected from all poached rhinos and other rhinos that are immo.ili4edor die usin' RhODISits ?hich then have to .e su.mitted to the eterinar) [email protected]) for inclusion on the RhODISdata.ase" A num.er of other .odies includin' theSouth African National /ars (onorar) Ran'ers the 0orld 0ildlife Fund corporates andindividuals have donated funds to support the development and implementation ofRhODIS" eRhODIS has .een developed as an ad6unct for RhODISto aid in thecollection of samples and information relevant to the RhODISpro6ect and Samsun' is thee=clusive technolo') partner associated ?ith this development"

    Or'ani4ational Structure

    $his application is intended to cater for the end%user in the field collectin' samples and forRhODISofficials" $he police Cnvironmental 9ana'ement Inspectors of the Department

    of Cnvironmental Affairs eterinarians Nature conservation officials ?ho are trained toinvesti'ate rhino poachin' scenes or to collect sample from rhinos durin' routineinterventions ?ill .e the users of the application" sers are specificall) authorised to usethe application and can onl) do so if the) have .een trained and have the necessar)clearances to do so"

    It should ho?ever .e noted that an) frame?or ?ith ?hich an) part of this applicationinteracts ?ith has its o?n or'anisational structure and terms and conditions"

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e + of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    6/24

    /urpose

    $he purpose of this document is to provide a comprehensive overvie? of the eRhODISapplication that the eterinar) -enetics @a.orator) of the niversit) of /retoria to'ether

    ?ith RhODIS?ill .e developin'"

    $his document ?ill 'ive a detailed description of the requirements of the s)stem andformall) stipulate functional and non%functional requirements of the eRhODIS androidapplication" Further it ?ill list data requirements qualit) requirements and the constraintsunder ?hich the android application should operate"

    $he intended audience of this document ?ould .e an) person interested in thedevelopment life%c)cle of the eRhODIS android application" $his document ?ill serve asa 'uideline for intended android application functionalit)"

    Document onventions

    onventions used in this document:

    se%ase notation usin' the nified 9odellin' @an'ua'e "ro?Es foot notation is used to document entit) relationship dia'rams"

    /ro6ect Scope

    $he main idea of the application is that it ensures that all information needed to ensurethat DNA samples are collected from poached and live rhinos are collected in a standard?a) and that all the necessar) information to provide details of the chain of custod) forthese samples are automaticall) collected and uploaded to a secure data.ase for futureuse should the need arise" All information includin' -/S coordinates photos sampleinformation is uploaded and stored on the cloud server"

    It also ensures that e) required data is al?a)s collected and uploaded" se of theapplication also enhances data accurac) and does a?a) ?ith the need to manuall) enteran) of the data after receipt of the samples in the @a.orator)"

    $he application also uses the S%/en to capture the authorised persons si'nature ?hichtherefore provides further inte'rit) for the chain of custod) features incorporated into theapplication"

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e 5 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    7/24

    References

    9@ standard specification http:GG???"uml"or'GH9@,"*Ama4on 0e. Services http:GGa?s"ama4on"comG?hat%is%cloud%computin'GnavclicJtrue

    Android standards and developer references http:GGdeveloper"android"comGinde="html

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e 2 of ,1

    http://www.uml.org/#UML2.0http://aws.amazon.com/what-is-cloud-computing/?navclick=truehttp://developer.android.com/index.htmlhttp://aws.amazon.com/what-is-cloud-computing/?navclick=truehttp://developer.android.com/index.htmlhttp://www.uml.org/#UML2.0
  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    8/24

    S)stem Description

    $he eRhODIS application ?ill serve as a utilit) tool for end%users to collect samples andrelevant data in the field in the event of a rhino poachin' or related incident ?here after

    the data ?ill .e stored and uploaded to a secure cloud server"

    $he application ensures that all information needed to ensure that DNA samples arecollected from poached and live rhinos are collected in a standard ?a) and that all thenecessar) information to provide details of the chain of custod) for these samples areautomaticall) collected and uploaded to a secure data.ase for future use should the needarise" All information includin' -/S coordinates photos sample information is uploadedand stored on the cloud server"

    It also ensures that e) required data is al?a)s collected and uploaded" se of theapplication also enhances data accurac) and does a?a) ?ith the need to manuall) enter

    an) of the data after receipt of the samples in the @a.orator)"

    $he application also uses the S%/en to capture the authorised persons si'nature ?hichtherefore provides further inte'rit) for the chain of custod) features incorporated into theapplication"

    ser account information are automaticall) set to a demo account upon the first installationof the application on the device" $he specific userEs account details are provided andpreconfi'ured .) RhODISofficials and administrators .efore the device is used .) theend user" $hese account details ?ill also .e used .) the user to lo' into the erhodis.aced to vie? their su.missions"

    $he application provides online and off%line capa.ilities for areas ?here users have nointernet connectivit) i"e" cell phone reception or ?i%fi covera'e"

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e 7 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    9/24

    Functional Requirements

    S)stem Features

    Di'ital collection and stora'e of all forms of sample data"

    amera usa'e"

    ;arcode Scannin'"

    -eo%Sensor usa'e"

    -eo%Sensor meta%data inte'ration in photos"

    $ouch sensitive capa.ilities"

    Online and off%line usa'e"

    ser specific roles and su.missions"

    Inte'ration ?ith e=istin' cloud platforms" ;luetooth input capa.ilities for .ar%code scannin'"

    ;luetooth input capa.ilities for 9icrochip scannin'"

    9ain S)stem

    $he s)stem must allo? users to use the application online or off%line and provide fullfunctionalit) of sample collection -/S camera and stora'e of the su.mission"

    Priorities

    @o? : Not vital to the functionin' of the s)stem"9edium : Standard s)stem feature"(i'h : ritical feature"

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e 8 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    10/24

    9ain s)stem functional requirements

    Requirement Num.er **!

    Requirement Name ser Account @o'in

    /riorit) (i'h

    Description alid user account details need to .econfi'ured in the admin settin's menu .) a RhODISofficialfor a su.mission to .e considered valid"

    9otivation 0e ?ant to .e a.le to control ?ho hasaccess to our application and e=actl) ?hocreates a su.mission" $his is e=tremel)important to ensure and chec that onl)official users approved .) RhODISare

    creatin' su.missions"

    Dependencies ser Re'istration K**,L

    Requirement Num.er **,

    Requirement Name ser Re'istration

    /riorit) (i'h

    Description A user can onl) .e re'istered .) a

    RhODIS official"

    9otivation 0e ?ant have control over the userre'istration process to ensure that onl)trusted parties and mem.ers haveaccounts" 0e do not ?ant an)one from thepu.lic or even non%pu.lic have access toour services" In the event that a device isstolen or lost there ?ill .e no ?a) ofaccessin' user re'istration from anunno?n individual or 'roup and ?e can

    .loc the account instantl)"Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !* of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    11/24

    Requirement Num.er **#

    Requirement Name Data Input and ollection

    /riorit) (i'h

    Description A user must .e a.le to mae use of all the

    features in the application in order tosuccessfull) complete a su.mission"

    9otivation $he application maes use of severaladvanced features such as -/S locationtracin' camera usa'e ?hen collectin'samples and touch events usin' the S%pen"$he user should .e a.le to mae use of allthese features to ensure all relevant data iscomplete and accurate"

    Dependencies -/S @ocation K**1L amera Inte'ration

    K**+L

    Requirement Num.er **1

    Requirement Name -/S @ocation

    /riorit) (i'h

    Description A ser must use a device that has afunctionin' -/S module installed and theapplication must prompt the user the s?itchon the 'ps ?here needed if it is not active"

    9otivation Durin' sample collection a lot of photos aretaen and stored" $o ensure that thesephotos are actuall) taen at the crime sceneor location ?e 'eoreference all the photos"$his ?ill ensure that the meta%data ofphotos are accurate" orrect -/Scoordinates is also necessar) to pin thelocation of the incident on a map ?hich ?ill.e used later for data visualisation and

    detectin' patterns of similar cases andsituations .ased on the location info"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !! of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    12/24

    Requirement Num.er **+

    Requirement Name amera Inte'ration

    /riorit) (i'h

    Description It is required to tae photos of the samples

    collected and of the scene sent andreceived .a's and animal ear notches ifapplica.le"

    9otivation $his is part of the core functionalit) of theapplication"

    Dependencies

    Requirement Num.er **+

    Requirement Name Si'natures capture

    /riorit) 9edium

    Description It is required to capture the authori4edpersonEs si'nature"

    9otivation $his is part of the core functionalit) of theapplication ho?ever if a pen is notavaila.le at the time a user can still maeuse of his fin'ers to touch the screen"

    Dependencies S%/en Inte'ration K**5L

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !, of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    13/24

    Requirement Num.er **5

    Requirement Name S%/en Inte'ration

    /riorit) 9edium

    Description $he S%/en ?ill .e an alternative input

    device to use instead of the on%screentouch sensitive e).oard" $he S%/en can .eused to fill in an) of the fields throu'hout thesu.mission process"

    9otivation $his is not a core function ho?ever is stillessential especiall) ?hen capturin'si'natures" It is also a 'reat tool for users?ho are use to fillin' in the old paper .asedforms ?ith a pen" $he S%/en converts and?ritten hand?ritin' into input on an) of thefields" $his is also essential for useracceptance of ne?er technolo') andprovides a easier transition for some users?ho are dependent on older technolo')such as pen and paper .ased su.missions"

    Dependencies

    Requirement Num.er **2

    Requirement Name Online and Off%line se/riorit) (i'h

    Description $he application should .e usa.le ?henthere is no internet connection"

    9otivation $his is part of the core functionalit) of theapplication and is important .ecause the?i%fi covera'e and cell reception in some ofthe locations ?here users ?ill .e usin' theapplication is ver) lo?"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !# of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    14/24

    Requirement Num.er **7

    Requirement Name Savin' Data

    /riorit) (i'h

    Description $he application saves data onto the device

    ?here after it is uploaded automaticall) to acloud server and removed from the device"

    9otivation $his is part of the core functionalit) of theapplication"

    Dependencies Online and Off%line se K**2L

    Requirement Num.er **8

    Requirement Name Admin Section

    /riorit) 9edium

    Description $his is feature ?hich allo?s administratorsto confi'ure the core settin's of theapplication"

    9otivation sersGSu.mitters should not .e concerneda.out the account settin's and serversettin's of the application and for securit)reasons should not have access to thisfeature" (o?ever administrators still need

    access to these settin's to confi'uredevices and chan'e accounts G serversettin's on the device if needed"

    Dependencies

    Requirement Num.er *!*

    Requirement Name ;ar code Scannin'

    /riorit) 9edium

    Description $he user needs to scan in the .ar code as itis printed on the it"

    9otivation $his is a requirement that is part of aprocess ?e are ?orin' on to mae the useof the app easier and faster and ensurin'that correct input is 'iven"

    Dependencies amera Inte'ration K**+L

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !1 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    15/24

    Requirement Num.er *!!

    Requirement Name Admin Requirements : ie? As

    /riorit) @o?

    Description $he admin users need to .e a.le to vie?

    the s)stem as a different user to mae iteasier to eep trac of su.missions made tothe s)stem .) su.mitters or the demo user"

    9otivation $his is needed to prevent admin users fromlo''in' in and out of accounts to test aspecific users vie? on the s)stem

    Dependencies

    Requirement Num.er *!,

    Requirement Name Admin Requirements : @o'

    /riorit) 9edium

    Description A @o' is to .e ept of all the actions madeon the serverG?e. interface"

    9otivation $his is needed to eep trac of an) chan'esmade .) users to the s)stem and contentsaved on the s)stem"

    Dependencies

    Requirement Num.er *!#

    Requirement Name Demo Su.mission

    /riorit) 9edium

    Description $here must .e an option to mae demosu.missions"

    9otivation $his is needed so that usersGsu.mitters can

    test and practice usin' the application" Alsoused for demonstration purposes to #rdparties"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !+ of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    16/24

    Requirement Num.er *!1

    Requirement Name Online S)stem : ie? Su.missions 9ap

    /riorit) 9edium

    Description Su.missions that are uploaded to the

    s)stem needs to .e vie?a.le on a 9ap ?itha default map and satellite vie?"

    9otivation $his is needed to ensure that the -/S coordinates are accurate and to .e used forreco'nisin' patterns in a visualrepresentation"

    Dependencies

    Requirement Num.er *!+

    Requirement Name Online S)stem : ie? ontentGSu.missions

    /riorit) (i'h

    Description Su.missions that are uploaded to thes)stem needs to .e vie?a.le onl) .)admins or .) the su.mitter ?ho made thatparticular su.mission"

    9otivation $his is needed to see ?hat each user hasuploaded individuall) and further to use the

    data for further investi'ationGdocumentationand as an evidence report and archive"

    Dependencies

    Requirement Num.er *!5

    Requirement Name Online S)stem : Cdit ontentGSu.missions

    /riorit) 9edium

    Description Su.missions that are uploaded to thes)stem needs to .e edita.le onl) .) adminsor .) the su.mitter ?ho made that particularsu.mission"

    9otivation $his is needed to mae chan'es to some ofthe fields that mi'ht need chan'in' orcontent that ?ill onl) .e provided at a latersta'e that can then .e added"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !5 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    17/24

    Requirement Num.er *!2

    Requirement Name ;ar code Scannin'

    /riorit) 9edium

    Description $he user needs to scan in the .ar code as it

    is printed on the it"9otivation $his is a requirement that is part of a

    process ?e are ?orin' on to mae the useof the app easier and faster and ensurin'that correct input is 'iven"

    Dependencies amera Inte'ration K**+L

    Requirement Num.er *!7

    Requirement Name As)nchronous S)ncin'

    /riorit) (i'h

    Description $he userEs su.missions has to runseamlessl) and as)nchronousl) in the.ac'round and should not depend on userinteraction" Also the su.missions has tos)nc even ?hen the application has .eenclosed"

    9otivation $his is a requirement that is needed to

    remove user error from our uploadGs)ncin'process and improve the s)nc method ands)nc speed of our su.missions to theserver"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !2 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    18/24

    Requirement Num.er *!8

    Requirement Name Securit) M Device Restrictions

    /riorit) (i'h

    Description $he application ma) not run on an) other

    android device than the ones ?e providemore specificall) the Samsun' -ala=) Note7"

    9otivation $his is a requirement from Samsun' asthe) are our technolo') partner ho?everthis also helps ?ith securit) and ensuresthat ?e onl) run the application fromdevices that ?e allo?" Addin' this controlalso adds another la)er of securit)"

    Dependencies

    Requirement Num.er *,*

    Requirement Name Securit) ($$/S

    /riorit) (i'h

    Description $he connection protocol on the server must.e a secure ($$/S protocol ?ith a validcertificate"

    9otivation $his is part of the core securit)requirements of the application required foraccreditation"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !7 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    19/24

    Requirement Num.er *,!

    Requirement Name Securit) S@ In6ection /revention

    /riorit) (i'h

    Description S@ in6ections are a common ?a) of pullin'

    information from a data.ase ?ithout properauthentication .) means of usin' s)nta=and causin' the s)stem to failP and result in'ainin' access to data ?ithout permission"

    9otivation 0ritin' structures and code to prevent S@in6ections not onl) maes our code moresecure .ut also maes the s)stem morea.stract ro.ust and also speeds updata.ase queries"

    Dependencies

    Requirement Num.er *,,

    Requirement Name Securit) Cncr)ption

    /riorit) (i'h

    Description All the data that is uploaded to the serverand inserted into the data.ase needs to .eencr)pted usin' the ACS ,+5 or !,7 .ital'orithms"

    9otivation $his is to ensure that the data in thedata.ase remains 'ar.a'e for an)one ?homana'es to read it"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e !8 of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    20/24

    Requirement Num.er *,#

    Requirement Name (ashin' of photos

    /riorit) (i'h

    Description All the photos needs to .e assi'ned hash

    values that are created .) usin' the photosthemselves"

    9otivation $his is to ensure and verif) authenticit) Gori'inalit) of our photos and to sho? thatthe) have not .een modified" $his is alsoone of the checs that can .e used in acourt of la? ?hen evidence to?ards a caseis needed and need to .e validated forauthenticit) and to ensure that nomodifications has .een made to the photos"

    Dependencies

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e ,* of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    21/24

    se ases

    9ain S)stem

    Fi'ure ! M se ase Dia'ram of 9ain S)stem"

    ;asic Save /rocedure

    Fi'ure , M se ase Dia'ram of Savin' /rocedure"

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e ,! of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    22/24

    ser Interface Description

    Our s)stem ?ill have t?o user interfaces the one .ein' the eRhODISandroid applicationand the other .ein' the ?e. server" $he users ?ill use the android application to complete

    su.missions and ?ill use the ?e. server interface to mana'e and vie? their su.missionsafter?ards"

    Non Functional Requirements

    /erformance

    $he application needs to .e capa.le of handlin' lar'e ima'e files and an) amount ofima'es" Further the application should .e fast and should never let the user ?ait lon'erthan a second for an) data to .e displa)ed on the screen" $o accommodate theseperformance requirements ?e ?ill .e usin' the Samsun' Note 7 $a.lets as the) arecapa.le of deliverin' such performance"

    In terms of the serverG?e. interface ?e need a server that is capa.le of handlin' lar'eamounts of data and requests and ?hich delivers these requests and data quicl)"$herefore ?e have chosen Ama4on 0e. Services a cloud computin' infrastructure as aplatform for our server"

    Scala.ilit)

    $he s)stem should .e developed ?ith scala.ilit) in mind in a manner that supports codere%usa.ilit) and e=tensi.ilit)" $his requirement needs to .e satisfied .ecause theapplication needs to .e updated each time pertinent e=tensions to the critical requirementsare thou'ht of" Scala.ilit) is also important .ecause ?e are una.le to predict the furtureuser .ase of the application" So far .) usin' Ama4on 0e. Services ?e are read) toseamlessl) scale our serverG?e. interface and data.ase ?ithin minutes" As for the android

    application scala.ilit) has .een a e) implementation focus up until no?" $he .ase of theapplication us ?ritten in such a ?a) that addin' or removin' features ?ill not affect or.reaP the rest of the application"

    0e have recentl) up'raded our Ama4on virtual server from a t!"micro to a m!"smallserver" 0e have up'raded from a sin'le core s)stem ?ith minimal memor) and onl) 7-;of stora'e to a multi core s)stem ?ith more memor) and !5*-; of stora'e space that issittin' on Ama4ons S# loud Stora'e s)stem"

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e ,, of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    23/24

    Securit)

    sers ?ill al?a)s .e required to use the application ?ith a valid account and all informationentered and stored .) the users ?ill have to .e encr)pted and saved in a secure location"

    9aintaina.ilit)

    $he s)stem has .een desi'ned ?ith architectural desi'n patterns in place" Further thedevelopment code ?ill have to .e ?ell documented in order to ensure that the s)stem iseas) to understand and modif)"

    sa.ilit)

    $he interface should .e eas) to learn ho? to use it and should have a fast and efficientuser interface ?ith hi'h memora.ilit)" 0e have implemented a step .) step 'uidethrou'hout the application to help users use the application and complete su.missions" Amore in depth help feature should still .e developed for future use"

    Availa.ilit)

    $his application should .e availa.le at all times"

    Off%line capa.ilities are included for areas ?here there is no cellular reception or ?i%fisi'nal provided that the user has a valid account ?hen usin' the application"

    Open Issues

    eRhODISApplication ,*!# 3 Requirement Specification 3 /a'e ,# of ,1

  • 7/21/2019 [1] Requirement Specification eRhODIS Application.pdf

    24/24

    -lossar)

    Term Meaning

    A0S Ama4on 0e. Servicesloud Server A Server that is maintained ?ithin a cloud

    computin' infrastructure"

    loud omputin' omputin' concepts that involve a lar'enum.er of computers connected throu'h areal%time communication net?ors such asthe Internet"

    Data.ase A data.ase is an or'ani4ed collection ofdata"

    eRhODIS Clectronic RhODIS

    -/S -lo.al /ositionin' S)stem

    RhODIS Rhino DNA Inde=in' S)stem

    /DF /orta.le Document Format

    Server A computer s)stem that runs one or multipleservers to provide services over a net?orand deliver content on demand"

    0e. Server A Server providin' ?e. services such asretrievin' ?e. pa'es andGor data from a

    data.ase"9@ nified 9odellin' @an'ua'e

    eRhODIS Application ,*!# 3 Requirement Specification 3 /a'e ,1 of ,1