footrace tracking system using gps
Post on 02-Jun-2018
219 Views
Preview:
TRANSCRIPT
-
8/10/2019 Footrace Tracking System Using GPS
1/77
1. INTRODUCTION
1
-
8/10/2019 Footrace Tracking System Using GPS
2/77
1. INTRODUCTION
1.1 Background
The project abstract has been done. The requirements are identified. The functional
requirements (use cases) and the actors involved with use cases are identified. User
requirement document is done.
1.2 Overview
Footrace tracking sstem is designed to displa a course map showing runner!s
progress.The continuous updating of the race course displa can be monitored and can be
updated on the central server."lobal positioning sstem technolog and mobile phones can be
used to track selected runners on a course map.
The following are the modules in this project
"#$ %ommunication $ubsstem
&ace %ourse 'rawing $ubsstem
&ealTime Updates
dvertisement $ubsstem
1.3 Scope of te pro!ect
"#$ %ommunication subsstem includes a web service and *+, based "#$ location
service which runs on a central server. -t uses queries and updates the device coordinates for
use b the mobile "#$ client and T graphical displa.
For &ace %ourse 'rawing subsstem the application is installed on highend #% running
windows *# and +icrosoft Framework /.0 for creating the course map displa using
windows "'-.
/
-
8/10/2019 Footrace Tracking System Using GPS
3/77
The real time updates give information about the longitude and latitude values from the
"#$ devices and are forwarded over an 2volution'ata optimi3ed network to a central server
where position data was maintained for a continuous updating of the race course displa.
dvertisement subsstem is used to displa the advertisement content of various
companies and sponsors for the events.
1." Re#uire$ent% Specification
The #roposed $stem is developed on the below stated specifications.
4ardware5$oftware $pecifications
1. 4ardware #entium 6 #rocessor
1 "7 of +emor
80"7 of hard drive space
"#$ device
+obile device
/. $oftware +$.92T /00: with %;
-
8/10/2019 Footrace Tracking System Using GPS
4/77
#osition of the required runner cannot be viewed over Television sets.
The race summar is displaed much generali3ed. The personal interest of
the spectators is not given proper importance.
-nformation of each and ever participant is not available.
The tracking sstem delas the rela of the race.
The spectator stream will be confined to Television sets
1.+ ,ropo%ed S)%te$
The development of the proposed sstem mainl focuses to overcome the limitations prior
to the sstem. 4ere we tr to gain information about each and ever runner participating in
the race. This sstem enables the mobile users also to get realtime updates of the race>
which was not possible in the e?isting sstem.The "#$ technolog will not la an stress or
to be skeptical about the accurac. The Time dela in rela is reduced as a result of satellite
usage. -t allows spectators to know the position of each runner till the end of the race.
1. The present model uses "#$device 2mulators to track selected runners speed on acourse map.
/. The progress of the individual thlete will be traced b attaching a "#$ device to
their hand.
=. This progress can be checked using "#$ device emulators in our application.
6. time> direction and satellite location.
:. long with the course map the dvertisement content of various companies>
organi3ations and sponsors for the event are also displaed.
6
-
8/10/2019 Footrace Tracking System Using GPS
5/77
-out /,S
The /0oa0 ,o%itioning S)%te$ (/,S) is the onl fullfunctional satellite navigation
sstem. +ore than two do3en "#$ satellites are in medium 2arth orbit> transmitting signals
allowing "#$ receivers to determine location> speed and direction.
$ince the first e?perimental satellite was launched in 1AB8> "#$ has become indispensable
for navigation around the world and an important tool for mapmaking and land surveing.
"#$ also provides a precise time reference used in man applications including scientific
stud of earthquakes> and snchroni3ation of telecommunications networks.
Technologicall and scientificall> "#$ is perhaps the most important practical application
so far of 2insteinCs theor of general relativit.
"#$ receiver calculates its position b measuring the distance between itself and three
or more "#$ satellites. +easuring the time dela between transmission and reception of each
"#$ radio signal gives the distance to each satellite> since the signal travels at a known speed.
The signals also carr information about the satellitesC location.
7 determining the position of> and distance to> at least three satellites> the receiver can
compute its location using trilateration. &eceivers do not have perfectl accurate clocks> and
must track one e?tra satellite to correct their clock error.
/,S Device '$u0ator
The "#$ device simulator e?actl replicates the usage of original phsical "#$ 'evice. s
the "#$ 'evice has some constraints when dealing with sstem connectivit at the tracking
time> this task can be simplified using simulator.
The device emulator e?hibits same properties such as displaing the quanti3ed information
as such location> latitude> longitude> elevation and direction of the gps device holder. -t also
gives abundant information of the satellite which is in contact with the device emulator.
:
-
8/10/2019 Footrace Tracking System Using GPS
6/77
,ocket ,C
ccording to +icrosoft> the #ocket #% is Da handheld device that enables users to store
and retrieve email> contacts> appointments> tasks> pla multimedia files> games> e?change te?tmessages with browse the and more.D
For instance> an device which is to be classified as a #ocket #% must
&un +icrosoftCs #ocket #% edition
%ome bundled with a specific suite of applications in &E+
-nclude a touch screen
-nclude a directional pad or touchpad
-nclude a set of hardware application buttons
$ome #ocket #%s feature integrated "#$ often combined with mobile phone functionalit.
#ocket #%s with builtin telephon differ from
-
8/10/2019 Footrace Tracking System Using GPS
7/77
2. T'OR'TIC- -N-SIS
B
-
8/10/2019 Footrace Tracking System Using GPS
8/77
2. T'OR'TIC- -N-SIS
2.1 4icro%oft.N'T 5ra$ework
The .92T Framework is a new computing platform that simplifies application
development in the highl distributed environment of the -nternet. The .92T Framework is
designed to fulfill the following objectives
To provide a consistent objectoriented programming environment whether object
code is stored and e?ecuted locall> e?ecuted locall but -nternetdistributed> or
e?ecuted remotel.
To provide a codee?ecution environment that minimi3es software deploment and
versioning conflicts
To provide a codee?ecution environment that guarantees safe e?ecution of code>
including code created b an unknown or semitrusted third part.
To provide a codee?ecution environment that eliminates the performance #roblems of
scripted or interpreted environments.
To make the developer e?perience consistent across widel varing tpes of
pplications> such as
-
8/10/2019 Footrace Tracking System Using GPS
9/77
The .92T Framework has two main components
The common language runtime and
The .92T Framework class librar.
2.1.1 Co$$on anguage Runti$e
The %,& is the most important part of the .92T %ompact Framework. -t is responsible for
taking a .92T assembl and then setting up an application domain for it to run.
native justintime (H-T) compiler is used to compile the +$-, code to the actual
machine bits. The %,& provides the services of memor management> garbage
collection and class loading. The %,& also manages the securit structure in which theapplication e?ecutes.
The %,& consists of two parts
'(ecution enginewhich is responsible for e?ecution of the code and
Ca%e c0a%% 0irarie%which are a set of reusable classes that contain a basic set of
building blocks that applications can use. The following figure shows a tpical
construction of the .92T %ompact Framework.
The diagram is prett straight forward.
pplications> device libraries and base class libraries occup the managed space. The %,&
provides the e?ecution environment for these applications along with a set of base services.
A
-
8/10/2019 Footrace Tracking System Using GPS
10/77
The e?ecution engine itself is a native e?ecutable> as is the #latform
daptation ,aer which is an abstraction between the e?ecution engine and the
underling operating sstems.
These two laers are packaged as a single e?ecutable called +$%E&22.
2.1.2 .N'T 5ra$ework C0a%% irar)
The .92T Framework class librar is a collection of reusable tpes that tightl integrate
with the common language runtime. The class librar is object oriented> providing tpes from
which our own managed code can derive functionalit. This not onl makes the .92TFramework tpes eas to use> but also reduces the time associated with learning new features
of the .92T Framework. -n addition> thirdpart components can integrate seamlessl with
classes in the .92T Framework.
Iou can use the .92T Framework to develop the following tpes of applications and services
%onsole applications.
$cripted or hosted applications.
-
8/10/2019 Footrace Tracking System Using GPS
11/77
network> or local computer). This means that a managed component might or might not be
able to perform fileaccess operations> registraccess operations> or other sensitive functions>
even if it is being used in the same active application.
The runtime enforces code access securit. For e?ample> users can trust that an e?ecutable
embedded in a but cannot access
their personal data> file sstem> or network. The securit features of the runtime thus enable
legitimate -nternetdeploed software to be e?ceptionall feature rich.
The runtime also enforces code robustness b implementing a strict tpeandcode
verification infrastructure called the common tpe sstem (%T$). The %T$ ensures that all
managed code is selfdescribing. The various +icrosoft and thirdpart language compilers
generate managed code that conforms to the %T$.
This means that managed code can consume other managed tpes and instances> while
strictl enforcing tpe fidelit and tpe safet.
feature called justintime (H-T) compiling enables all managed code to run in the native
machine language of the sstem on which it is e?ecuting. +eanwhile> the memor manager
removes the possibilities of fragmented memor and increases memor localitofreference
to further increase performance.
Finall> the runtime can be hosted b highperformance> serverside applications> such as
+icrosoftJ $K, $erverL and -nternet -nformation $ervices (--$). This infrastructure enables
ou to use managed code to write our business logic> while still enjoing the superior
performance of the industrCs best enterprise servers that support runtime hosting.
C0ient -pp0ication Deve0op$ent
%lient applications are the closest to a traditional stle of application in enabling a user to perform a task. %lient applications include applications such as
word processors and spreadsheets> as well as custom business applications such as dataentr
11
-
8/10/2019 Footrace Tracking System Using GPS
12/77
tools> reporting tools> and so on. %lient applications usuall emplo windows> menus> buttons>
and other "U- elements> and the likel access local resources such as the file sstem and
peripherals such as printers.
nother kind of client application is the traditional ctive* control (now replaced b the
managed the .92T Framework provides simple properties to adjust visual attributes
associated with forms. -n some cases the underling operating sstem does not support
changing these attributes directl> and in these cases the .92T Framework automaticall
recreates the forms. This is one of man was in which the .92T Framework integrates the
developer interface> making coding simpler and more consistent.
Server -pp0ication Deve0op$ent
$erverside applications in the managed world are implemented through runtime hosts.
Unmanaged applications host the common language runtime> which allows our custom
managed code to control the behavior of the server. This model provides ou with all the
features of the common language runtime and class librar while gaining the performance and
scalabilit of the host server.
The following illustration shows a basic network schema with managed code running in
different server environments. $ervers such as --$ and $K, $erver can perform standard
operations while our application logic e?ecutes through the managed code.
2.2 Introduction to window% for$%
-
8/10/2019 Footrace Tracking System Using GPS
13/77
Si$p0icit) and power6 and check bo?es.
2.3 C9 .N'T 2::&
%; (pronounced %$harp> just like in musical notation) is a new language for intended as an alternative to the main previous languages> % and 7. -ts
purpose is twofold
-t gives access to man of the facilities previousl available onl in %> while
retaining some of the simplicit to learn of 7.
1=
-
8/10/2019 Footrace Tracking System Using GPS
14/77
-t has been designed specificall with the .92T framework in mind> and hence
is ver well structured for writing code that will be compiled for .92T.
%; is a simple> modern> object oriented language which aims to combine the high
productivit of 7 and raw power of %. %; is a new programming language developed b
+icrosoft.
Using %; we can develop console applications> web applications and windows applications.
-n %;> +icrosoft has taken care of % problems> such as memor management > pointers etc.
2." -DO.N'T Overview
'E.92T is an evolution of the 'E data access model that directl addresses user
requirements for developing scalable applications. -t was designed specificall for the web
with scalabilit> statelessness> and *+, in mind. 'E.92T uses some 'E objects> such as
the Connectionand Co$$andobjects> and also introduces new objects. Ne new 'E.92T
objects include the DataSet> DataReader> and Data-dapter. The important distinction
between this evolved stage of 'E.92T and previous data architectures is that there e?ists an
object the DataSet that is separate and distinct from an data stores. 7ecause of that> the
DataSetfunctions as a standalone entit.
Iou can think of the 'ata$et as an alwas disconnected recordset that knows nothing
about the source or destination of the data it contains. -nside a DataSet> much like in a
database> there are tables> columns> relationships> constraints> views> and so forth.
Data-dapteris the an object that connects to the database to fill the DataSet. Then> it
connects back to the database to update the data there> based on operations performed while
the DataSetheld the data. -n the past> data processing has been primaril connectionbased.
9ow> in an effort to make multitiered apps more efficient> data processing is turning to a
messagebased approach that revolves around chunks of information.
t the center of this approach is the Data-dapter> which provides a bridge to retrieve and
save data between a DataSetand its source data store. -t accomplishes this b means of
requests to the appropriate $K, commands made against the data store.
16
-
8/10/2019 Footrace Tracking System Using GPS
15/77
The *+,based DataSetobject provides a consistent programming model that works with
all models of data storageM flat> relational> and hierarchical. -t does this b having no
CknowledgeC of the source of its data> and b representing the data that it holds as collections
and data tpes. 9o matter what the source of the data within the DataSetis> it is manipulated
through the same set of standard #-s e?posed through the DataSet and its subordinate
objects.
the managed provider has
detailed and specific information. The role of the managed provider is to connect> fill> and
persist the DataSet to and from data stores. The E,2 '7 and $K, $erver .92T 'ata
#roviders ($stem.'ata.Ele'b and $stem.'ata.$ql%lient) that are part of the .9et
Framework provide four basic objectsM the Co$$and> Connection> DataReader andData-dapter. -n the remaining sections of this document> weCll walk through each part of the
DataSetand the E,2 '75$K, $erver .92T 'ata #roviders e?plaining what the are> and
how to program against them.
The following sections will introduce ou to some objects that have evolved> and some that
are new.
These objects are
Connection%. For connection to and managing transactions against a database.
Co$$and%. For issuing $K, commands against a database.
DataReader%. For reading a forwardonl stream of data records from a $K,
$erver data source.
DataSet%. For storing> remoting and programming against flat data> *+, data
and relational data.
Data-dapter%. For pushing data into a DataSet> and reconciling data against a
database.
1:
-
8/10/2019 Footrace Tracking System Using GPS
16/77
2.& 74
*+, is a markup language for documents containing structured information. $tructured
information contains both content (words> pictures> etc.) and some indication of what role that
content plas (for e?ample> content in a section heading has a different meaning from content
in a footnote> which means something different than content in a figure caption or content in a
database table> etc.). lmost all documents have some structure. markup language is a
mechanism to identif structures in a document. The *+, specification defines a standard
wa to add markup to documents.
2.* 8'B S'R;IC'S
modular applications that can be published> located> and invoked across the intranet and e?tranet. business to business> peer to peer or department to
department communication. enhancing interactivit.
1
-
8/10/2019 Footrace Tracking System Using GPS
17/77
$ome of the activities related to the web services are
1.
-
8/10/2019 Footrace Tracking System Using GPS
18/77
Con%u$ing a we %ervice
web service can be consumed in various was which include either consuming the
service using a web browser or a web5desktop application. The different methods using
which a web service can be consumed areM
4TT#"2T
4TT##E$T
$E#
Using web services pro?
2.+ 8'B S'R;IC'S D'SCRI,TION -N/U-/' and then bound to a concrete
network protocol and message format to define an endpoint. &elated concrete endpoints are
combined into abstract endpoints (services).
-
8/10/2019 Footrace Tracking System Using GPS
19/77
service can be accessed. -nformation about the web service such as the method contains>the
parameters that need to be passed to these methods are described through +icrosoftCs highlevel interface for data objects.
74 '(tensible 4arkup anguage> a specification developed b the
-
8/10/2019 Footrace Tracking System Using GPS
20/77
TC,?I, Transmission Control ,rotocol over Internet ,rotocol. T%# is one of the
main protocols in T%#5-# networks. T%#
enables two hosts to establish a connection and e?change streams of data.
SO-, O Simple Object -ccess ,rotocol ($E#) is a lightweight protocol for
e?change of information in a decentrali3ed> distributed environment. $E# relies on the
use of a transport protocol> and while it is not tied to a particular transport protocol>
currentl 4TT# is the onl one that has been defined b the the .92T Framework works with the E$. which mainclude a database>
/0
-
8/10/2019 Footrace Tracking System Using GPS
21/77
%E+ component> or a component class. ll ofthese are delivered through a compiled
assembl (',,) from the which sits in the bin director within --$!s
-
8/10/2019 Footrace Tracking System Using GPS
22/77
-S, .N'T Contro0%
$# .92T contains a large set of 4T+, controls. lmost all 4T+, elements on a page
can be defined as $# .92T control objects that can be controlled b scripts.
$# .92T also contains a new set of object oriented input controls> like programmable list
bo?es and validation controls. new data grid control supports sorting> data paging> and
everthing ou e?pect from a dataset control.
'vent -ware Contro0%
ll $# .92T objects on a %lick and %hange events handled b code makes coding much simpler and
much better organi3ed.
-S, .N'T Co$ponent%
$# .92T components are heavil based on *+,. ,ike the new ' &otator> that uses
*+, to store advertisement information and configuration.
U%er -utentication
$# .92T supports formsbased user authentication> including cookie management and
automatic redirecting of unauthori3ed logins.
U%er -ccount% and Ro0e%
$# .92T allows for user accounts and roles> to give each user (with a given role) access
to different server code and e?ecutables.
ig Sca0ai0it)
+uch has been done with $# .92T to provide greater scalabilit.
//
-
8/10/2019 Footrace Tracking System Using GPS
23/77
$erver to server communication has been greatl enhanced> making it possible to scale an
application over several servers. Ene e?ample of this is the abilit to run *+, parsers> *$,
transformations and even resource hungr session objects on other servers.
Co$pi0ed Code
The first request for an $# .92T page on the server will compile the $# .92T code and
keep a cached cop in memor. The result of this is greatl increased performance.
'a%) Configuration
%onfiguration of $# .92T is done with plain te?t files.
%onfiguration files can be uploaded or changed while the application is running. 9o need
to restart the server. 9o more metabase or registr pu33le.
Co$patii0it)
$# .92T is not full compatible with earlier versions of $#> so most of the old
$# code will need some changes to run under $# .92T. To overcome this problem>
$# .92T uses a new file e?tension D.asp?D. This will make $# .92T applications able to
run side b side with standard $# applications on the same server.
8at i% a 8e ServiceA
-
8/10/2019 Footrace Tracking System Using GPS
24/77
3. SST'4 D'SI/N
/6
-
8/10/2019 Footrace Tracking System Using GPS
25/77
3. SST'4 D'SI/N
3.1 S)%te$% de%ign
S)%te$% de%ignis the process or art of defining the architecture> components> modules>
interfaces> and data for a sstem to satisf specified requirements. Ene could see it as the
application of sstems theor to product development. There is some overlap and snerg
with the disciplines of sstems analsis> sstems architecture and sstems engineering.
Re#uire$ent% -na0)%i%
-n sstems engineering and software engineering> re#uire$ent% ana0)%i% encompasses
those tasks that go into determining the needs or conditions to meet for a new or altered
product> taking account of the possibl conflicting requirements of the various stakeholders>
such as beneficiaries or users. $stematic requirements analsis is also known as requirements
engineering. -t is sometimes referred to loosel b names such as requirements gathering>
requirements capture> or requirements specification. The term requirements analsis can also
be applied specificall to the analsis proper (as opposed to elicitation or documentation of
the requirements> for instance).
&equirements analsis is critical to the success of a development project.
&equirements must be actionable> measurable> testable> related to identified business needs
or opportunities> and defined to a level of detail sufficient for sstem design.
Benc$arking
7enchmarking (also Dbest practice benchmarkingD or Dprocess benchmarkingD) is a processused in management and particularl strategic management> in which organi3ations evaluate
various aspects of their processes in relation to best practice> usuall within their own sector.
This then allows organi3ations to develop plans on how to adopt such best practice> usuall
with the aim of increasing some aspect of performance. 7enchmarking ma be a oneoff
/:
-
8/10/2019 Footrace Tracking System Using GPS
26/77
event> but is often treated as a continuous process in which organi3ations continuall seek to
challenge their practices.
-rcitectura0 de%ign creates a blueprint for the design with the necessar specifications for
the hardware> software> people and data resources. -n man cases> multiple architectures are
evaluated before one is selected.
De%ignS designers will produce one or more CmodelsC of what the see a sstem eventuall
looking like> with ideas from the analsis section either used or discarded. document will be
produced with a description of the sstem> but nothing is specific S the might sa
CtouchscreenC or C"U- operating sstemC> but not mention an specific brands.
Co$puter progra$$ing and deugging in the software world> or detailed design in the
consumer> enterprise or commercial world specifies the final sstem components.
S)%te$ Te%ting evaluates the sstemCs actual functionalit in relation to e?pected or
intended functionalit> including all integration aspects.
3.2 Unified 4ode0ing anguage
-n the field of software engineering> the Unified +odeling ,anguage (U+,) is a
standardi3ed specification language for object modeling. U+, is a generalpurpose modeling
language that includes a graphical notation used to create an abstract model of a sstem>
referred to as a U+, model.
U+, is officiall defined at the Ebject +anagement "roup (E+") b the U+,
metamodel> a +etaEbject Facilit metamodel (+EF). ,ike other +EFbased specifications>
the U+, metamodel and U+, models ma be seriali3ed in *+-. U+, was designed to
specif> visuali3e> construct> and document softwareintensive sstems.
U+, is not restricted to modeling software. U+, is also used for business process
modeling> sstems engineering modeling> and representing organi3ational structures. The
/
-
8/10/2019 Footrace Tracking System Using GPS
27/77
$stems +odeling ,anguage ($s+,) is a 'omain$pecific +odeling language for sstems
engineering that is defined as a U+, /.0 profile.
U+, has been a catalst for the evolution of modeldriven technologies> which includemodeldriven development (+'')> modeldriven engineering (+'2)> and modeldriven
architecture (+'). 7 establishing an industr consensus on a graphic notation to represent
common concepts like classes> components> generali3ation> aggregation> and behaviors> U+,
has allowed software developers to concentrate more on design and architecture.
we tend to identif similarities or redundanc> be
the in terms of functionalit> features or structure.
/B
-
8/10/2019 Footrace Tracking System Using GPS
28/77
2ven though there are man techniques and tools for modeling> in this article series >
we will be concerning our selves with modeling object oriented sstems and applications
using the Unified +odeling ,anguage. The U+, as it is popularl known b its
T,(Three letter acronmG)>is the language that can be used to model sstems and make
them readable. This essentiall means that U+, provides the abilit to capture the
characteristics of a sstem b using notations. U+, provides a wide arra of simple> eas
to understand notations for documenting sstems based on the object oriented design
principles. This notations are called the nine diagrams of U+,.
$o the question arises> wh is U+, the preferred option that should be used for
modeling the answer lies in one wordM Rstandardi3ationGR
'ifferent languages have been used for depicting sstems using object oriented
methodolog. The prominent among these were the &umbaugh methodolog> the 7ooch
methodolog> and the Hacobson methodolog.
The problem was that> although each methodolog has its advantages> the were
essentiall disparate. 4ence> if ou had to work on different projects that used an of these
methodologies> ou had to well verse with each of these methodologies. ver tall order
indeedG The U+, is just that. -t QunifiesR the design principles of each of these
methodologies into a single> standard> language that can be easil applied across the board
for all object oriented sstems. 7ut> unlike the different methodologies that tended more to
the design and detailed design of sstems> U+, spans the realm of requirements> analsis
and design and> uniquel> implementation as well. The beaut of U+, lies in the fact that
an of the nine diagrams of U+, can be used on an incremental basis as the need arises.
For e?ample> if ou need to model requirements for a given sstem> ou can use the use
case diagrams onl without using the other diagrams in U+,. %onsidering all these
reasons> it is no wonder that U+, is considered RtheR language of choice.
/8
-
8/10/2019 Footrace Tracking System Using GPS
29/77
U+, does not have an dependencies with respect to an technologies or languages.
This implies that ou can use U+, to model applications and sstems based of the current
hot technologies.
3.3 U4 Diagra$%
u%e ca%e diagra$is a tpe of behavioral diagram defined b the Unified +odeling
,anguage (U+,). -ts purpose is to present a graphical overview of the functionalit provided
b a sstem in terms of actors> their goalsSrepresented as use casesSand an dependencies
between those use cases.
-n the Unified +odeling ,anguage (U+,)> a c0a%% diagra$is a tpe of static structure
diagram that describes the structure of a sstem b showing the sstemCs classes> their
attributes> and the relationships between the classes.
-n the Unified +odeling ,anguage> an activit) diagra$ represents the business and
operational stepbstep workflows of components in a sstem. n activit diagram shows the
overall flow of control.
The +essage $equence %hart technique has been incorporated into the Unified +odeling
,anguage (U+,) diagram under the name of $equence 'iagram. %e#uence diagra$
shows> as parallel vertical lines> different processes or objects that live simultaneousl> and as
hori3ontal arrows> the messages e?changed between them> in the order in which the occur.
This allows the specification of simple runtime scenarios in a graphical manner.
co00aoration diagra$ is an interaction diagram that emphasi3es the structural
organi3ation of the objects that send and receive messages.
/A
-
8/10/2019 Footrace Tracking System Using GPS
30/77
'(p0anation
-n the figure 3.2.1.1the user and the server are the actors. The "#$ location service runs
on the central server. The device coordinates are updated on the central server. The are used
b the "#$ client.
-n the figure 3.2.1.2 the user and the server are the actors. The &ace %ourse +ap is
monitored b the user on the Footrace pplication $erver.
-n the figure 3.2.1.3the user> server and the "#$ 'evice are the actors. The &ace %ourse
'ispla is updated on the %entral $erver using the &ealTime Updates i.e.> the latitude and
longitude values provided b the "#$ 'evice. The &ealTime Updates will be in the form of
an *+, file.
-n the figure 3.2.1." the user and the dvertisement $erver are the actors. The
advertisement content of various %ompanies and $ponsors for the event is displaed on the
advertisement $erver as well as on "#$ enabled +obile devices.
=0
-
8/10/2019 Footrace Tracking System Using GPS
31/77
3.3.1 U%e Ca%e Diagra$%
GPS Services
ServerChecks information
on central serverUser
Updates the
device coordinates
5igure 3.3.1.1"#$ %ommunication $ubsstem
=1
-
8/10/2019 Footrace Tracking System Using GPS
32/77
User Server
Course map display
5igure 3.3.1.2 &ace %ourse 'rawing $ubsstem
=/
-
8/10/2019 Footrace Tracking System Using GPS
33/77
GPS devic
Real-Time
updatesServer
User
Information about
latitudes and longitudes
Figure =.=.1.= &ealTime Updates
==
-
8/10/2019 Footrace Tracking System Using GPS
34/77
User
GPS device
dvertisemen
server
dvertisement
content
Figure =.=.1.6 dvertisement $ubsstem
=6
-
8/10/2019 Footrace Tracking System Using GPS
35/77
=.=./ $equence 'iagram
! User
GPS
Communication
Race Course Real Time
Updates
dvertisement
Communicates
get services information
invokes map information
displays the map
access latitude and longitude information
updates latitude and longitude information
communicates "ith advertisement system
displays advertisement content
stores and updates information
gives updated information "ith advertisement content
Figure =.=./.1 $equence 'iagram
=:
-
8/10/2019 Footrace Tracking System Using GPS
36/77
=.=.= %ollaboration 'iagram
Figure =.=.=.1 %ollaboration 'iagram
GPS CommunicationSubsystem
Race CourseDrawing System
ServerReal Time Updates
2:Get service info:!stablis" Connection
#:$ccess longitude % latitude values
&:Gets Service 'n
(:)Display *ap+:Gets 'nitiallongitude %latitude values
,:)Gets Updated longitude % latitude information
-:)Gets Updated longitude
% latitude information
=
-
8/10/2019 Footrace Tracking System Using GPS
37/77
=.=.6%lass 'iagram
GPS communication Subsystem
location ! String
latitude ! number
longitude ! number
################
cal$coordinates%&
get$updcoordinates%&
RealTimeUpdates
location ! String
latitude ! number
longitude ! number
Get$Coordinates%&
perform$updations%&
'ootarce%CentralServe
display%&
Race-Course subsyste
location ! String
latitude ! numberlongitude ! number
Get$coordinates%&
Get$updcoordinates
dra"smap%&
Figure =.=.6.1%lass 'iagram
=B
-
8/10/2019 Footrace Tracking System Using GPS
38/77
=.=.: ctivit 'iagram
Figure =.=.:.1 ctivit 'iagram
Server GPScommunicationsubsystem
DrawingSubsystem
Find LocationConstructs themap
DisplayMap
Updates of latitund longitude
$nyUpdates.es
/o
UpdatingSubsyst
ccess!nformation
ccess longitude"Latitude values
=8
-
8/10/2019 Footrace Tracking System Using GPS
39/77
". -RCIT'CTUR'
=A
-
8/10/2019 Footrace Tracking System Using GPS
40/77
". -RCIT'CTUR'
".1 Software -rcitecture
The software architecture of a program or computing sstem is the structure or structures
of the sstem> which comprise software components> the e?ternall visible properties of those
components> and the relationships between them. The term also refers to documentation of a
sstemCs software architecture. 'ocumenting software architecture facilitates communication
between stakeholders> documents earl decisions about highlevel design> and allows reuse of
design components and patterns between projects.
".2 8orking
-n all there are 6 modules>namel
a) "#$ %ommunication $ubsstem
b) &ace %ourse 'rawing $ubsstem
c) &ealTime Updates
d) dvertisement $ubsstem
-nitiall the "#$ %ommunication $ubsstem communicates with the Footrace pplication$erver b sending a request for 'evice %oordinates.The Footrace pplication $erver
requests the &ace %ourse 'rawing $ubsstem for mapping service.The &ace %ourse 'rawing
$ubsstem displas the map.
The Footrace pplication $erver gets conte?t information from the &ealTime Updates
module. The athlete!s position is forwarded to the Footrace pplication $erver in the form of
an *+, file. Finall the advertisement content of various companies> organi3ations and
sponsors for the event is displaed on the Footrace pplication $erver.
60
-
8/10/2019 Footrace Tracking System Using GPS
41/77
Figure 6./.1 rchitecture
61
-
8/10/2019 Footrace Tracking System Using GPS
42/77
&. COD'
6/
-
8/10/2019 Footrace Tracking System Using GPS
43/77
&. COD'
? Code for /,S Co$$unication Su%)%te$ ?
using $stemP
using $stem.%ollections."enericP
using $stem.Te?tPusing $stem.*mlP
using $stem.*ml.$eriali3ationP
using $stem.-EPusing gpsP
namespace gpstest
class #rogram
static void +ain(stringVW args)
*ml$eriali3er ser X new *ml$eriali3er(tpeof(gp?Tpe))P
using (File$tream str X new File$tream(D'am,oop.gp?D> File+ode.Epen))
gp?Tpe info X (gp?Tpe)ser.'eseriali3e(str)P
if (info.trk GX null)
EutputTracks(info.trk)P Y
Y *ml$eriali3er ser1 X new *ml$eriali3er(tpeof(gp?Tpe))P
using (File$tream str1 X new File$tream(D'am,oop/.gp?D> File+ode.Epen))
gp?Tpe info X (gp?Tpe)ser1.'eseriali3e(str1)P
if (info.trk GX null)
EutputTracks(info.trk)P
Y
Y Y
static void EutputTracks(trkTpeVW tracks)
%onsole. tracks.,ength)P
6=
-
8/10/2019 Footrace Tracking System Using GPS
44/77
foreach (trkTpe track in tracks)
EutputTrack(track)P
Y Y static void EutputTrack(trkTpe track)
%onsole. track.name)P
if (track.trkseg.,ength Z 0)
%onsole. track.trkseg.,ength)P
foreach (trksegTpe seg in track.trkseg)
%onsole. seg.trkpt.,ength)P
wptTpe wpt#rev X seg.trkptV0WP double total'ist X 0P
double elevation"ain X 0P
foreach (wptTpe wpt in seg.trkpt)
double course X 0P
double dist X 0P
"et%oursend'istance(wpt#rev> wpt> ref course> ref dist)P total'ist X distP
if (wpt.ele Z wpt#rev.ele)
elevation"ain X (double)(wpt.ele wpt#rev.ele)P Y
%onsole. wpt.time> wpt.lat> wpt.lon>wpt.ele> course> dist)P
wpt#rev X wptP
%onsole. total'ist 5 1000> elevation"ain)P
Y
Y Y
Y
static void "et%oursend'istance(wptTpe pt1> wptTpe pt/> ref double course> ref
double dist)
66
-
8/10/2019 Footrace Tracking System Using GPS
45/77
double lat1 X 'egreesTo&adians((double)pt1.lat)P
double lon1 X 'egreesTo&adians((double)pt1.lon)P
double lat/ X 'egreesTo&adians((double)pt/.lat)P double lon/ X 'egreesTo&adians((double)pt/.lon)P
double dlat X lat/ lat1P double dlon X lon/ lon1P double distance9orth X dlatP
double distance2ast X dlon [ +ath.%os(lat1)P
dist X +ath.$qrt(distance9orth [ distance9orth distance2ast [ distance2ast)P
dist X &adiansTo+eters(dist)P double dele X (double)pt/.ele (double)pt1.eleP
dist X +ath.$qrt(dist [ dist dele [ dele)P
course X +ath.tan/(distance2ast> distance9orth) \ (/ [ +ath.#-)P course X &adiansTo+eters(course)P
if (course ] 0)
course X =0P Y
static double 'egreesTo&adians(double degrees)
return degrees [ +ath.#- 5 180.0P Y
static double &adiansTo'egrees(double radians)
return radians [ 180.0 5 +ath.#-P
Y
static double &adiansTo9autical+iles(double radians)
return radians [ 0 [ 180 5 +ath.#-P
Y static double &adiansTo+eters(double radians)
return 18:/ [ &adiansTo9autical+iles(radians)P
Y Y
Y
? Code for RaceCour%e Drawing Su%)%te$
-
8/10/2019 Footrace Tracking System Using GPS
46/77
using $stem.*ml.$eriali3ationP
using gpsP
using gpstestP
namespace gps class gp?util
private gp?util()
Y
public static string ,at,onTo$tring(double lat> double lon)
string lat'ir X (lat ZX 0) D9D M DsDP
string lon'ir X (lon ZX 0) D2D M D lat'ir> +ath.Truncate(t,at)>
flat.To$tring(D;.000D))P
string slon X string.Format(D0Y1Y/YD> lon'ir> +ath.Truncate(t,on)>flon.To$tring(D;.000D))P
return string.Format(D0Y1YD> slat> slon)P
Y
public static void "et%oursend'istance(wptTpe pt1> wptTpe pt/> ref double course>ref double dist)
double lat1 X 'egreesTo&adians((double)pt1.lat)P
double lon1 X 'egreesTo&adians((double)pt1.lon)P double lat/ X 'egreesTo&adians((double)pt/.lat)P
double lon/ X 'egreesTo&adians((double)pt/.lon)P
double dlat X lat/ lat1P
double dlon X lon/ lon1P
double distance9orth X dlatP
double distance2ast X dlon [ +ath.%os(lat1)P
dist X +ath.$qrt(distance9orth [ distance9orth distance2ast [ distance2ast)P
6
-
8/10/2019 Footrace Tracking System Using GPS
47/77
dist X &adiansTo+eters(dist)P
double dele X (double)pt/.ele (double)pt1.eleP dist X +ath.$qrt(dist [ dist dele [ dele)P
course X +ath.tan/(distance2ast> distance9orth) \ (/ [ +ath.#-)P
course X &adiansTo+eters(course)P
if (course ] 0)
course X =0P
Y
static double 'egreesTo&adians(double degrees)
return degrees [ +ath.#- 5 180.0P
Y
static double &adiansTo'egrees(double radians)
return radians [ 180.0 5 +ath.#-P
Y
static double &adiansTo9autical+iles(double radians)
return radians [ 0 [ 180 5 +ath.#-P
Y
static double &adiansTo+eters(double radians)
return 18:/ [ &adiansTo9autical+iles(radians)P Y
Y
Y
6B
-
8/10/2019 Footrace Tracking System Using GPS
48/77
*. T'STIN/
68
-
8/10/2019 Footrace Tracking System Using GPS
49/77
*. T'STIN/
Ence the source code has been generated> the software must be tested to uncover as
man errors as possible before deliver to the customer. $oftware testing is a criticalelement of software qualit assurance and represents the ultimate review of
specification design and code generation.
*.1 Te%ting O!ective% Testing is a process of e?ecuting a program with the intent of finding
an error.
good test case is one that has a high probabilit of finding an as et
Undiscovered.
successful test is one that uncovers an as et undiscovered error.
*.2 Te%ting ,rincip0e%1. ll tests should be traceable to customer requirements.
/. Tests should be planned large before testing begins.
=. Testing should begin Q-n the $mallR and progress towards Q-n the ,argeR.
The sstem can be tested in one of the following two wasM
1. observant> speculative> creative> innovative> open
minded> resourceful> unopinionated> and skillful.
s a tester> it is alwas advisable to use manual white bo? testing and blackbo? testing
techniques on the test software. +anual testing helps discover and record an software bugs
or discrepancies related to the functionalit of the product.
6A
-
8/10/2019 Footrace Tracking System Using GPS
50/77
+anual testing can be replaced b test automation. -t is possible to record and plaback
manual steps and write automated test script(s) using Test automation tools. lthough> test
automation tools will onl help e?ecute test scripts written primaril for e?ecuting a particular
specification and functionalit. Test automation tools lack the abilit of decisionmaking and
recording an unscripted discrepancies during program e?ecution. -t is recommended that one
should perform manual testing of the entire product at least a couple of times before actuall
deciding to automate the more mundane activities of the product.
'espite the proliferation of automated solutions> manual testing still accounts for at least
80\ of all testing. utomation can onl be justified where repeatable consistent tests can be
run over a stable environment. then testing teams almost alwas revert back to manual testing. $o manual testing is
here to staG 4ere are some reasons wh...
Bu%ine%% critica0 ? eavi0) te%ted %oftware
automation can simpl be too daunting. 9ew to
testing> those that are new to testing ma not want to dive right in to comple? automation
tools. Using a tool such as Test'rivessist can provide an eas and cost effective wa to gain
real advantages in a short space of time and use it as a springboard to full automation. $cript
based automation tools not living up to their hpeM +an people still find that despite
investing in script based automation solutions this onl covers 10/0\ of their total testing.
The rest is still carried out manuall. Full utomation simpl not appropriateM Iou ma be
testing new functionalit> or a new platforms5E$. Er there mabe insufficient time and5or
skills to develop test scripts. gile 'evelopmentM there is
no place for traditional automation tools because the take too long to set up and need to be
rescripted after the first change to the application.
+anual testing helps discover defects related to the usabilit testing and "U- testing area.
the
standard location of the EN button on a screen is on the left and of %9%2, button on the
right. 'uring manual testing ou might discover that on some screen> it is not. This is a new
:0
-
8/10/2019 Footrace Tracking System Using GPS
51/77
defect related to the usabilit of the screen. -n addition> there could be man cases where the
"U- is not displaed correctl and the basic functionalit of the program is correct. $uch bugs
are not detectable using test automation tools.
&epetitive manual testing can be difficult to perform on large software applications or
applications having ver large dataset coverage. This drawback is compensated for b using
manual blackbo? testing techniques including equivalence partitioning and boundar value
analsis. Using which> the vast dataset specifications can be divided and converted into a
more manageable and achievable set of test suites.
manual tester would tpicall perform the following steps for manual testingM
1. Understand the functionalit of program
/. #repare a test environment
=. 2?ecute test case(s) manuall
6. erif the actual result
:. &ecord the result as #ass or Fail
. +ake a summar report of the #ass and Fail test cases
B. #ublish the report
8. &ecord an new defects uncovered during the test case e?ecution
Test automation has become a necessit mainl due to shorter deadlines for performing
test activities> such as regression testing> performance testing> and load testing.
:1
-
8/10/2019 Footrace Tracking System Using GPS
52/77
*." Te%t Ca%e%
Ta0e *.".1 /eneration of C9 fi0e
Te%t Ca%e6 ;1
Te%t O!ective6
-
8/10/2019 Footrace Tracking System Using GPS
53/77
Ta0e *.".2 De%igning Centra0 Server
Te%t Ca%e6 ;/
Te%t O!ective6 Creating the form so that latitude and longitude values> course
map and advertisements are displaed on it.
Te%t %etup precondition6 ,atitude and longitude values.
-ction% '(pected Re%u0t
%licking on the button and choosing ,atitude and longitude values of
the appropriate file of the runner!s . runners and advertisements are
displaed.
%licking on radio button. +ap is displaed.
,ro0e$%?I%%ue%69one
Note%6$uccessfull tested and e?ecuted.
:=
-
8/10/2019 Footrace Tracking System Using GPS
54/77
Ta0e *.".3 Deugging of c9 fi0e
Te%t Ca%e6 ;=
Te%t O!ective6'ebugging the c; file and console application to get speed>
distance> location of the athlete.
Te%t %etup precondition6 &unning correct applications.
-ction% '(pected Re%u0t
2?ecuting c; file and console %ommand prompt showing all the
application. values with respect to the athlete.
-ncorrect applications. -ncorrect values.
,ro0e$%?I%%ue%69one
Note%6$uccessfull tested and e?ecuted.
:6
-
8/10/2019 Footrace Tracking System Using GPS
55/77
+. SCR''N SOTS
::
-
8/10/2019 Footrace Tracking System Using GPS
56/77
+. SCR''N SOTS
Screen +.1
"#*.?sd is the *+, file which is downloaded from the internet.
:
-
8/10/2019 Footrace Tracking System Using GPS
57/77
Screen +.2
The command ?sd gp?.?sd 5classes 5languagesMcs 5namespaceMgpstest is used to generate
the %; file.
:B
-
8/10/2019 Footrace Tracking System Using GPS
58/77
Screen +.3
Upon running the %; file we get the latitude> longitude> elevation> time> distance values.
:8
-
8/10/2019 Footrace Tracking System Using GPS
59/77
Screen +."
#ocket #% is the device on which race updates and alarms can be received.
:A
-
8/10/2019 Footrace Tracking System Using GPS
60/77
Screen +.&
-nitiall> the values are set to ^ero.
0
-
8/10/2019 Footrace Tracking System Using GPS
61/77
Screen +.*
&aw 'ata that is being relaed b the "#$ device tied to the contestant!s wrist.
1
-
8/10/2019 Footrace Tracking System Using GPS
62/77
Screen +.+
The location of the runner in terms of latitude> longitude> altitude> direction. The speed of the
runner can also be viewed. part from this the satellite time @ local time can also be viewed.
/
-
8/10/2019 Footrace Tracking System Using GPS
63/77
Screen +.>
s the race progresses the speed> direction> latitude> longitude values keep changing.
=
-
8/10/2019 Footrace Tracking System Using GPS
64/77
Screen +.@
%onfiguring the data source as *+, file.
6
-
8/10/2019 Footrace Tracking System Using GPS
65/77
Screen +.1:
$electing the *+, File.
:
-
8/10/2019 Footrace Tracking System Using GPS
66/77
Screen +.11
$electing the 1st'amloop file.
-
8/10/2019 Footrace Tracking System Using GPS
67/77
Screen +.12
$electing the /nd 'amloop file.
B
-
8/10/2019 Footrace Tracking System Using GPS
68/77
-
8/10/2019 Footrace Tracking System Using GPS
69/77
>. CONCUSION
A
-
8/10/2019 Footrace Tracking System Using GPS
70/77
>. CONCUSION
Enl "#$ enabled mobile users are facilitated to get the updates of the race.
-t is e?pensive> as all the participants should be provided "#$ 'evices.
Enl the status of the participant can be known but the original picture cannot be viewed.
-f the communication with the satellites fails then the whole process gets crashed.
satellite signals down as it passes through inclement weather.
t times> the satellites ma provide inaccurate information.
B0
-
8/10/2019 Footrace Tracking System Using GPS
71/77
@. -,,'NDI7
B1
-
8/10/2019 Footrace Tracking System Using GPS
72/77
@. -,,'NDI7
-BBR';I-TIONS
a. /,S6 /0oa0 ,o%itioning S)%te$
. /,76 /,S '(cange 5or$at
c. 746 '(ten%i0e 4arkup anguage
d. /DI6 /rapica0 Di%p0a) Interface
e. IIS6 Internet Infor$ation Service.
D'5INITIONS
a. -(i%
n imaginar line through the centre of an object> around which the object turns.
. Cour%e
course> in navigation> is the intended path of a vehicle over the surface of the 2arth.
c. Data ogging
'ata logging is the practice of recording sequential data> often chronologicall.
d. Degree
unit of measurement for angles.-t represents 15=0 of a full rotation. 'enoted b 0.
e. 'art% -(i%
The earth!s a?is is the line between the 9orth and $outh #oles.
f. '0evation
'istance of something above a reference point (such as sea level).
B/
-
8/10/2019 Footrace Tracking System Using GPS
73/77
g. '#uator
n imaginar line> or one drawn on a map> around the earth at an equal distance from 9orth
and $outh #oles.
. 5ootrace
Footrace is defined as the race run b contestants on foot.
i. /,S speed and
direction.
!. /,7
"#* (the "#$ 2?change Format) is a lightweight *+, data format for the interchange of
"#$ data (wapoints> routes> and tracks) between applications and 2ngland.
0. atitude
,ines of ,atitude are the hori3ontal lines running from easttowest on maps. -t is the distance
of a place north or south of the 2KUTE&> measured in degrees.
$. og
written record of events on a voage (of a ship or plane).
n. ongitude
,ines of ,ongitude are the lines running from northtosouth on maps. -t is the distance east or
west of the "reenwich +2&-'-9> measured in degrees.
o. 4eridian
n imaginar circle round the earth that passes through both the 9orth and $outh #oles.
p. Nautica0 4i0e
nautical mile or sea mile is a unit of length.-t corresponds appro?imatel to one minute of
latitude along an meridian. 1 nautical mile X 1>8:/ meters.
B=
-
8/10/2019 Footrace Tracking System Using GPS
74/77
#. Nort ,o0e
The northernmost point of the 2arthCs a?is.
r. Radian
The unit of plane angle adopted under the $steme -nternational dCUnites. 2qual to the angle
at the centre of a circle subtended b an arc equal in length to the radius (appro?imatel
:B./A: degrees).
%. Route
-n "#$ navigation> a route is usuall defined as a series of one or more wapoints.
t. Sout ,o0e
The southernmost point of the 2arthCs a?is.
u. Track
track> also course over ground> is the actual path followed b a moving bod.
v. Tracking Device%
"#$ tracking unit is a device that uses the "#$ to determine the precise location of person
to which it is attached and to record the position of the asset at regular intervals. The recorded
location data can be stored within the tracking unit or it ma be transmitted to a central
location database.
w. 8a)point
wapoint is a reference point in phsical space used for purposes of navigation.
-
8/10/2019 Footrace Tracking System Using GPS
75/77
E. 74 Seria0iEation
-t is the process of converting *+, documents and streams to common language runtimeobjects and vice versa.
B:
-
8/10/2019 Footrace Tracking System Using GPS
76/77
1:. BIBIO/R-,
B
-
8/10/2019 Footrace Tracking System Using GPS
77/77
BIBIO/R-,
7ook &eferences
$K, $2&2& /00:
7 +icrosoft #ress
$EFT
top related