CHAPTER ONE 1.0 INTRODUCTION: This introductory chapter sets the frame for the research. It begins with an introduction to the study and looks at the background of the project. It goes further to identify the research problem, the research objectives and questions, scope of the system and project organization. 1.1 BACKGROUND OF THE PROJECT The History of Traffic Management System started in 1972 to centrally control the freeway system in the Twin Cities metro area. The Traffic Management System aims to provide motorists with a faster, safer trip on metro area freeways by optimizing the use of available freeway capacity, efficiently managing incidents and special events, providing traveler information, and providing incentives for ride sharing. (The Minnesota Department of Transportation) Cities and traffic have developed hand-in-hand since the earliest large human settlements. The Same forces that draw inhabitants to congregate in large urban areas also lead to sometimes intolerable levels of traffic congestion on urban streets. Cities are the powerhouses of economic growth for any country. According to Bartone et al. (1994), around eighty percent of Gross Domestic Product (GDP) growth in developing countries is expected to come from cities. For the purpose of economic activities, it is imperative to facilitate movements. Transportation system provides the way for movements and medium for reaching destinations. Inadequate transportation system hampers economic activities and creates hindrances for development. In most of the developing countries which are overburdened by rising population and extreme poverty, increasing economic activities and opportunities in the cities result in rapid increase in urban population and consequent need for transportation facilities. Authorities in these countries often fail to cope with the pressure of increasing population growth and economic activities in the 1 cities, causing uncontrolled expansion of the cities, urban sprawl, traffic congestion and environmental degradation. Transportation and property are important in physical and economic development of towns and cities all over the world. Property and land values tend to increase in areas with expanding transportation networks, and increase less rapidly in areas without such improvements. Rapid and continued rise in housing and land prices are expected in cities with transportation improvements and rapid economic and population growth (Goldberg, 1970). Man, nations, regions and the world would be severely limited in development without transportation, which is a key factor for physical and economic growth (Oyesiku, 2002). Transportation systems and land use are interdependent. Indeed findings of earlier studies indicate compelling and consistent connections amongst them (Ewing and Cervero, 2001; Polzin, 2004). According to Bailey, Mokhtarian, and Littlel (2008), transportation route is part of distinct development pattern or road network and mostly described by regular street patterns as an indispensable factor of human existence, development and civilization. The route network coupled with increased transport investment result in changed levels of accessibility reflected through Cost Benefit Analysis, savings in travel time, and other benefits. These benefits are noticeable in increased catchment areas for services and facilities like shops, schools, offices, banks, and leisure activities. Road networks are observed in terms of its components of accessibility, connectivity and Traffic density, level of service, compactness and density of particular roads. Level of service is a measure by which the quality of service on transportation devices or infrastructure is determined, and it is a holistic approach considering several factors regarded as measures of traffic density and congestion rather than overall speed of the journey (Mannering, Walter, and Scott, 2004). Access to major roads provides relative advantages consequent upon which commercial users locate to enjoy the advantages. Modern businesses, industries, trades and general 2 activities depend on transport and transport infrastructure, with movement of goods and services from place to place becoming vital and inseparable aspects of global and urban economic survival. Developments of various transportation modes have become pivotal to physical and economic developments. Such modes include human porterage, railways, ropeways and cableways, pipelines, inland waterways, sea, air, and roads (Said and Shah, 2008). Sub-Saharan Africa, with few exceptions, is unique in that the roads that have been created are inefficient and insufficient to spawn and sustain growth, and require not only substantial upgrading and rehabilitation, but also substantial new road construction. Many nations that have not had the opportunity to fully develop road infrastructure systems are now discovering the standards and methods from neighboring or western countries which they have been relying upon are not altogether applicable to their circumstances (Arumala and Akpokodje, 1987). This inapplicability stems from differing climatic circumstances (heavy rain events), complex and deep stratigraphy of soils, highly plastic and highly decomposed materials characteristic of tropical/sub-tropical environments, lack of aggregate/high quality materials, and large (and increasing) transport distances of materials to the construction site. There is also a difference in terms of need that is not addressed in the standard manuals and application guidelines of other countries. Transport is critical to economic development, both low volume/rural roads and major arterials, and there is a direct relationship between a countries economic prosperity and kilometers of paved roads (Owen, 1964; Queiroz and Gautam, 1992). While there are many papers and reports on the merits of the rural road sector (World Bank’s sub-Saharan African Transport Policy being a major source; World Bank, 1996)) and the fact that allseason pass ability and lack of basic access to rural communities impedes economic growth, there is also a need to further develop and rehabilitate the major trunk system within these countries to be able to sustain and accommodate economic growth brought about by improved rural mobility 3 1.2 STATEMENT OF THE PROBLEM Traffic congestion has been one of the fundamental problems faced by modern cities since the wide usage of automobiles. Just a normal few minutes trip to the convenience store may take up to half an hour due to traffic jam or slowdown. According to the police, congestions are actually the causes of some issues like road rage, road bullies and major accidents. The small road capacity is also one of the contributing factors. As the number of private cars increases greatly over the years, traffic congestion occurs when the needed road capacity is not fulfilled. Simple improvements of the road infrastructure can easily solved this problem. Since congestion occurs frequently in the cities, local government municipal can consider passing laws on restricting the number of car owned in a family. This method is in fact, workable and effective. 1.3 PURPOSE OF THE PROJECT The purpose of Traffic Management System is to improve transport operations and transport services profitability, reduce traffic jams and fatalities, provide sufficient driving training, maintain road infrastructure, and maintain traffic law enforcement. 1.4 PROJECT OBJECTIVES: 1.4.1 Main Objectives The main objective of this system is to provide convenience to the management team by developing a digital system to make processes regarding Traffic Management easier. 1.4.2 Specific Objectives Here are some of specific objectives of the project: 1. To provide direct access to Drivers through web application system. 2. To view current status of all cars such as Targo numbers, tax or car information. 3. To decrease Speed car as to avoid accidents and Jams. 4 1.5 RESEARCH QUESTIONS a. How to provide convenience to the management team by developing a digital system to make processes regarding Traffic Management easier? b. How to provide direct access to drivers? c. How can the traffic officials search and update the information included in the system? 1.6 THE SCOPE OF THE SYSTEM 1.6.1 Geographical Scope This study was investigated the Traffic Management System in Mogadishu-Somalia 1.6.2 Content Scope The study was focused on how Traffic work and their performances. 1.6.3 Time Scope This study was conducted March-June, 2017 1.7 SIGNIFICANCE OF THE PROJECT This study will provide better understanding about the projects and policies of the Traffic Management System. It is important to the sense that is explores the major problems encountered by the Traffic Officials, Motorists and the Public. 1.8 PROJECT ORGANIZATION: Chapter One: discuss on introduction of this project. This chapter includes Introduction, Background, Problem statements, purpose of the study, Objectives of study, Research Questions, Scope of the study, Significance of the study and Organizational project. Chapter Two: is literature review and related work that will explain Introduction, Concepts Opinions or Ideas from Authors/Experts, previous work / existing system, Gap and Chapter summary. 5 Chapter Three: Requirement Analysis: we will be discussed the proposed approach and entire draft of the project that taken in the development of this project such as: introduction, User requirement analysis, preliminary investigation, Organizational profile, current system, limitation of the current system, Data gathering, DFD, UML, problem statement, Feasibility study and User requirement specification. Chapter Four: System Design: this chapter will be discussed how the system design that include: Introduction, design goal, Database design, Entity relationship diagram, Data dictionary, Table design, Form design and Report design. Chapter Five: System Development: this chapter will be discussed how the system development that includes: Introduction, Coding Phase, Types of testing, User Documentation and Implementations. Chapter Six: Recommendation & Conclusion: this chapter will be discussed the conclusion of the system development that includes: Introduction, Conclusion, Concluding Remarks, References and Appendixes. 6 CHAPTER TWO REVIEW OF RELATED LITERATURE 2.1 INTRODUCTION Literature review has covered searching, collecting and analyzing from all debates issues raised in relevant body of literature. The fact and finding are being analyzed by identifying the objectives, the current situation and the available resources. This chapter includes: Introduction, Concepts, opinions or Ideas from Authors/Experts, previous work / existing system, Gap Analysis and Chapter summary. 2.2 CONCEPT, OPINIONS, OR IDEAS FROM AUTHORS/EXPERTS In the recent past, researchers have tested a wide array of technologies in an attempt to find improved methods of monitoring traffic conditions. Traffic system comprises one of but many of the areas of current research. A brief survey of technologies explored during the past decade and a half is given below to provide an understanding of the level of research interest in traffic system technologies. AT&T experimented with the use of applied acoustic and digital signal processing technology to produce a vehicular traffic system (Nordwall, 1994). Labeled the SmartSonic Traffic System (SmartSonic STS-1), the project was intended by AT&T to replace buried magnetic loop detection systems. This technology was originally developed from research used by the U.S. Navy for submarine detection purposes. Mounted above passing vehicles, the SmartSonic STS-1 listens to the acoustic signals of vehicles and is capable of distinguishing between larger trucks or buses and smaller vehicles. Applications were to include traffic monitoring and vehicle counting, with the potential for incident detection being an area for further research. Prior to the installation of a Traffic system in Houston, a cellular phone demonstration project was performed (Levine and McCasland, 1994). Researchers recruited 200 volunteers to participate in the program, which required them to call a traffic information office when they passed specific freeway locations during their morning and evening 7 commutes. The lessons learned from the cell phone project aided in the development of the data analysis, processing and dissemination techniques used for the Traffic system that was later constructed. In a similar scenario, prior to installing a large-scale Traffic system in the Puget Sound area, a small-scale test of traffic was performed (Butterfield et. al., 1994). In this test, Traffic was “piggy-backed” with existing loop detectors. Results yielded a Traffic detection rate of about 80% for a fleet of tag-equipped buses. In this brief survey, more than ten distinct traffic system technologies have been identified as the subject of research efforts since 1986. The amount of attention given to the research field of traffic surveillance clearly suggests that a surveillance system that can provide reliable and accurate travel time data would have great potential. The research community’s interest in developing reliable and accurate Traffic systems. 2.3 PREVIOUS WORK / EXISTING SYSTEM Prior to 21st century technologies; it has been widely used Inductive loop detection which works on the principle that one or more turns of insulated wire are placed in a shallow cutout in the roadway, a lead in wire runs from roadside pull box to the controller and to the electronic unit located in the controller cabinet. When a vehicle passes over the loop or stops, the induction of the wire is changed. Due to change in induction, there is change in the frequency. This change in the frequency causes the electronic unit to send a signal to the controller; indicating presence of the vehicle. In the existing System it is widely used Video analysis i.e smart camera which consists of sensors, a processing unit and a communication unit. The traffic is continuously monitored using a smart camera. The video captured is then compressed so as to reduce the transmission bandwidth. The video analysis abstracts scene description from the raw video data. This description is then used to compute traffic statistics. This statistic includes frequency of the vehicles, average speed of the vehicles as well as the lane occupancy. 8 2.4 GAP ANALYSIS AND DIRECTION This simple tool helps to identify the gap between the current situation and the future state that you want to reach, along with the tasks that you need to complete to close this gap. As we illustrated above there is a great gap between previous system and current need of systems so we need to drop up this gap by developing new system called Online Traffic Management System. This system will terminate traditional calling and will be replaced to a new system. 2.5 CHAPTER SUMMARY This chapter we were discussed all the literature review related former study to understand more about Online Traffic Management System. This chapter basically related several studies which include: - Introduction, Concept, Opinions, Or Ideas from authors/ Experts, Previous work/ Existing system, Gap analysis and Direction. 9 CHAPTER THREE REQUIREMENT ANALYSIS 3.1 INTRODUCTION This chapter contains and described about User requirement analysis, preliminary investigation, data gathering, Data Flow Diagram, Feasibility Study and user requirement specification. 3.2 USER REQUIREMENTS ANALYSIS The Online Traffic Management System was developed to operate within the following environment:a. Operating system Windows. b. Database MySQL and Software to develop the system. c. Browser Internet Explorer and above, Mozilla Firefox, Google Chrome Performance. 3.3 PRELIMINARY INVESTIGATION Preliminary Investigation basically refers to the collection of information that guides the management of an organization to evaluate the advantages and disadvantages of the project request and make an informed judgment about the feasibility of the proposed system. This sort of investigation provides us with a through picture of the kind of software and hardware requirements which are most feasible for the system, plus the environment in which the entire project has to be installed and made operational. 3.3.1 ORGANIZATIONAL PROFILE Ministry of Transportation and Civil Aviation in Somalia is a ministry that involves all the transportation networks and modes of transport in Somalia. They include highways, airports and seaports, in addition to various forms of public and private vehicular, maritime and aerial transportation. A 750 km highway connects major cities in 10 the northern part of the country, such as Bosaso, Galkayo and Garowe, with towns in the south. 3.3.2 CURRENT SYSTEM Studying the current system is a method that is used to gather the requirements in the research. The purpose of studying the current system is to identify the existing entities and also gather requirements and identify problem in the current system. The Current System has Problems We Listed Them Below: a. Difficulties in checking car. b. Drivers do not know the detailed. c. Mistakes in giving car information. d. Mistakes that occurred. e. Keeping track of cars. 3.3.3 THE LIMITATIONS OF THE CURRENT SYSTEM The system may be faced some of Limitations include:a. Lack of internet. b. Lack of Security. c. Insufficient Time. d. Lack of finance. e. Data corrupting when you making the system project. 3.4 DATA GATHERING Data gathering is a collection of faithful information about the old system and its essential step, because we easily find out the required information of current system unless we accomplish it. We have collected this faithful information from different resources; the primary technique for information gathering during in the analysis phase is interviewing the 11 people who worked and have experience about the current Traffic Management to know the quality and the intensity of the information we need. We used different techniques to collect the data some of those are Individual meetings, Interviews, observation 3.4.1 DATA FLOW DIAGRAM (DFD)/ (UML): Data flow diagrams (DFDs) reveal relationships among and between the various components in a program or system. DFDs are an important technique for modeling a system’s high-level detail by showing how input data is transformed to output results through a sequence of functional transformations. 3.4.2 DFD: A data flow diagram is a graphic representation of a system or part of system. It consist of entities, data flows, process, sources, distinctions, and stores that Can facilitate the readability of the system and also shows how data moves through an information system but doesn’t show program logic or processing steps. A set of DFDs provides a logical model that shows what the system does, not how it does it. Several different versions of DFDs exist, but they all serve the same purpose. We will use to identify our DFDs levels in the following symbols: Entity Data Store Process Data Flow Figure 1: DFD Symbols 12 Recorded CAR REGISTRATION Register car info ACCIDENT RECORD registered Successfully recorded TRAFFIC MANAGEMENT SYSTEM Record the car’s accident Created Request record taxations TAX Create admin Create Admin Figure 2: Context diagram level 0 d f ds 13 Create Admin Admin id password username Admin-ID Admin-ID UserName UserName Created Password Password check check Process ckeck Yes THAN SAVE Admin’s Database Figure 3: Level 1 creating of admin user 14 Targo no Car Registeration Car Name Owner’s tell Owner’s name Colour of the car Car model T_NO Registered Tell C_NAME MODEL CAR Clour Owner Name Check Check Chek Check Check Process Check YES THAN SAVE Car registration database SAVED Figure 4: Level 2 car registration 15 Accident record Accident’s date Targo no Accident type Driver Name Punishment T_NO Recorded D_NAME ACC_TYPE Punishment DATE Check Check Chek Check Check Process YES THAN SAVE Accident record database Recorded Figure 5: Level 3 recording accidents 16 TAX Owner name Driver Name Successfully record the tax Trismitale/license/book D_NAME Amount Owner name Amount Purpose Check Check Check Check Process YES THAN SAVE Taxation record database Recorded Figure 6: Level 4 taxation 17 1.5.1 UML The Sequence Diagram is a UML diagrams that are used to model interaction between objects of a system, showing time sequence of collaboration (IBM, 2004). The diagram presents processes and their operations with one another, in the order in which the operations occur. The diagram shows objects and classes that participate in the collaboration as well as the arrangement of messages exchanged between objects. A Sequence diagram has lifelines – which are parallel vertical lines, the objects and horizontal arrows that show the messages exchanged. The UML is a tool for specifying software systems. Standardized diagram types to help you describe and visually map a software system's design and structure. Using UML it is possible to model just about any kind of application, both specifically and independently of a target platform. The use of UML as a tool for defining the structure of a system is a very useful way to manage large, complex systems. Having a clearly visible structure makes it easy to introduce new people to an existing project. 1.6 FEASIBILITY STUDY A system request must pass several tests called feasibility study. Feasibility study is the process of identifying if problem can be solved or not solved, determining objectives, and assessing the range of cost and benefits associated with several alternatives for solving a problem. We can say also feasibility study is a detailed investigation and analysis of a proposed development project to determine whether it is visible technically and economically. The purpose of a feasibility study is to determine whether or not the purpose of a new system can be justified. The analysis has to answer one fundamental question: (can the required functions be carried out by a new system more efficiently than the current?) 18 3.5.1 Technical Feasibility Technical feasibility refers to the technical resources needed to develop, purchase, install, or operate the system. In terms of technical feasibility the new system requires a fundamental change of the hardware and software that the center owns. Existing system either must be changed or upgraded and new systems should be acquired so that it covers the requirement in the following table:- No Description Quantity Cost Per Unit Amount 1. Computers Pentium 4 3 $ 400.00 $ 1200.00 2. Hp Laser jet 1320 Printer 1 $ 120.00 $ 120.00 Total: $ 1320.00 Table 1: System hardware Requirements Software We have to know or make sure the system will produce reliable answers about the requirements made by its users. Below we are using the software and the language we are going to use to develop our project. No Description Quantity Cost Per Unit Amount 1. Microsoft SQL Server 2012 1 $ 288.64 $ 288.64 2. NetBeans IDE 7.1.2 1 Open Source Free Total: $ 288.64 Table 2: System software Requirements 3.5.2 Operational Feasibility The system does not need to recruit a new staff, but it needs to train the existing staff to get ability to work with the new system, so that the staff should know how to use personal computers (PCs) and office automations and also any other third-party software that’s relative to the computers (if any). 19 3.5.3 Schedule Feasibility: Time or schedule feasibility Mean the time it takes to complete this system, the system operationally started in 01/03/2017 and will be completed if Allah wills 05/06/2017 On Task Activity Duration per week Percentage A Analyses 2 weeks 15% B Design 1 week 10% C Code 3 weeks 50% D Implementation 2 week 25% Table 3: Schedule Feasibility 3.5.4 Feasibility Report: The purpose of the feasibility study is to evaluate the outcome result of analysis phase and the investigations made to the older system as well as evaluation of both goal achievement process and means to finalize it with concise report that is feasible to the capacity and capability or the position of the project. Although after we made investigations, we recognized that it is feasible technically, operationally, and economically the investigation we have done proved that the benefits of the new system are greater than the consumed cost. So we decided to develop the new system. 3.6 USER REQUIREMENT SPECIFICATION 3.6.1 New Proposed System After we recognized the operation the current system and the power it can be solved its operation, we decided to design code and implement new online system that can meet all problems mentioned in the problem definition title, and even this new system is compatible with the new technology in this century. Software: In the software we selected JSP as front end and MYSQL as back end. 20 3.6.2 Solution Strategy After when we discovered the current system’s problem, we have decided to develop a new system, which stands the need of Traffic Management System. After we have seen the problems of the old system we realized that there is a great need to develop new system. As a group discussion we decided to take JSP as front end and MYSQL as back end as solution strategy for the problem, because JSP is powerful server-based technology and which free open source, designed to create dynamic and inter active HTML pages for your World Wide Web or corporate internet. 3.6.3 System Requirement Specification A. System Interfaces Application would be a self-contained system. It will not access data of any other application nor will other application have access to its data. B. Hardware Interfaces The hardware requirements for Traffic Management System are as listed below: For Server: a. Intel Pentium 4 b. 2GB RAM c. 80 GB hard disk d. Network Interface card. For client: a. Intel Pentium III or above. b. 512 MB RAM c. 40 GB hard disk d. Network Interface card. 21 C. User Interfaces Application will be accessed through a Browser Interface. The software would be fully compatible with Microsoft Internet Explorer for version 6 and above. No user would be able to access any part of the application without logging on to the system. D. Software Interface: For Server For Client Windows 2000 Server Windows 2000 / XP MySQL Microsoft Internet Explorer6 -12 or above JSP Table 4: Software Interface 3.6.3.1 List of Events: Event 1: Request informations from traffic database Event 2: Create car registration Event 3: Record accidents Event 4: Drivers paying tax 22 3.6.3.2 Converting Events into Processes Event 1: Request informations from Event 2: Create car registration traffic database Admin Admin Request for Car Registration Request Informations Car Registered Information Car Informations Traffic management system Request for Information Informations Car Information File Successfully registered Figure 8: Event 2: Create car registration Information File Figure 7: Event 1: Request informations from traffic database 23 Event 3: Record accidents Event 4: Drivers paying tax Successfully paid Accident Tax Request for Record accidents Accident Informations recorded Traffic management system Input info for tax/amount Traffic Management System Paid Inserted Accident database Tax Date File Successfully recorded Figure 10: Event 4: Drivers paying Figure 9: Event 3: Record accidents tax 3.6.3.3 Regrouping Create admin Admin Information Admin Created Car Registeration Car Information Car Registered Traffic managemen t system Successfully done All information success Than Store Accident information Accident Record Accident recorded Database Tax Tax information Taxation paid Figure 11: Regrouping events 24 CHAPTER FOUR SYSTEM DESIGN 4.1 INTRODUCTION Design is the most important phase of software development. It requires a careful planning thinking on parts of the system designer. This phase frequently described as being divided into two main phases, which might be described as "business design" and "technical design". Business design generally specifies the "why" of the system, indicating how data will be used and how it will flow. Technical design generally specifies the "how" of the system, or how its components will be arranged, what their features will be, and what kind of hardware the system will require. Designing a software means to plan how various party of the software are going to achieve the desired goal, it should be done with at most care because if the phase contains any error, then that will affect the performance of the system. 4.2 DESIGN GOALS There are many aspects to consider in the design of an every project. The importance of each should reflect the goals the system is trying to achieve. Some of these aspects are: A. Efficiency – It is generally considered to be the most important. Given a piece of hardware on which the system will run and a piece of software to run it, the design should make full and efficient use of the facilities provided. The users should interact with the system without any delay. B. Integrity - this means that the system should be accurate as possible. The problem of preserving the integrity of data can be viewed at a number of levels C. Extensibility - New capabilities can be added to the system without major changes to the underlying architecture. 25 D. Reliability - The system is able to perform a required function under stated conditions for a specified period of time. E. Security – The system, once loaded, should be safe from physical corruption whether from hardware or software failure or from unauthorized access. 4.3 DATABASE DESIGN Designing a Database Like most tasks, building a database starts with a design. Having a good design for your database is a major first step in creating a successful project. In designing a database application, you must set up not only the program’s routines for maximum performance, but you must pay attention also to the physical and logical layout of the data storage. A good database design does the following: a. Provides minimum search times when locating specific records. b. Stores data in the most efficient manner possible to keep the database from growing too large. c. Makes data updates as easy as possible. d. Is flexible enough to allow inclusion of new functions required of the program. When you’re creating the design for your database, you must keep several objectives in mind although meeting all these design objectives is desirable, sometimes they are mutually exclusive. The primary design objectives are as follows: a. Eliminate redundant data b. Be able to locate individual records quickly c. Make enhancements to the database easy to implement d. Keep the database easy to maintain Creating a good database design involves the following seven key activities: a. Modeling the application b. Determining the data required for the application c. Organizing the data into tables d. Establishing the relationships between tables 26 e. Setting index and validation requirements for the data f. Creating and storing any necessary queries for the application g. Reviewing the design 4.4 ENTITY RELATIONSHIP DIAGRAM ERD is a detailed, logical representation of the entities, associations and data elements for an organization or business. ERD is a graphical modeling tool to standardize ER modeling; the modeling can be carried out with the help of pictorial representation of entities, attributes and relationships. The basic building blocks of ERD are Entity, Attributes, Relationship and lines entity is an object that exists and is distinguishable from other object in other words. The building blocks of an entity relationship diagram in Key terms: A. Entity: an entity is an object that exist and distinguishable from other objects a person, place object event or concept in the user environment about which the organization wishes to maintain. B. Entity Type: a collection of entities that share common properties or characteristics C. Attributes: A named property or characteristic of an entity that is of interest to an organization D. Relationship: is an association of entities where that association includes one entity from each participating entity type where relationship type is a meaningful association between entity types. 4.4.1 De-normalization of entity relational diagram The word ‘de-normalization’ is used to describe changes to the table design that cause the physical tables to differ from the normalized entity relationship diagram. 4.4.2 Normalization Database Normalization, or simply normalization, is the process of organizing the columns (attributes) and tables (relations) of a relational database to reduce data redundancy and improve data integrity. Normalization is also the process of simplifying the design of a database so that it achieves the optimum structure. It reduces and 27 eliminates redundant data. In normalization, data integrity is assured. It was first proposed by Dr. Edgar F. Codd, as an integral part of a relational model. Purpose of normalization a. To avoid redundancy by sorting each fact within the database only once b. To put data into the form that is more able to accurately accommodate change c. To avoid certain updating "anomalies" d. To facilitate the enforcement of data constraint e. To avoid unnecessary coding. Most popular Normalization stages include: a. First Normal Form (1st NF) First Normal Form: is a relational table, by definition, is in first normal form. All values of the columns are atomic. That is, they contain no repeating values. b. Second Normal Form (2nd NF) Second Normal Form: The definition of second normal form states that only tables with composite primary keys can be in 1NF but not in 2NF. A relational table is in second normal form 2NF if it is in 1NF and every non-key column is fully dependent upon the primary key. c. Third Normal Form (3rd NF) Third Normal Form: The third normal form requires that all columns in a relational table are dependent only upon the primary key. A more formal definition is: A relational table is in third normal form (3NF) if it is already in 2NF and every nonkey column is none transitively dependent upon its primary key. In other words, all non-key attributes are functionally dependent only upon the primary key. 28 Targo No Car Name Car Model Car Color Owner Name Tell AG0001 Harrier Last Model White Abdinasir Mohamed 0618569422 AG0002 Ferrari Ferrari GTS White Mowlid Mohamud 0615266151 AG0004 Lloyd 650 Black Mohamed Salad Hirse 0615110220 Table 5: 1st Normal Form ID Targo No Car Name Car Model Car Color Owner Name Tell 2 AG0001 Harrier Last Model White Abdinasir Mohamed 0618569422 3 AG0002 Ferrari Ferrari GTS White Mowlid Mohamud 0615266151 4 AG0004 Lloyd 650 Black Mohamed Salad Hirse 0615110220 Table 6: 2nd Normal Form ID Targo No Owner Name 2 AG0001 Abdinasir Mohamed 3 AG0002 Mowlid Mohamud 4 AG0004 Mohamed Salad Hirse Table 7: 3rd Normal Form 4.5 DATA DICTIONARY Data dictionary, or data repository, is central store house of information about System’s data. We will use it to collect, document, and organize specific facts about system include the data flows, data stores, external entities, and processes. The data dictionary also defines and describes all data elements and meaningful combinations of data elements. 4.6 TABLE DESIGN Table- A set of data arranged in rows and columns. Field- Each space that holds a single piece of information Record- Is composed of fields, each of which contains one item of information 29 Column Type Null Username Varchar(22) No Password varchar(33) No Table 8: Admin Column Type Null ID int(55) No Targo_No varchar(55) No Car_Name varchar(77) No Model Varchar(66) No Car_colour Varchar(88) No OwnerName Varchar(55) No Tell Int(88) No Table 9: car registration Column Type Null ID int(22) No Targo_No varchar(55) No Driver_Name varchar(88) No Accident_Type Varchar(88) No Punishment Varchar(99) No Date date No Table 10: Accident record 30 Column Type Null ID int(33) No ownerName varchar(55) No DriverName varchar(44) No Amount float No Purpose Varchar(66) No Table 11: Taxation record 4.7 FORM DESIGN Form design is where the developer of the system is deeply explains this system and how forms of the system are working together by observing the sequential flows, In the design we will talk the main pages and the operator will use these forms, including textboxes and dropdowns. The page design will be consist of the following forms: Admin form, Car Registration form, Accident Record form, Event form, Tax record form and Contact us form. Admin form: The Admin form is a form, which administrator use this system can login at the first time. In the login page there is two labels which is intended (indicated) the administrator’s name password, also this form has a text Field which administration can write his/her username and password respectively . 31 Figure12: Admin Form Figure 13: Car registration 32 Figure 14: Accident record Figure 15: Tax record 33 Figure 16: event 4.8 REPORT DESIGN: The most effective method of online data entry is a form filling, in which a blank form that duplicates or resembles the source document is completed on the screen.The user en ters: the data and then moves to the next field. The form can have many control features such as Menu bars, toolbars, dialog boxes, text boxes, command buttons, list boxes, scroll bars drop-down, group boxes, check boxes, and more others. 34 CHAPTER FIVE SYSTEM DEVELOPMENT 5.1 INTRODUCTION This chapter was discussed the functions and implementations of the Online Traffic Management System, Beginning with the coding phase then testing and finally documentations. The system has five form; who are the Admin form, Car registration form, Accident record form, Tax record form and Event form. The Admin has the highest ability of the systems and controls the rest of the users. To implement Online Traffic Registration Management System, we use JSP open source as front end and MYSQL server as back end. 5.2 CODING PHASE This Phase is devoted to providing access to most of the computer programs that we used to prepare the data and apply the programming is techniques, instructions on how to construct this application project using the software available on the attached compact disk. Connection: Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); Con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); Admin: <div> <div id="content"> <center> <h1> LOG IN </h1> 35 <form action="login.jsp" method ="post" name ="frm1" > <table> <tr> <td> UserName:</td> <td><input type="text" name="user" /></td> </tr> <tr> <td> Password:</td> <td><input type="text" name="pass" /></td> </tr> <tr><td></td><td><input type ="submit" Name="dsss" value="Login Now!"/></td> </tr> </table> </form> </div> <% String user = request.getParameter("user"); String pass = request.getParameter("pass"); String btn = request.getParameter("submit"); if(btn==null){ Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_system" ,"root", ""); Statement st = con.createStatement(); ResultSet rs; 36 rs = st.executeQuery("select * from admin where UserName='" + user + "' and Password='" + pass + "'"); if (rs.next()) { response.sendRedirect("index.jsp"); } else { out.println("<a href='login.jsp'></a>"); } } %> </div> </center> </div> Car registration: <div> <div id="content"> <center> <h1> Car Registration </h1> <form action="Car_reg.jsp" method ="post" name ="frm1" onsubmit="return valid();"> <table> <tr> <td> Targo No:</td> <td><input type="text" name="targo" placeholder="Enter The Targo Number"/> </td> </tr> <tr> 37 <td> Car Name:</td> <td><input type="text" name="car_name" placeholder="Enter Car Name"/> </td> </tr> <tr> <td> Car Model:</td> <td><input type="text" name="model" placeholder="Enter The Model of the car"/> </td> </tr> <tr> <td> Car Colour:</td> <td><input type="text" name="car_color" placeholder="Enter The colour of the car"/> </td> </tr> <tr> <td> Owner Name:</td> <td><input type="text" name="Owner_name" placeholder="Enter The Owner Name"/></td> </tr> <tr> <td> Tell:</td> <td><input type="text" name="tell" placeholder="Enter the cell phone Number "/> </td> </tr> <tr><td></td><td><input type ="submit" Name="submit" value="Register Now!"/> </td></tr> </table> </form> 38 </div> </div> </script> <% Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String targo = request.getParameter("targo"); String car_name = request.getParameter("car_name"); String model = request.getParameter("model"); String car_color = request.getParameter("car_color"); String Owner_name = request.getParameter("Owner_name"); String tell = request.getParameter("tell"); String btn = request.getParameter("submit"); if (btn==null) { if(targo==null || car_name==null || model==null || car_color==null || Owner_name==null || tell==null ) { } } else{ st = con.prepareStatement("INSERT INTO `car_reg`(`Targo_No`, `Car_Name`, `model`, `Car_Colour`, `OwnerName`, `Tell`) VALUES 39 ('"+targo+"','"+car_name+"','"+model+ "','"+ car_color + "','"+ Owner_name + "','"+ tell +"')"); st.executeUpdate(); out.print("<Script> alert('Data has been succefully Inserted');</Script>"); } %> <div id="id"> <hr color ="black" height="100%"> <table width="100%" border="5" callspan ="0" align="center"> <tr> <td> <b>ID</b> </td> <td> <b>Targo No </b> </td> <td> <b>Car Name </b> </td> <td> <b>Car Model </b> </td> <td> <b>Car Colour </b> </td> <td> <b>Owner Name </b></td> <td> <b>Tell </b> </td> <td> <b>Edit </b> </td> <td> <b>Delete </b> </td> </tr> <% Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); st = con.prepareStatement("select * from car_reg"); ResultSet rs = st.executeQuery(); while(rs.next()){ 40 %> <tr> <td> <%=rs.getString(1)%></td> <td> <%=rs.getString(2)%></td> <td> <%=rs.getString(3)%></td> <td> <%=rs.getString(4)%></td> <td> <%=rs.getString(5)%></td> <td> <%=rs.getString(6)%></td> <td> <%=rs.getString(7)%></td> <td> <a href = "edit.jsp?id=<%=rs.getString(1)%>" style="color:blue;">Edit</a> </td> <td> <a href ="Delete.jsp?cid=<%=rs.getString(1) %>"style="color:blue;">Delete </a></td> </tr> <% } %> </table> </div> </center> </div> Edit Car: <div id="content"> <% Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); 41 con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String cid = request.getParameter("id"); st = con.prepareStatement("select * from car_reg where ID ='"+cid+"'"); ResultSet rs = st.executeQuery(); while(rs.next()){ %> <center> <form action="edit.jsp" method ="post"> <table> <tr> <td> ID</td> <td> <input type ="text" name ="id" value="<%=rs.getString(1)%>"></td> </tr> <tr> <td>Targo No</td> <td> <input type ="text" name ="targo" value="<%=rs.getString(2)%>"></td> </tr> <tr> <td>Car Name</td> <td> <input type ="text" name ="car_name" value="<%=rs.getString(3)%>"></td> </tr> <tr> <td>Model</td> <td> 42 <input type ="text" name ="model" value="<%=rs.getString(4)%>"></td> </tr> <tr> <td>Car Colour</td> <td> <input type ="text" name ="car_colour" value="<%=rs.getString(5)%>"></td> </tr> <tr> <td>Owner Name</td> <td> <input type ="text" name ="Ownername" value="<%=rs.getString(6)%>"></td> </tr> <tr> <td>Tell</td> <td> <input type ="text" name ="tell" value="<%=rs.getString(7)%>"></td> </tr> <tr> <td></td> <% } %> <td> <input type ="Submit" name ="Update" value ="Update"></td> </tr> </table> </form> </center> </div> <% 43 String ID = request.getParameter("id"); String targo = request.getParameter("targo"); String car_name = request.getParameter("car_name"); String model = request.getParameter("model"); String car_color = request.getParameter("car_colour"); String Owner_name = request.getParameter("Ownername"); String tell = request.getParameter("tell"); String btn = request.getParameter("Update"); if (btn!=null) { if(ID==null || targo==null || car_name==null || model==null || car_color==null || Owner_name==null || tell==null ) { } else { st = con.prepareStatement("UPDATE `car_reg` SET ID='"+ID+"',Targo_No='"+targo+"',Car_Name='"+car_name+"',model='"+model +"',Car_Colour='"+car_color+"',OwnerName='"+Owner_name+"',Tell='"+tell+"' WHERE ID='"+ID+"'"); st.executeUpdate(); out.print("<Script> alert('Data has been succefully Updated'); </Script>"); response.sendRedirect("Car_reg.jsp"); } } 44 Delete Car: Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String ID = request.getParameter("cid"); st = con.prepareStatement("delete from car_reg WHERE ID='"+ID+"'"); st.executeUpdate(); response.sendRedirect("Car_reg.jsp"); Accident Form: <%@page import="java.sql.*"%> <script type ="text/Javascript"> function valid(){ var targo =document.frm1.targo; var driver_name = document.frm1.driver_name; var accident_type = document.frm1.accident_type; var punishment = document.frm1.punishment; var date = document.frm1.date; if(targo.value=="") { alert("Pleas Enter The Targo Number"); targo.focus(); targo.style.border="3px solid red"; return false; } if(targo.value.match(/^[0-9]+$/)) 45 { alert("Pleas Enter String and numbers The Targo Number"); targo.focus(); targo.style.border="3px solid red"; return false; } if(targo.value.match(/^[A-Za-z]+$/)) { alert("Pleas Enter String and numbers The Targo Number"); targo.focus(); targo.style.border="3px solid red"; return false; } if(targo.value.matches(/^[0-9A-Za-z]+$/)) { } else { alert("Inavlid Targo Number"); targo.focus(); targo.style.border="3px solid red"; return false; } if((targo.value).length < 3) { alert("the targo number should be minimum 3 or 4"); targo.focus(); 46 targo.style.border="3px solid red"; return false; } if(driver_name.value=="") { alert("Pleas Enter The Driver Name"); driver_name.focus(); driver_name.style.border="3px solid red"; return false; } if(driver_name.value.matches(/^[0-9A-Za-z]+$/)) { alert("Pleas Enter Valid Name"); driver_name.focus(); driver_name.style.border="3px solid red"; return false; } if(driver_name.value.match(/^[0-9]+$/)) { alert("Pleas Enter String only The Targo Number"); driver_name.focus(); driver_name.style.border="3px solid red"; return false; } if((driver_name.value).length < 6) { alert("the name should be minimum 6 characters!"); 47 driver_name.focus(); driver_name.style.border="3px solid red"; return false; } if(accident_type.value=="") { alert("Pleas Enter The accident type"); accident_type.focus(); accident_type.style.border="3px solid red"; return false; } if(punishment.value=="") { alert("Pleas Enter The Punishment of the Driver "); punishment.focus(); punishment.style.border="3px solid red"; return false; } if(date.value=="") { alert('Pleas Enter The date'); date.focus(); date.style.border="3px solid red"; return false; } } </script> 48 <div id="content"> <center> <h1> Accidents </h1> <form action="Accident.jsp" method ="post" name ="frm1" onsubmit="return valid();"> <table> <tr> <td> Targo No:</td> <td><input type="text" name="targo" placeholder="Enter The Targo Number"/> </td> </tr> <tr> <td> Driver Name:</td> <td><input type="text" name="driver_name" placeholder="Enter The Driver Name"/> </td> </tr> <tr> <td> Accident Type:</td> <td> <input type="text" name="accident_type" placeholder="Enter The Accident Type"/> </td> </tr> <tr> <td> Punishment:</td> <td><input type="text" name="punishment" placeholder="Enter The Punishment "/> </td> 49 </tr> <tr> <td> Date:</td> <td><input type="Date" name="date" /></td> </tr> <tr><td></td><td><input type ="submit" Name="submit" value="Save!"/> </td> </tr> </table> </form> </table> </center> </div> <% Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String targo = request.getParameter("targo"); String driver_name = request.getParameter("driver_name"); String accident_type = request.getParameter("accident_type"); String punishment = request.getParameter("punishment"); String date = request.getParameter("date"); String btn = request.getParameter("submit"); if (btn==null) { 50 if(targo=="" || driver_name=="" || accident_type=="" || punishment=="" || date=="") { } } else{ st = con.prepareStatement("INSERT INTO accidents(`Targo_No`, `Driver_Name`, `Accident_Type`, `Punishment`, `Date`) VALUES ('"+targo+"','"+driver_name+"','"+accident_type+"','"+ punishment + "','"+ date +"')"); st.executeUpdate(); out.print("<Script> alert('Data has been succefully Inserted');</Script>"); con.close(); } %> <div id="id"> <hr color ="black" height="100%"> <table width="100%" border="5" callspan ="0" align="center"> <tr> <td> ID </td> <td> Targo No </td> <td> Driver Name </td> <td> Accident Type </td> <td> Punishment </td> <td> Date </td> <td> Edit </td> <td> Delete </td> </b> 51 </tr> <% Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); st = con.prepareStatement("select * from accidents"); ResultSet rs = st.executeQuery(); while(rs.next()){ %> <tr> <td> <%=rs.getString(1)%></td> <td> <%=rs.getString(2)%></td> <td> <%=rs.getString(3)%></td> <td> <%=rs.getString(4)%></td> <td> <%=rs.getString(5)%></td> <td> <%=rs.getString(6)%></td> <td> <a href = "editaccident.jsp?id=<%=rs.getString(1)%>" style="color:blue;">Edit</a></td> <td> <a href="Deleteaccident.jsp?did=<%=rs.getString(1)%>"style="color:blue;"> Delete</a </td> </tr> <% } %> </table> </center> </div> 52 Edit Accident: <div id="content"> <% Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String cid = request.getParameter("id"); st = con.prepareStatement("select * from accidents where ID ='"+cid+"'"); ResultSet rs = st.executeQuery(); while(rs.next()){ %> <center> <form action="editaccident.jsp" method ="post"> <table> <tr> <td> ID</td> <td> <input type ="text" name ="id" value="<%=rs.getString(1)%>"> </td> </tr> <tr> <td>Targo No</td> <td> <input type ="text" name ="targo" value="<%=rs.getString(2)%>"></td> </tr> <tr> 53 <td>Driver Name</td> <td> <input type ="text" name ="Driver_Name" value="<%=rs.getString(3)%>"></td> </tr> <tr> <td>Accident Type</td> <td> <input type ="text" name ="Accident_Type" value="<%=rs.getString(4)%>"></td> </tr> <tr> <td>Punishment</td> <td> <input type ="text" name ="Punishment" value="<%=rs.getString(5)%>"></td> </tr> <tr> <td>Date</td> <td> <input type ="text" name ="date" value="<%=rs.getString(6)%>"></td> </tr> <tr> <td></td> <% } %> <td> <input type ="Submit" name ="Update" value ="Update"></td> </tr> </table> </form> </center> </div> 54 <% String ID = request.getParameter("id"); String targo = request.getParameter("targo"); String Driver_Name = request.getParameter("Driver_Name"); String Accident_Type = request.getParameter("Accident_Type"); String Punishment = request.getParameter("Punishment"); String date = request.getParameter("date"); String btn = request.getParameter("Update"); if (btn!=null) { if(ID==null || targo==null || Driver_Name==null || Accident_Type==null || Punishment==null || date==null ) { } else { st = con.prepareStatement("UPDATE `accidents` SET ID='"+ID+"', Targo_No='"+targo+"',Driver_Name='"+Driver_Name+"',Accident_Type='"+Accident_T ype +"',Punishment='"+Punishment+"',Date='"+date+"'WHERE ID='"+ID+"'"); st.executeUpdate(); out.print("<Script> alert('Data has been succefully Updated');</Script>"); response.encodeRedirectURL("Accident.jsp"); response.sendRedirect("Accident.jsp"); } } Delete Accident: <% Connection con = null; 55 PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String cid = request.getParameter("did"); st = con.prepareStatement("select * from accidents where ID ='"+cid+"'"); ResultSet rs = st.executeQuery(); while(rs.next()){ %> <div id="content"> <center> <form action="Deleteaccident.jsp" method ="post"> <table> <tr> <td> ID</td> <td> <input type ="text" name ="id" value="<%=rs.getString(1)%>"></td> </tr> <tr> <td>Targo No</td> <td><input type ="text" name ="targo" value="<%=rs.getString(2)%>"></td> </tr> <tr> <td>Driver Name</td> <td> <input type ="text" name ="Driver_Name" value="<%=rs.getString(3)%>"> </td> </tr> <tr> 56 <td>Accident Type</td> <td><input type ="text" name ="Accident_Type" value="<%=rs.getString(4)%>"> </td> </tr> <tr> <td>Punishment</td> <td><input type ="text" name ="Punishment" value="<%=rs.getString(5)%>"> </td> </tr> <tr> <td>Date</td> <td><input type ="text" name ="date" value="<%=rs.getString(6)%>"></td> </tr> <tr> <td></td> <% } %> <td> <input type ="Submit" name ="delete" value ="delete"></td> </tr> </table> </form> </center> </div> <% String ID = request.getParameter("id"); String targo = request.getParameter("targo"); String Driver_Name = request.getParameter("Driver_Name"); String Accident_Type = request.getParameter("Accident_Type"); 57 String Punishment = request.getParameter("Punishment"); String date = request.getParameter("date");; String btn = request.getParameter("delete"); if (btn!=null) { if(ID==null || targo==null || Driver_Name==null || Accident_Type==null || Punishment==null || date==null) { } else { st = con.prepareStatement("delete from accidents WHERE ID='"+ID+"'"); st.executeUpdate(); out.print("<Script> alert('Data has been succefully Deleted');</Script>"); response.sendRedirect("Accident.jsp"); } } Tax Form: <%@page import="java.sql.*"%> <script type ="text/Javascript"> function valid(){ var ownername =document.frm1.ownername; var driver_name = document.frm1.driver_name; var Amount = document.frm1.Amount; var purpose = document.frm1.purpose; if(ownername.value=="") { 58 alert('Pleas Enter The Owner Name'); ownername.focus(); ownername.style.border="3px solid red"; return false; } if(driver_name.value=="") { alert("Pleas Enter The DRiver's Name"); driver_name.focus(); driver_name.style.border="3px solid red"; return false; } if(Amount.value=="") { alert("Pleas Enter The Amount you given"); Amount.focus(); Amount.style.border="3px solid red"; return false; } if(purpose.value=="") { alert("Pleas Select The Purpose"); purpose.focus(); purpose.style.border="3px solid red"; return false; } } </script> 59 <div id="content"> <center> <h1> Tax/Vat </h1> <form action="Tax.jsp" method ="post" name ="frm1" onsubmit="return valid();"> <table> <tr> <td> Owner Name</td> <td><input type="text" name="ownername" placeholder="Enter The Owner Name"/> </td> </tr> <tr> <td> Driver Name:</td> <td><input type="text" name="driver_name" placeholder="Enter The Driver Name"/> </td> </tr> <tr> <td> Amount:</td> <td><input type="text" name="Amount" placeholder="Enter The Amount here"/> </td> </tr> <tr> <td> Purpose:</td> <td><select name="purpose"><option value="">Select Purpose</option> <option value="Trismitaale">Trismitale</option> <option value="License">License</option> <option value="Book">Book</option> </select></td> 60 </tr> <tr><td></td><td><input type ="submit" Name="submit" value="Save!"/></td> </tr> </table> </form> </center> </div> <div id="id"> <hr color ="black" height="100%"> <table width="100%" border="5" callspan ="0" align="center"> <tr> <td> Owner Name </td> <td> Driver Name </td> <td> Amount </td> <td> Purpose </td> </b> </tr> </table> <% Connection con = null; PreparedStatement st = null; Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); 61 String ownername = request.getParameter("ownername"); String driver_name = request.getParameter("driver_name"); String Amount = request.getParameter("Amount"); String purpose = request.getParameter("purpose"); String btn = request.getParameter("submit"); if (btn==null) { if(ownername==null || driver_name==null || Amount==null || purpose==null) { } } else{ st = con.prepareStatement("INSERT INTO `tax`(`OwnerName`, `DriverName`, `Amount`, `Purpose`) VALUES ('"+ownername+"','"+driver_name+"','"+Amount+"','"+ purpose + "')"); st.executeUpdate(); out.print("<Script> alert('Data has been succefully Inserted');</Script>"); } %> Event Form: <%@page import="java.sql.*"%> <%@include file="header.jsp" %> <%@include file="sliders.jsp"%> <div id="content"> <form action="Evant.jsp" method ="post" name ="frm1" onsubmit="return valid();"> 62 <table> <tr> <td> Targo No:</td> <td><input type="text" name="targo" placeholder="Enter The Targo Number"/> </td> </tr> <tr><td></td><td><input type ="submit" Name="search" value="search"/></td> </tr> </table> </form> <div id="id"> <hr color ="black" height="100%"> <table width="100%" border="5" callspan ="0" align="center"> <tr> <td> <b>ID</b> </td> <td> <b>Targo No </b> </td> <td> <b>Car Name </b> </td> <td> <b>Car Model </b> </td> <td> <b>Car Colour </b> </td> <td> <b>Owner Name </b></td> <td> <b>Tell </b> </td> </tr> <% String btn = request.getParameter("search"); Connection con = null; PreparedStatement st = null; 63 Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/traffic_managment_sy stem","root",""); String Targo= request.getParameter("targo"); if(btn!=null){ st = con.prepareStatement("select * from car_reg where Targo_No ='"+Targo+"'"); ResultSet rs = st.executeQuery(); while(rs.next()){ %> <tr> <td> <%=rs.getString(1)%></td> <td> <%=rs.getString(2)%></td> <td> <%=rs.getString(3)%></td> <td> <%=rs.getString(4)%></td> <td> <%=rs.getString(5)%></td> <td> <%=rs.getString(6)%></td> <td> <%=rs.getString(7)%></td> </tr> <% } } %> </table> </div> </div> <%@include file="footer.jsp"%> 64 5.3 TESTING Once coding phase is completed, the next phase is testing and debugging. Testing phase is the process of executing a program or system with the intent of finding errors. Or, it involves any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results. Although crucial to software quality and widely deployed by programmers and testers, software testing still remains an art, due to limited understanding of the principles of software. The difficulty in software testing stems from the complexity of software: we cannot completely test a program with moderate complexity. Types of Testing: A. Unit testing: The testing of individual program or module is called unit testing. The objective is to identify and eliminate execution errors for the each form that could cause the program to terminate abnormally, and errors that could have been missed during the checking. B. Integration testing: Integration testing occurs after unit testing and before system testing. It takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, for example , when we make testing for forms that is used by course we need to make integrated. C. System testing: After completing integration testing, system testing was performed, which involves the entire information. A system test includes all typical processing situations and is intended to assure users, developers. During system testing, user enter data including samples of actual, or live, data, perform queries, and produce report to simulate actual operating condition. 65 5.4 USER DOCUMENTATION Documentation describes an information system and helps the users who must interact with it. Accurate documentation can reduce system downtime, cut cost, and speed up maintenance task. Documentation is essential for successful system operation and maintenance. In addition to supporting a system’s users, accurate documentation is essential for developers who must modify the system, add new features or perform maintenance. Documentation includes program documentation and user documentation. Mostly of the documentations are presented in project as help and users will get there. There are many types documentations include: program documentation and system documentation. 5.5 IMPLEMENTATION Implementation is where to implement how the system works as the sequential flow of Forms. As we mentioned above this application has different privileges, so if you login the administrator you see the privileges and do everything in this system. 66 CHAPTER SIX RECOMMENDATION & CONCLUSION 6.1 INTRODUCTION This chapter includes the works that have been done during the previous documentations of this project. In addition, this chapter was recover the objectives of the project and illustrates how the work of this project meets the project’s objectives. Also, it discusses the experiences that have been gained during this project and it includes the future recommendation which capture how to extend this project in the future. 6.2 CONCLUSION In this book, we discussed about how our system is working; we also provided some guidelines of how the user will deal to this system and what strengths or weakness it has. Strengths Every project has some strengths and weakness; so, we would like to mention some of the strengths and good features that Traffic Management System will provide to the industrial educations. This system is very friendly system and it has a good interface that can be usable by every person who is computer literate. What is more, if the user make a mistake it generate an error message that easily understandable by the user and it gives you the solution of that problem. Weaknesses On the other hand, every system has its own weaknesses, so, In this project, only problems that you might face is alerting messages that appear whenever you misuse to the system, and if you are not familiar with this system you might find it difficult to manage it, please don’t confuse, just read carefully what the message is carrying out and then you will get the solution easily. 67 Achievement of the Project Objective The main objective for this project is to develop an Online Traffic Management System for the Ministry of Transportation in Somalia. Moreover, here are the details of the project objectives that have been achieved: a. To design an Online Traffic Management System for the Ministry of Transportation in Somalia. b. To develop the proposed system and test it. All the objectives stated above have been achieved and the requirements of the users have been met through the project A. Limitations During the process of developing this project, some difficulties and constraints were faced. Some of these difficulties are related to the writing of the report and others are related to the implementation and design. The most important challenges faced are highlighted as follows: a. Writing the code of the project was the difficult challenged to face. b. Difficulties were faced during design the project of the project, such as normalization and etc. c. Difficulties were faced during design the project of the project, such as normalization and etc. d. Following JOBKEY thesis format was one of the most difficult tasks to encounter during the documentation of the report. e. Lack of time was also one of the challenges faced during the implementation of the system. B. Future Enhancement It has been achieved the final phase development of Online Traffic Management System and it is like any other system. It needs improvements and maintenance. 68 The future enhancements of the system are as follows: a. To improve the security of the system b. To extend scope of the project. 6.3 CONCLUDING REMARK This web Application provides facility to conduct Online Traffic Management System worldwide. It saves time as it allows number of cars to be registered at a time and store their information as the test gets over, and easily information. It is automatically generated by the server. Administrator has a privilege to create, modify and delete. The Online Traffic Management System was developed using JSP with MySQL fully meets the objectives of the system for which it has been developed. The system has reached a steady state where all bugs have been eliminated. The system is operated at a high level of efficiency and the administrators associated with the system understand its advantage. 69 REFERENCES: Alam, J.B., Jaigirdar, M. A. and Rahman, M.H. (1999). Analysis of Behavioral Value of Travel Attributes and Their Implications on Urban Transport Policies, Journal of Civil Engineering, I.E.B., Vol. CE 27, No. 1, 1999. Arumala, J. O. And Akpokodje, E. G., 1987. Soil Properties and Pavement Performance in the Niger Delta. Quarterly Journal of Engineering Geology and Hydrogeology, Vol. 20, pp. 287-296. Bailey, L., Mokhtarian, P. L., Little, A. (2008). The Broader Connection between Public Transportation, Energy Conservation and Greenhouse Gas Reduction. Report prepared as part of TCRP Project J-11/ Task 3 Transit Cooperative Research Program, Transportation Research Board submitted to American Public Transportation Association in http://www.apta.com/research/info/online/land_use.cfm#i, accessed 17 April 2008. Bartone, E; Branstein, J; Eigen, J. (1994). Urban Management Program toward Environmental Strategies for Cities, World Bank Technical Report. Ewing, R. and Cervero, R. (2001). Travel and the Built Environment: A Synthesis. Transportation Research Record 1780, Washington, D.C: TRB, National Research Council. Goldberg, M. A. (1970). Transportation, Urban Land Values, and Rents: A Synthesis Land Economics, 46, 2 (May), 153-162. Mannering, Fred L.; Walter P. Kilareski; Scott S. Washburn (2004). Principles of Highway Engineering and Traffic Analysis. 3rd ed. NJ: John Wiley & Sons; 170 – 219. Owen, W., 1964. Strategy for Mobility. The Brooking Institute, Transport Research Program, Washington D.C., 249p. Oyesiku, O. O. (2002). From Womb to Tomb. 24th Inaugural Lecture at Olabisi Onabanjo University on 27 August 2002. Ago-Iwoye: Olabisi Onabanjo University Press. 26 70 Polzin, S. E. (2004). Relationship between Land Use, Urban Form and Vehicle Miles of Travel: The State Of Knowledge and Implications for Transportation Planning. University of South Florida, Tampa; Florida Department of Transportation; Federal Highway Administration in http://www.cutr.usf.edu/ pubs/Trans- LU%20White%20Paper%20Final.pdf Queiroz, C and Gautam, S., 1992. Road Infrastructure and Economic Development: Some Diagnostic Indicators. Policy Research Working paper Series 921, The World Bank 37p. Said, M. N. and Shah, M. Z. (2008). GIS as a Supporting Tool in The Establishment of Land Use- Road Density Model in www.GISdevelopment.net. World Bank, 1996. Expanding Labor-Based Methods for Road Works in Africa. Environmentally Sustainable Development Division, World Bank, Washington, D.C., 74p. 71 Appendix I: Time Frame 1 April – 05 May No Activities 1 Proposal writing 2 Reading and Correction 06 May – 09 May 10 May 18 May 19 May -25 May 05 June by Supervisor 3 Proposal Submission 4 Data Collection 5 Analyzing Project 6 Designing Project and Conclusion 7 Thesis Submission Table 12: The Time Framework of the Project Appendix II: Budget No Item Description Estimated Amount 1. Transportation 300 Sh so $15.00 2. Photocopy 84 pages $2.00 3. Printing 84 pages $2.00 4. Others 69 Sh so $3.00 TOTAL: $22.00 Table 13: Budget 72