INTRODUCTION:
The project entitled as “College Bus Management System” is mainly developed
to the transport details of college using php as front end and SQL as back end.
The purpose of these development included in this project is to replace the
original management system with a computerized system. This system
describes the whole details of bus, driver, student, staff management and fee
details based on the student destination place. In the bus details the total
number of bus, services and spare parts are described.
Bus maintenance is necessary to know the condition of the bus. Route
details are specified separately. Student details are registered at the
management to know student’s travel in the college bus is maintained. Only
registered students are allowed to travel in the college bus. Every student
must know starting time of the college bus from source place. Trip
management is maintained by the administrator to know how many buses go
for particular places and total number of buses takes off from college by day
to day process. Fee payment is maintained by the office administrator.
Student and staff attendance in college bus is handled by one of the student
in same bus. At last the report generate for the total process. The Bus
Management System can be using a username and password. It is accessible
either by an administrator or receptionist. Only they can add data into the
database.
1.1 Goal Of Project
The main objective of this system is to reduce the consumption of time
during maintaining the records of college Transport management. Separate
divisions are provide to maintain the records of Student, faculty, Roots, diversion,
etc.
Our software will overcome all these Safe, efficient, reliable, and sustainable
movement of persons and goods over time and space.
1.2 SCOPE OF THE PROJECT
Adding new data to database.
Saving data in database.
Retrieving data from the database.
Search existing data from the database.
Immediate printing of receipt and bus passes.
2.LITERATURE SURVEY
Transport is one of the important infrastructures and mean of concern for the
growth of any country.
The problems that arise due to unconditional transportation are uncertainity
of waiting time due to traffic jam and any other issue live abnormal conditioning.
Now a day the safety and privacy becomes main concern for private and public
vehicles while travelling.
2.1 EXISTING SYSTEM
Today all the work at the time of taking transport services of the students is done
manually by ink and paper, which is very slow and consuming much efforts and
time.
Since the numbers of students is growing, and management has to handle records
of all the students, it is facing a little bit problems in maintaining the records of
studentsand other details.
It is required to Design of a Computerized College Transport Management System,
to speed up and make it easy to use system.
PROPOSED SYSTEM
In our proposed system we have the provision for adding the details of the
students.
Another advantage of the system is that it is very easy to edit the details of
the student and delete a student when it found unnecessary. Here is facility of find
root, direction, individual profile facility is also provided. Online updating and
changes is possible.
By developing the system, we can attain the following facilities.
Easy to handle and feasible.
Easy to operate.
Cost reduction.
Fast and convenient.
2.2 FEASIBILITY STUDY
In other words the objective of the present college Transport management
software are:
Simple database is maintained.
Easy operation for the operator of the System.
Faster execution & maintaining the records.
User interface are user friendly and attractive, it takes very less time for
the operator to get use-to with the system.
2.3 TOOLS AND TECHNOLOGIES USED
2.3.1. C++:
C++ (pronounced "see plus plus") is a statically typed, free-form, multi-
paradigm, compiled, general-purpose programming language. It is regarded as an
intermediate-level language, as it comprises both high-level and low-
level language features. Developed by Bjarne Stroustrup starting in 1979 at Bell
Labs, C++ was originally named C with Classes, adding object oriented features,
such as classes, and other enhancements to the C programming language The
language was renamed C++ in 1983,as a pun involving the increment operator
C++ is one of the most popular programming languages and is implemented on a
wide variety of hardware and operating system platforms. As an efficient compiler
to native code, its application domains include systems software, application
software, device drivers, embedded software, high-performance server and client
applications, and entertainment software such as video games. Several groups
provide both free and proprietaryC+
+ compiler software,includingthe GNUProject, LLVM, Microsoft Intel andEmbarc
adero Technologies. C++ has greatly influenced many other popular programming
languages, most notably C# and Java.
C++ is also used for hardware design, where the design is initially described in C+
+, then analyzed, architecturally constrained, and scheduled to create a register-
transfer level hardware description language via high-level synthesis.
The language began as enhancements to C, first adding classes,then virtual
functions, operator overloading, multiple inheritance, templates andexception
handlingamong other features. After years of development, the C++ programming
language standard was ratified in 1998 as ISO/IEC 14882:1998. The standard was
amended by the 2003 technical corrigendum, ISO/IEC 14882:2003. The current
standard extending C++ with new features was ratified and published by ISOin
September 2011 as ISO/IEC 14882:2011.
2.3.2 OBJECT ORIENTED PROGRAMMING:
Object-oriented programming (OOP) is a programming paradigm based on the
concept of "objects", which can contain data, in the form of fields (often known
as attributes), and code, in the form of procedures (often known as methods). A
feature of objects is an object's procedures that can access and often modify the
data fields of the object with which they are associated (objects have a notion of
"this" or "self"). In OOP, computer programs are designed by making them out of
objects that interact with one another. OOP languages are diverse, but the most
popular ones are class-based, meaning that objects are instances of classes, which
also determine their types.
2.3.2 CHARACTERISTICS OF OBJECT ORIENTED PROGRAMMING
Object: Objects are basic run-time entities in an object oriented system, objects are
instances of a class these are defined user defined data types.
When a program is executed the objects interact by sending messages to one
another.
Each object contains data and code to manipulate the data. Objects can interact
without having to know details of each others data or code, it is sufficient to know
the type of message accepted and type of response returned by the objects.
Class: Class is a blueprint of data and functions or methods. Class does not take
any space.
Class is a user defined data type like structures and unions in C.
By default class variables are private but in case of structure it is public. in above
example person is a class.
Encapsulation and Data abstraction: Wrapping up(combing) of data and
functions into a single unit is known as encapsulation. The data is not accessible to
the outside world and only those functions which are wrapping in the class can
access it. This insulation of the data from direct access by the program is called
data hiding or information hiding.
Data abstraction refers to, providing only needed information to the outside world
and hiding implementation details. For example, consider a class Complex with
public functions as getReal() and getImag(). We may implement the class as an
array of size 2 or as two variables. The advantage of abstractions is, we can change
implementation at any point, users of Complex class wont’t be affected as out
method interface remains same. Had our implementation be public, we would not
have been able to change it.
Inheritance: inheritance is the process by which objects of one class acquire the
properties of objects of another class. It supports the concept of hierarchical
classification. Inheritance provides re usability. This means that we can add
additional features to an existing class without modifying it.
Polymorphism: polymorphism means ability to take more than one form. An
operation may exhibit different behaviors in different instances. The behavior
depends upon the types of data used in the operation.
C++ supports operator overloading and function overloading.
The process of making an operator to exhibit different behaviors in different
instances is known as operator overloading.
Function overloading is using a single function name to perform different types of
tasks.
Polymorphism is extensively used in implementing inheritance.
Dynamic Binding: In dynamic binding, the code to be executed in response to
function call is decided at runtime. C++ has virtual functions to support this.
Message Passing: Objects communicate with one another by sending and
receiving information to each other. A message for an object is a request for
execution of a procedure and therefore will invoke a function in the receiving
object that generates the desired results. Message passing involves specifying the
name of the object, the name of the function and the information to be sent.
2.3.3ADVANTAGES OF OOPS
advantages of object-oriented programming include:
Improved software-development productivity: Object-oriented
programming is modular, as it provides separation of duties in object-based
program development. It is also extensible, as objects can be extended to
include new attributes and behaviors. Objects can also be reused within an
across applications. Because of these three factors – modularity,
extensibility, and reusability – object-oriented programming provides
improved software-development productivity over traditional procedure-
based programming techniques.
Improved software maintainability: For the reasons mentioned above,
objectoriented software is also easier to maintain. Since the design is
modular, part of the system can be updated in case of issues without a need
to make large-scale changes.
Faster development: Reuse enables faster development. Object-oriented
programming languages come with rich libraries of objects, and code
developed during projects is also reusable in future projects.
Lower cost of development: The reuse of software also lowers the cost of
development. Typically, more effort is put into the object-oriented analysis
and design, which lowers the overall cost of development.
Higher-quality software: Faster development of software and lower cost of
development allows more time and resources to be used in the verification of
the software. Although quality is dependent upon the experience of the
teams, objectoriented programming tends to result in higher-quality
software.
2.3.4 Dev++:
Dev-C++ is a free full-featured integrated development environment (IDE)
distributed under the GNU for programming in C and C++. It is written in Delpli.
It is bundled with, and uses, the MinGW or TDM-GCC 64bit port of the GCC as
its compiler. Dev-C++ can also be used in combination with Cygwin or any other
GCC-based compiler.
Dev-C++ is generally considered a Windows-only program, but there are attempts
to create a Linux version: header files and path delimiters are switchable between
platforms.
2.4 HARDWARE AND SOFTWARE REQUIREMENTS
Hardware Requirements:
• Hardware - Pentium
• Speed - 1.1GHz
• RAM - 1GB
• Hard Disk - 20 GB
• Floppy Drive - 1.44 MB
• Key Board - Standard Windows Keyboard
• Mouse - Two or Three Button Mouse
Software Requirements:
• Operating System - Windows
• Technology - c++(object oriented programming)
• IDE - Dev++
3.SOFTWARE REQUIREMENTS SPECIFICATION
3.1 FUNCTIONAL REQUIREMENTS
The main modules involved in this system are:
• Login
• Forms
• Reports
• Announcement
3.1.1 Login
• Login module is used to check whether the user is an authorized
person to use the system or not. For this the user should give the
correct user name and password.
• The different types of users are
Admin
Account
Student
Employee/Faculty
3.1.2 Forms
This module consists of the following sub modules
• Student/Faculty Registration Form
• Student/Faculty ID Form
• Student/Faculty Detail Form
• Account Detail Form
3.1.3 Reports
All the above mentioned data are stored in the back end and can be
retrieved as reports with filtering options.
The Following are the reports can be taken from this system
• Student Report
• Faculty Report
• Account Detail Report
3.2 NONFUNCTIONAL REQUIREMENTS
• Efficiency Requirement
When college transportation system implemented students/staffs
are use this system in efficient manner.
• Reliability Requirement
The system should provide a reliable environment to both
students and staffs.
• Usability Requirement
This application is designed for user friendly environment and
ease of use.
• Implementation Requirements
Implementation of the system using c++ and Dev++ Software.
4.DATAFLOW DIAGRAM
Data Flow Diagram Is A Graphical Tool Used To Describe And Analyze
The Movement Of Data Through A System, Where The System Is Modeled Using
The Data Transformation Which Takes Place As It Is Processed. Data Flow
Diagram Is The Central Tool And The Basis From Which Other Components Are
Developed. The Transformation Of Data From Input To Output Through Process
May Be Described Logically And Independently Of The Physical Components
Like Computers, File Cabinet, Disk Units Etc Associated With The System.
A Data Flow Diagram Might Represent Data Flow Between Individual
Statements Or Block Of Statements In A Routine, Data Flow Between Sequential
Routines, Data Flow Between Concurrent Processes, Or Data Flow In A
Distributed Computing System.
5.IMPLIMENTATION
Code:
6.SNAPSHOTS
7.SOFTWARE TESTING
7.1.INTRODUCTION
Software testing is an investigation conducted to provide stakeholders with
information about the quality of the software product or service under test.
Software testing can also provide an objective, independent view of the software to
allow the business to appreciate and understand the risks of software
implementation. Test techniques include the process of executing a program or
application with the intent of finding software bugs (errors or other defects), and
verifying that the software product is fit for use.
7.2.PURPOSE
Software testing involves the execution of a software component or system
component to evaluate one or more properties of interest. In general, these
properties indicate the extent to which the component or system under test:
meets the requirements that guided its design and development,
responds correctly to all kinds of inputs,
performs its functions within an acceptable time,
it is sufficiently usable,
can be installed and run in its intended environments, and
achieves the general result its stakeholders desire.
6.3.TESTING METHODS
Unit Testing
Testing of an individual software component or module is termed as Unit
Testing. It is typically done by the programmer and not by testers, as it requires a
detailed knowledge of the internal program design and code. It may also require
developing test driver modules or test harnesses.
System Testing
Under System Testing technique, the entire system is tested as per the
requirements. It is a Black-box type testing that is based on overall requirement
specifications and covers all the combined parts of a system
Integration Testing
Integration testing is a level of software testing where individual units are
combined and tested as a group. the purpose of this level of testing is to expose
faults in the interaction between integrated units. test drivers and test stubs are used
to assist in integration testing.
Acceptance Testing
Acceptance testing is a level of software testing where a system is tested for
acceptability. the purpose of this test is to evaluate the system’s compliance with
the business requirements and assess whether it is acceptable for delivery.
White-box testing
White-box testing (also known as clear box testing, glass box testing,
transparent box testing, and structural testing) verifies the internal structures or
workings of a program, as opposed to the functionality exposed to the end-user. In
white-box testing, an internal perspective of the system (the source code), as well
as programming skills, are used to design test cases. The tester chooses inputs to
exercise paths through the code and determine the appropriate outputs. This is
analogous to testing nodes in a circuit, e.g., in-circuit testing (ICT).
Black-box testing
Black-box testing (also known as functional testing) treats the software as a
"black box," examining functionality without any knowledge of internal
implementation, without seeing the source code. The testers are only aware of what
the software is supposed to do, not how it does it.
8.CONCLUSION
College bus management system is generally based on regular operation
for college bus details can be stored in systematic and maintained in name wise.
Bus information system is software which will be Inform about the transport
facility in college and Institute. Bus information will provide the detail about the
bus student and manage the contents about the system. The data can be retrieved
easily. The interface is very user-friendly. The data are well protected for personal
use and makes the data processing very fast and find the bus student information
quickly according to class and name both details.
So there should be a proper Bus Management System. So that all the
activities procedure can be carried out effectively and security manner.
9. FUTURE ENHANCEMENT
Future Development Scope Usage of applets.