0% found this document useful (0 votes)
72 views36 pages

Student Tracker

The document describes a proposed system to monitor student transportation on school buses to enhance safety. The system would detect when students board and exit buses and send alerts to parents with location and timing details. This is intended to reduce parent concerns about student safety during daily bus transportation. The proposed system is analyzed and its advantages over existing manual systems are provided, such as ensuring no students are left on buses. The objectives, hardware requirements, software requirements, and feasibility of the system are also discussed at a high level.

Uploaded by

The Mind
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views36 pages

Student Tracker

The document describes a proposed system to monitor student transportation on school buses to enhance safety. The system would detect when students board and exit buses and send alerts to parents with location and timing details. This is intended to reduce parent concerns about student safety during daily bus transportation. The proposed system is analyzed and its advantages over existing manual systems are provided, such as ensuring no students are left on buses. The objectives, hardware requirements, software requirements, and feasibility of the system are also discussed at a high level.

Uploaded by

The Mind
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 36

1.

INTRODUCTION

1.1. AN OVERVIEW
Student’s safety is of utmost importance to their parents. Despite of the best
safety measures, students due to lack of skills to protect themselves, may end
up in a situation that endangers their life. This project develops a system to
monitor the daily bus pick-up/drop-off of Students to enhance the overall
safety of the daily bus transportation to/from school.
The system aims at detecting when a Student boards or leaves the bus and
issue an alert message to reduce the parent concerns about using the bus for
the daily transport of their student without being lost or forgotten. The
system developed here sends the message to the parents along with the stop
location, time at which student boarded into or exited from the bus.

1
1.2 SYSTEM ANALYSIS

1.2.1 EXISTING SYSTEM


Past following system is a GPS based and manual system designed to show the
constant area of buses. This system requires web association and could conceivably be GPS
tracker. Real time Bus Monitoring System utilizing GPS display the present area of
transport .The system comprised of a transmitter introduced on the transports and collector
loads up introduced on the transport stops. It gives the pertinent transport courses and other
data their customers. Constant Web Based Bus Tracking System gives the significant data
in regards to all the transport going from user’s source to goal. The system is worked by
GPS which is joined with each transport. It utilizes outside equipment set-up for its
execution.Old fashioned student attendance system was a tedious task to

perform and maintain and also time consuming.


• RFID based attendance system
• Smart Active RFID+GPS+GPRS+ Camera +Software solution which is
unique and is Future Efficient.
• Barcodes are less secure because can be easily reproduced.
• Manual attendance system is very time consuming

DRAWBACKS
 Intelligent gps/gsm tracking system hardware based systems.
 Store and forward of position and data based on availability
of gprs network.
 Rs485 modbus for various interface such as fuel sensor,
ultrasonic sensor, temperature sensor, rfid reader, plc and
any compatible devices.
 Cost effective

2
1.2.2 PROPOSED SYSTEM
StudentTracker is an integrated child and school bus tracking and
monitoring solution that ensures children's safety and security while they
travel to school and back.
This is a "peace-of-mind solution" that takes into account concerns of
parents, school authorities and school bus drivers.
SudentTracker School Bus Tracker is Student/Staff on Bus and school
Tracking/Attendance Solution is of immense use and application to the
educational institutes.
Advantages
 No chance of missing child and out of sight.
 Gives alerts when bus leaves a certain area.
 Exact location of the child bus
 Alert sms any emergency condition occurs
 Track, monitor and view your children
 peace of mind
 Gives alerts when school bus delays before it reaches to its stop.
 Gives alerts if bus is in traffic jam or stopped anywhere.
 SMS alerts to parents/dear-ones informing them that student has;
 Boarded the bus at pickup with timings and Location
 Reached school with timings
 Left from school with timings
 Alighted bus at drop with timings and Location

3
OBJECTIVE OF THE PROJECT
MAIN OBJECTIVE
The aim of the project is to develop a system to monitor pick-
up/drop-off of students to enhance the safety of students during the daily
transportation from and to school.
SPECIFIC OBJECTIVE
 Identifying children boarding school buses and verifying the boarding time and
place of each student into the bus. Ÿ
 Locating and verifying the disembarking point and time for each student.
 Sending message updates to parents that their children have safely reached school
or home. Ÿ
 Alerting the bus driver if any student tries to board the wrong school bus. Ÿ
 Alerting the bus driver if any student is left behind in the bus. Ÿ
 Alert to driver if bus has been replaced for any reason.
 Alert to new driver if any driver is absent.
 Monitoring the live location and path of each school bus on its daily trips
