Reference no: EM133081592
Learning Outcome 1: Get a high-level understanding of the major DBMS components and their functions.
Learning Outcome 2: Develop the required functionalities at the main DBMS components.
Learning Outcome 3: Explain the principles of concurrency control and transaction management.
Learning Outcome 4: Use modern methods to wrap developed DBMS functionalities in usable interfaces and apply the required testing
You have recently been employed as a member of the development team responsible for building and maintaining the company's in-house built Database Management System (DBMS). Besides creating and applying SQL queries, you need to develop or update specific components of the DBMS, manage the data exchange between them, and optimize their functionality using available state-of-the-art methods.
Each team member within the development team is responsible for developing, optimizing, and testing a specific DBMS component. Once you are done with your assigned tasks, you need to send your manager a full report describing the final product and the steps involved in developing it. Your report needs to be very clear as it will be later presented to junior developers within the company. You need to be able to develop, optimize, test, and report all DBMS components if required.
Below you find a detailed description of the assignment mapped to the different assessment criteria:
Part 1:
1. Describe in detail the architecture of the DBMS and the function of the sub-components along with their programming techniques. The targeted programming techniques correspond to what actually programmed in this component such as different types of data structures. (Report)
2. Design a basic DBMS to handle a well-defined problem and provide a set of clear statements of user and system requirements. (Report)
3. Evaluate the ability to transfer data between different DBMS components including diagrams to show data movement through the system components and flowcharts describing how the system works. (Report)
4. Evaluate the effectiveness of the design in terms of user and system requirements. (Report)
Part 2:
1- Develop the required dynamic data structure at the storage and buffer managers. The reserved memory needs to be dynamically allocated during the in/out communication with the data structure through the storage manager. (Project)
2- Write the SQL queries in a DBMS and implement the corresponding CRUD statements in the language of development. Each SQL statement need to be re-written in C language and later incorporated in the project. (Report and Project)
3- Assess the techniques used to optimize simulated SQL queries. Simulating SQL queries need to be through designed functions in C language. (Report and Project)
4- Criticize the process of mapping SQL queries to the developed CRUD statements. (Report)
Part 3:
1- Describe the standard DBMS concurrency control techniques. (Report)
2- Implement the parallel data processing functionality to handle concurrent database operations.
(Project)
Part 4:
1- Develop the needed interface that is able to handle all offered DBMS functionalities. The interface can be advanced or basic through a set of menus in the program running screen. (Project)
2- Suggest and apply a testing plan to ensure compatibility and functionality of developed DBMS components. (Report and Project)
3- Critically evaluate the functionality, interface design, and ability to handle concurrent databases in terms of user and system requirements. (Report)
Attachment:- Database Programming.rar