You are on page 1of 6

Solution of Case Study - Development of Consumer Relationship Management

system for Indian Automobile giant XYZ Limited

This solution approach is made on back end database Oracle and front interface
technologies with Java/JSP/HTML.

Step -1
The data is contained in the four data files and they will be loaded into Oracle tables via
SQL/Oracle loader.
These four intermediate tables are:
• Sales_File_TAB
• ServiceHistory_File_TAB
• CustomeCommunication_File_TAB
• Dealer_File_TAB
These tables will not have any keys and they may be properly indexed for performance.
Improvement. These tables would have same number of columns matching exactly with
fields of the respective files.

Step-2
A data model needs to be created to accommodate the data from the intermediate
tables. These target tables (total 7 nos.) will have inter-relationship and to be used for all
front-end queries.
The data model could be structured in different ways and normalize as per the
transaction needs. In this case study, any standard normalized data model is sufficient to
serve the purpose. To create the data model use the relationship requirement between
Product/Customer/Dealer/Service History etc as mentioned in the case study. For
solution purpose a sample Data model is given below:

Data Model Diagram


Product VehicleOwner Dealer

PK VehicleChasisNum PK,FK3 CustomerID PK DealerID


PK,FK2 VehicleChasisNum
VihicleModel DealerStDate
ModelYear RetailSalesDate DealerEndDate
ExteriorColor FK1 DealerID DealerZone
InteriorColor FinancedFlag DealerDist
ModelType FinanacedBy DealerName
LoanAmount DealerAddress
LoanTenure DealerCity
SalesmanMan DealerState
DealerPreInspectionDate DealerPostCode
VehicleRegistrationNum DealerPhone
SalesPrice DealerPhExtn
DealerBillingName
DealerBillingAddress
DealerBillingCity
DealerBilllingState
ServiceHistory Customer DealerBillingPostCode

PK ServiceID PK CustomerID
CustomerAddress
DerlerID CustomerFName
FK2 CustomerID CustomerMName PK,FK1 CustomerID
VehilceChasisNum CustomerLName PK Addressline1
Miledge Cust_DOB PK Addressline2
RODate Sex
TechnicianName CustEmail City
ServiceDescription CustomerPhone State
LaborAmount PostalCode
ServiceAmount
Amount
ServiceFeddback CommunicationEvent
ServiceHistoryCol1
FK1 DealerID PK CommunicationID
FK3 VehicleChasisNum
FK1 CustomerID
ChannelType
BrocureRequestDate
PriceRequestDate
LoanPayoffDate
AdhocCommDate
CommVehicleModelType
CommVehicleModelYear
VehicleOwn
ContactMethod
PlannedToBuyDate
PlannedToLoanPayOffDate
CommunicationContent

Data Model for Case Study- Indian Automobile CRM

Step-3
Once the data model is designed and finalize, tables will be created and all related
primary/secondary keys will be defined.

Step-4
To load the data in 7 target tables, a number of store procedures need to be created.
The List of Store Procedures with sequence of operations are given below:
1. SP_Dealer_Load
This store procedure will select data from Dealer_File_TAB and insert dealer related
data in Dealer table. This SP should run first to ensure all dealer data are populated.
2. SP_Sales_Load.
This Store Procedure will select data from Sales_File_Tab table and insert in
following tables.
• Customer
• CustomerAddress
• Product
• VehicleOwner
CustomerID is a unique number which will generate from the system and
incremented for next record.
Dealer Number (DealerID) will be verified from Dealer table and if not found, records
will be rejected.

3. SP_Service_History_Load
This store procedure will insert data in Customer, CustomerAddress and
Servicehistory tables.

Proper Data will be selected from ServiceHistory_File_TAB table and get updated or
inserted in
• Customer table
• Customeraddress table

Service data will be selected from Servicehistory_File_TAB table and inserted in


ServiceHistory table.
ServiceID is a unique number that get generated from system for the first time (ex- 1)
and incremented for subsequent records.

If any VIN/VehicleChasisNum is not found in product table, then records will be


rejected, as no product information is available in Database.

4. SP_Customer_Communication_Load
This SP will insert the data in CommunicationEvent, Customer and
CustomerAddress tables.
Relevant data will be selected from CommunicationEvent_File_TAB table and
updated or inserted in Customer and CustomerAddress table.
Communication data will be selected and inserted in CommunicationEvent table.

For each Communicationevent a unique number will be generated and get attached
to the CommunicationID field.

Step-5
Once the data are loaded in tables by different store procedures, we are ready to create
the front-end screens and they will be mapped to the table fields through Java API/JSP
etc. JDBC/ODBC driver needs to be setup for database connectivity.
Some sample screen shots are given and these could be created through JSP or HTML
scripts. Data will be fetched through Java API and JSP scripts wherever applicable.
For User log on screen, another table will be created where user ID and Password
(encrypted) will be stored. This table can be created earlier with proper data fed it in.

Sample Screen -1
Sample Screen –2

Sample Screen – 3
Sample Screen – 4

Sample Screen – 5
Additional screens need to be created as per case study requirements.

You might also like