SALIENT FEATURES OF THE SYSTEM
 Data transmission in real-time through GPRS technology. ŸSafe and
secure transportation of the child. Ÿ
 No child is left unattended on the school bus.
 Eliminates chances of student getting on the wrong bus, getting off at the
wrong stop or being left behind after the route has been completed.
 Ensures that the child is not left behind sleeping in the bus.

4
1.3 SYSTEM REQUIREMENTS:

1.3.1 Hardware Specification


 Microprocessor: Intel(R) Core(TM)i5-6200U CPU @ 2.3 GHz

 RAM: 8 GB of RAM

 Hard Disk: 1 terabytes (TB) on installation drive

 Operating Systems: Windows 10 Pro 64 bits Operating System for


developing this system

1.3.2 Software Specification

 PHP 5

 MySQL

 WAMP Server 2.0

 Macromedia Dreamviewer 8 IDE

 Java SE 7 Software Development Kit

 Eclipse 3.7.2 (Classic) IDE for Java Developers

 Android SDK versions 2.2, 2.3.3 and 3.x

 ADT (Android Development Tools) Plugin for Eclipse

1.4 FEASIBILITY STUDY


This project is feasible provided given unlimited resources and
infinite time. Unfortunately the development of a computer-based system is

5
more likely to be plagued by resource scarcity and stringent schedules. It is
both necessary and prudent to evaluate the feasibility of a project at earliest
possible time. Wastage of manpower and financial resources and untold
professional embarrassment can be avoided if an ill-conceived system is
recognized early in the development phase. So a detailed study was carried
out to check the workability of the proposed system.
Feasibility study is a test of system proposal regarding its workability,
impact on the organization, ability to meet user needs and effective use of
resources. Thus, when an application is proposed, it is normally goes
through a feasibility study before it is approved for development.
Feasibility and risk analysis is related in many ways. If project risk is
great, the feasibility of producing quality is reduced. Thus during feasibility
analysis for this project, following three primary areas for interest was
considered very carefully. There are several types of feasibility.
1.4.1 TECHNICAL FEASIBILITY
A study of resource availability that may affect the ability to achieve
an acceptable system. Technical feasibility is the most difficult area to
ensure at initial stage. Since te objectives, functions, performance cannot be
predicted to its fullest, everything seems possible, provided the right
assumptions are made.

1.4.2 OPERATIONAL FEASIBILITY:


It is essential that the process of analysis and definition can be
conducted in parallel with an assessment of technical feasibility. The
consideration that is normally associated with technical feasibility includes
resource availability at the organization where the project is to be developed
and implemented.
6
1.4.3 ECONOMIC FEASIBILITY
An evaluation of development cost weighted against the ultimate
income or benefit derived from the proposed system. The proposed system
will not cause any expenditure since all the requirements are available in the
firm.

7
2 SYSTEM DESIGN AND DEVELOPMENT:

2.1 SOFTWARE DESCRIPTION:

WINDOWS 7 ULTIMATE

Windows 7 is a version of Microsoft Windows, which is an operating


system for computers. According to Microsoft, Windows 7 is faster, more
reliable and more compatible than the previous version named Vista.

Internet Information. Windows 7 includes a number of new features, such as


touching the screen, supporting virtual hard disks, being faster on multi-core
processors and the taskbar is the biggest improvement. The taskbar allows
users to pin most frequently used programs. Also, the glass user interface,
Aero, has been improved.

SOFTWARE ENVIRONMENT:

At the start of this chapter, introduced the world of Web 1.0, but it wasn’t long before the
rush was on to create Web 1.1, with the development of such browser enhancements as
Java, JavaScript, JScript (Microsoft’s slight variant of JavaScript), and ActiveX. On the
server side, progress was being made on the Common Gateway Interface (CGI) using
scripting languages such as Perl (an alternative to the PHP language) and serverside
scripting (dynamically inserting the contents of one file—or the output of a system call—
into another one). Once the dust had settled, three main technologies stood head and
shoulders above the others. Although Perl was still a popular scripting language with a
strong following, PHP’s simplicity and built-in links to the MySQL database program
had earned it more than double the number of users. And JavaScript, which had become
an essential part of the equation for dynamically manipulating CSS (Cascading Style
Sheets), now took on the even more muscular task of handling the client side of the Ajax

