Taxicab Company
-
Upload
ricky-thapar -
Category
Documents
-
view
62 -
download
2
Transcript of Taxicab Company
ABC-Taxi Cab Company| System Analysis and Design 1
The idea of this document is to create an
analysis of the ABC – Taxi Cab Company to
understand their actual operation and give
some improvements for the companies
better performance
ABC-Taxi
Cab
Company Isqs 7338 System Analysis
and Design
Aliza Levinsky
ABC-Taxi Cab Company 2
Table of Contents
INTRODUCTION DELIVERABLE 1 ........................................................................................................... 3
Identification of Domain objects and their attributes ................................................................ 3
Relationships among objects ...................................................................................................... 7
Domain Class Diagram ........................................................................................................... 9
INTRODUCTION DELIVERABLE 2 ......................................................................................................... 10
Business User Functions ............................................................................................................ 10
Identification of activities .......................................................................................................... 11
Cluster of Activities ................................................................................................................... 13
Identification of actors .............................................................................................................. 14
Context Level Diagram .............................................................................................................. 16
Level 0 Business Use Case Diagram ........................................................................................... 16
Level 1 System Use Case Diagram ............................................................................................. 17
Maintain Cab ............................................................................................................................. 17
Dispatch Cab .............................................................................................................................. 17
Handle Daily Operations ........................................................................................................... 18
Administer System .................................................................................................................... 18
Activity Diagram Fill Work Sheet ............................................................................................... 19
INTRODUCTION DELIVERABLE 3 ......................................................................................................... 20
Login Page ................................................................................................................................. 20
Main page .................................................................................................................................. 21
Menu Screen ............................................................................................................................. 23
Data entry/query screens .......................................................................................................... 24
Interaction Diagrams ................................................................................................................. 26
Design class diagram ................................................................................................................. 28
WORKS CITED ............................................................................................................................................. 29
ABC-Taxi Cab Company 3
Introduction Deliverable 1
The main purpose of this document is to analyze the ABC Taxi Cab Company , This company is licensed to operate Taxi Cab service in the Lubbock area. The Company has been in business for the past five years. This document possess and analysis of the ABC Taxi Cab Company and its actual operation. In this fist analysis I have include
1. Identification of domain objects and their attributes
2. Relationships among the objects
3. Domain Class Diagram.
Identification of Domain objects and their attributes
In order to identify the objects of the ABC- Taxi Cab Company. A table of objects, clustered with its attributes has been created
Data List Cluster
Company.-The object contains the attributes that a company has.
CompanyID CompanyName CompanyStreet CompanyCity CompanyState CompanyZipCode CompanyTelephone CompanyWebPage
Employee.-The object contains the attributes that any employer in the company has.
EmployeeID EmployeeFirstName EmployeeLastName EmployeeStreet EmployeeCity EmployeeState EmployeeZipCode EmployeeTelephone EmployeeMail EmployeeDOB EmployeeSex EmployeeStartDate
Driver.-This object contains the attributes that are particular to a driver
DriverShiftPreference
Dispatcher.-This object belongs to the class employee
ABC-Taxi Cab Company 4
Mechanic-This object belongs to the class employee
ManagementControl-This object belongs to the class employee
Customer.-This object contains the attributes of a customer
CustomerID, CustomerFirstName CustomerLastName CustomerStreet CustomerCity CustomerState CustomerZipCode CustomerTelephone CustomerMail CustomerDOB CustomerSex
Outside Customer.-This object is an extension of Customer, for those outside customer who require maintenance
OutsiderCustomerNo OutsiderCustomerName OutsiderCustomerLastName OutsiderCustomerAddress OutsiderCustomerTelephone
Call.- This object defines the attributes of the call of a Client
CallID CallType CallDate
DriverCall.- This object defines the attributes of the call of a Driver
DriverCallLocation DriverCallStatus
FareRequest.- This object contains the attributes of the fares for being able to give information to the customers
Fare ID FareFrom FareTo FareAmountPerMile FareAmount
Complaints.- T This object contains the attributes of complaints a customer can make trough a call
ComplaintID CamplaintType ComplaintDescription
Work Shift.-This object contains the attributes of each service or shift that a driver does.
ShiftID ShiftDate ShiftStartTime ShiftEndTime ShiftDuration ShiftArea
Pickup.-This object contains the attributes of the pickup of each shiftwork.
PickupID PickupMileage PickupFuelLevel
Dropback.- This object contains the attributes of the dropback of each shiftwork.
DropbackID DropbackMileage
ABC-Taxi Cab Company 5
DropbackFuelLevel DropbackFillups DropbackFare DropbackTips DropbackMaintenanceRequest
VehicleThis object contains the attributes of the Taxi Vehicle.
TaxiID TaxiModel TaxiVin TaxiYear TaxiStatus
Area.- This object contains the attributes of the eight different areas available
AreaID AreaDesc
Maintenance.-This object contains the attributes of the services done to the cars (Preventive or repair)
MaintenanceID MaintenanceStartDate MaintenanceEndDate MaintenanceStartTime MaintenanceEndTime MantainanceType
Preventive maintenance.-This object contains the attributes of the preventive maintenance that belong to class maintenance
PreventiveMaintenanceType PreventiveMaintenanceCos
Repair maintenance This object contains the attributes of the repair maintenance that belong to class maintenance
RepairMaintenanceType RepairMaintenanceCost
Journey This object contains the attributes of the Journey that belong to class maintenance
JourneyID JourneyStartMile JourneyEndMile JourneyCharges JourneyStartTime JourneyFinishTime
CheckRegister.- object contains the attributes of necessary to perform the payroll
CheckNumber CheckDate CheckAmount CheckTax CheckGrossPay CheckNetPay
DriverPickupCustomer.- Driver ask for permission to pick up cars
DriverPickupCustomer PermissionCode DriverPickupCustomerDate DriverPickupCustomerTime
Application.- Application related432 ApplicationPoliceRecords ApplicationEmploymentHistory ApplicationStatus ApplicationEntraceDate
ABC-Taxi Cab Company 6
Derived Data objects
1.-Daily Expenses report (operating)
2.-Areawise operating expenses Revenue Tips Number of trips Number of miles driven Number of miles income earned
3.- Car hours total and break of Car hours idle, Car hours down in servicing Car hours that were run Car hours that were income generating
4.- Employee (cab driver) payroll info Pick-up time Drop-off time, Break hours Number of journeys Useful miles driven Unusual miles driven Total fares collected Total tips collected
Table 1 Data List
ABC-Taxi Cab Company 7
Relationships among objects
1 to many between Company and Employee (hires)
1 to many between Company and Vehicle (owns)
1 to many between Mechanic and Outside customer (receives)
1 to many between Control manager and Mechanic (assign)
1 to many between Control manager and CheckRegister (creates)
1 to many between Employee and CheckRegister (gets)
1 to many between Dispatcher and Driver (select)
1 to many between Dispatcher and Work shift (schedule)
1 to many between Dropback and Journey (implies)
1 to many between Vehicle and Journey (take for)
1 to many between Vehicle and WorkShift (participate)
Generalization: 1 to 1 between Employee and Control Manager (include)
Generalization: 1 to 1 between Employee and Driver (include)
Generalization: 1 to 1 between Employee and Dispatcher (include)
Generalization: 1 to 1 between Employee and Mechanic (include)
Generalization: 1 to 1 between Repair Maintenance and Maintenance (include)
Generalization: 1 to 1 between Preventive Maintenance and Maintenance (include)
Generalization: 1 to 1 between Driver Call to Call (include)
Generalization: 1 to 1 between Complaints to Call (include)
Association: between Work Shift and Pickup
Association: between Work Shift and Drop back
1 to 1 or more between Mechanic and Maintenance (performs)
1 to 1 or more between Driver and Call (pick)
1 to 1 or more between Control Manager and Application (revise)
1 to 1 or more between Dispatcher and Vehicles (provides)
1 or more to 1 or More between Outside Customer and Maintenance (ask)
1 to 0 or 1 between Application and Driver (submit)
1 to 0 or more between Dispatcher and Call (answer)
1 to 1 Journey to Call (receives)
1 to 1 Journey to Area (pertains)
1 or more to many between Are and Fare request (takes)
Many to many between Call and Customer (make) o Class: DriverPickCustomer
ABC-Taxi Cab Company 8
ABC-Taxi Cab Company| System Analysis and Design 9
Domain Class Diagram
ABC-Taxi Cab Company| System Analysis and Design 10
Introduction Deliverable 2
The main purpose of this document is to start a functional analysis of the ABC Taxi Cab Company, making use of the use case model. In this analysis I have included
1. Identification of business (users) functions 2. Identification of actors 3. Use case model showing three levels of user’s functions, including misuse
cases 4. Activity diagram of the Level 1 Use Case
Business User Functions
The primary activities that are performed by the ABC Taxi Cab Company are:
o Maintain cabs.-This activities deal with the maintenance and repair of the cars to actual or outside customers.
o Dispatch cabs-This is related to all the activities needed attained the incoming calls and dispatch the cabs
o Handle daily operations.- Is related to the day to day operation, including the schedule of drivers, the manager of paychecks and recruitment, the permission needed by the taxi driver to take car home and to pick up passengers.
o Administer system.-This functional requirement relates to all activities that need to be performed by the System administrator to allow users to use the system. These activities include: handle user connections, administer users roles, administer user privileges
These main activities are taken from the identification of all the activities described in the case. In the section below I summarized in a table all this activities that are performed by ABC Taxi Cab Company.
ABC-Taxi Cab Company 11
Identification of activities
The description of the activities of the company and the owners of these activities are presented in their following table.
Activity Responsible
Preventive maintenance
Maintenance department
Repair maintenance
Maintenance department
Sell services preventive and repair maintenance Maintenance department
Responsible for planning, Management Control
Responsible Policy setting Management Control
Responsible Financing Management Control
Responsible for Payroll Management Control
Responsible Accounting Management Control
Responsible Recruitment Management Control
Responsible Advertising Management Control
Review applications for Cab drivers Management Control
Scrutinizes applications (police records, prior employment history)
Management Control
Save recruitment in files Management Control
Selects Cab drivers that are work in the month Management Control
Send driver list to dispatching department Dispatching
Detail daily schedule Dispatching
Detail weekly schedule Dispatching
Match drivers preferences Drivers
Pick-up Cabs. Driver
Fill out a “shift work sheet form Driver
Filled out “Pickup Information” ( name, i.d. number, Cab number, Cab status, mileage, fuel level, pick up time etc.)
Driver
Filled out and “Dropback Information” (mileage, fuel levels, fill-ups made, number of journeys made, details to each journey, fares collected, tips collected )
Driver
Ask for permission to take car home Driver
Authorization for taxi driver to take cars home Dispatching
Hand over car to servicing for routine preventing Dispatching
Hand over car to servicing for maintenance Dispatching
Report necessary drop back” details Drivers
Call in for cabs Customer
Inquire about fares Customer
ABC-Taxi Cab Company 12
Lodge complaint Customer
Finds if car is available in area Dispatcher
Inform the customer when the cab will arrive Dispatcher
Inform the customer the fare Dispatcher
Call in every half hour and inform about location and status
Driver
Ask for permission to pick up passenger Driver
Allow pick up passenger Dispatcher
Give daily feedback to management control 1.-Daily Expenses report (operating) 2.-Areawise operating expenses :a) revenue, b) tips, c) number of trips, d) number of miles driven, e) number of miles income earned 3.- Car hours total and break of: a) car hours idle, b) car hours down in servicing, c) car hours that were run, d) car hours that were income generating 4.- Employee (cab driver) payroll info: a) pick-up time, drop-off time, b) break hours, c) number of journeys, d) useful miles driven, e) unusual miles driven, f) total fares collected, g) total tips collected
Dispatcher
Analyze the feedback to fine –tune operations, maximize profit and provide customer service
Management control
Analyze payroll information Management control
Mail paycheck to employees Number of hours worked x $0.50 + Number of journeys x $1.25 + 30% of fares collected + 100% of tips collected + Bonus = 5% of tips
Management control
Table 2: Activity List
ABC-Taxi Cab Company 13
Cluster of Activities
Maintain Cabs
Schedule Repair
Perform Maintenance
Sell service to outside customer
Dispatch Cabs
Request fare
Lodge Complaint
Assign cab
Fill Work sheet
Handle Daily operations
Schedule driver
Manage paychecks
Manage recruitment
Pick up passenger
Take car home
Administer system
Handle user connections
Administer users roles
Administer user privileges
ABC-Taxi Cab Company 14
Identification of actors
The primary users of the system are going to be the following:
Users Major Activities
Control
Manager
Responsible for handle the following daily operations like:
Manage recruitment
Manage paycheck
Dispatcher Responsible for handle the dispatch cab, it includes activities like:
Request Fare
Lodge Complaint
Assign Cab Responsible for handle the following daily operations like:
Schedule driver
Ask permission to pick up passenger
Ask permission to take car home
Mechanic Responsible for handle the maintenance of the cab, it includes activities like:
Schedule Repair
Perform maintenance
Sell service to outside customer
Driver Responsible for handle the daily operations like:
Schedule Driver
Pick up passenger
Take car home Responsible for handle dispatch activities like:
Fill Work shift Responsible for handle activities ( use cases) to mitigate attacks from misuse cases:
Lock car
Lock transmission
System
Administrator
Responsible for handle the daily operations like:
Handle user connections
Administer user roles
Administer user privileges
ABC-Taxi Cab Company 15
For the misuse case, we can identify the following misactor
Users Major Activities
Thief Responsible for handle the misuse cases
Steal car
Short ignition
Malicious user Responsible for handle the misuse cases
Steal information of paychecks
Hacker Responsible for handle the misuse cases
Dictionary attack
Brute force authentication
ABC-Taxi Cab Company 16
Context Level Diagram
Level 0 Business Use Case Diagram
System
System Administrator
Dispatcher
Control Manager
Mechanic
Driver
ABC Taxi Cab Company
System
Mechanic
Dispatcher
Control Manager
Driver
System Administrator
Mantain Cab
Dispatch Cab
Handle Daily Operation
Administer System
ABC-Taxi Cab Company 17
Level 1 System Use Case Diagram
Maintain Cab
Dispatch Cab
System
Mechanic
Schedule Repair
Perform mantainance
Sell service to outside customers
System
Dispatcher
Driver
Request fare
Assign Cab
Lodge complaint
Fill work shit
ABC-Taxi Cab Company 18
Handle Daily Operations
Administer System
System
Dispatcher
Driver
Schedule driver
Manage paycheck
Manage recruitment
Pickup passanger
Take car home
Control Manager
Thief
Lock car
Lock transmission
Steal car
Short ignition
<<include>>
<<mitigates>>
<<mitigates>>
<<threaten>>
<<threaten>>
<<include>>
Malicious userSteal information
<<threaten>>
Encrypt information
<<mitigates>>
System
Block account after N failed log in attempt
System Administrator
Validate password minimun lenght and complexity
Handle user conecction
Hacker/Malicious user
Brute force authentication
Dictionary attack
<<threaten>>
<<threaten>>
<<mitigates>>
<<mitigates>>
Administer user roles
Administer user privileges
ABC-Taxi Cab Company 19
Activity Diagram Fill Work Sheet
Driver ABC Taxi CAB Co. System
Start Shift Work SheetSelect Option
option selected
Pickup Dropback
pickupdropback
Enter dropback information
Exit
exit
Enter pickup information
Enter journey information
Are there more journeys
yesno
Work Sheet
Enter Work Sheet information
work sheet
ABC-Taxi Cab Company 20
Introduction Deliverable 3
The main purpose of this document is to create the UI and case realization, for the Taxi Driver Company. In this section I have included
1. Login page 2. Main Page 3. Menu screen 4. Two data entry/query screens (forms) 5. Two Interaction diagrams
The system is web-based and menu driven. The screens are based in best
practices of Microsoft design for the applications of CRM.
Login Page
This login page allows users who are already registered to sign in with their
user name and password. If former users have forgotten their password, they can
click the “Forgot Password” link, verify their user information and an email will be
ABC-Taxi Cab Company 21
sent to them which contain their username and password. New users to the
system can click the “New User sign up link” and they can set up a username and
password which allows them to login to the system.
Main page
The general template provides a description of the general layout for all
pages of the ABC Taxi Cab Company
ID Section Section Description
1
User authentication, log off, help, home
This section of the page displays the user’s credentials with a picture and login date (after accepting the login information). It also provides a logout of the system. It also provides de option to go to home, or search registers in all the system.
1
2 2
1
3
3
4
5
6
ABC-Taxi Cab Company 22
2
Page Action Menu
Allows users to link over to pages which will allow them to browse or look over all records in the particular option selected, add new record(s), update record(s), or delete record from a particular page.
3
List
This contains the list of the records, with different attributes, for the record that is selected.
4
Navigation pane
The navigation pane provides access to the sub-menu bar selected from the main menu bar. It contains a list of all elements within the main menu item.
5
Main Menu
This menu contains the main areas of the system that can be access depending in the privileges that very user has.
6
Page Advance
To enable easy navigation among the numerous patient records the page advance toolbar provide quick movement to the next page, previous page the first and the last page as required by the user.
ABC-Taxi Cab Company 23
Menu Screen
The main contains the items pertaining to the Taxi Cab ABC Company
System. It provides buttons that have main links to the major sections in the
system including: Dispatch Cab, Handle Daily Operations, Maintain Cabs, and
Administer System. When one of these options is selected, in the navigation pane
we have the submenu items.
ABC-Taxi Cab Company 24
Data entry/query screens Lodge Complaint
The Lodge Complaint screen shows the creation of a “New Complaint” .
When the screen loads it creates and automatic complaint ID and brings the
dispatchers name. With this form the Dispatcher can enter customer complaints.
For this the dispatcher selects from a dropdown list the customer Name which
brings customer information.
The dispatcher enters the Journey information, which specifies the journey
ID and the Driver Information, finally the dispatcher specifies what type of
complaint the customer is making and any additional description. The fields with*
are mandatory before the system can save the record. The form can be save or
reset.
ABC-Taxi Cab Company 25
Fill Work Sheet
The Fill Work Sheet screen shows the creation of a “New Worksheet”. When
the screen loads it creates and automatic Shift ID and brings the Drivers name.
With this form the Driver can enter the general Work sheet information, and specify
the area, he pickup information the drop back information and as many journeys
as the driver had made during the day. The charges and tips for each journey are
added in the general drop back section
The fields with* are mandatory before the system can save the record. The
form can be save or reset.
ABC-Taxi Cab Company| System Analysis and Design 26
Interaction Diagrams In the next section I present the interaction diagrams for the two screen created
Lodge Complaint
: Dispatcher
ABC Taxi Cab Company Application ComplaintController ComplaintDComplaint CustomerD JourneyDCustomer Journey Driver DriverDWorkSheet WorkSheetD DispatecherDDispatcher
1 : LodgeComplaint()2 : NewComplaintForm()
3 : GetDispacther(DispatcherID)()4 : ReadDispatcher(DispatcherID)()
5 : GetAllCustomers()6 : ReadAllCustomers()
7 : GetAllJourney()8 : ReadAllJourney()
9 : GetAllComplaintType()10 : ReadAllComplaintType()
11 : DisplayComplaintForm
12 : CustomerSelected()13 : CustomerSelected() 14 : GetCustomer(customerID)()
15 : ReadCustomer(customerID)()
16 : JourneySelected()17 : JourneySelected()
18 : Get Journey(JourneyID, WorksheetID)()
19 : ReadJourney(JourneyID, WorksheetID)()
20 : GetWorkSheet(WorksheetID, DriverID)()
21 : ReadWorksheet(WorksheetID, DriverID)()
22 : GetDriver(DriverID)()
23 : ReadDriver(DriverID)()24 : ComplaintSelected()
25 : ComplaintSelected()
26 : GetComplaintType(ComplaintTypeID)()
27 : ReadComplaintType(ComplaintTypeID)()28 : EnterComplaintDescription()
29 : EnterComplaintDescription()
30 : SaveSelected()
31 : SaveSelected()32 : CreateComplaintRecord()33 : HomeSelected()
34 : ResetSeleted()
35 : SearchSelected()
36 : HelpSelected()
37 : LogoutSelected()
ABC-Taxi Cab Company 27
Fill WorkSheet
: Driver
ABC Taxi Cab Company Application
WorkSheetController WorkSheet AreaD JourneyDArea Journey Driver DriverDWorkSheet WorkSheetD
1 : FillWorksheet() 2 : NewWorkSheetForm()
3 : GetAllAreas()4 : ReadAllAreas()
5 : GetDriver(driverID)()6 : ReadDriver(driverID)()
7 : DisplayComplaintForm8 : EnterWorksheetDescription()
9 : EnterWorksheetDescription()
10 : AreaSelected()
11 : AreaSelected()12 : GetArea(areaID)()
13 : ReadArea(areaID)()
14 : EnterPickupInformation()15 : EnterPickupInformation()
16 : EnterDropbackInformation()
17 : EnterDropbackInformation()
18 : EnterJourneyInformation()
19 : EnterJourneyInformation()
20 *[i] : New JourneySelected()
21 *[i] : NewJourneySelected()
22 : DisplayJourneyRow
23 : ResetJourney()
24 : ResetJourney()
25 : SaveSelected()
26 : SaveSelected()27 : CreateWorksheet(worksheetDetail, pickupDetail, dropbackDetail)()
28 : CreateWorksheet(worksheetDetail, pickupDetail, dropbackDetail))()
29 : ResetSeleted()30 *[i] : Create Journey(journeyDetails,worksheetID )()
31 *[i] : Create Journey(journeyDetails,worksheetID()
32 : SearchSelected()
33 : HomeSelected()
34 : HelpSelected()
35 : LogoutSelected()
ABC-Taxi Cab Company 28
Design class diagram
Driver
+DriverShiftPreference
+GetDriver(DriverID)
Customer
+CustomerID+CustomerFirstName+CustomerLastName+CustomerStreet+CustomerCity+CustomerState+CustomerZipCode+CustomerTelephone+CustomerMail+CustomerDOB+CustomerSex
+GetAllCustomer()+GetAllCustomer(customerID)
WorkShift
+ShiftID+ShiftDate+ShiftStartTime+ShiftEndTime+ShiftDuration+ShiftArea+ShiftPermissionTakeCar
+GetWorksheet(WorksheetID, DriverID)
Pickup
+PickupID+PickupMileage+PickupFuelLevel
Dropback
+DropbackID+DropbackMileage+DropbackFuelLevel+DropbackFillups+DropbackFare+DropbackTips+DropbackMaintenanceRequest
Complaint
+ComplaintID+ComplaintType+ComplaintDescription
+GetAllComplaint()+GetComplainttYPE(ComplainTypeID)+CreateComplaintRecord()
Dispatcher
+GetDispatcher(DispatcherID)
Journey
+JourneyID+JourneyStartMile+JourneyEndMile+JourneyCharge+JourneyStartTime+JourneyFinishTime
+GetAllJourney()+GetJourney(JourneyID, WorksheetID)
TaxiCabCompanyApplication
+HelpSelected()+LogoutSelected()+SearchSelected()+ResetSelected()+HomeSelected()
ComplaintController
+NewComplaintForm()+DisplayComplaintForm()+CustomerSelected()+ComplaintSelected()+JourneySelected()+ComplaintSelected()+SaveSelected()
<<uses>>
DipatcherD
+ReadDispatcher(DispatcherID)
<<uses>>
CustomerD
+ReadAllCustomer()+ReadAllCustomer(customerID)
<<uses>>
JourneyD
+ReadAllJourney()+ReadJourney(JourneyID, WorksheetID)
<<uses>>
ComplaintD
+ReadAllComplaint()+ReadComplaintType(ComplainTypeID)+CreateComplaintRecord()
<<uses>>
<<uses>>
<<uses>>
<<uses>>
<<uses>>
<<uses>>
WorkSheetD
+ReadWorksheet(WorksheetID, DriverID)<<uses>>
<<uses>>
<<uses>>
DriverD
+ReadDriver(DriverID)
uses
<<uses>>
WorksheetController
+NewWorksheetForm()+DisplayWorksheetform()+AreaSelected()+AddNewJourneySelected()+ResetJourneySelected()+SaveSelected()
<<uses>>
Area
+AreaID+AreaDesc
<<uses>>
AreaD
+Operation1()
<<uses>>
<<uses>>
<<uses>>
<<uses>>
ABC-Taxi Cab Company 29
Works Cited Alexander, I. (n.d.). Imperial Collage London. Retrieved from http://www-
dse.doc.ic.ac.uk/Events/BCS-RESG/Aleksander.pdf
International Journal of Computer Science and Network Security. (n.d.). Retrieved 04 02, 2010,
from http://paper.ijcsns.org/07_book/200805/20080530.pdf
Yadav, D. S. (n.d.). Blackboard TTU. Retrieved 01 28, 2010, from Taxi Cab Company Case:
http://webct.ttu.edu