Thurain Ko Ko Naing ADMS Assignment Spring 2024. 3
Thurain Ko Ko Naing ADMS Assignment Spring 2024. 3
Thurein Ko Ko Naing
ADMS TKKN
24 batch IoTAssignment
economy
Document Details
Submission ID
trn:oid:::1:2899940813 24 Pages
Download Date
File Name
0202939_Thurain_Ko_Ko_Naing_ADMS_Assignment_Spring_2024._3.docx
File Size
1.1 MB
0%
Caution: Percentage may not indicate academic misconduct. Review required.
Our testing has found that there is a higher incidence of false positives when the percentage is less than 20. In order to reduce the
likelihood of misinterpretation, the AI indicator will display an asterisk for percentages less than 20 to call attention to the fact that
the score is less reliable.
However, the final decision on whether any misconduct has occurred rests with the reviewer/instructor. They should use the
percentage as a means to start a formative conversation with their student and/or use it to examine the submitted assignment in
greater detail according to their school's policies.
Non-qualifying text, such as bullet points, annotated bibliographies, etc., will not be processed and can create disparity between the submission highlights and the
percentage shown.
In a longer document with a mix of authentic writing and AI generated text, it can be difficult to exactly determine where the AI writing begins and original writing
ends, but our model should give you a reliable guide to start conversations with the submitting student.
Disclaimer
Our AI writing assessment is designed to help educators identify text that might be prepared by a generative AI tool. Our AI writing assessment may not always be accurate (it may misidentify
both human and AI-generated text) so it should not be used as the sole basis for adverse actions against a student. It takes further scrutiny and human judgment in conjunction with an
organization's application of its specific academic policies to determine whether any academic misconduct has occurred.
Student Declaration
I have read and understood NCC Education’s Policy on Academic Dishonesty and Plagiarism.
I confirm that this is my own work and that I have not plagiarized any part of it. I have also noted
the assessment criteria and pass mark for assignments.
Student Signature:
Contents
Task-1 ........................................................................................................................................... 3
Task-3 ........................................................................................................................................... 6
Task-4 ........................................................................................................................................... 7
Task-5 ........................................................................................................................................... 9
Task-6 ......................................................................................................................................... 15
Task-7 ......................................................................................................................................... 18
Task-8 ......................................................................................................................................... 21
Task-9 ......................................................................................................................................... 23
References .................................................................................................................................. 24
Task-1
According to the scenario, ER diagram includes five entities; Customer, Booking, Trip,
TripComponent and Vessel. In the Trip table, two attributes include and TripID is the primary
key. The TripComponent table contains seven attributes; two primary keys are
Component_Code and Date while two foreign keys are TripID and Vessel. Vessel table has only
two attributes and Vessel is the only primary key. Five attributes include in Booking table and
BookingID is the primary key. CustomerID and TripID are foreign key for Booking table.
Customer table includes only two attributes and one of them are primary key, CustomerID.
Task-2
Normalization is a process used in database design to organize data in a relational
database efficiently and reduce redundancy. There are several normal forms, each building
upon the previous one, with the ultimate goal of minimizing redundancy and dependency while
ensuring data integrity. The most commonly discussed normal forms are the first through fifth
normal forms (1NF through 5NF).
1. First Normal Form (1NF)
In 1NF, each column in a table contains atomic values, meaning that each value is
indivisible. Additionally, each column must have a unique name, and each row must be uniquely
identifiable, usually through a primary key. 1NF prohibits multi-valued attributes, repeating
groups, and nested relations within a table.
2. Second Normal Form (2NF)
To be in 2NF, a table must first satisfy the requirements of 1NF. Additionally, all non-key
attributes must be fully functionally dependent on the entire primary key. This means that there
should be no partial dependencies; every non-key attribute should depend on the entire primary
key, not just part of it.
3. Third Normal Form (3NF)
A table is in 3NF if it satisfies the requirements of 2NF and if all non-key attributes are
non-transitively dependent on the primary key.
4. Boyce-Codd Normal Form (BCNF)
BCNF is a stricter version of 3NF and aims to eliminate certain types of anomalies that
can arise from functional dependencies. It requires that every determinant (attribute determining
another attribute) is a candidate key. Essentially, BCNF ensures that there are no non-trivial
functional dependencies where a determinant is not a super key.
5. Fourth Normal Form (4NF)
4NF addresses multi-valued dependencies, which occur when one or more attributes
depend on a multi-valued attribute, rather than directly on the primary key. It aims to eliminate
such dependencies to ensure data integrity and avoid anomalies.
6. Fifth Normal Form (5NF)
Fifth Normal Form (5NF), also known as Project Join Normal Form (PJ/NF), is an
extension of the normalization process in relational database design. A table is considered
included in 5NF if and only if the candidate keys involve all join dependencies of the table.
Simply put, 5NF ensures that the table does not contain non-trivial join dependencies that do
not derive from its candidate keys.
Normalization Process
To normalize the tables for each document in the Hyde Travel scenario, we use the
typical normalization procedure to ensure that the database is arranged efficiently and without
redundancy. The document 1 contains information about the trip and its components. We first
determine a unique key TripID for each trip. Since each trip can have multiple components, the
table is split into two separate tables, Trip and TripComponent because second normalization
rule is not acceptable. The trip table has properties TripID and Date that describe different trips.
TripID in the TripComponent table; ComponentCode Contains Component Details and Date
fields representing the components of each trip. This decomposition ensures that each table
represents an object, eliminating the need for storage of trip details. Decomposing the Trip and
TripComponent tables resolves anomalies associated with the trip component, ensuring data
integrity and isolating the problem.
Document 3 includes information about the trip components and accompanying vessels.
We discovered that there is a many-to-many Component vessel between trip components and
vessels. This means you will need a separate database to manage this vessel. Decompose the
original table into a ComponentVessel table. ComponentCode in the ComponentVessel table
has two properties: Vessel and VesselType. This table acts as a junction table that manages
ComponentVessels between components and vessels. Each entry in this database represents a
unique combination of itinerary components and vessels, and each vessel can be used non-
redundantly for different components. However, each component is associated with multiple
vessels.
Task-3
I. Trip table
2. Booking table
BookingID(Primary key)
CustomerID(Foreign key)
TripID(Foreign key)
Number_of_Passengers
Booking_Date
3. Customer table
CustomerID(Primary key)
Customer_Name
4. TripComponent table
Component_Code(Primary key)
Date Primary key)
Component_Detail
Start
End
TripID(foreign key)
Vessel (Foreign key)
5. Vessel
Task-4
Create statement
I will use MySQL 5.5 command line client to put statements into action.
Trip table
Booking table
Customer table
TripComponent table
Vessel table
Task-5
Insert into table
Trip table
10
Booking table
11
Customer table
12
TripComponent table
13
14
Vessel table
15
Task-6
No (A)
No (B)
No (C)
16
No (D)
No (E)
No (F)
No (G)
17
No (H);
18
Task-7
19
20
21
Task-8
1. Transaction Management
Transaction management is the atomicity of database transactions and a process that
ensures isolation and durability (ACID). A transaction is a task that combines one or more
database operations to insert record, a logical unit such as update or remove. ACID functionality
ensures that transactions complete safely and maintains database integrity even when errors
occur. At Hyde Travel, Transaction Management is customer booking. It covers a wide range of
activities, including travel planning and vessel sharing, for example, when a customer makes a
reservation. This must be processed as a single transaction to ensure that the booking
information is entered into your database accurately.
2. Currency Control
The technique of limiting simultaneous accessibility to a database over several
transactions in order to ensure data consistency is known as currency control. The starting of
the booking process is resulted in additional data, namely, travelling details being locked until
such time as the transaction is finished and preventing other users from having access to that
information. During the transactions, the various safety measures are used to limit unauthorized
persons’ access to the information. Depending on the permission level required for the
operations, different locking used: shared locks for data reading and exclusive locks for
information publishing.
Establish that the correct isolation level that restricts data changes that are executed
simultaneously across several processes takes place. Decide on a disparate isolation level to
ascertain that transactions only link to committed data and avert non-repeatable reads. This
erases transaction problems and promises that data changes are implemented properly.
Reason performing multi-version concurrency control and support transactions
commencing at any subsequent moment in an ongoing database version is MVCC diminishes
contention over resources while increasing the amount of work and performance by enabling
transactions to acquire numerous data versions.
3. Recovery Control
Recovery control procedures are important for the durability and integrity of the Hyde
Travel database system. They are measures that help restore the database and bring it back to
its consistent state after a system failure, hardware malfunction, or transaction refusal has
already happened. To implement recovery controls on the Hyde travel database, you will need
to include transaction logging. This creates a record of the activity on each database activity,
such as an insert, update, and delete action. Those record files contain material which means
22
the transaction ID, order type, related information, and before and after results. If a system
breakdown happens, you can use the transaction log to restart or reverse transactions,
recovering the database to a compatible state. Before updating the database, logs are
transmitted to directories using write-ahead logging (WAL). When recovering, the system begins
at the last checkpoint and applies only information from the log that has transpired since then,
minimizing recovery time. If a fatal issue occurs that cannot be handled only through the
transaction record, you may employ the backup to return the database to a consistent state.
Being able to maintain data consistency, integrity, and dependability throughout all
processes, including failures and concurrent connections, it can be seen that transaction
management, concurrency control, and recovery control are critical components of the Hyde
Travel database system.
23
Task-9
We initially assess Hyde Travel's business needs through case studies and
documentation. We review these documents to determine key activities and data objects
relevant to your organization. These studies include essential topics such as consumer data,
travel bookings, travel components, and delivery. The document contains specific information
about many resources, such as route details, component information, vessel type, reservation
history, etc. The study identified the need for a database system to support Hyde Travel's
operations by efficiently storing customer information, reservation records, itinerary
components, and delivery data.
A data model accurately represents your organization's data structure using a database
and queries tailored to your requirements. To ensure each table was unique, organize it, and
develop clearly defined connections between entities, normalization techniques were
employed. Creating a well-organized database system saves redundant employees, improves
data integrity, and simplifies management.
It's easy-to-understand that surveys contribute to the produced system's utility. Queries
are developed and used to extract relevant data from the database using input from users and
parameters and to obtain user information, booking information, trip components, and acquire
vessel details. By permitting their booking, trip management, client record maintenance, and trip
details review, queries improve Hyde Travel's operations in a much proficient way.
Every component of the project concluded in the creation of an operating system that fits
Hyde Travel's commercial demands. By incorporating data analysis techniques into user
settings, future system updates could improve it much further. As an instance, Simple interfaces
for delivering and retrieving data, improving the user experience can be created by
developers. Enabling organizations to make better decisions and manage operations, It gives
essential insights into booking trends and travel performance. To meet emerging company
requirements and ensures that the system remains successful and relevant throughout the
years, we have to monitor and update database design and queries constantly and carefully.
24
References
Sarkar, M. (n.d.). Database Normalization. Available at:
https://www.cems.uwe.ac.uk/~pchatter/resources/pdf/Normalization.pdf.