8
process. Under Ajax (described in “Using JavaScript” on page 7), web pages perform
data handling and send requests to web servers in the background—without the web user
being aware that this is going on. No doubt the symbiotic nature of PHP and MySQL
helped propel them both forward, but what attracted developers to them in the first place?
The simple answer has to be the ease with which you can use these technologies to
quickly create dynamic elements on websites. MySQL is a fast and powerful yet easy-to-
use database system that offers just about anything a website might need in order to find
and serve up data to browsers. When PHP allies with MySQL to store and retrieve this
data, you have the fundamental parts required for the development of social networking
sites and the beginnings of Web 2.0. And when you bring JavaScript and CSS into the
mix too, you have a recipe for building highly dynamic and interactive websites. (i)

Using PHP
With PHP, it’s a simple matter to embed dynamic activity in web pages. When you give
pages the .php extension, they have instant access to the scripting language. From a
developer’s point of view, all you have to do is write code such as the following: How are
you? The opening command. Outside of this construct, everything is sent to the client as
direct HTML. So, the text “How are you?” is simply output to the browser;
within the PHP tags, the built-in date function displays the current day of the week
according to the server’s system time. The final output of the two parts looks like this:
Hello World. Today is Wednesday. How are you? PHP is a flexible language, and some
people prefer to place the PHP construct directly next to PHP code, like this: Hello
World. Today is . How are you? There are also other ways of formatting and outputting
information, which I’ll explain in the chapters on PHP. The point is that with PHP, web
developers have a scripting language that, although not as fast as compiling your code in
C or a similar language, is incredibly speedy and that also integrates seamlessly with
HTML code.
Using PHP, you have unlimited control over your web server. Whether you need to
modify HTML on the fly, process a credit card, add user details to a database, or fetch
information from a third-party website, you can do it all from within the same PHP files
in which the HTML itself resides.
Using MySQL

9
Of course, there’s not a lot of point to being able to change HTML output dynamically
unless you also have a means to track the changes that users make as they use your
website. In the early days of the Web, many sites used “flat” text files to store data such
as usernames and passwords. But this approach could cause problems if the file wasn’t
correctly locked against corruption from multiple simultaneous accesses. Also, a flat file
can get only so big before it becomes unwieldy to manage—not to mention the difficulty
of trying to merge files and perform complex searches in any kind of reasonable time.
That’s where relational databases with structured querying become essential. And
MySQL, being free to use and installed on vast numbers of Internet web servers, rises
superbly to the occasion. It is a robust and exceptionally fast database management
system that uses English-like commands. The highest level of MySQL structure is a
database, within which you can have one or more tables that contain your data. For
example, let’s suppose you are working on a table called users, within which you have
created columns for surname, firstname, and
email, and you now wish to add another user. One command that you might use to do this
is: INSERT INTO users VALUES('Smith', 'John', '[email protected]'); Of course, as
mentioned earlier, you will have issued other commands to create the database and table
and to set up all the correct fields, but the INSERT command here shows how simple it
can be to add new data to a database. The INSERT command is an example of SQL
(which stands for Structured Query Language), a language designed in the early 1970s
and reminiscent of one of the oldest programming languages, COBOL. It is well suited,
however, to database queries, which is why it is still in use after all this time. It’s equally
easy to look up data. Let’s assume that you have an email address for a user and you need
to look up that person’s name. To do this, you could issue a MySQL query such as:
SELECT surname,firstname FROM users WHERE email='[email protected]'; MySQL
will then return Smith, John and any other pairs of names that may be associated with
that email address in the database. As you’d expect, there’s quite a bit more that you can
do with MySQL than just simple INSERT and SELECT commands. For example, you
can join multiple tables according to various criteria, ask for results in a variety of
different orders, make partial matches when you know only part of the string that you are
searching for, return only the nth result, and a lot more. Using PHP, you can make all

