ABSTRACT
CRM databases are created to aid organizations in managing their customers thereby increasing their revenue and profits. A central database of customers and contacts can help an organization drive forward sales to get higher returns on marketing activities. This paper describes the design of a customer relation management database for an auto part store. The store will document relationships between customers, salespeople, inventory, and products, through parameters such as orders and order lines among others. Using modeling tools such as ERD, a model of the auto part store CRM will be developed. The model encompasses the analytical and transactional components to serve the analytical aspects such as the customer profitability and the transactional aspects such as the order fulfillment rates. The second part of the paper describes the implementation strategies of the CRM solution bringing out the best strategies such as review and re-development, project management, contracting and licensing, system customization, data migration, training and support. Finally, the paper will compare two learning CRM database solutions; Oracle and MySQL on the basis of security and disaster recovery methods.
OVERVIEW
All organizations are required to collect information about their customers on a regular basis. More often than not, organizations feel like they spend enormous amounts of time processing data tan delivering activities. The diversity of organizations activities together with different funding systems presents a challenge in respect to time and management. All stakeholders require different information for different needs and often need different reporting systems that do change as the nature of the business changes. With reductions in funding and core staffing, many organizations are using technology to help them effectively manage their resources. One of the technologies rolled out for this task is databases.
A database is a software application that allows input of information in a similar structure for processing and reporting. Customer Relation Management systems are databases used to track interactions between an organization and its consumers. A CRM will document all the activities that people or organizations works on and supports, thereby providing an effective way to communicate electronically through recording, storing and retrieving important documents such as reports. CRM does not only capture information about the customers, it involves using technology to gather intelligence required to improve support and services to customers. It also extends to what the organization to with the information to better meet the needs of existing customers and identify new ones.
CRM benefits organizations in a number of ways. They create a one-to-one relation with the organization. An effective CRM application for that matter gives the organization an opportunity to show their customers that they know and recognize them, understand them and their needs, care about their concerns, deliver services and products that benefit them, and appreciate their businesses. Conversely, it gives an organization an opportunity to develop superior services and products that meets the needs of the customer. Secondly, it enhances marketing towards the most profitable customers and increase the customer base as new ways to engage the business in the online framework is developed. Also, it improves efficiency by providing support and services to customers online through effective question and answer forums. Finally, the organization can plan and anticipate for future business needs based on historic data and service trends.
DESIGN
An auto part store requires big data analysis to give it a competitive edge over its competitors in the same industry. This cannot be achieved without the use of a customer relation management database. A CRM database will accord the auto part store better management techniques for its current customers as well as provide leads for new customers. The ability to analyze the data and act upon them provides enormous breakthroughs in terms of response to client needs, quality of services, customer satisfaction and cost efficiency. The ability of up to date information concerning customer information is a game changer in the competitive world. A CRM will indicate which marketing efforts derive the best sales as well as those that derive the least returns.
In this case, we are going to design a customer relationship management database that functions as a management tools for customers, sales team and the wider management. The proposed CRM will inculcate the best practices in software design and is modeled around the principle of relationship between orders, customers, and products.
A customer relationship database is designed with reference to the standard software developed processes. These involve definition of the initial problem, analyzing the needs of the business, data modeling processes, prototype development, testing and review, and implementation and support. The problem encountered in the auto part store has to do with the management of old and new customers. Customers are the core of any business operation and their management is crucial to its continuity. In order to operate effectively, the store needs to document its customers and contacts effectively, defining the marketing strategies that result in better customer responses and returns. Thus, the business requires a customized customer relation management system that profiles customers according to their needs. For instance, it requires a system that profiles the existing profitable customers so that their needs can be met, but also without overshooting the mark and spending more than it requires. Once the most pressing needs of the customer are determined, an organization will respond to them whether in form of customer service, marketing campaign management, sales order management, call center sales, IVR systems and field force automation.
It is apparent that it is difficult to predict the type of reporting that will be requested in the organization in future. Therefore, it is prudent to choose the best architecture to accommodate a great deal of information to be maintained over time. The best architecture may be a single data warehouse of customer information. Various data marts will be created from this warehouse.
A design team comprising of programmers, designers, database administrators and security experts will critically evaluate every phase of the design process to yield a standard warehouse that satisfies the needs of the organization. The data warehouse will be structured into functional groups like customer details, orders fulfillment, sales, customer service and marketing campaign management.
Information requirements in the database are crucial to the development and implementation of the CRM strategy. This information is dependent on the operational and the analytical decisions that need to be undertaken. The information that needs to be taken for the database for an auto part store may include:
- The current customers
- Their contact details
- Goods and services they buy
- Their payment history
- Their requirements, expectations and preferences across all components of value preposition including product, service, channel and communication. For instance, a customer may desire that upon making a call at the end of the working day, their vehicle will be taken for replacement of a part and delivered overnight readiness for use in the next day. Others will require 48 hour service while others will demand much or less depending on the parts and the industry norm.
- The cost of serving the customers
- The prospects to be targeted and the cost of recruiting new customers
- The offers to be made in order to develop new customers
- The customers do be retained and those to be sacked
Several customer information fields within the CRM database will be required. The fields which will document information about the customers include contact data, contact history, transactional information, intentions, needs, benefits, expectations, benchmarks and preferences. Contact information will indicate the name, other names, business role such as buyer, decision maker, influencer, and initiator, as well as customer address, phone numbers, email, street and postal addresses. Contact history will include information as outbound and inbound history. Transactional information will detail the details the customer has bought in the past together with what has been offered to the customer but has not been bought.
Using data modeling models such as an ERD, the fields in the CRM database will be modeled appropriately. An ERD will be developed with reference to the major business needs to be automated as outlined above. These will form the entities. Attributes will be defined by the various storage fields and tables in the database.
The figure below illustrates an ERD schema of the CRM database. It integrates the various fields required to manage the customer effectively. These include both the transactional and analytical parameters. The contacts attributes will detail all the customer details such as the location, addresses, names and IDs.
CRM IMPLEMENTATION
Once the CRM has been developed it needs to be implemented in the organization to rip maximum benefits. Implementation process is a critical role since a shoddy process will cost the company immensely. CRM implementation will involve the following processes:
- Review of the developed system to ensure that it satisfies the business functions
- Project management
- Vendor contracting and licensing if it is an off-the-shelf development
- CRM system customization
- Data migration
- Training and support
CRM selection is undertaken during the design and development part of the exercise. However, after development, review need to be conducted to ensure that the developed product coincides with the needs of the organization. If not, the product will be subjected to a series of prototyping and iterations until the desired product are yielded.
Project management and communication strategies are applied to the many elements occurring simultaneously during CRM implementation. Since the process is time consuming and costly, the organization needs to identify the personnel and the tools for implementation. Among the tools used include:
- Milestone to keep track of all dates, tasks executed and meeting dates for all personnel
- Work plan detailing the configurations, vendor/IT support, timeline and cost of the project
- Budget spreadsheet detailing the cost of the hardware, software and other contingencies
Once the desired CRM application has been developed or identified, the next step is licensing and contracting. For an in-house application, a capable IT staff with the required skills will be used and external technical support would be unnecessary. For an external application, an agreement with the vendor on a number of parameters such as setup, services and support need to be drawn. Licensing is incorporated into the contractual agreement and details the CRM vendor’s rules in terms of intellectual property, fair use and costs.
Part of the CRM implementation process involves system customization before they are used. The organizational business rules are called upon together with any undocumented processes that will affect the operation of the CRM. An in-house and vendor application will continuously be reviewed to ensure that the task completed is of the desired functionality.
Prior to the implementation of the CRM system, the organization might posses information stored in older systems that they wish to move to the new system? This information might sometimes be arranged in a manner different from the CRM system. Therefore some effort in data migration is relevant to ensure transfer of information. Data is cleaned, sorted, audited and safely migrated to the new system using preferred migration tools.
Finally, training and support is required to equip the users with critical skills required to succeed with the use of the new system. Training may be delivered through written documentation, self-paced training sessions, ongoing in-person groups among other methods desired by the auto store management. The basic considerations for training include the identification of training sessions in advance, planning for gaps and how they can be filled, learning in context with real data recognized by the user, and training the trainers.
COMPARISON BETWEEN MS SQL AND ORACLE
Data Security
Authentication
Oracle set up to use database authentication use only name and password to authenticate a user. MySQL has an additional location parameter when authenticating a user. The location parameter is always a host name, IP address or a wildcard. Thus, MySQL restricts a user access to the database to a certain host in a domain.
Privileges
My SQL uses a five descending order level of privileges. The hierarchical system grants privileges at a higher level and are implicitly passed down to the lower levels and may be overridden by the same privileges set at lower levels. Each level consist of a corresponding grant table in the database such that when performing a privilege check, MySQL checks each of the tables in a descending order of the scope of privileges. Privileges granted at a lower level take precedence over the same granted at a higher level. Unlike in Oracle, MySQL has no concept of roles. In order to grant a group of users the same level of privileges, the privileges have to be granted to each user separately. Thus, users performing tasks as a role may opt to use a single account designated as the “role” and with the required privileges granted.
Disaster recovery method
MySQL has no built-in data backup and recovery. Replication is done via OS snapshots and InnoDB Backup. Oracle has Recovery Manager (RMAN) that supports hot backups and runs as a different central repository for multiple Oracle database servers. SQL Server database provides automatic data recovery mechanism which checks each database in the system each time it is started. Data replication is free in MySQL and it is relatively easy to setup and manage. It provides great horizontal scalability and the basic features are great to work with. On the other hand, Oracle has lots of features presenting a much higher complexity with data filtering and manipulation. In case of a disaster, Oracle is hard to work with in retrieving data than MySQL.
References
Harrington, J. L. (2002). Relational database design clearly explained . Morgan Kaufmann,.
Janet Valade, B. B. (2011). PHP & MySQL Web Development All-in-One Desk Reference For Dummies. John Wiley & Sons.
Shivaraju. (2012). Database Systems: Design, Implementation, and Management [With Access Code]. Cengage Learning.
Sikha Bagui, R. E. (2011). Database Design Using Entity-relationship Diagrams. CRC Press.
Web, N. (2013). Oracle Education Foundation .