A multinational tour operator agency has gained new business growth in the North American market through the use of social media. Its operation has expanded by 50% within six months and the agency requires an enhanced data management strategy to sustain their business operations. Their existing data repository for its reservation processing system is limited in business intelligence and reporting functionalities. The tour operator seeks a database management specialist to assist them in leveraging their data sources to enable them to forecast and project tour sales appropriately.
Imagine that you have been hired to fulfill their need of enhancing the data repository for their current reservation processing system. Upon reviewing the system, you find that the data structure holds redundant data and that this structure lacks normalization. The database has the following characteristics:
A table that stores all the salespersons. The table holds their employee id, first name, last name and “Tours sold” field. The “Tours sold” field is updated manually.
A table that stores tour customer data and tours sold. The table holds customer name, address, city, state, zip code, tour(s) selected, number of persons in tour, and total amount paid. The current structure will show the customer more than once, if the customer books multiple tours.
A tour table that is used as a tour rate sheet which holds the tours offered and the cost per person. Tour rates vary every three (3) months depending on the tourist season.
Write a two page paper in which you propose an enhanced database management strategy. Your proposal should include the following:
Design a data model that will conform to the following criteria:
Propose an efficient data structure that may hold the tour operator’s data using a normalization process. Describe each step of the process that will enable you to have a 2nd Normal Form data structure.
Create naming conventions for each entity and attributes.
Conclude your data model design with an Entity Relationship Model (ERM) that will visually represent the relationships between the tables. You may make use of graphical tools in Microsoft Word or Visio, or an open source alternative such as Dia. Note: The graphically depicted solution is not included in the required page length.
Construct a query that can be used on a report for determining how many days the customer’s invoice will require payment if total amount due is within 45 days. Provide a copy of your working code as part of the paper.
Using the salesperson table described in the summary above, complete the following:
Construct a trigger that will increase the field that holds the total number of tours sold per salesperson by an increment of one (1).
Create a query that can produce results that show the quantity of customers each salesperson has sold tours to.
Support the reasoning behind using stored procedures within the database as an optimization process for the database transactions.