10
these calls directly to MySQL without having to run the MySQL program yourself or use
its command-line interface. This means you can save the results in arrays for processing
and perform multiple lookups, each dependent on the results returned from earlier ones,
to drill right down to the item of data you need. For even more power, as you’ll see later,
there are additional functions built right into MySQL that you can call up for common
operations and extra speed.
The Apache Web Server
In addition to PHP, MySQL, JavaScript, and CSS, there’s actually a fifth hero in the
dynamic Web: the web server. In the case of this book, that means the Apache web
server. We’ve discussed a little of what a web server does during the HTTP server/client
exchange, but it actually does much more behind the scenes. For example, Apache
doesn’t serve up just HTML files—it handles a wide range of files, from images and
Flash files to MP3 audio files, RSS (Really Simple Syndication) feeds, and more. Each
element a web client encounters in an HTML page is also requested from the server,
which then serves it up. But these objects don’t have to be static files, such as GIF
images. They can all be generated by programs such as PHP scripts. That’s right: PHP
can even create images and other files for you, either on the fly or in advance to serve up
later. To do this, you normally have modules either precompiled into Apache or PHP or
called up at runtime. One such module is the GD library (short for Graphics Draw),
which PHP uses to create and handle graphics.
Apache also supports a huge range of modules of its own. In addition to the PHP module,
the most important for your purposes as a web programmer are the modules that handle
security. Other examples are the Rewrite module, which enables the web server to handle
a varying range of URL types and rewrite them to its own internal requirements, and the
Proxy module, which you can use to serve up often-requested pages from a cache to ease
the load on the server. Later in the book, you’ll see how to actually use some of these
modules to enhance the features provided by the core technologies we cover. About Open
Source Whether or not being open source is the reason these technologies are so popular
has often been debated, but PHP, MySQL, and Apache are the three most commonly
used tools in their categories. What can be said, though, is that being open source means
that they have been developed in the community by teams of programmers writing the

11
features they themselves want and need, with the original code available for all to see and
change. Bugs can be found and security breaches can be prevented before they happen.
There’s another benefit: all these programs are free to use. There’s no worrying about
having to purchase additional licenses if you have to scale up your website and add more
servers. And you don’t need to check the budget before deciding whether to upgrade to
the latest versions of these products.
What Is a WAMP, MAMP, or LAMP?
WAMP, MAMP, and LAMP are abbreviations for “Windows, Apache, MySQL, and
PHP,” “Mac, Apache, MySQL, and PHP,” and “Linux, Apache, MySQL, and PHP,” 13
www.it-ebooks.info respectively. These abbreviations describe a fully functioning setup
used for developing dynamic Internet web pages. WAMPs, MAMPs, and LAMPs come
in the form of a package that binds the bundled programs together so that you don’t have
to install and set them up separately. This means you can simply download and install a
single program and follow a few easy prompts to get your web development server up
and running in the quickest time with the minimum hassle. During installation, several
default settings are created for you. The security configurations of such an installation
will not be as tight as on a production web server, because it is optimized for local use.
For these reasons, you should never install such a setup as a production server. However,
for developing and testing websites and applications, one of these installations should be
entirely sufficient.
Using an IDE
As good as dedicated program editors can be for your programming productivity, their
utility pales into insignificance when compared to Integrated Developing Environments
(IDEs), which offer many additional features such as in-editor debugging and program
testing, as well as function descriptions and much more.
Android
Android is an open source and Linux-based Operating System for mobile devices such as
smartphones and tablet computers. Android was developed by the Open Handset
Alliance, led by Google, and other companies. Android offers a unified approach to
application development for mobile devices which means developers need to develop
only for Android, and their applications should be able to run on different devices

12
powered by Android. The first beta version of the Android Software Development Kit
(SDK) was released by Google in 2007, whereas the first commercial version, Android
1.0, was released in September 2008. On June 27, 2012, at the Google I/O conference,
Google announced the next Android version, 4.1 Jelly Bean. Jelly Bean is an incremental
update, with the primary aim of improving the user interface, both in terms of
functionality and performance. The source code for Android is available under free and
open source software licenses. Google publishes most of the code under the Apache
License version 2.0 and the rest, Linux kernel changes, under the GNU General Public
License version 2.
You will be glad to know that you can start your Android application development on
either of the following operating systems:
 Microsoft Windows XP or later version.
 Mac OS X 10.5.8 or later version with Intel chip.
 Linux including GNU C Library 2.7 or later.
Second point is that all the required tools to develop Android applications are freely
available and can be downloaded from the Web. Following is the list of software's you
will need before you start your Android application programming.
 Java JDK5 or JDK6
 Android SDK
 Eclipse IDE for Java Developers (optional)
 Android Development Tools (ADT) Eclipse Plugin (optional)
Here last two components are optional and if you are working on Windows machine then
these components make your life easy while doing Java based application development.
So let us have a look at how to proceed to set the required environment.

2.2 PROJECT DESCRIPTION:


This project develops a system to monitor the daily bus pick-up/drop-off of
Students to enhance the overall safety of the daily bus transportation to/from school. The
system aims at detecting when a Student boards or leaves the bus and issue an alert
message to reduce the parent concerns about using the bus for the daily transport of their
student without being lost or forgotten. The system developed here sends the message to
the parents along with the stop location, time at which student boarded into or exited

13
from the bus. The data also gets updated into the web server. Web server even displays
the data regarding the total number of students travelling in the bus, driver and bus
information along with the fuel level at each and every stop, which can be accessed from
anywhere by connecting to internet.

