Unit 04 Database Design and Development 2024
Unit 04 Database Design and Development 2024
ASSIGNMENT 01
DATABSE DESIGN & DEVELOPMENT
Gowsigan Pushpanathan
ESOFT METRO CAMPUS
Assessor Feedback:
LO1 Use an appropriate design tool to design a relational database system for a substantial problem
Pass, Merit & Distinction P1 M1 D1
Descripts
LO2 Develop a fully functional relational database system, based on an existing system design
Pass, Merit & Distinction P2 P3 M2 M3 D2
Descripts
* Please note that grade decisions are provisional. They are only confirmed once internal and external
moderation has taken place and grades decisions have been agreed at the assessment board.
Assessor Feedback:
Resubmission Feedback:
Please note resubmission feedback is focussed only on the resubmitted work
Please note that grade decisions are provisional. They are only confirmed once internal and
external moderation has taken place and grades decisions have been agreed at the assessment
board.
Important Points:
1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body
except for the before mentioned compulsory information will result in rejection of your
work.
2. Avoid using page borders in your assignment body.
3. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
4. Ensure that you give yourself enough time to complete the assignment by the due date.
5. Excuses of any nature will not be accepted for failure to hand in the work on time.
6. You must take responsibility for managing your own time effectively.
7. If you are unable to hand in your assignment on time and have valid reasons such as illness,
you may apply (in writing) for an extension.
8. Failure to achieve at least PASS criteria will result in a REFERRAL grade.
9. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will
then be asked to complete an alternative assignment.
10. If you use other people’s work or ideas in your assignment, reference them properly using
HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation
and a reference list.
11. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course
12. Use word processing application spell check and grammar check function to help editing
your assignment.
13. Use footer function in the word processor to insert Your Name, Subject, Assignment No,
and Page Number on each page. This is useful if individual sheets become detached for any
reason.
Unit: Unit 04
Assignment number and title:
Database System for E-Space Solutions
Plagiarism
Plagiarism is a particular form of cheating. Plagiarism must be avoided at all costs and students
who break the rules, however innocently, may be penalised. It is your responsibility to ensure
that you understand correct referencing practices. As a university level student, you are
expected to use appropriate references throughout and keep carefully detailed notes of all your
sources of materials for material you have used in your work, including any material downloaded
from the Internet. Please consult the relevant unit lecturer or your course tutor if you need any
further advice.
Student Declaration
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the
consequences of plagiarism. I understand that making a false declaration is a form of malpractice.
Submission Format
The assignment submission is in the form of the following.
The submission should be in the form of an individual written report written in a
concise, formal business style using single spacing and font size 12.
Completed functional relational database. Final working version in a format
suitable to be run and assessed for functionality – this could be as project/solution
files or final compiled executable
A full Testing document
Technical and User instructional videos for successful use of the database. Use
appropriate software and submit in a suitable format
written report to evaluate the database and its implementation.
The recommended word limit is 3,000 – 3,500 words, although you will not be
penalised for exceeding the total word limit.
All work must be supported with research and referenced using the Harvard referencing
system
Vocational scenario
With marking a new chapter of human history E-Space Solutions (Pvt.) Ltd decided to
colonize the planet Mars in 2040. The company decided to hire a database expert to
develop a Database Management system to assist in this project for decision making.
Therefore, the data should maintain accuracy & consistency throughout the data life
cycle. E-Space Solutions plan to collect the information of the people who are willing to
go to Mars. To colonize Mars, the company needs to think about the qualifications of
volunteers & how they can assist in the colonizing process on Mars. The people who
willing to go to Mars will be known as ‘Colonist.’ Each colonist will be identified with Mars
Colonization ID, Name with First Name, Middle Name, Surname, Date of Birth,
Qualification, Age, Earth Address, Gender, Contact No, Civil Status, number of members of
the family to go to Mars & etc. From a single family there can be only one colonist & the
colonist can decide who will go to the planet Mars with them. If desired, colonists can
take their whole family with them too. But they will be considered as Dependents of the
colonist. In the system the dependents are not needed to identify separately, they should
only need to identify according to the colonist. But the dependents details should be
recorded with their Name, Date of Birth, Age, Gender, Relationship to the colonist & etc.
E-Space Solutions planning to have develop space crafts which will be named E-Jets. Those
E-Jets will take the colonists & their families together to the Mars & the pilots will return
with empty E-Jet. Those E-Jet pilots will be well experienced astronomers who have a
number of space hours. E-Jets will identify with Jet unique code, number of passenger
seats, nuclear engine power, made year, weight, power source & etc. Company plan to
build three types of E-Jets & they are,
Jets which powered by only nuclear engine
Jets which are powered by Nuclear engine to go through the thick atmosphere
close to the Earth surface & then use Hydro Splitter engine to go through the
space with more than the speed of the sound & again it will use Nuclear engines
when landing on the Mars.
Jets which are powered by Hydro-Nuc engine which use Nuclear power to split the
water molecules & generate a super hydro power for the jet. But this technology
will be high in cost, so at the initial level the company will have one of these only.
The astronomers who operate the E-Jets will have multiple qualifications in different
levels. Also, they will have designations according to their ranks in the company. The
pilots are assigned to the Jets rather than to the trips.
Those E-Jets will go multiple number of trips to Mars, with number of colonists & their
families. Every colonist & family member (if they go with the colonist) will get a single trip
to Mars & there’s no return. According to the company the trip table should be as follows.
The colonists will get a house from the Mars Colony. If the colonist going with the family,
will get a single house or if not with the family the single house will assign to four
colonists. The houses can be identified by unique Colony Lot Number, Number of Rooms,
Square feet of the house & any other relevant record that needed.
Also, each & every colonist will be assigned a job in the colonization process. Some of the
colonists will have multiple jobs. Those jobs can be Construction, Mechanical, Power
Generation, Medical, Security, Administration, Education, Research & Observation & etc.
One job will assign for multiple colonists.
Above details of the system will be input by the Data Entry Operators of the project.
Several reports will be generated by the System administrator such as Jet Detail report,
Trip Detail report with passengers, Colonists details with dependents & etc. Also, when
the project is ongoing the Colony Superintendent will generate Colony report with House
details & colonists, Job reports of the colonists & etc. The pilots can check the data of the
system according to the space craft trip information with the passenger details.
E-Space solution is hiring you as the Database expert to design & develop a solution for
the above scenario. In the System development level, the company doesn’t need the
report generated part initially, it will include in the next level of the development. But the
Database designs & system designs should include the reporting processes.
d. Check whether the provided logical design is normalised. If not, normalize the
database by removing the anomalies.
Note: It is allowed to have your own appropriate assumptions and related attributes
within the scope of the case study given
e. Design set of simple interfaces to input and output for the above scenario
using Wireframe or any interface-designing tool. (Those designs cannot be the
interface designs of visual studio.)
f. Evaluate the effectiveness of the given design (ERD and Logical design) in
terms of the identified user and system requirements.
** Security mechanism should demonstrate with the necessary screen shots of the
steps that follows during creating user groups, access permissions in the Microsoft
SQL Sever.
d. Explain the usage of DML with below mentioned queries by giving at least
two examples per each case from the developed database.
e. Assess the usage of the above SQL statements with the examples from the
developed database to prove that the data extracted through them are
Activity 3 -Testing
a. Provide a suitable test plan to test the system against user & system
requirements.
b. Provide relevant test cases for the database you have implemented.
c. Assess how the selected test data can be used to improve the effectiveness of
testing.
Note : Learner need to give expected results in a tabular format & screenshots of the
actual results with the conclusion.
b. Produce a user manual (user guide) for the developed system. (This should include
all the forms that developed & proper guidance with step-by-step point format.)
Recommended Resources
Please note that the resources listed are examples for you to use as a starting point in your
research – the list is not definitive.
Weblinks:
https://support.microsoft.com/en-GB (2022) Database design basics [online] Available at:
https://support.microsoft.com/en-us/ofÏce/database-design-basics-eb2159cf-1e30-401a-
8084-bd4f9c9ca1f5 [Accessed 1 August 2022]
https://www.guru99.com/ (2022) Database (Data) Testing Tutorial with Sample Test Cases
[online] Available at: https://www.guru99.com/data-testing.html [Accessed 1 August 2022]
Journal articles:
Batra, D. & Davis, J. (1992). Conceptual data modelling in database design: similarities and
differences between expert and novice designers. International Journal of Man-Machine
Studies, Volume 37, Issue 1, 1992, pp. 83-101. https://doi.org/10.1016/0020-
7373(92)90092-Y.
Gunjal, B. (2003). Database System: Concepts and Design. Proceedings of 24th IASLIC–SIG-
2003.
Kaur, T. & Singh B. (2003). Testing of Databases. IJISET - International Journal of Innovative
Kaur, Taranpreet & Sehra, Sumeet Kaur. (2015). Designing and Development of Database
Testing Tool. International Journal of Computer Applications (0975 – 8887) Volume 120 –
No.19. 14. doi:10.5120/21334-4330.
Kraleva, Radoslava & Kralev, Velin & Sinyagina, Nina & Koprinkova-Hristova, Petia &
Bocheva, Nadejda. (2018). Design and Analysis of a Relational Database for Behavioral
Experiments Data Processing. International Journal of Online Engineering (iJOE). 14. 117.
doi:10.3991/ijoe.v14i02.7988.
Letkowski, J. (2015). Doing database design with MySQL. Journal of Technology Research.
Volume 6.
Reading:
Captain, F. (2013) Six-Step Relational Database Design™: A step by step approach to
relational database design and development, 2nd edn, CreateSpace Independent
Publishing Platform
Hernandez, M. (2003) Database Design for Mere Mortals: A Hands-On Guide to Relational
Database Design, 2nd edn, Addison Wesley
HN Global:
HN Global HN Global (2021) Reading Lists. Available at:
https://hnglobal.highernationals.com/learning-zone/reading-lists
P5 Produce technical and user M5 Produce technical and user D3 Evaluate the database in terms of
documentation. documentation for a fully- improvements needed to ensure the
functional system, including continued effectiveness of the
data flow diagrams and system.
flowcharts, describing how the
system works.
Grading Rubric
Acknowledgement
First and foremost, I would like to express my special thanks of gratitude to the ESOFT Metro
Campus, who gave me the golden opportunity to do this wonderful HND assignment about
programming. Secondly, I would like to thank our subject programming lecturer for his guidance
and inspiration to successfully complete this assignment. And finally, an honorable mention goes to
our branch manager and our coordinator who supported me to complete the assignment on time.
Thank you
P. Gowsigan
Table of Content
s
Activity -01...............................................................................................................................................20
Data...........................................................................................................................................................20
Database...................................................................................................................................................20
Types Of Databases.................................................................................................................................20
User and System Requirements for Database and Scenario.................................................................21
System Requirements for Scenario........................................................................................................22
ERD And Its Components.......................................................................................................................23
Types of Attributes..................................................................................................................................24
Relationships and Cardinalities:.............................................................................................................26
Entity Relation Diagram.........................................................................................................................27
Logical Database Diagram......................................................................................................................29
Analysis of Entities and Attributes.........................................................................................................29
Evaluating the effectiveness of the given ERD and Logical designing of the identified user and
system requirements for Scenario..........................................................................................................31
Overall Evaluation...................................................................................................................................33
Activity – 02.............................................................................................................................................34
Develop a Relational Database System According to the ER diagram Using SQL Query.................34
Security Mechanisms Implemented:......................................................................................................37
DML with below mentioned queries......................................................................................................40
Assess the usage of the above SQL statements with the examples from the developed database......42
Activity -03...............................................................................................................................................47
Definition of test plain.............................................................................................................................47
Test Plan for Mars Colonization DBMS................................................................................................48
Test Plan for Mars Colonization Table..................................................................................................52
Selected test data can be used to improve the effectiveness of testing.................................................54
Activity – 04.............................................................................................................................................56
Recommendations and Conclusion.........................................................................................................56
Produce a user manual (user guide) for the developed system.............................................................56
All developed forms with source code & suitable diagrams.................................................................66
Assess the developed database by suggesting future enhancements....................................................68
Conclusion................................................................................................................................................70
Figure 1 - ER Diagram.......................................................................................................................................30
Figure 2 - Logical Database...............................................................................................................................31
Figure 3 - Create colonist Table.........................................................................................................................36
Figure 4 - Insert data in Table............................................................................................................................36
Figure 5 - Create dependent Table.....................................................................................................................36
Figure 6 - Insert data in dependent Table...........................................................................................................37
Figure 7 - Create EJet Table...............................................................................................................................37
Figure 8 - Insert data in EJet Table.....................................................................................................................37
Figure 9 - Create Astronomer Table..................................................................................................................38
Figure 10 - Insert data in Astronomer Table.......................................................................................................38
Figure 11 - Create Trip Table.............................................................................................................................38
Figure 12 - Insert data in Trip Table...................................................................................................................39
Figure 13 - Create Ejet_Astronomer Table.........................................................................................................39
Figure 14 - Insert data in Ejet_Astronomer Table..............................................................................................39
Figure 15 - Select query.....................................................................................................................................42
Figure 16 - Where query....................................................................................................................................42
Figure 17 - Insert query.....................................................................................................................................42
Figure 18 - Insert data........................................................................................................................................43
Figure 19 - Update query...................................................................................................................................43
Figure 20 - Between query.................................................................................................................................43
Figure 21 - In query...........................................................................................................................................43
Figure 22 - Group by query................................................................................................................................44
Figure 23 - Order by query................................................................................................................................44
Figure 24 - Having query...................................................................................................................................44
Figure 25 - Count query.....................................................................................................................................57
Figure 26 - Dashboard.......................................................................................................................................60
Figure 27 - Add details Form.............................................................................................................................61
Figure 28 - Add Trip Form................................................................................................................................64
Figure 29 - Update Trip Form...........................................................................................................................66
Figure 30 - Level 0 DFD Diagram.....................................................................................................................68
Figure 31 - Level 1 DFD Diagram.....................................................................................................................68
Figure 32 - Use Case Diagram...........................................................................................................................69
Figure 33 - Class Diagram.................................................................................................................................69
Activity -01
Data
Data is many sorts of information that are often formatted in a specific way. Programs and data are
the two main divisions of any software. Programs are collections of instructions used to change
data, and we already know what data is. To make working with data easier, we apply data science.
Data science is described as a field that combines mathematical expertise, programming know-
how, domain knowledge, scientific methods, algorithms, processes, and systems to extract useful
information and insights from both structured and unstructured data, then apply the information
obtained from that data to a variety of purposes and domains.
Database
A database is a structured collection of data that is stored and managed to enable easy retrieval,
insertion, updating, and deletion of data. Databases are used in various applications, ranging from
small-scale personal projects to large-scale enterprise systems. Here are some key points about
databases:
Data: Raw facts and figures without context. For example, numbers, names, dates.
Information: Data processed and organized to be meaningful. For example, a report
showing sales figures over time.
Database Management System (DBMS): Software that provides an interface to interact
with the database, ensuring data is consistently organized and remains easily accessible.
Examples include MySQL, PostgreSQL, Microsoft SQL Server, and Oracle Database.
Types Of Databases
1. Relational Databases: Data is organized into tables (relations) consisting of rows and
columns. These databases use Structured Query Language (SQL) for database
management and queries. Examples: MySQL, PostgreSQL, SQLite, Microsoft SQL
Server
2. NoSQL Databases: Designed for unstructured data and can store data in various
formats like key-value pairs, documents, wide-columns, or graphs. Examples:
MongoDB (document-based), Redis (key-value store), Cassandra (wide-column store),
Neo4j (graph-based).
4. Network Databases: Like hierarchical databases but allow more complex relationships
with multiple parent and child records. Example: Integrated Data Store (IDS).
User Requirements:
User requirements focus on what the users need from the database to accomplish their tasks
effectively.
System Requirements:
System requirements detail the technical needs and constraints of the database to support user
requirements.
Data Integrity:
o Ensure data accuracy through constraints like primary keys and foreign keys.
o Implement validation rules to prevent incorrect data entry.
Scalability:
o Ability to handle an increasing number of records as the colonization project grows.
o Efficient indexing to support quick data retrieval.
Security:
o User authentication and authorization to protect sensitive data.
o Encryption of data at rest and in transit.
Performance:
o Optimize queries and database structure for fast performance.
o Implement indexing and caching where necessary.
Usability:
o Provide an easy-to-use interface for data entry and retrieval.
o Ensure that the system is accessible to users with varying levels of technical expertise.
The scenario involves managing data for a Mars colonization project by E-Space Solutions,
scheduled for 2040. This includes managing colonists, dependents, E-Jets, pilots, trips, houses,
and jobs. The system requirements for this scenario are:
o Use a robust DBMS like MySQL, PostgreSQL, or Oracle to handle complex queries
and large datasets.
o Support for relational database structures to ensure data normalization and integrity.
Data Storage:
o Sufficient storage capacity to handle data from multiple entities (colonists,
dependents, E-Jets, etc.).
o Expandable storage solutions to accommodate future data growth.
Server Requirements:
o High-performance servers to manage database operations efficiently.
o Redundant servers for failover and high availability.
Data Security:
o Implement access control to ensure only authorized users can access or modify data.
o Use SSL/TLS for secure data transmission.
Data Backup:
o Regular automated backups to prevent data loss.
o Off-site backup storage for disaster recovery.
Data Analytics:
o Integration with data analytics tools to analyse trip performance, colonist job
assignments, and other metrics.
o Support for reporting tools to generate insights and operational reports.
Network Requirements:
o Reliable network infrastructure to ensure consistent access to the database.
o Secure network protocols to protect data from unauthorized access.
User Interface:
o Develop user-friendly interfaces for data entry, management, and retrieval.
o Ensure cross-platform compatibility for desktop and mobile devices.
related to them.
1. Entity
Any single, recognizable, and distinct thing is considered an entity. It refers to entities
that are significant in and of themselves, such as people, groups, systems, data, or even
certain system components.
2. Attributes
Attributes are simply qualities. For instance, you can add attributes to each
column or cell in a database or spreadsheet to make your document unique. You can
select whether it should be a text field, a numeric field, or possibly a
computed field, with a value the program generates for you, as a generic
property.
Types of Attributes
• Simple attributes - Simple Attributes are distinct attributes that cannot be further
subclassified. To put it another way, it is also referred to as atomic attributes. A
student, for instance, is an entity made up of the properties Roll No., Age, and
Class. The Roll no property cannot be broken down into sub-attributes in this
case. Therefore, if the attribute cannot be divided further, it is a Simple Attribute
• Single valued attributes - Values that are used to describe the entity are stored in
attributes. Single Valued Attributes are those attributes that can only store one
value. These properties are unable to store multiple values. For instance, the
Employee entity's properties include the Employee ID, DOB, and Gender. An
employee only has one date of birth and one employee id, both of which are
distinct. Therefore, these properties can only store one value. As a result, they are
referred to as single valued attributes.
3. Relationships
Relationships represent the associations or connections between entities.
Relationships define how entities are related to each other and provide valuable insights
into the data model
Designing a relational database system for E-Space Solutions' Mars colonization project involves
several steps, including creating an Entity-Relationship (ER) model. The ER model will include
entities, attributes, primary keys, relationships, and their cardinalities and participations.
Here's a conceptual design using the ER model:
Entities and Attributes:
1. Colonist
o MarsColonizationID (Primary Key)
o FirstName
o MiddleName
o Surname
o DateOfBirth
o Qualification
o Age
o EarthAddress
o Gender
o ContactNo
o CivilStatus
o FamilyMembersCount
2. Dependent
o DependentID (Primary Key)
o MarsColonizationID (Foreign Key)
o Name
o DateOfBirth
o Age
o Gender
o RelationshipToColonist
P. GOWSIGAN DATABASE DESIGN E127049 30 | P a g e
a
Downloaded by Ali abbas shah (aliabbas.55723@gmail.com)
lOMoARcPSD|56395220
3. EJet
o JetUniqueCode (Primary Key)
o NumberOfPassengerSeats
o NuclearEnginePower
o MadeYear
o Weight
o PowerSource
o JetType
4. Astronomer
o AstronomerID (Primary Key)
o Name
o Qualification
o Designation
o SpaceHours
5. Trip
o TripID (Primary Key)
o MarsColonizationID (Foreign Key)
o JetUniqueCode (Foreign Key)
o AstronomerID (Foreign Key)
o TripDate
1. Colonist - Dependent:
o One-to-Many (One colonist can have multiple dependents, each dependent belongs
to one colonist)
o Participation: Total (Every dependent must be associated with a colonist)
2. EJet - Astronomer:
o Many-to-Many (An EJet can have multiple astronomers assigned over time, and an
astronomer can be assigned to multiple EJets)
o Participation: Partial (Not every EJet needs to have an astronomer assigned at all
times)
3. Trip:
o A colonist can participate in one trip, and each trip involves one colonist
o An EJet can be used for multiple trips, and each trip involves one EJet
o An astronomer can pilot multiple trips, and each trip has one astronomer
Relationships:
Colonist - Dependent (1) (MarsColonizationID in Dependent is a Foreign Key referencing
MarsColonizationID in Colonist)
EJet - Trip (1) (JetUniqueCode in Trip is a Foreign Key referencing JetUniqueCode in EJet)
This ER model will help in creating a relational database schema, ensuring accuracy and
consistency throughout the data lifecycle. Each entity will have its own table in the database, with
appropriate primary and foreign keys to maintain relationships and enforce data integrity.
Figure 1 - ER Diagram
Colonist Entity:
Attributes: MarsColonizationID (PK), FirstName, MiddleName, Surname,
DateOfBirth, Qualification, Age, EarthAddress, Gender, ContactNo, CivilStatus,
FamilyMembersCount.
Dependent Entity:
Attributes: DependentID (PK), MarsColonizationID (FK), Name, DateOfBirth, Age,
Gender, RelationshipToColonist.
EJet Entity:
Attributes: JetUniqueCode (PK), NumberOfPassengerSeats, NuclearEnginePower,
MadeYear, Weight, PowerSource, JetType.
Astronomer Entity:
Attributes: AstronomerID (PK), Name, Qualification, Designation, SpaceHours.
Trip Entity:
Attributes: TripID (PK), MarsColonizationID (FK), JetUniqueCode (FK),
AstronomerID (FK), TripDate.
Normalization Assessment:
First Normal Form (1NF):
All attributes are atomic (indivisible).
This the Staff Form Wireframe for Quiet Attic Films GUI.
In here You can Insert, Update or Delete Property details.
The Entered Details are stored in Staff Table of the database.
Evaluating the effectiveness of the given ERD and Logical designing of the
identified user and system requirements for Scenario
Evaluating the effectiveness of the given ERD and Logical designing of the identified user
and system requirements for Scenario
trip is associated with a specific E-Jet and pilot, meeting the requirement for detailed
trip management.
4. Housing Management:
o ERD Effectiveness: The House entity is included, with a relationship to the Colonist
entity, supporting the management of colonist housing.
o Logical Design Effectiveness: The Colonist table includes a foreign key (HouseID)
referencing the House table. This allows for effective tracking of house assignments
and occupancy.
5. Job Management:
o ERD Effectiveness: The Job entity and its relationship with the Colonist entity are
included, enabling job assignment and management.
o Logical Design Effectiveness: The Colonist table includes a foreign key (JobID)
referencing the Job table, ensuring that colonists can be correctly assigned to jobs
based on their skills and requirements.
1. Data Integrity:
o ERD Effectiveness: The ERD effectively uses primary and foreign keys to enforce
data integrity and establish clear relationships between entities.
o Logical Design Effectiveness: The use of primary keys in each table and foreign
keys to define relationships ensures data accuracy and integrity.
2. Scalability:
o ERD Effectiveness: The design is modular, with entities and relationships that can
scale as the amount of data grows.
o Logical Design Effectiveness: Proper indexing of primary and foreign keys will
support efficient data retrieval, making the system scalable.
3. Security:
o ERD Effectiveness: The ERD does not explicitly address security, but the
separation of entities can aid in implementing security measures.
o Logical Design Effectiveness: Access control can be implemented at the database
level to restrict access to sensitive data. Encryption and secure protocols can be
applied to protect data.
4. Backup and Recovery:
o ERD Effectiveness: The ERD does not directly address backup and recovery, but
the structure allows for straightforward implementation of these features.
o Logical Design Effectiveness: Regular backups can be scheduled, and the relational
structure supports easy recovery of related data sets.
5. Performance:
o ERD Effectiveness: The ERD supports performance optimization by clearly
defining relationships, which can be indexed for faster queries.
o Logical Design Effectiveness: Proper indexing and query optimization can be
applied based on the logical design, ensuring fast and efficient data access.
6. Usability:
o ERD Effectiveness: The ERD is designed with clear relationships and entity
definitions, making it user-friendly for database administrators and developers.
o Logical Design Effectiveness: The logical design aligns with the ERD, making it
easy for users to understand and interact with the database. User-friendly interfaces
can be built on top of this structure.
Overall Evaluation
The given design (ERD and logical design) effectively meets the identified user and system
requirements for the Mars colonization project by E-Space Solutions. The entities and their
relationships are clearly defined, ensuring comprehensive data management and integrity. The
logical design translates the ERD into a structured database schema, supporting scalability,
security, performance, and usability. With proper implementation and maintenance, the design
will provide a robust foundation for managing the various aspects of the colonization project.
Activity – 02
Develop a Relational Database System According to the ER diagram Using SQL Query
Colonist Table
Dependent Table
EJet Table
Astronomer Table
Trip Table
EJet_Astronomer Table
o Define roles (e.g., admin, user) and assign appropriate permissions based on these
roles.
2. Encryption:
o Encrypt sensitive data at rest (on disk) and in transit (during communication between
client and server). Use strong encryption standards (e.g., AES-256).
3. Data Masking:
4. Audit Logs:
o Maintain audit logs to track database access and modifications. Logs should include
details like user actions, timestamps, and IP addresses.
o Regularly backup the database and ensure backups are encrypted and stored securely.
Implement a recovery plan in case of data loss or breach.
6. Parameterized Queries:
2. Access Control:
o Limit access to sensitive data based on the principle of least privilege. Ensure users
can only access the data necessary for their roles.
3. Granular Permissions:
o Use granular permissions to restrict access at the row and column levels where
applicable. For example, astronomers may access trip details but not personal
information of colonists.
Database Maintenance:
1. Patch Management:
o Regularly apply patches and updates to the database management system (DBMS) and
associated software to mitigate vulnerabilities.
2. Performance Monitoring:
o Monitor database performance to identify any anomalies that could indicate security
issues or potential breaches.
o Conduct regular health checks to ensure data integrity and detect any unauthorized
changes or anomalies in the database.
o Provide training to database administrators and users on security best practices and
policies. Raise awareness about potential threats and how to mitigate them.
Evaluation of Effectiveness:
1. Security Audits:
o Conduct periodic security audits and penetration testing to assess the effectiveness of
implemented security measures.
2. Compliance:
o Ensure compliance with relevant data protection regulations (e.g., GDPR, HIPAA) and
industry standards (e.g., ISO 27001) applicable to your database.
o Have an incident response plan in place to quickly respond to and mitigate security
breaches or data breaches.
By implementing these security mechanisms, defining appropriate user groups and access
permissions, and ensuring regular database maintenance, you can enhance the security of your
database and meet user and system requirements effectively. Regularly review and update these
measures to adapt to evolving security threats and organizational needs.
1. Select
2. Where
3. Insert
4. Update
5. Between
6. In
Figure 21 - In query
7. Group by
8. Order by
9. Having
Assess the usage of the above SQL statements with the examples from the developed database
To assess the usage of the provided SQL statements in the context of the described Mars
colonization scenario, we can analyze each statement and determine how it fits into the database
structure and requirements. Here’s a breakdown of each SQL statement, its purpose, and the
relevant data extracted:
Example Result:
Table 1 - Colonist all query data
MarsColon First Middle Surn DateOf Qualifi A EarthA Gen Conta CivilS FamilyMem
izationID Name Name ame Birth cation ge ddress der ctNo tatus bersCount
123
PhD in
1985- Earth St, 12345 Marrie
1 John A Doe Astroph 39 M 2
01-15 Earth 67890 d
ysics
City, EC
456
Earth
MSc in
Smit 1990- Ave, 09876
2 Jane B Enginee 33 F Single 0
h 11-30 Earth 54321
ring
Town,
ET
789
MSc in Earth
Mille 1989- 44556
11 Liam K Robotic 35 Ln, M Single 0
r 05-23 67788
s Earth
City, EC
Relevance:
This query provides a full list of colonists, which is fundamental for tracking who is part of the
mission and their qualifications, ages, addresses, etc.
Purpose:
To identify all married colonists. This can help in planning family accommodation and
understanding the demographic of participants.
Example Result:
Table 2 - Where query data
MarsColoni FirstN Middle Surn DateOf Qualific Ag EarthA Gen Contac CivilSt FamilyMemb
zationID ame Name ame Birth ation e ddress der tNo atus ersCount
123
PhD in
1985- Earth St, 123456 Marrie
1 John A Doe Astroph 39 M 2
01-15 Earth 7890 d
ysics
City, EC
Relevance:
This helps in understanding which colonists are bringing their families and requires family
arrangements on Mars.
Relevance:
Helps in trip scheduling and resource allocation, ensuring that all trips are planned and
managed effectively.
Example Result:
Table 4 - In query data
MarsColoni FirstN Middle Surn DateOf Qualific Ag EarthA Gen Contac CivilSt FamilyMemb
zationID ame Name ame Birth ation e ddress der tNo atus ersCount
123
PhD in
1985- Earth St, 123456 Marrie
1 John A Doe Astroph 39 M 2
01-15 Earth 7890 d
ysics
City, EC
321
Earth
Brow 1992- BSc in Blvd, 234567
3 Alice C 32 F Single 0
n 07-22 Biology Earth 8901
Metropo
lis, EM
987
Earth
MSc in
1978- Rd, 345678 Marrie
5 Robert D White Enginee 45 M 1
10-10 Earth 9012 d
ring
Village,
EV
Activity -03
This is the test plan for testing the Mars Colonization DBMS is used in our DBMS application to
provide the current prices of the items. There are other databases used by our application. inventory
database but these other databases are out of scope of this test. Based on the function and structure
of a database, DB testing can be categorized into three categories.
Functional Testing
It involves checking functionality of database from user point of view. Most common type of
Functional testing are White box and black box testing.
Non-functional Testing
It involves load-testing, risk testing in database, stress testing, minimum system requirements, and
deals with the performance of the database.
Functional Testing
Functional testing is performed keeping in mind an end-user point of view; whether the required
transactions and operations run by the end-users meet the business specifications.
Objectives: Verify that the system meets all user and system requirements, ensuring the
integrity and reliability of the data.
2. Scope
In-Scope: Testing of all functionalities related to colonist data management, dependent
data recording, E-Jet information management, trip management, and user interface.
3. Test Objectives
Verify data accuracy and consistency throughout the data life cycle.
4. Test Environment
Hardware: Servers, client machines, and network infrastructure.
Data: Test data sets mimicking real-world scenarios including colonist details, dependent
details, E-Jet specifications, and trip schedules.
5. Test Cases
5.1 Colonist Management
TC-01: Create a new colonist with all required details.
6. Test Data
Sample Data Sets: Create test data for colonists, dependents, E-Jets, and trips to
simulate real scenarios.
7. Test Schedule
Planning Phase: Define requirements, create test cases (Week 1-2)
Reporting Phase: Analyze test results, report defects, and provide feedback (Week 7)
Closure Phase: Validate fixes, perform regression testing, and finalize reports (Week 8)
8. Resources
Testers: Assign roles to testers for different modules.
Tools: Use tools for test management, defect tracking, and data generation.
9. Risk Management
Potential Risks: Data inconsistency, incomplete requirements, technical issues.
10. Approval
Sign-Off: Obtain approval from project stakeholders before and after the test execution.
By following this test plan, E-Space Solutions (Pvt.) Ltd. can ensure the DBMS developed for the
Mars colonization project meets all the necessary requirements, providing a reliable and efficient
system for managing colonist and trip data.
QA Tester’s Log
Step # Step Details Expected Results Actual Results Pass / Fail / Not executed /
Suspended
QA Tester’s Log
To assess the effectiveness of the test data provided, we need to execute the SQL scripts in a
database environment and compare the actual results with the expected results. This process ensures
that the data insertion and constraints are working correctly.
Expected Results
1. Table Creation
To gather actual results, run the following SQL queries to count the number of rows in each table
after inserting the data:
Example Conclusion
Table 7 - Successful data insert
Activity – 04
Gather insights on usability, data accuracy concerns, and specific functionality needs.
Implement suggested improvements iteratively to refine the DBMS for optimal usability and
functionality.
By following these steps, you can create a robust DBMS tailored to E-Space Solutions' needs for
the Mars colonization project, ensuring data accuracy and supporting informed decision-making
throughout the mission lifecycle.
1. Introduction
The MCDBMS is designed to maintain the accuracy and consistency of data throughout the
colonization project. The system helps manage information about colonists, their dependents, E-
Jets, and trip schedules.
2. System Requirements
Operating System: Windows 10 or later, macOS 10.15 or later
3. Installation Guide
1. Download the Setup File
o Obtain the MCDBMS setup file from the official E-Space Solutions website.
4. Database Configuration
4. Logging In
1. Open the Application
2. Enter Credentials
3. Click Login
Dependent Management
E-Jet Management
Trip Scheduling
Logout
Figure 26 - Dashboard
o Mars Colonization ID
o First Name
o Middle Name
o Surname
o Date of Birth
o Qualification
o Age
o Earth Address
o Gender
o Contact No
o Civil Status
4. Submit
Dependent Registration
1. Navigate to Dependent Management
o Select Colonist ID
o Name
o Date of Birth
o Age
o Gender
o Relationship to Colonist
4. Submit
E-Jet Registration
1. Navigate to E-Jet Management
o Made Year
o Weight
o Power Source
o Jet Type (Nuclear Engine, Nuclear & Hydro Splitter Engine, Hydro-Nuc Engine)
4. Submit
Trip Scheduling
1. Navigate to Trip Scheduling
o Trip ID
o E-Jet Code
o Departure Date
o Colonist ID
o Number of Dependents
4. Submit
7. Data Management
Viewing Records
1. Select Module
2. View List
Updating Records
1. Select Record
2. Edit Details
3. Submit
Deleting Records
1. Select Record
2. Delete
8. Reports
1. Navigate to Reports
o Choose the type of report you need (e.g., Colonist List, Trip Schedule).
3. Generate Report
4. Export/Print
o Export the report in the desired format (PDF, Excel) or print it.
9. Troubleshooting
Login Issues
System Crashes
10. Support
For further assistance, contact E-Space Solutions technical support at:
Email: support@espace-solutions.com
P. GOWSIGAN DATABASE DESIGN E127049 71 | P a g e
a
Downloaded by Ali abbas shah (aliabbas.55723@gmail.com)
lOMoARcPSD|56395220
The author uses testing method for maintain the system. Author tests the system by three weeks.
Author checked the data insert correctly to the database, search function is working, update
functions are working, delete function are working perfect and the GUI performance. Check all the
calculation are working correctly month by month.
Database system for any company is the base. Information, company documents, important
certificates, communications and what not is done on computers. The entire company
depends upon the IT department to maintain the systems of the company. There is a cloud storage
system. Therefore, the author can develop the system to web base system. If something happens to
the database, then data in the cloud are safe. Then system develop to automatic backup. If the
system does not work today, then it can work with yesterday back up data.
o Age Calculation: The Age column is redundant if DateOfBirth is available. You can
calculate age dynamically using a query instead of storing it. This avoids
inconsistencies.
Dependent Table
o Age Calculation: Similar to the Colonist table, Age can be calculated dynamically
from DateOfBirth.
EJet Table
Unique Constraints: Consider adding unique constraints where applicable, such as on the
ContactNo field in the Colonist table if each contact number should be unique.
Jet Maintenance: Add a table to track maintenance records for jets, including maintenance
dates, details, and costs.
Astronomer Availability: Track astronomer availability to ensure that scheduling trips takes
into account their availability.
Trip Status: Add a status field to the Trip table to track the state of trips (e.g., Scheduled,
Completed, Cancelled).
String Lengths: Review and adjust the lengths of VARCHAR fields according to expected
maximum sizes. For instance, JetType and PowerSource may have shorter maximum lengths.
Access Control: Implement proper access controls and user roles to manage who can view or
modify data.
Conclusion
This assignment has been written and processed to my knowledge. I have deserved when studying
Database in HND in Computing. Furthermore, this assignment consists of solutions which
have been described with the problems stated with scenario of given assignment brief and
explained by lecturer. Solutions which have been stated with proper evidence and some other criteria
of actions should be taken from the side of the assignment scenario creators should be convinced to
apply the solution immediately to turn on the compatibility of lab facility to set up new environment
and atmosphere of programming and designing as well as document modeling such as word
processing systems. Moreover, this assignment has been affiliated to the terms and conditions which
have been described with the rules have been learned from classroom and existing
assignment documentation. And solution which has been described evaluated from some users and
some staffs of my institution to get positive feedback regarding the solution, and I hope there will be
some modifications and re-configurations would be available in future for increasing the
performance of the system configuration management systems with the assignment brief.