SlideShare une entreprise Scribd logo
1  sur  64
Télécharger pour lire hors ligne
GRADUATION
PROJECT
E-TAXI
SUPERVISOR
DR. AHMED HAMAZA
INSTITUTE
OF STATISTICAL
STUDIES AND
RESEARCH
-1-
Table of Contents
Declaration 4
Acknowledgements 5
Abstract 6
Chapter one
1. Introduction and project planning 8
1.1. Project Objective 8
1.2. System stack holders definition 8
1.3. Project Scope definition 11
1.4. Used technologies (software solutions) 11
1.5. Problem analysis 13
1.6. Feasibility study 13
1.7. The system Development life cycle 14
Chapter two
2. Overall description 17
2.1. System description 17
2.2. System functions 17
2.3. System features 17
2.4. Operating Environment 18
Chapter three
3. Requirements and Constrains 20
3.1. Functional requirements 23
3.2. Nonfunctional requirements 24
-Performance requirements
- Information requirements
-2-
- Efficiency requirements
- Service Requirements
3.3. System Constraints 24
Chapter four
4. System Design 27
4.1. Database logical and physical Design 27
4.2. Process design and Class Diagram 35
4.2.1. Use case diagrams and Use Case text 35
4.2.2Sequence diagrams 44
4.2.3. Class diagram 45
4.2.4 Activity diagram 47
4.2. 5 Interface design 48
References 63
-3-
List of Figures and Tables
Figure Name Page
1.1 System Stakeholders 9
1.2 Systems development life cycle 15
2.1 System Features 18
4.1 System EERD 27
4.5 Database Diagram From Oracle 31
4.7 Online Data base schema from SQL Server 33
4.10 Use Case diagram 36
4.11 System Sequence diagram 44
4.12 Class diagram 45
-4-
Declaration
We hereby declare that the project entitled “Electronic Taxi online booking (E-Taxi)”
submitted for the Diploma Degree is our original work and the project has not formed the basis
for the award of any degree, associate ship, fellowship or any other similar titles.
Name Signature
1 Fathy Ahmed Mohamed
2 Mohamed Sabar Abd El Hameed
3 Taha Mohamed Soliman
4 Reda Mohamed Metwaly
5 Mahmoud Abd El Basat Hekil
Place: Institute of Statistical Studies and Research – Cairo University
Date: 23-6-2016
-5-
Acknowledgments
‫هللا‬ ‫بسم‬‫م‬ ‫رحمن‬ ‫ا‬ ‫رحمن‬
At the beginning and at the end we all thank Allah for helping us to achieve this work and ask
Allah to benefit us with what he taught us and teach us what will benefit us.
Also the achievement of this piece of work wouldn’t be to see the light without the support, help
and contribution of:
Professor: Hisham Hefni the acting head of the computer science and information system
department for his support and advice.
Doctor: Ahmed Hamaza supervisor of our graduation project.
All the faculty members who taught us during our study in the degree program.
Finally we thank our families for supporting us and helped us to reach so far and to have the
tolerance to face difficulties and keep up.
-6-
Abstract
Our system it develops, markets and operates the mobile app, which allows consumers
with smartphones to submit a trip request which is then routed to drivers who use their own cars
or drive company cars.
To passengers, our system is essentially synonymous with taxis, and to drivers, it’s
basically a referral service. The Android, iOS and Windows Phone app connects riders with
drivers using their phone’s GPS capabilities, letting both parties know one another’s location
and removing the question of when the ride will actually arrive. In addition, the tech company
also processes all payments involved, charging the passenger’s credit card, and direct depositing
the remaining money into the driver’s account, all in the background and completely cashless.
The System Architect build based on the most modern technologies and concepts from
the idea of using smartphones to the software architect of SOA (Service-Oriented Architecture)
Considering the new and modern software methodologies and concepts we chose to use
the Unified Process (UP) model to construct our system. Which gives us the most flexibility to
develop our system and finalize software process stages.
Finally we consider of using the most productivity and capability tools for development
our system including (Databases, Software, User interfaces and documentation).
-7-
Chapter one
Project planning
-8-
Project planning
1- Introduction the idea on E-Taxi is evolving the way the world moves. By seamlessly connecting
passengers to drivers through our apps, we make cities more accessible, opening up more
possibilities for passenger and more business for drivers , Get a reliable ride in minutes with the
E-Taxi app, no reservations or waiting in taxi lines, from low-cost to premium, every ride option
feels like an upgrade to the everyday. Create your account using a credit card or PayPal, and your
fare will be charged automatically at the end of your ride. You can also pay with cash in select
cities.
1.1 Project objectives as the ideas, thoughts and product designs began to accumulate our main
objective to provide you, the customer, with a safe, reliable and easy taxi service, still proved to
be the focal point. We believe that in today’s day and age, one should have confidence that their
taxi will arrive on time and that you will not be over charged, and for these reasons,we introduced
the much needed transparency
1.2 Project Stack holders
When we come to the designing of the information system, a term often make us think; who are
Stakeholders? So let us define this with the formal definition and it goes like this.
‘Any person whohas interests inan existingor proposed informationsystem.Stakeholders may include
both technical and non-technical workers. They also may be the internal ones or may be the external
one.’
So I think the idea of ‘Who are stakeholders?’ has come to the mind. In building the information system
the system owners, system users, system designers, system builders and all of the above system analysts
and the project managers all these are commonly known as the stakeholders. Whatever their roles in an
organization are it doesn’t matter, all the thing common in them are that, they are information workers.
Let us explore a little deep to the stakeholders:
-9-
Figure(1.1)
System Stakeholders
System Stack
holders
System Owner System Users
Internal System
Users
Technical and
Professional staff
Supervisors,
Middle
managers and
executive
managers
External Users
Customers
System
Designers
Database
Administrators
Network
Architects
Web Architects
Graphics Artists
Security Experts
Technology
specialists
System Builders
Application
programmers
System
programmers
Databases
Programmers
Network
Administrators
Security
Administrators
Webmasters
Software
Integrators
System Analysts
-10-
System owners: An information system’s sponsor and executive advocate usually
responsible for funding the project of development, operating and maintaining the
information system.
In this system the system owners are the companies who intend to work on electronic
taxies field.
System users: Is the customer who will use the system or is affected by an information
system on a regular basis – capturing, validating, entering, responding to, storing, and
exchanging data and information.
In this system the system Users classified as internal and external users
A- Internal System users
1- Technical and professional staffs which are the staff will operate and maintain system
events like Driver registration approval block users or Drivers
2- Supervisors, Middle managers and executive managers which are the staff of managers
need generate reports from the system like system cash flow
B- External System User
1- Customers any external user have an registration ID will be customer and both of trip
requester or driver are customers on our system
System Designers: a technical specialist who translates system users’ business
requirements and constraints into technical solution. She or he designs the computer
databases, inputs, outputs, screens, networks, and software that will meet the system
users’ requirements.
A- Database Architect (DBA) creates and manages large and expansive electronic
databases to store and organize vast amounts of data. This is a highly skilled profession
that is integral to most modern businesses. A person in this position will work closely
with software designers, design analysts and others to create comprehensive databases
that may be used by hundreds if not thousands of people.
-11-
B- Network Architects
C- Web Architects
D- Graphics Artists
E- Security Experts
F- Technology specialists
System builders: a technical specialist who constructs information systems and
components based on the design specifications generated by the system designers.
A- Application programmers
G- System programmers
H- Databases Programmers
I- Network Administrators
J- Security Administrators
K- Webmasters
L- Software Integrators
Systems analyst: a specialist who studies the problems and needs of an organization to
determine how people, data, processes, and information technology can best accomplish
improvements for the business.
Business analyst focuses on only the nontechnical aspects of systems analysis and design.
1.3 Project Scope definition
The scope of the project includes and focuses managing the operation of booking
taxies online adding availability to users to customize their needs comforts issues.
1.4 Used Technologies and Tools
1- Database
-12-
a- Oracle Database XE 12
*Used to develop local database to create diagrams.
c- Microsoft SQL Server 2012 database Engine
*Used to create online database and final relational database diagrams.
2- Programming Language and Technologies
a- Visual C# 6
b- ASP.Net MVC
*Used to create web site and web administration application
c- ASP.Net Web API
*Used to create web service
d- Xamarin Framework
e Microsoft XAML
*Used to create mobile app using c#
f- HTML 5,CSS3
g- JavaScript & JQuery
h- Bootstrap
*f & g & h Used to create web site and web administration application user
interfaces
3 Tools
a- Microsoft Visual Studio 2015
b Oracle JDeveloper 12 c
c Oracle WebLogic Server
d Microsoft Android Emulator
e Microsoft SQL Server Management studio
f Oracle SQL Developer 4.1.3
g Google Chrome Developer Tools
-13-
1.5 Problem analysis
Risks involved in existing system.
1.6 Feasibility study:
The objective is to determine whether or not the proposed system is feasible. The three
tests of feasibility have been carried out:
A- Technical feasibility
B- Economic feasibility
C- Operational Feasibility
Technical feasibility: In technical feasibility one has to test whether the proposed
system can be developed using the existing technology.
It is a study of resource availability that may affect the ability to achieve an acceptable
system.
This evaluation determines whether the technology needed for the proposed system is
available or not.
As the available technical resources (such as Microsoft SQL server, Microsoft
ASP.NET… etc.) are so satisfactory for the scope of the proposed system, the proposed
system considered technically feasible.
-14-
Economic feasibility: The costs and benefits associated with the proposed system
compared and the project is economically feasible if tangible or intangible benefits out
weight cost.
As the proposed system development costs are significant as estimated so the system
proposed considered feasible economically.
Operational Feasibility: It is a standard that ensures interoperability without stifling
competition and innovation among users, to the benefit of the public both in terms of
cost and service quality. It is mainly related to human organizations and political
aspects. In operational feasibility the following points are studded:
- The impact of the changes would be made by the new system.
- The organization structure that might be disturbed by functioning the new system.
- The gap between the skills that the staff of the organization /s that would use the system
and the skills needed by the system to operate appropriately.
The system is operationally feasible as it very easy for the End users to operate it, its
functioning disturbs no other organization structures, and it have no undesired changes
to be made by its functionality.
1.7 The system Development life cycle:
System development process: a set of activities, methods, best practices, deliverables, and
automated tools that stakeholders use to develop and maintain information systems and software.
System Development Process Overview:
The systems development life cycle (SDLC), also referred to as the application
development life-cycle, is a term used in systems engineering, information systems and software
-15-
engineering to describe a process for planning, creating, testing, and deploying an information
system.[1] The systems development life-cycle concept applies to a range of hardware and
software configurations, as a system can be composed of hardware only, software only, or a
combination of both
Figure (1.2)
Systems development life cycle
System Planning: the initial planning for a project to define initial business scope,
goals, schedule, and budget.
System analysis: the study of a business problem domain to recommend
improvements and specify the business requirements and priorities for the solution.
System design: the specification or construction of a technical, computer-based
solution for the business requirements identified in a system analysis.
System implementation: the construction, installation, testing, and delivery of a
system into production.
-16-
Chapter two
Overall description
-17-
Overall Description
2.1. System description:
The system is a Mobile based application and Web based application.
The Web based application is just some of pages guide the visitor to download the mobile
application form the mobile OS platform store like (Android store – apple store – windows
store), about us and feedback.
The mobile based application is the main app manage customer registration, edit login, get ride,
become a driver, etc.
2.2. System functions:
A- User registering
B- User Login
C- Edit Profile
D- Request ride
E- Become a driver
F- Evaluate a ride
G- information about all your ride
H- Deactivation your account
2.3. System Features:
The following figure illustrates the features of the new system over the existing systems
Feature Uber Cream Our System Notes
Mobile
Application
-18-
Support all Egypt
Cites
Can support local
companies
Driver Evaluation Rating
through the
app
Rating
through
SMS only
Rating
through APP
& SMS
Support Regular
Taxi Car
Table (2.1)
System Features
2.3 Operating Environment:
The system typically requires one server for small business or form demo and it may run from
any other personal or laptop computer and need to install mobile application on mobile to can
connect the server
-19-
Chapter three
Requirements
-20-
Requirements
Requirements analysis
The requirement analysis phase is the most important phase along the phases of the information
system development process in this system and any other information system. Inadequate
attention to that phase always results in user disagreements and dissatisfaction of the system or
some functions of the system which would be so costly to get over.
There is a 7 common fact finding techniques for gathering user requirements which are:
bservation of work environment
Each technique has its advantages and disadvantages. It is never better to consider one of them is
the best technique while the efficiency of the used technique differs from a system to another
depending on the nature of the system and the working environment.
1- Sampling of existing documentation, forms and databases.
The following screen shots were collected (only sample of the gathered screen shots
-21-
-22-
2- Observation of work environment
The advantages of this technique are:
Data gathered based on observation can be reliable.
-23-
The system analyst is able to see exactly what is being done.
Observation is relatively inexpensive compared with other techniques.
Because of the important advantages of this technique it has been used along with other used
techniques for fact finding techniques for this project.
3- Interviews
The type of interview used is the unstructured open-end interview.
This method was choosing because of the nature of the interviewees (students’ doctors and
heads of departments).
3.1 Functional requirements: Functional requirements are a description of activities and
services a system must provide.
ored data
The functional requirement of the proposed system according to the specified scope can be
divided to data requirements, process requirements and interface requirements.
First: data requirements as inputs and outputs
The system must handle the following inputs:
1- Allow user to enter its personal data like first name , last name , mobile number ,
addresses , email to can register on our system
2- Allow user to enter Location through GPS location system atomically or manual through
map
3- Allow user to set it ride target using map
4- Allow user to can evaluate driver if it passenger or evaluate customer if it driver
5- Allow Driver set it availability status
Second: process function all requirements
The main process the system must allow customer ride request and it is request must be service
Third: Interface requirements
-24-
The interface should be available for users all the time and they can access it from anywhere.
3.2 Non Functional requirements:
A description of other features, characteristics, and constraints that define a satisfactory system.
• Performance, ease of learning and use, budgets, deadlines, documentation, security, internal
auditing controls
The non-functions requirements of the system are:
- The system should have a user friendly interface which is simple and easy to use and
understand.
- The system should be highly secured.
- The system should have an interface for news.
3.3 System Constraints:
The primary impact of project constraints is the likelihood of delaying the completion of the
project.
There are three types of project constraints:
- Technological
- Resource
- Physical
The technological constraints
Relate to the sequence in which individual project activities must be completed.
-25-
Resource constraints
Relate to the lack of adequate resources which may force parallel activities to be performed in
sequence. The consequence of such a change in network relationships is delay in the completion
date of the project.
Physical constraints
Are caused by contractual or environmental conditions.
-26-
Chapter four
Design
-27-
System Design
4.1. Database Design
Figure (4.1)
System EERD
-28-
A close up view of the User entity type:
Figure(4.2)
User Entity Close Up View
A close up view of the of Car entity type:
-29-
Figure(4.3)
Car Entity Close Up View
A close up view of the Trip Entity:
-30-
Figure(4.4)
Trip Entity Close Up View
The Entity-Relationship Diagram of the conceptual model
Database Diagram
-31-
Figure (4.5)
Database Diagram From Oracle
Creating SQL Database using SQL DDL
-32-
Figure(4.6)
Creating SQL Database using SQL DDL in Oracle SQL Developer
Online Data base schema from SQL Server
-33-
Figure (4.7)
Online Data base schema from SQL Server
-34-
Figure(4.8)
Online Data base schema from SQL Server With Data Types
-35-
4.2 Process design:
Figure(4.9)
Process design
4.2.1 System Use Case diagram and text:
-36-
Figure(4.10)
Use Case diagram
-37-
Use Case
Name
Apply for an account
Happy Scenario
The Client download the Application Mobile and he/she can
create account. If he/she want to create driver account he must
match with eTaxi's legal conditions,he/she can fill in dataform,
and then he/she sends the form and waits for a reply from the
eTaxi Admin to complete opening the Driver account.
Sad Scenario The Client can’t open account driver if he/she doesn't satisfy
eTaxi’s legal conditions.
Use Case Text
Use Case
Name
Log in Case
Happy Scenario
The user (client/admin) enters his/her user name , password ,
and account number ,then validation with the database is being
processed Credentials is correct and the login process
succeeded and the user now can see his/heraccount dashboard.
Sad Scenario
The user (client/admin) enters his/her user name, password,
and account number, then validation with the database is being
processed. A login failure message appears due to incorrect
username,password or account number.
The user (client/admin) enters his/her user name, password,
and account number, then validation with the database is being
processed. A login failure message appears due to insufficient
connection with the database.
-38-
Use Case
Name
Check In Case
Happy Scenario
The user (client/driver) can check in to order to determine
address, then they can used process and start Trips.
Sad Scenario
The user (client/driver) can check in to order to determine
address ,but unavailable GPS or Data Cementation for network
so they can’t used process and start Trips .
Use Case
Name
Client Send Request to Driver Case
Happy Scenario
The user (client) can send request to Driver and if he available
and accept request. the Client can used process and start racing
Trips. The userafterthe completion of the trip can request other
trips, and so on
Sad Scenario
The user (client) can’t send request to Driver because not have
mobile or unavailable GPS or Data Cementation for network.In
this case, can’t sent request to driver and not start any flights
Use Case
Name
Driver Receive Request from Client Case
Happy Scenario
The user (Driver) can be received request from Clients and he
approved the start flight. After the completion of the trip can
receive other trips from Clients ,and so on
-39-
Sad Scenario
The user (Driver) can’t be received request from Clients or the
Driver not available or Busy or Status Account off Trips. In this
case, can’t receive any flights
Use Case
Name
Flight status of the Client
Happy Scenario
After starting flight , the Client enjoy the trip to safely even to
arrive in his goal . when At the end of flight . the client can be
make to evaluation of the driver and after that start the process
of payment based on type payment it’s which selected in your
account , or start the process of payment without evaluation of
the driver
Sad Scenario
After starting flight , may not be up to your goal . For some
reason malfunction in the car or the occurrence of an emergency
such as disasters
Use Case
Name
Flight status of the Driver
Happy Scenario
After starting flight , the Driver can to enjoy the racing trip to
safely when to arrive in the goal . So the afterat the end of flight .
the Driver can be make to evaluation of the client and after that
start the process of receive payment from client based on type
payment That was previously selected in your account , or start
the process of payment without evaluation of the driver
Sad Scenario
After starting flight , may not be up to your goal . For some
reason malfunction in the car or the occurrence of an emergency
such as disasters
Candidate Keys Abstraction Model
1-Apply for an account:
-40-
Candidate Key
Abstraction
Reason for elimination
Selected component
name
Guest Actor --
Website The whole System --
Account -- Account
Bank Same as website --
Conditions BR --
Data form
registration
-- Registration
Reply NFR --
2-Log in:
Candidate Key
Abstraction
Reason for elimination
Selected component
name
User -- User
Client Same as user --
Admin Same as user --
User Name Attribute of user --
Password Attribute of user --
Account number Attribute of account --
Validation BR --
Database -- --
Credentials Attributes of user --
Login process BR --
Account dashboard NFR --
Login failure
message
NFR --
8-Messaging (compliance):
-41-
Candidate Key
Abstraction
Reason for elimination
Selected component
name
Admin actor --
User -- user
System The whole system --
Message -- messaging
Inquiry NFR --
9-Admin lock account:
Candidate Key
Abstraction
Reason for elimination
Selected component
name
Admin Actor
Notification Attribute for messaging
User User
Account Account
Request BR
Class ResponsibilityCollaborator (CRC) Model
Driver
Responsibilities Collaboration
-42-
User-name;
Password;
First-name;
Last-name;
Licenses No ;
Phone-number;
Unit Traffic
Center Licenses
Driver
Register new Driver();
Client (Users)
Responsibilities Collaboration
Account-number;
User-name;
Password;
First-name;
Last-name;
Address;
Phone-number;
Registration
Client
Shows users of the
Client()
Messaging (compliance)
Responsibilities Collaboration
messageValue
fromUser
toUser
date
Account
User
Register
branches
sendMessage()
ReplyMessage()
Admin
-43-
Responsibilities Collaboration
Username
Password
Account
User
Register
lockAccount()
sendMessage()
loginIssue()
Trip
Responsibilities Collaboration
Trip-number;
Start-date;
End-date;
Payment-type;
Registration
Payment
Trips
Add Trip ()
Delete Trip()
-44-
4.2.2 System Sequence diagrams
Figure(4.11)
System Sequence diagram
-45-
4.2.3 Class diagram
Figure(4.12)
Class diagram
-46-
Figure(4.13)
Class Code Sample
-47-
4.2.4 Activity Diagram
Figure(4.13)
Activity Diagram
-48-
4.2.5 Interface Design
Figure(4.14)
Application Logo On Android Phone
Figure(4.15)
Application Splash Scrren On Android Phone
-49-
Figure(4.16)
Application Start Page
Figure(4.17)
Application Login Page
-50-
Figure(4.18)
Application Register Page
Figure(4.19)
Application Client Main Menu
-51-
Figure(4.20)
Application Driver Main Menu
Figure(4.21)
Application Booking Page
-52-
Figure(4.22)
Application Edit Profile Page
-53-
Figure(4.23)
Web Service Register Method Code
-54-
Figure(4.24)
Web Service Login Model Code
-55-
Figure(4.25)
Web Service Login Method Code
-56-
Figure(4.26)
Web Service Register Model Code
-57-
Figure(4.27)
Web Administration Control Panel Home Form
Figure(4.28)
Web Administration Users List Form
-58-
Figure(4.29)
Web Administration Edit User Form
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ETaxi.Views.Register"
Title="Registration Form">
<ScrollView>
<Grid >
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<Label x:Name="lblError" TextColor="Red" Grid.Row="0"/>
<Entry x:Name="txtName" Placeholder="User Name" Grid.Row="2"/>
<BoxView Color="Silver" HorizontalOptions="Fill" HeightRequest="3" Grid.Row="5"/>
<Entry x:Name="txtEmail" Placeholder="Email" Grid.Row="6"/>
<Entry x:Name="txtPhoneNumber" Placeholder="Phone Number" Grid.Row="7"/>
<BoxView Color="Silver" HorizontalOptions="Fill" HeightRequest="3" Grid.Row="8"/>
<Entry x:Name="txtPassword" Placeholder="Password" IsPassword="True" Grid.Row="9"/>
-59-
<Entry x:Name="txtConfirmPassword" Placeholder="Confirm Password" IsPassword="True"
Grid.Row="10"/>
<BoxView Color="Silver" HorizontalOptions="Fill" HeightRequest="3" Grid.Row="11"/>
<Button x:Name="btnReg" Text="Register" Grid.Row="12"/>
</Grid>
</ScrollView>
</ContentPage>
Figure(4.30)
Mobile App UI Code Sample
@model Etaxi_Admin.Models.DB_Model.AspNetUser
@{
ViewBag.Title = "Create";
}
<h2>Create</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>AspNetUser</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.Id, htmlAttributes: new { @class = "control-label col-md-
2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Id, new { htmlAttributes = new { @class = "form-
control" } })
@Html.ValidationMessageFor(model => model.Id, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.Email, htmlAttributes: new { @class = "control-label col-
md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Email, new { htmlAttributes = new { @class = "form-
control" } })
@Html.ValidationMessageFor(model => model.Email, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EmailConfirmed, htmlAttributes: new { @class = "control-
label col-md-2" })
<div class="col-md-10">
<div class="checkbox">
@Html.EditorFor(model => model.EmailConfirmed)
@Html.ValidationMessageFor(model => model.EmailConfirmed, "", new { @class =
"text-danger" })
</div>
</div>
</div>
-60-
<div class="form-group">
@Html.LabelFor(model => model.PasswordHash, htmlAttributes: new { @class = "control-label
col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.PasswordHash, new { htmlAttributes = new { @class =
"form-control" } })
@Html.ValidationMessageFor(model => model.PasswordHash, "", new { @class = "text-
danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.SecurityStamp, htmlAttributes: new { @class = "control-
label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.SecurityStamp, new { htmlAttributes = new { @class =
"form-control" } })
@Html.ValidationMessageFor(model => model.SecurityStamp, "", new { @class = "text-
danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.PhoneNumber, htmlAttributes: new { @class = "control-label
col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.PhoneNumber, new { htmlAttributes = new { @class =
"form-control" } })
@Html.ValidationMessageFor(model => model.PhoneNumber, "", new { @class = "text-
danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.PhoneNumberConfirmed, htmlAttributes: new { @class =
"control-label col-md-2" })
<div class="col-md-10">
<div class="checkbox">
@Html.EditorFor(model => model.PhoneNumberConfirmed)
@Html.ValidationMessageFor(model => model.PhoneNumberConfirmed, "", new { @class
= "text-danger" })
</div>
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.TwoFactorEnabled, htmlAttributes: new { @class = "control-
label col-md-2" })
<div class="col-md-10">
<div class="checkbox">
@Html.EditorFor(model => model.TwoFactorEnabled)
@Html.ValidationMessageFor(model => model.TwoFactorEnabled, "", new { @class =
"text-danger" })
</div>
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.LockoutEndDateUtc, htmlAttributes: new { @class = "control-
label col-md-2" })
<div class="col-md-10">
-61-
@Html.EditorFor(model => model.LockoutEndDateUtc, new { htmlAttributes = new { @class
= "form-control" } })
@Html.ValidationMessageFor(model => model.LockoutEndDateUtc, "", new { @class =
"text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.LockoutEnabled, htmlAttributes: new { @class = "control-
label col-md-2" })
<div class="col-md-10">
<div class="checkbox">
@Html.EditorFor(model => model.LockoutEnabled)
@Html.ValidationMessageFor(model => model.LockoutEnabled, "", new { @class =
"text-danger" })
</div>
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.AccessFailedCount, htmlAttributes: new { @class = "control-
label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.AccessFailedCount, new { htmlAttributes = new { @class
= "form-control" } })
@Html.ValidationMessageFor(model => model.AccessFailedCount, "", new { @class =
"text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.UserName, htmlAttributes: new { @class = "control-label
col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.UserName, new { htmlAttributes = new { @class = "form-
control" } })
@Html.ValidationMessageFor(model => model.UserName, "", new { @class = "text-
danger" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
Figure(4.31)
-62-
Web Administration UI Code Sample
Figure(4.32)
Web Site Home Page Screen
-63-
References
1- Ramez Elmasri and Shamkant B. Navathe ," FUNDAMENTALS OF Database
Systems" SIXTH EDITION Addison-Wesley 2011
2- Whitten, Bentley, “Systems Analysis and Design Methods”, 7thEdition, McGraw-Hill
Publishing Company, 2007.
3- Bruegge, Bernad, and Dutoit, Allen H., “Object-Oriented Software Engineering:
Using UML, Patterns and Java”, Second Edition, Pearson Education Limited, 2004
4- Craig Larman, Applying UML and Patterns: An Introduction to Object-Oriented
Analysis and Design and Iterative Development, 3rd Edition, 2004
5- Cristian Darie, Wyatt Barnett, and Tim Posey, " Build Your Own ASP.NET 4 Website
Using C# & VB" SitePoint Pty. Ltd 2011

Contenu connexe

Tendances

Les applications mobiles dans le tourisme - Panorama international
Les applications mobiles dans le tourisme - Panorama internationalLes applications mobiles dans le tourisme - Panorama international
Les applications mobiles dans le tourisme - Panorama internationalPhilippe Fabry
 
Erd - School Bus Routing Management System
Erd - School Bus Routing Management SystemErd - School Bus Routing Management System
Erd - School Bus Routing Management Systemayushi goyal
 
Toll Management Systems
Toll Management SystemsToll Management Systems
Toll Management SystemsSandy Bar
 
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Ayoub Rouzi
 
Bus tracking system
Bus tracking systemBus tracking system
Bus tracking systemRahul Wagh
 
Location de voiture
Location de voitureLocation de voiture
Location de voiturechakikMeryem
 
Uber technologies inc
Uber technologies inc Uber technologies inc
Uber technologies inc Varsha Singh
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
Conception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASConception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASAhmed MAALEJ
 
presentation PFE.pptx
presentation PFE.pptxpresentation PFE.pptx
presentation PFE.pptxTibouGh
 
Conception et mise en place d'un site web dynamique de gestion de passation ...
Conception et mise en place d'un site web  dynamique de gestion de passation ...Conception et mise en place d'un site web  dynamique de gestion de passation ...
Conception et mise en place d'un site web dynamique de gestion de passation ...Symphorien Niyonzima
 
Rapport sur le Covoiturage Dynamique en Isère
Rapport sur le Covoiturage Dynamique en IsèreRapport sur le Covoiturage Dynamique en Isère
Rapport sur le Covoiturage Dynamique en IsèreCovivo
 
10 Step Marketing Plan - UBER
10 Step Marketing Plan - UBER10 Step Marketing Plan - UBER
10 Step Marketing Plan - UBERKEN5JK
 
Carpooling (Ride-sharing) Analysis
Carpooling (Ride-sharing) AnalysisCarpooling (Ride-sharing) Analysis
Carpooling (Ride-sharing) AnalysisOrahi Marketing
 
application desktop pour la gestion d'une auto-ecole
application desktop pour la gestion d'une auto-ecoleapplication desktop pour la gestion d'une auto-ecole
application desktop pour la gestion d'une auto-ecoleamat samiâ boualil
 
Présentation resto
Présentation restoPrésentation resto
Présentation restoMehdi Labidi
 
Implémentation d’une solution de géolocalisation des véhicules pour le module...
Implémentation d’une solution de géolocalisation des véhicules pour le module...Implémentation d’une solution de géolocalisation des véhicules pour le module...
Implémentation d’une solution de géolocalisation des véhicules pour le module...Lahcen Abidar
 
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...Jonathan Margrève
 
Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5YounessLaaouane
 

Tendances (20)

Les applications mobiles dans le tourisme - Panorama international
Les applications mobiles dans le tourisme - Panorama internationalLes applications mobiles dans le tourisme - Panorama international
Les applications mobiles dans le tourisme - Panorama international
 
Erd - School Bus Routing Management System
Erd - School Bus Routing Management SystemErd - School Bus Routing Management System
Erd - School Bus Routing Management System
 
Toll Management Systems
Toll Management SystemsToll Management Systems
Toll Management Systems
 
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
Smart Parking: Stationnement intelligent État de l’art, Étude d’un exemple De...
 
Bus tracking system
Bus tracking systemBus tracking system
Bus tracking system
 
Location de voiture
Location de voitureLocation de voiture
Location de voiture
 
Uber technologies inc
Uber technologies inc Uber technologies inc
Uber technologies inc
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
Conception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASConception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VAS
 
presentation PFE.pptx
presentation PFE.pptxpresentation PFE.pptx
presentation PFE.pptx
 
PFE_Report
PFE_ReportPFE_Report
PFE_Report
 
Conception et mise en place d'un site web dynamique de gestion de passation ...
Conception et mise en place d'un site web  dynamique de gestion de passation ...Conception et mise en place d'un site web  dynamique de gestion de passation ...
Conception et mise en place d'un site web dynamique de gestion de passation ...
 
Rapport sur le Covoiturage Dynamique en Isère
Rapport sur le Covoiturage Dynamique en IsèreRapport sur le Covoiturage Dynamique en Isère
Rapport sur le Covoiturage Dynamique en Isère
 
10 Step Marketing Plan - UBER
10 Step Marketing Plan - UBER10 Step Marketing Plan - UBER
10 Step Marketing Plan - UBER
 
Carpooling (Ride-sharing) Analysis
Carpooling (Ride-sharing) AnalysisCarpooling (Ride-sharing) Analysis
Carpooling (Ride-sharing) Analysis
 
application desktop pour la gestion d'une auto-ecole
application desktop pour la gestion d'une auto-ecoleapplication desktop pour la gestion d'une auto-ecole
application desktop pour la gestion d'une auto-ecole
 
Présentation resto
Présentation restoPrésentation resto
Présentation resto
 
Implémentation d’une solution de géolocalisation des véhicules pour le module...
Implémentation d’une solution de géolocalisation des véhicules pour le module...Implémentation d’une solution de géolocalisation des véhicules pour le module...
Implémentation d’une solution de géolocalisation des véhicules pour le module...
 
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...TFE. Conception et réalisation d'une application web mobile touristique. Marg...
TFE. Conception et réalisation d'une application web mobile touristique. Marg...
 
Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5Application web Gestion RH ASP.NET MVC5
Application web Gestion RH ASP.NET MVC5
 

En vedette

Back in Black
Back in BlackBack in Black
Back in Blacklainga9
 
Applis mobiles : éviter les erreurs majeures de conception
Applis mobiles : éviter les erreurs majeures de conceptionApplis mobiles : éviter les erreurs majeures de conception
Applis mobiles : éviter les erreurs majeures de conceptionVirginie Clève - largow ☕️
 
Conception et réalisation d’une application Mobile banking
Conception et réalisation d’une application  Mobile banking  Conception et réalisation d’une application  Mobile banking
Conception et réalisation d’une application Mobile banking Khaled Fayala
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebHarrathi Mohamed
 
Conception et réalisation d’une application mobile
Conception et réalisation d’une application mobileConception et réalisation d’une application mobile
Conception et réalisation d’une application mobileaffibaHime
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
Je souhaite investir au cameroun
Je souhaite investir au camerounJe souhaite investir au cameroun
Je souhaite investir au camerounogheahnjim
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Sofien Benrhouma
 

En vedette (10)

Taxi coop quebec
Taxi coop quebec Taxi coop quebec
Taxi coop quebec
 
Back in Black
Back in BlackBack in Black
Back in Black
 
Applis mobiles : éviter les erreurs majeures de conception
Applis mobiles : éviter les erreurs majeures de conceptionApplis mobiles : éviter les erreurs majeures de conception
Applis mobiles : éviter les erreurs majeures de conception
 
Conception et réalisation d’une application Mobile banking
Conception et réalisation d’une application  Mobile banking  Conception et réalisation d’une application  Mobile banking
Conception et réalisation d’une application Mobile banking
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Conception et réalisation d’une application mobile
Conception et réalisation d’une application mobileConception et réalisation d’une application mobile
Conception et réalisation d’une application mobile
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Je souhaite investir au cameroun
Je souhaite investir au camerounJe souhaite investir au cameroun
Je souhaite investir au cameroun
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 

Similaire à Etaxi Documentation

Online Tours and travel
Online Tours and travelOnline Tours and travel
Online Tours and travelAmit Patil
 
A CASE Lab Report - Project File on "ATM - Banking System"
A CASE Lab Report - Project File on  "ATM - Banking System"A CASE Lab Report - Project File on  "ATM - Banking System"
A CASE Lab Report - Project File on "ATM - Banking System"joyousbharat
 
new ASE GROUPWORK.docx
new ASE GROUPWORK.docxnew ASE GROUPWORK.docx
new ASE GROUPWORK.docxShangaviS2
 
Hospital E-Token Management(outdoor)
Hospital E-Token Management(outdoor)Hospital E-Token Management(outdoor)
Hospital E-Token Management(outdoor)ANISUR RAHMAN
 
Tourism management system_REPORT.pdf
Tourism management system_REPORT.pdfTourism management system_REPORT.pdf
Tourism management system_REPORT.pdfTonyPafal
 
Smart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportSmart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportALi Baker
 
ProjectPDF_pagenumber.docx project documentation
ProjectPDF_pagenumber.docx project documentationProjectPDF_pagenumber.docx project documentation
ProjectPDF_pagenumber.docx project documentationkomkar98230
 
Employee Management System
Employee Management SystemEmployee Management System
Employee Management Systemvivek shah
 
System analysis and_design.docx
System analysis and_design.docxSystem analysis and_design.docx
System analysis and_design.docxAlaJebnoun
 
Synopsis on billing system
Synopsis on billing systemSynopsis on billing system
Synopsis on billing systemAlok Sharma
 
Issue Management System
Issue Management SystemIssue Management System
Issue Management SystemPratik Vipul
 
project (Salon Management).pptx
project (Salon Management).pptxproject (Salon Management).pptx
project (Salon Management).pptxssuserefca8b
 
IRJET- Displaying Smart Phone Data in the Desktop using Firebase
IRJET- Displaying Smart Phone Data in the Desktop using FirebaseIRJET- Displaying Smart Phone Data in the Desktop using Firebase
IRJET- Displaying Smart Phone Data in the Desktop using FirebaseIRJET Journal
 

Similaire à Etaxi Documentation (20)

Project synopsis.
Project synopsis.Project synopsis.
Project synopsis.
 
Online Tours and travel
Online Tours and travelOnline Tours and travel
Online Tours and travel
 
Project report
Project report Project report
Project report
 
A CASE Lab Report - Project File on "ATM - Banking System"
A CASE Lab Report - Project File on  "ATM - Banking System"A CASE Lab Report - Project File on  "ATM - Banking System"
A CASE Lab Report - Project File on "ATM - Banking System"
 
MIS330FinalReport
MIS330FinalReportMIS330FinalReport
MIS330FinalReport
 
bus reservation.pptx
bus reservation.pptxbus reservation.pptx
bus reservation.pptx
 
11.online library management system
11.online library management system11.online library management system
11.online library management system
 
new ASE GROUPWORK.docx
new ASE GROUPWORK.docxnew ASE GROUPWORK.docx
new ASE GROUPWORK.docx
 
Hospital E-Token Management(outdoor)
Hospital E-Token Management(outdoor)Hospital E-Token Management(outdoor)
Hospital E-Token Management(outdoor)
 
Tourism management system_REPORT.pdf
Tourism management system_REPORT.pdfTourism management system_REPORT.pdf
Tourism management system_REPORT.pdf
 
Online bus ticket booking
Online bus ticket bookingOnline bus ticket booking
Online bus ticket booking
 
Smart Traffic Monitoring System Report
Smart Traffic Monitoring System ReportSmart Traffic Monitoring System Report
Smart Traffic Monitoring System Report
 
ProjectPDF_pagenumber.docx project documentation
ProjectPDF_pagenumber.docx project documentationProjectPDF_pagenumber.docx project documentation
ProjectPDF_pagenumber.docx project documentation
 
Mobile shopping
Mobile shoppingMobile shopping
Mobile shopping
 
Employee Management System
Employee Management SystemEmployee Management System
Employee Management System
 
System analysis and_design.docx
System analysis and_design.docxSystem analysis and_design.docx
System analysis and_design.docx
 
Synopsis on billing system
Synopsis on billing systemSynopsis on billing system
Synopsis on billing system
 
Issue Management System
Issue Management SystemIssue Management System
Issue Management System
 
project (Salon Management).pptx
project (Salon Management).pptxproject (Salon Management).pptx
project (Salon Management).pptx
 
IRJET- Displaying Smart Phone Data in the Desktop using Firebase
IRJET- Displaying Smart Phone Data in the Desktop using FirebaseIRJET- Displaying Smart Phone Data in the Desktop using Firebase
IRJET- Displaying Smart Phone Data in the Desktop using Firebase
 

Etaxi Documentation

  • 2. -1- Table of Contents Declaration 4 Acknowledgements 5 Abstract 6 Chapter one 1. Introduction and project planning 8 1.1. Project Objective 8 1.2. System stack holders definition 8 1.3. Project Scope definition 11 1.4. Used technologies (software solutions) 11 1.5. Problem analysis 13 1.6. Feasibility study 13 1.7. The system Development life cycle 14 Chapter two 2. Overall description 17 2.1. System description 17 2.2. System functions 17 2.3. System features 17 2.4. Operating Environment 18 Chapter three 3. Requirements and Constrains 20 3.1. Functional requirements 23 3.2. Nonfunctional requirements 24 -Performance requirements - Information requirements
  • 3. -2- - Efficiency requirements - Service Requirements 3.3. System Constraints 24 Chapter four 4. System Design 27 4.1. Database logical and physical Design 27 4.2. Process design and Class Diagram 35 4.2.1. Use case diagrams and Use Case text 35 4.2.2Sequence diagrams 44 4.2.3. Class diagram 45 4.2.4 Activity diagram 47 4.2. 5 Interface design 48 References 63
  • 4. -3- List of Figures and Tables Figure Name Page 1.1 System Stakeholders 9 1.2 Systems development life cycle 15 2.1 System Features 18 4.1 System EERD 27 4.5 Database Diagram From Oracle 31 4.7 Online Data base schema from SQL Server 33 4.10 Use Case diagram 36 4.11 System Sequence diagram 44 4.12 Class diagram 45
  • 5. -4- Declaration We hereby declare that the project entitled “Electronic Taxi online booking (E-Taxi)” submitted for the Diploma Degree is our original work and the project has not formed the basis for the award of any degree, associate ship, fellowship or any other similar titles. Name Signature 1 Fathy Ahmed Mohamed 2 Mohamed Sabar Abd El Hameed 3 Taha Mohamed Soliman 4 Reda Mohamed Metwaly 5 Mahmoud Abd El Basat Hekil Place: Institute of Statistical Studies and Research – Cairo University Date: 23-6-2016
  • 6. -5- Acknowledgments ‫هللا‬ ‫بسم‬‫م‬ ‫رحمن‬ ‫ا‬ ‫رحمن‬ At the beginning and at the end we all thank Allah for helping us to achieve this work and ask Allah to benefit us with what he taught us and teach us what will benefit us. Also the achievement of this piece of work wouldn’t be to see the light without the support, help and contribution of: Professor: Hisham Hefni the acting head of the computer science and information system department for his support and advice. Doctor: Ahmed Hamaza supervisor of our graduation project. All the faculty members who taught us during our study in the degree program. Finally we thank our families for supporting us and helped us to reach so far and to have the tolerance to face difficulties and keep up.
  • 7. -6- Abstract Our system it develops, markets and operates the mobile app, which allows consumers with smartphones to submit a trip request which is then routed to drivers who use their own cars or drive company cars. To passengers, our system is essentially synonymous with taxis, and to drivers, it’s basically a referral service. The Android, iOS and Windows Phone app connects riders with drivers using their phone’s GPS capabilities, letting both parties know one another’s location and removing the question of when the ride will actually arrive. In addition, the tech company also processes all payments involved, charging the passenger’s credit card, and direct depositing the remaining money into the driver’s account, all in the background and completely cashless. The System Architect build based on the most modern technologies and concepts from the idea of using smartphones to the software architect of SOA (Service-Oriented Architecture) Considering the new and modern software methodologies and concepts we chose to use the Unified Process (UP) model to construct our system. Which gives us the most flexibility to develop our system and finalize software process stages. Finally we consider of using the most productivity and capability tools for development our system including (Databases, Software, User interfaces and documentation).
  • 9. -8- Project planning 1- Introduction the idea on E-Taxi is evolving the way the world moves. By seamlessly connecting passengers to drivers through our apps, we make cities more accessible, opening up more possibilities for passenger and more business for drivers , Get a reliable ride in minutes with the E-Taxi app, no reservations or waiting in taxi lines, from low-cost to premium, every ride option feels like an upgrade to the everyday. Create your account using a credit card or PayPal, and your fare will be charged automatically at the end of your ride. You can also pay with cash in select cities. 1.1 Project objectives as the ideas, thoughts and product designs began to accumulate our main objective to provide you, the customer, with a safe, reliable and easy taxi service, still proved to be the focal point. We believe that in today’s day and age, one should have confidence that their taxi will arrive on time and that you will not be over charged, and for these reasons,we introduced the much needed transparency 1.2 Project Stack holders When we come to the designing of the information system, a term often make us think; who are Stakeholders? So let us define this with the formal definition and it goes like this. ‘Any person whohas interests inan existingor proposed informationsystem.Stakeholders may include both technical and non-technical workers. They also may be the internal ones or may be the external one.’ So I think the idea of ‘Who are stakeholders?’ has come to the mind. In building the information system the system owners, system users, system designers, system builders and all of the above system analysts and the project managers all these are commonly known as the stakeholders. Whatever their roles in an organization are it doesn’t matter, all the thing common in them are that, they are information workers. Let us explore a little deep to the stakeholders:
  • 10. -9- Figure(1.1) System Stakeholders System Stack holders System Owner System Users Internal System Users Technical and Professional staff Supervisors, Middle managers and executive managers External Users Customers System Designers Database Administrators Network Architects Web Architects Graphics Artists Security Experts Technology specialists System Builders Application programmers System programmers Databases Programmers Network Administrators Security Administrators Webmasters Software Integrators System Analysts
  • 11. -10- System owners: An information system’s sponsor and executive advocate usually responsible for funding the project of development, operating and maintaining the information system. In this system the system owners are the companies who intend to work on electronic taxies field. System users: Is the customer who will use the system or is affected by an information system on a regular basis – capturing, validating, entering, responding to, storing, and exchanging data and information. In this system the system Users classified as internal and external users A- Internal System users 1- Technical and professional staffs which are the staff will operate and maintain system events like Driver registration approval block users or Drivers 2- Supervisors, Middle managers and executive managers which are the staff of managers need generate reports from the system like system cash flow B- External System User 1- Customers any external user have an registration ID will be customer and both of trip requester or driver are customers on our system System Designers: a technical specialist who translates system users’ business requirements and constraints into technical solution. She or he designs the computer databases, inputs, outputs, screens, networks, and software that will meet the system users’ requirements. A- Database Architect (DBA) creates and manages large and expansive electronic databases to store and organize vast amounts of data. This is a highly skilled profession that is integral to most modern businesses. A person in this position will work closely with software designers, design analysts and others to create comprehensive databases that may be used by hundreds if not thousands of people.
  • 12. -11- B- Network Architects C- Web Architects D- Graphics Artists E- Security Experts F- Technology specialists System builders: a technical specialist who constructs information systems and components based on the design specifications generated by the system designers. A- Application programmers G- System programmers H- Databases Programmers I- Network Administrators J- Security Administrators K- Webmasters L- Software Integrators Systems analyst: a specialist who studies the problems and needs of an organization to determine how people, data, processes, and information technology can best accomplish improvements for the business. Business analyst focuses on only the nontechnical aspects of systems analysis and design. 1.3 Project Scope definition The scope of the project includes and focuses managing the operation of booking taxies online adding availability to users to customize their needs comforts issues. 1.4 Used Technologies and Tools 1- Database
  • 13. -12- a- Oracle Database XE 12 *Used to develop local database to create diagrams. c- Microsoft SQL Server 2012 database Engine *Used to create online database and final relational database diagrams. 2- Programming Language and Technologies a- Visual C# 6 b- ASP.Net MVC *Used to create web site and web administration application c- ASP.Net Web API *Used to create web service d- Xamarin Framework e Microsoft XAML *Used to create mobile app using c# f- HTML 5,CSS3 g- JavaScript & JQuery h- Bootstrap *f & g & h Used to create web site and web administration application user interfaces 3 Tools a- Microsoft Visual Studio 2015 b Oracle JDeveloper 12 c c Oracle WebLogic Server d Microsoft Android Emulator e Microsoft SQL Server Management studio f Oracle SQL Developer 4.1.3 g Google Chrome Developer Tools
  • 14. -13- 1.5 Problem analysis Risks involved in existing system. 1.6 Feasibility study: The objective is to determine whether or not the proposed system is feasible. The three tests of feasibility have been carried out: A- Technical feasibility B- Economic feasibility C- Operational Feasibility Technical feasibility: In technical feasibility one has to test whether the proposed system can be developed using the existing technology. It is a study of resource availability that may affect the ability to achieve an acceptable system. This evaluation determines whether the technology needed for the proposed system is available or not. As the available technical resources (such as Microsoft SQL server, Microsoft ASP.NET… etc.) are so satisfactory for the scope of the proposed system, the proposed system considered technically feasible.
  • 15. -14- Economic feasibility: The costs and benefits associated with the proposed system compared and the project is economically feasible if tangible or intangible benefits out weight cost. As the proposed system development costs are significant as estimated so the system proposed considered feasible economically. Operational Feasibility: It is a standard that ensures interoperability without stifling competition and innovation among users, to the benefit of the public both in terms of cost and service quality. It is mainly related to human organizations and political aspects. In operational feasibility the following points are studded: - The impact of the changes would be made by the new system. - The organization structure that might be disturbed by functioning the new system. - The gap between the skills that the staff of the organization /s that would use the system and the skills needed by the system to operate appropriately. The system is operationally feasible as it very easy for the End users to operate it, its functioning disturbs no other organization structures, and it have no undesired changes to be made by its functionality. 1.7 The system Development life cycle: System development process: a set of activities, methods, best practices, deliverables, and automated tools that stakeholders use to develop and maintain information systems and software. System Development Process Overview: The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software
  • 16. -15- engineering to describe a process for planning, creating, testing, and deploying an information system.[1] The systems development life-cycle concept applies to a range of hardware and software configurations, as a system can be composed of hardware only, software only, or a combination of both Figure (1.2) Systems development life cycle System Planning: the initial planning for a project to define initial business scope, goals, schedule, and budget. System analysis: the study of a business problem domain to recommend improvements and specify the business requirements and priorities for the solution. System design: the specification or construction of a technical, computer-based solution for the business requirements identified in a system analysis. System implementation: the construction, installation, testing, and delivery of a system into production.
  • 18. -17- Overall Description 2.1. System description: The system is a Mobile based application and Web based application. The Web based application is just some of pages guide the visitor to download the mobile application form the mobile OS platform store like (Android store – apple store – windows store), about us and feedback. The mobile based application is the main app manage customer registration, edit login, get ride, become a driver, etc. 2.2. System functions: A- User registering B- User Login C- Edit Profile D- Request ride E- Become a driver F- Evaluate a ride G- information about all your ride H- Deactivation your account 2.3. System Features: The following figure illustrates the features of the new system over the existing systems Feature Uber Cream Our System Notes Mobile Application
  • 19. -18- Support all Egypt Cites Can support local companies Driver Evaluation Rating through the app Rating through SMS only Rating through APP & SMS Support Regular Taxi Car Table (2.1) System Features 2.3 Operating Environment: The system typically requires one server for small business or form demo and it may run from any other personal or laptop computer and need to install mobile application on mobile to can connect the server
  • 21. -20- Requirements Requirements analysis The requirement analysis phase is the most important phase along the phases of the information system development process in this system and any other information system. Inadequate attention to that phase always results in user disagreements and dissatisfaction of the system or some functions of the system which would be so costly to get over. There is a 7 common fact finding techniques for gathering user requirements which are: bservation of work environment Each technique has its advantages and disadvantages. It is never better to consider one of them is the best technique while the efficiency of the used technique differs from a system to another depending on the nature of the system and the working environment. 1- Sampling of existing documentation, forms and databases. The following screen shots were collected (only sample of the gathered screen shots
  • 22. -21-
  • 23. -22- 2- Observation of work environment The advantages of this technique are: Data gathered based on observation can be reliable.
  • 24. -23- The system analyst is able to see exactly what is being done. Observation is relatively inexpensive compared with other techniques. Because of the important advantages of this technique it has been used along with other used techniques for fact finding techniques for this project. 3- Interviews The type of interview used is the unstructured open-end interview. This method was choosing because of the nature of the interviewees (students’ doctors and heads of departments). 3.1 Functional requirements: Functional requirements are a description of activities and services a system must provide. ored data The functional requirement of the proposed system according to the specified scope can be divided to data requirements, process requirements and interface requirements. First: data requirements as inputs and outputs The system must handle the following inputs: 1- Allow user to enter its personal data like first name , last name , mobile number , addresses , email to can register on our system 2- Allow user to enter Location through GPS location system atomically or manual through map 3- Allow user to set it ride target using map 4- Allow user to can evaluate driver if it passenger or evaluate customer if it driver 5- Allow Driver set it availability status Second: process function all requirements The main process the system must allow customer ride request and it is request must be service Third: Interface requirements
  • 25. -24- The interface should be available for users all the time and they can access it from anywhere. 3.2 Non Functional requirements: A description of other features, characteristics, and constraints that define a satisfactory system. • Performance, ease of learning and use, budgets, deadlines, documentation, security, internal auditing controls The non-functions requirements of the system are: - The system should have a user friendly interface which is simple and easy to use and understand. - The system should be highly secured. - The system should have an interface for news. 3.3 System Constraints: The primary impact of project constraints is the likelihood of delaying the completion of the project. There are three types of project constraints: - Technological - Resource - Physical The technological constraints Relate to the sequence in which individual project activities must be completed.
  • 26. -25- Resource constraints Relate to the lack of adequate resources which may force parallel activities to be performed in sequence. The consequence of such a change in network relationships is delay in the completion date of the project. Physical constraints Are caused by contractual or environmental conditions.
  • 28. -27- System Design 4.1. Database Design Figure (4.1) System EERD
  • 29. -28- A close up view of the User entity type: Figure(4.2) User Entity Close Up View A close up view of the of Car entity type:
  • 30. -29- Figure(4.3) Car Entity Close Up View A close up view of the Trip Entity:
  • 31. -30- Figure(4.4) Trip Entity Close Up View The Entity-Relationship Diagram of the conceptual model Database Diagram
  • 32. -31- Figure (4.5) Database Diagram From Oracle Creating SQL Database using SQL DDL
  • 33. -32- Figure(4.6) Creating SQL Database using SQL DDL in Oracle SQL Developer Online Data base schema from SQL Server
  • 34. -33- Figure (4.7) Online Data base schema from SQL Server
  • 35. -34- Figure(4.8) Online Data base schema from SQL Server With Data Types
  • 36. -35- 4.2 Process design: Figure(4.9) Process design 4.2.1 System Use Case diagram and text:
  • 38. -37- Use Case Name Apply for an account Happy Scenario The Client download the Application Mobile and he/she can create account. If he/she want to create driver account he must match with eTaxi's legal conditions,he/she can fill in dataform, and then he/she sends the form and waits for a reply from the eTaxi Admin to complete opening the Driver account. Sad Scenario The Client can’t open account driver if he/she doesn't satisfy eTaxi’s legal conditions. Use Case Text Use Case Name Log in Case Happy Scenario The user (client/admin) enters his/her user name , password , and account number ,then validation with the database is being processed Credentials is correct and the login process succeeded and the user now can see his/heraccount dashboard. Sad Scenario The user (client/admin) enters his/her user name, password, and account number, then validation with the database is being processed. A login failure message appears due to incorrect username,password or account number. The user (client/admin) enters his/her user name, password, and account number, then validation with the database is being processed. A login failure message appears due to insufficient connection with the database.
  • 39. -38- Use Case Name Check In Case Happy Scenario The user (client/driver) can check in to order to determine address, then they can used process and start Trips. Sad Scenario The user (client/driver) can check in to order to determine address ,but unavailable GPS or Data Cementation for network so they can’t used process and start Trips . Use Case Name Client Send Request to Driver Case Happy Scenario The user (client) can send request to Driver and if he available and accept request. the Client can used process and start racing Trips. The userafterthe completion of the trip can request other trips, and so on Sad Scenario The user (client) can’t send request to Driver because not have mobile or unavailable GPS or Data Cementation for network.In this case, can’t sent request to driver and not start any flights Use Case Name Driver Receive Request from Client Case Happy Scenario The user (Driver) can be received request from Clients and he approved the start flight. After the completion of the trip can receive other trips from Clients ,and so on
  • 40. -39- Sad Scenario The user (Driver) can’t be received request from Clients or the Driver not available or Busy or Status Account off Trips. In this case, can’t receive any flights Use Case Name Flight status of the Client Happy Scenario After starting flight , the Client enjoy the trip to safely even to arrive in his goal . when At the end of flight . the client can be make to evaluation of the driver and after that start the process of payment based on type payment it’s which selected in your account , or start the process of payment without evaluation of the driver Sad Scenario After starting flight , may not be up to your goal . For some reason malfunction in the car or the occurrence of an emergency such as disasters Use Case Name Flight status of the Driver Happy Scenario After starting flight , the Driver can to enjoy the racing trip to safely when to arrive in the goal . So the afterat the end of flight . the Driver can be make to evaluation of the client and after that start the process of receive payment from client based on type payment That was previously selected in your account , or start the process of payment without evaluation of the driver Sad Scenario After starting flight , may not be up to your goal . For some reason malfunction in the car or the occurrence of an emergency such as disasters Candidate Keys Abstraction Model 1-Apply for an account:
  • 41. -40- Candidate Key Abstraction Reason for elimination Selected component name Guest Actor -- Website The whole System -- Account -- Account Bank Same as website -- Conditions BR -- Data form registration -- Registration Reply NFR -- 2-Log in: Candidate Key Abstraction Reason for elimination Selected component name User -- User Client Same as user -- Admin Same as user -- User Name Attribute of user -- Password Attribute of user -- Account number Attribute of account -- Validation BR -- Database -- -- Credentials Attributes of user -- Login process BR -- Account dashboard NFR -- Login failure message NFR -- 8-Messaging (compliance):
  • 42. -41- Candidate Key Abstraction Reason for elimination Selected component name Admin actor -- User -- user System The whole system -- Message -- messaging Inquiry NFR -- 9-Admin lock account: Candidate Key Abstraction Reason for elimination Selected component name Admin Actor Notification Attribute for messaging User User Account Account Request BR Class ResponsibilityCollaborator (CRC) Model Driver Responsibilities Collaboration
  • 43. -42- User-name; Password; First-name; Last-name; Licenses No ; Phone-number; Unit Traffic Center Licenses Driver Register new Driver(); Client (Users) Responsibilities Collaboration Account-number; User-name; Password; First-name; Last-name; Address; Phone-number; Registration Client Shows users of the Client() Messaging (compliance) Responsibilities Collaboration messageValue fromUser toUser date Account User Register branches sendMessage() ReplyMessage() Admin
  • 45. -44- 4.2.2 System Sequence diagrams Figure(4.11) System Sequence diagram
  • 49. -48- 4.2.5 Interface Design Figure(4.14) Application Logo On Android Phone Figure(4.15) Application Splash Scrren On Android Phone
  • 52. -51- Figure(4.20) Application Driver Main Menu Figure(4.21) Application Booking Page
  • 58. -57- Figure(4.27) Web Administration Control Panel Home Form Figure(4.28) Web Administration Users List Form
  • 59. -58- Figure(4.29) Web Administration Edit User Form <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="ETaxi.Views.Register" Title="Registration Form"> <ScrollView> <Grid > <Grid.RowDefinitions> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> <RowDefinition Height="auto"/> </Grid.RowDefinitions> <Label x:Name="lblError" TextColor="Red" Grid.Row="0"/> <Entry x:Name="txtName" Placeholder="User Name" Grid.Row="2"/> <BoxView Color="Silver" HorizontalOptions="Fill" HeightRequest="3" Grid.Row="5"/> <Entry x:Name="txtEmail" Placeholder="Email" Grid.Row="6"/> <Entry x:Name="txtPhoneNumber" Placeholder="Phone Number" Grid.Row="7"/> <BoxView Color="Silver" HorizontalOptions="Fill" HeightRequest="3" Grid.Row="8"/> <Entry x:Name="txtPassword" Placeholder="Password" IsPassword="True" Grid.Row="9"/>
  • 60. -59- <Entry x:Name="txtConfirmPassword" Placeholder="Confirm Password" IsPassword="True" Grid.Row="10"/> <BoxView Color="Silver" HorizontalOptions="Fill" HeightRequest="3" Grid.Row="11"/> <Button x:Name="btnReg" Text="Register" Grid.Row="12"/> </Grid> </ScrollView> </ContentPage> Figure(4.30) Mobile App UI Code Sample @model Etaxi_Admin.Models.DB_Model.AspNetUser @{ ViewBag.Title = "Create"; } <h2>Create</h2> @using (Html.BeginForm()) { @Html.AntiForgeryToken() <div class="form-horizontal"> <h4>AspNetUser</h4> <hr /> @Html.ValidationSummary(true, "", new { @class = "text-danger" }) <div class="form-group"> @Html.LabelFor(model => model.Id, htmlAttributes: new { @class = "control-label col-md- 2" }) <div class="col-md-10"> @Html.EditorFor(model => model.Id, new { htmlAttributes = new { @class = "form- control" } }) @Html.ValidationMessageFor(model => model.Id, "", new { @class = "text-danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.Email, htmlAttributes: new { @class = "control-label col- md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.Email, new { htmlAttributes = new { @class = "form- control" } }) @Html.ValidationMessageFor(model => model.Email, "", new { @class = "text-danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.EmailConfirmed, htmlAttributes: new { @class = "control- label col-md-2" }) <div class="col-md-10"> <div class="checkbox"> @Html.EditorFor(model => model.EmailConfirmed) @Html.ValidationMessageFor(model => model.EmailConfirmed, "", new { @class = "text-danger" }) </div> </div> </div>
  • 61. -60- <div class="form-group"> @Html.LabelFor(model => model.PasswordHash, htmlAttributes: new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.PasswordHash, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.PasswordHash, "", new { @class = "text- danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.SecurityStamp, htmlAttributes: new { @class = "control- label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.SecurityStamp, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.SecurityStamp, "", new { @class = "text- danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.PhoneNumber, htmlAttributes: new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.PhoneNumber, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.PhoneNumber, "", new { @class = "text- danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.PhoneNumberConfirmed, htmlAttributes: new { @class = "control-label col-md-2" }) <div class="col-md-10"> <div class="checkbox"> @Html.EditorFor(model => model.PhoneNumberConfirmed) @Html.ValidationMessageFor(model => model.PhoneNumberConfirmed, "", new { @class = "text-danger" }) </div> </div> </div> <div class="form-group"> @Html.LabelFor(model => model.TwoFactorEnabled, htmlAttributes: new { @class = "control- label col-md-2" }) <div class="col-md-10"> <div class="checkbox"> @Html.EditorFor(model => model.TwoFactorEnabled) @Html.ValidationMessageFor(model => model.TwoFactorEnabled, "", new { @class = "text-danger" }) </div> </div> </div> <div class="form-group"> @Html.LabelFor(model => model.LockoutEndDateUtc, htmlAttributes: new { @class = "control- label col-md-2" }) <div class="col-md-10">
  • 62. -61- @Html.EditorFor(model => model.LockoutEndDateUtc, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.LockoutEndDateUtc, "", new { @class = "text-danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.LockoutEnabled, htmlAttributes: new { @class = "control- label col-md-2" }) <div class="col-md-10"> <div class="checkbox"> @Html.EditorFor(model => model.LockoutEnabled) @Html.ValidationMessageFor(model => model.LockoutEnabled, "", new { @class = "text-danger" }) </div> </div> </div> <div class="form-group"> @Html.LabelFor(model => model.AccessFailedCount, htmlAttributes: new { @class = "control- label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.AccessFailedCount, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.AccessFailedCount, "", new { @class = "text-danger" }) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.UserName, htmlAttributes: new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.UserName, new { htmlAttributes = new { @class = "form- control" } }) @Html.ValidationMessageFor(model => model.UserName, "", new { @class = "text- danger" }) </div> </div> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value="Create" class="btn btn-default" /> </div> </div> </div> } <div> @Html.ActionLink("Back to List", "Index") </div> @section Scripts { @Scripts.Render("~/bundles/jqueryval") } Figure(4.31)
  • 63. -62- Web Administration UI Code Sample Figure(4.32) Web Site Home Page Screen
  • 64. -63- References 1- Ramez Elmasri and Shamkant B. Navathe ," FUNDAMENTALS OF Database Systems" SIXTH EDITION Addison-Wesley 2011 2- Whitten, Bentley, “Systems Analysis and Design Methods”, 7thEdition, McGraw-Hill Publishing Company, 2007. 3- Bruegge, Bernad, and Dutoit, Allen H., “Object-Oriented Software Engineering: Using UML, Patterns and Java”, Second Edition, Pearson Education Limited, 2004 4- Craig Larman, Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd Edition, 2004 5- Cristian Darie, Wyatt Barnett, and Tim Posey, " Build Your Own ASP.NET 4 Website Using C# & VB" SitePoint Pty. Ltd 2011