MODULES:
1 StudentTracker App
2 School Admin
3 Bud Coordinator
4 Parent
5 SMS Alert
MODULE DESCRIPTION:
STUDENT TRACKER APP
This App allows you to tracks your children location in an intelligent
manner providing you the appropriate information at the right time. Apart
from providing Real Time and Historical tracking on the WEB, it provides
real time alerts, events and scheduled reports thru SMS on your mobile
phone.
SCHOOL ADMIN
Manage users, students, routes, pick-up points, send messages to drivers, bus
attendants and parents, manage billing and invoice, create and manage
scheduled instant trips
BUS COORDINATOR
Search students by name or number, view Estimated Time of Arrival (ETA),
obtain attendance and pick up details, track real-time location, obtain pick
up/drop updates. Record student attendance for drivers, review boarding or
unboarding details, receive messages from transport managers and other
relevant authorities , update pickup point or drop point in case of relocation.
14
PARENT MODULE
Check the student's bus route in the Google map at any time, Track the
school bus in real-time, receive notification when students board or unboard
the bus, view 3 days’ notification in the notification menu, request pick up
point change, view attendance details, communicate with the school bus
authority.

SMS ALERT
SMS Alerts to parents/dear ones: During pick-up:
• SMS Alert 1 - Bus Approaching alert. An SMS alert is sent to the
parents/designated mobile number before the bus reaches the pickup
point. The SMS timing can be customized. This would alert them to
get ready to leave their homes to the Bus Stop.
• SMS Alert 2 - On Board alert. An SMS alert is sent to the parent's
/designated mobile number when the student/staff is on board the bus.
• SMS Alert 3 - Alight from the bus alert. An SMS alert is sent to the
parent's /designated mobile number when the student/staff is Alight
the bus at school.
• SMS Alert 4 - Reached school alert. An SMS is sent to the
parent's/designated mobile number when the student/staff inter the
school gate.
During drop:
• SMS Alert 1 - Left school alert. An SMS is sent to the
parent's/designated mobile number when the student/staff exit from
the school gate.
• SMS Alert 2 - On Board alert. An SMS alert is sent to the parent's
/designated mobile number when the student/staff is on board the bus.
15
• SMS Alert 3 - Bus Approaching alert. An SMS alert is sent to the
parent's mobile /designated before the bus reaches the dropping point.
The SMS timing can be customized.
• SMS Alert 4 - Alight alert. An SMS alert is sent to the parent's mobile
/designated mobile number after the student alights the bus.

16
17
2.3 DATA FLOW DIAGRAM

18
3 SYSTEM ANALYSIS

3.1 FUNDAMENTAL DESIGN CONCEPTS

System design is a “How to” approach to the creation of a new system.


System design goes through 2 phases. They are
1. Logical Design
2. Physical Design
Logical design reviews the present physical system, prepares input
and output specification, makes edit security and control specification.
Physical design maps out the details of the physical system, plans the
system implementation devise a test and implementation plan.

3.2 Design Process

Input Design:
Input design is the process of connecting the user-originated inputs
into a computer to used format. The goal of the input design is to make the
data entry logical & free from errors. Errors in the input database controlled
by input design.
This application is being developed in a user-friendly manner. The
forms are being designed in such a way that during the processing the cursor
is placed in the position where the data must be entered. An option of
selecting an appropriate input from the values of validation is made for each
of every data entered. Help managers are also provided whenever the user
entry to a new field to that he/she can understand what is to be entered.

19
Whenever the user enter an error data, error manager displayed user can
move to next field only after entering the correct data.

Output Design
The output form in the system is either by screen or by hard copies.
Output design aims at communicating the results of the processing of the
users. The reports are generated to suit the needs of the users. The reports
have to be generated with appropriate levels.

Code Design
The main purpose of performing code design is to simplify the
coding to achieve better coding. The loading is prepared in such a way that
the internal procedures are more meaningful. Validation manager is
displayed for each column.

The loading of the variable is done in such a way that the other
one who has developed the package can understand its purpose.

Development Approach

To transform the “art” of system analysis and design in to an


“engineering type” discipline. The feeling that there has to be a more clearly
defined logical method for developing a system that meets user requirements
has led to new techniques and methodologies that fundamentally attempt to
the following:

 Improve productivity of analyst and programmers.

 Improve documentation and subsequent maintenance


and enhancements

 Cut down drastically on cost overruns and delays.

20
 Improved communication among the user, analyst,
designer and programmer.

 Simplify the design by segmentation.

TOP- DOWN APPROACH:

A design is said to be top – down if it consist of a


hierarchy of modules, with each module having a single entry and a single
exit subroutine. The primary advantages of this design are as follows:

1. Critical interfaces are tested first.

2. Early version of the design, though incomplete, is useful


enough to resemble the real system.

3. The procedural characteristics define the order that


determines processing

21
4 SYSTEM TESTING

Why Testing
Testing is the analysis of source/executable code and the controlled
execution of executable code to reveal defects that compromise a Java
program's executable integrity. Defects often lead to erratic behavior or
the premature termination of an executing program.
The Software testing process commences once the program is
created and the documentation and related data structures are designed.
Software testing essential for correcting errors. Otherwise the program or
the project is said to be not complete. Software testing is a process of
checking whether the developed system is working according to the
original objectives and requirements. The system should be tested
experimentally with test data so as to ensure that the system works
according to the required specification. Software testing is a critical
element of software quality assurance and represents the ultimate review
of specification, design and coding. After the coding phase, computer
programs are available that can be executed for testing purposes. This
implies that testing not only has to uncover errors introduced during
coding, but also errors introduced during the previous phases.

Software Testing Fundamentals


Testing presents an interesting task for software engineers. Earlier in
the software process, the engineer attempts to build software from an
abstract concept to a tangible implementation.. The engineer creates the
series of test cases that are intended to “demolish” the software that has been
build.

22
To test any program we need to have a description of its expected
behavior and a method of determining whether the observed behavior
conforms to the expected behavior for this we need a test -oracle. A test-
oracle is a mechanism; different from the program itself that can be used
to check the correctness of the output of the program for the test cases.
Human-oracle is human beings who mostly compute by hand what the
output of the program should be. Human-oracle can make mistake. So
test -oracle is defined in the tool to automate testing and avoids mistakes.

Testing objectives
The testing objectives are summarized in the following three steps
 Testing is a process of executing a program with the intent of
finding an error.
 A good test case is one that has high probability of finding an as-
yet undiscovered error.
 A successful test is one that uncovers an as yet undiscovered error.

Testing principles
All the tests should be traceable to customer requirement.

 Tests should be planned long before testing begins that is the test
planning can bring as soon as the requirement model is complete.
 Testing should begin “in the small” and progress towards testing
“in the large”. The first planned and executed generally focus on
individual program modules. As testing progresses, testing shifts
focus and attempt to find errors in integrated clusters of modules
and ultimately in the entire system.

23
Exhaustive is not possible
The number of path permutations for even a moderately sized
program is exceptionally large. For this reason, it is possible to execute
every combination of paths during testing. It is possible, however, to
adequately cover program logic and to ensure that all conditions in the
procedural design have been exercised. To be more effective, testing has
highest probability of finding errors.

The following are the attributes of the good test:


 A good test has high probability of finding an error.
 A good test is not redundant.
 A good test should be “best of breed”.
1. A good test should be neither too simple nor too
complex.

TESTING STRATEGIES
System testing is stage of implementation which is aimed at ensuring
that the system works accurately and efficient before live operation
commences. Testing is vital to the success of the system. System testing
makes a logical assumption that if all the parts of the system are correct, the
goal will be successfully achieved.

The testing steps are:


 Unit Testing
 Integration Testing
 Validation Testing
 Output Testing
 User acceptance Testing

24
UNIT TESTING
Unit testing focuses verification efforts on the smallest unit of software
design, the module. This is also known as “Module Testing”. The modules
are tested separately. This testing is carried out during programming stage
itself. Unit testing specifies paths in the module’s control structure to ensure
complete coverage and maximum error detection. This test focuses on each
module individually, ensuring that it functions properly as a unit.

According to the project, the given java source code is tested for
used and unused variables, different java source codes are taken as input
and variables are listed within each and every class and tested for their
correctness.
The number of loops in the given java source code are checked for
the correctness of line numbers. Memory consumed by the Java source
code during the compilation and execution of coding is found.

INTEGRATION-TESTING
Data can be lost across the interface, one module can have an adverse
effect on others. Integration testing is a systematic testing for constructing
program structure. While at the same time conducting tests to uncover errors
associated within the interface. Integration testing addresses the issues
associated with the dual problems of verification and program construction.
After the software has been integrated a set of high order sets are conducted.
The objective is to take unit tested modules and combine them test it as a
whole. Thus, in the integration-testing step, all the errors uncovered are
corrected for the next testing steps.

25
VALIDATION TESTING:
The outputs that come out of the system are as a result of the inputs
that go in to the system. So, for the correct and the expected outputs the
inputs that go in to the system should be correct and proper. So this
testing is done to check if the inputs are correct and they are validated
before it goes in to the system for processing.

OUTPUT TESTING
After performing the validation testing, the next step is output testing
of the proposed system, since no system could be useful if it does not
produce the required output in the specified format. Asking the users about
the format required by them tests the outputs generated or displayed by the
system under consideration. Hence the output format is considered in 2-
ways-one is on screen and another is printed format.

SYSTEM TESTING
A system testing does not test the software but rather the integration
of each module in the system. It also tests to find discrepancies between the
system and its original objective, current specifications, and system
documentation.

System testing is actually a series of different tests whose primary


purpose is to fully exercise the computer-based system. Although each test
has a different purpose, all work to verify that system elements have been
properly integrated and perform allocated functions.

26
PERFORMANCE TESTING
Performance testing is designed to test the run-time performance of
software within the context of an integrated system. It requires both
hardware and software instrumentation. It is often necessary to measure
resource utilization in an exacting fashion.

PROCEDURE TESTING

Determine the clarity of the documentation on operation and the user


of the system by having users do exactly what manual request. In case of this
project work system testing and unit testing are mainly used.

TEST PLAN

Before going for testing, first we have to decide the type of testing. For
this impact system unit testing is carried out. Before going for testing, the
following things are taken into consideration.
 To ensure that information properly flows in and out of the
program.
 To find out whether the local data structures maintains its integrity
during all steps in an algorithm execution.
 To ensure that the module operates properly at boundaries
established to limit or restrict processing.
 To find out whether all statements in the module have been
executed at least once.
 To find out whether error-handling paths are working correctly or
not.

27
CHECK FOR VALIDATIONS
UNIT TESTING
Unit testing focuses verification effort on the smallest unit of
software design (i.e.), the module. The unit testing is always white-box
oriented and the step can be conducted in parallel for modules.

PREPARATION OF TEST DATA


Taking various kinds of test data does the above testing.
Preparation of test data plays a vital role in the system testing. After
preparing the test data the system under study is tested using that test
data. While testing the system is by using test data errors are again
uncovered by using above testing steps and corrections are also noted for
future use.

USING LIVE TEST DATA


Live test data are those that are actually extracted from
organization files. After a system is partially constructed, programmers
or analysts often ask users to key in a set of data from their normal
activities. Then, the systems person using this data as a way to partially
test the system. It is difficult to obtain live data in sufficient amounts to
conduct extensive testing. And, although it is realistic data that will show
how the system will perform for the typical processing requirement,
assuming that the live data entered are in fact typical, such data generally
will not test all combinations or formats that can enter the system. This
bias toward typical values then does not provide a true systems test and
in fact ignores the cases most likely to cause system failure.

28
QUALITY ASSURANCE
Quality assurance consisting of the auditing and reporting
functions of management for the system. The goal of quality assurance is
to provide management with the data necessary to be informed about the
product quality, thereby gaining insight and confidence that product
quality is meeting its goals. For the confirmation of quality of the
application the functional and performance requirements and
characteristics are documented and reviewed a per the management
decision.

GENERIC RISKS
The risk is an unwanted event that has negative consequences.
Project will engage in risk management to understand and control the risk
on their projects. We can distinguish risks from other project events by
looking for three things.
 A loss associated with the event
 The likelihood that the event will occur
 The degree to which we can change the outcome.

SYSTEM IMPLEMENTATION
Implementation is the stage in the project where the theoretical
design is turned into working system. This is the most crucial stage in
achieving a new successful system and in giving confidence of the new
system for the users that it will work efficiently. Implementation of
software refers to the final installation of the package in its real
environment, to the satisfaction of the intended users and the operations

29
of the system. In many organizations someone who will not be operating
it, will commission the software development project. The people who
are not sure that the software is meant to make their job easier. In the
initial stage they doubt their software but we have to ensure that the
resistance does not build up as

 The active user must be aware of the benefits of using the


system.
 Their confidence in the software is build up.
 Proper guidance be imparted to the user so that he is
comfortable in using the application.

IMPLEMENTATION PROCEDURES
The implementation procedures involves careful planning,
investigation of the current system and the constraints on implementation,
design of methods to achieve the change over, an evaluation of change over
methods. Initially a preliminary implementation plan is prepared to schedule
and manage many different activities that must be completed for a successful
system implementation. The preliminary plan serves as a basis for the initial
scheduling and assignment of resources to important implementation
activities. The preliminary plan has been updated throughout the
implementation phase in order to reflect the current state. A complete
implementation plan includes the following items: selection of quality
personnel ,system training plan, system test plan, equipment installation pan,
system conversion plan, overall implementation plan. Apart from planning
major task of preparing the implementation procedures are education and

30
training to the users. The more complex the system being implemented, the
more involved be the system’s analysis and design effort required just for
implementation. An implementation coordinating committee based on
polices of individual organization is appointed. The implementation process
begins with preparing a plan for implementation of the system. According to
this plan the activities have been carried out; discussions have been made
regarding the equipment and resources. According to the above plan the
necessary equipment has to be acquired to implement the new system.

USER TRAINING
To achieve the objective and benefits expected from computer based
system it is essential for the people who will be involved then in
understanding the overall system and its effect on the organization, and in
being able to carry out effectively their specific tasks. As system become
more complex the need for education and training is more and more
important. Training the user is one of the most important jobs of the
developer. User are informed of hoe the whole system works its objectives,
new documentation, files etc. for this purpose system and user manuals were
prepared. In system manuals, details about the system, which were used to
develop, were specified. In user manuals, data flow diagram, menu and
screen formats are given. The user for the system are shown the screens and
they are thought how to operate the system.

SYSTEM MAINTENANCE
The maintenance phase of the software cycle is the time in which a
software product performs useful work. After the system is successfully
implemented, it should be maintained in a proper manner. System

31
maintenance is an important aspect in the software development life cycle.
The need for system maintenance is for it to make adaptable to the changes
in the environment. There may be social, technical and other environmental
changes that affect the system, which is being implemented. Software
product enhancements may involve providing new functional capabilities,
improving user displays and mode of interaction, upgrading the performance
characteristics of the system. Only through proper system maintenance
procedures, the system can be adopted to cope up with these changes. This
project is also requires maintenance on the system side. These should be
analyzed for the correctness of its interaction among themselves.

Utmost in the software maintenance is an understanding of program


variables. The software maintenance can not be performed without a
complete understanding of program variables. PAT processes to locate and
highlight the variables used in the source code. This process is extended to
all variables. PAT output includes system configuration details variables
impact analysis and can save valuable resources (time).

32
CONCLUSION

This project is One-of-a-kind school transport management


software, the App offers a comprehensive solution for safe and
dependable travel. Which enables parents, school authorities, for
school vehicle tracking and vehicle drivers / coordinators to monitor
in real time the movement of children / students and staff in school
vehicles

The system satisfies the following objectives:

 The system is a user-friendly package to make the user


comfortable to use and to generate reports.
 The system satisfies the needs of the user in reasonable time.
 Care is taken to reduce the user input data wherever it is
possible to generate data from the existing database and
with vital input data.
 The anticipated requirements of the end user can be satisfied
through queries.

33
SCOPE FOR FUTURE ENHANCEMENT

Future plans include extending the system to cover more cases.


Other sensors can be added for more rule monitoring. For example a
smoke detection sensor can be used to monitor if the driver is smoking
while driving.

34
APPENDIX

SCREENSHOTS:

SOURCE CODE:
BIBLIOGRAPHY

1. F. Burks, “Ethical Issues & Employer Monitoring Internet Usage”.


Houston Chronicle, Chron.com, 2010. Available online (last visit 8,
2015): http://smallbusiness.chron.com/ethicalissues-employer-
monitoring-internet-usage-12617.html

2. Interguards: Employee Monitoring Software: Online (Last visit 8,


2015): http://www.interguardsoftware.com/

3. Activtrak : Free way to see who is doing what And for how long:
online (last visit 8, 2015): http://activtrak.com/

4. Mobile Spy: Smartphone monitoring software: online (last visit 8,


2015): http://www.mobile-spy.com/employeemonitoring.html

5. XNSPY: Employee Monitoring Software: online (last visit 8, 2015):


http://xnspy.com/employee-monitoring.html

6. J. M. Mishra, and S. M. Crampton, "Employee monitoring: Privacy in


the workplace?" SAM Advanced Management Journal, Vol 63 (3),
1998. Available online (Last visit 8, 2015):
http://www.highbeam.com/doc/1G1-21160636.html

35
WEBSITES:
 http://www.codeproject.com
 http://www.aspdotnetheaven.com
 http://www.a1vbcode.com
 http://www.support.microsoft.com
 http://www.startaspdotnet.com
 http://www.c-sharpcorner.com
 http://www.dotnetspider.com

36

You might also like