ERD Project deliverable
Budget: $10 – $40 USD
Welcome to the second week of your course-long project. Getting a jump start on this by selecting a topic to build a brand new database from scratch is imperative. To be at pace, you should have selected a personal hobby, fantasy start-up idea, or favorite online app as a starting point. Going through initial brainstorming and the conceptual design phase will need to be completed before moving on to Module 3.
You have seen the basics of data modeling in the last few sections; this will be a critical skill not only for developing your project database but also anytime you engage a data model in the future.
This journey to conceive, design, and construct an original database is the same as any “real” project in the technology industry. This may seem daunting at first glance; this course has the details and examples to guide you through the entire process. As a reminder, anytime you are building something (be it a birdhouse, dinner, or a database application) you must be able to answer who your stakeholders are. For this project, be able to answer the following two questions:
Who is going to use the database?
What decisions are they going to make from it (aka their “learning”)?
Take about 30 to 45 minutes now to brainstorm the 15 to 20 nouns that will be important to the stakeholder of your imaginary database. Try to exhaust the characteristics of each noun in the following manner:
What are the details, descriptions, or eventual columns that are important about this object? What will people want to know about this object to use it effectively in a query (and learn)? For example, if one of your nouns is a “book”, then perhaps some characteristics will be “author”, “yearPublished”, “ISBN”, and so on.
Try to recognize the relationship(s) each object will have with other objects. Continuing with the book example, there will be a relationship with other nouns like “publisher” and “genre.”
Going through this process of brainstorming is intended to introduce you to the requirements and depth of detail required to help eventual users of the database. There is nothing here that is to be graded yet so this work is preparation for your draft ERD.
You have made it through Module 2. Let us take a look back at what we have covered so far.
You have seen several database designs at various stages of development, including BOOK_CLUB and SPOTIFY. You have seen these developed from UNF to 3NF; hopefully, you have been able to get a basic understanding of the process for how we engage a business topic and create a basic database that will support the long-term operations of an application supporting the organization.
You are now ready to further develop your database topic! Previously, in 2.19, you brainstormed the nouns that are associated with your database topic; now you will create a draft ERD in draw.io by taking your conceptual database diagram and going through the normalization process to target 3NF. Once you have completed your updates, you will submit them in Canvas.
To receive maximum points, you need to avoid the common mistakes below that early developers make (as outlined in the previous sections):
PK/FK going in the wrong direction
Yes/no questions as column headers
Missed M:M relationships
Referential loops
Transitive dependencies
You have seen the basics of data modeling in the last few sections; this will be a critical skill not only for developing your project database but also anytime you engage a data model in the future.
This journey to conceive, design, and construct an original database is the same as any “real” project in the technology industry. This may seem daunting at first glance; this course has the details and examples to guide you through the entire process. As a reminder, anytime you are building something (be it a birdhouse, dinner, or a database application) you must be able to answer who your stakeholders are. For this project, be able to answer the following two questions:
Who is going to use the database?
What decisions are they going to make from it (aka their “learning”)?
Take about 30 to 45 minutes now to brainstorm the 15 to 20 nouns that will be important to the stakeholder of your imaginary database. Try to exhaust the characteristics of each noun in the following manner:
What are the details, descriptions, or eventual columns that are important about this object? What will people want to know about this object to use it effectively in a query (and learn)? For example, if one of your nouns is a “book”, then perhaps some characteristics will be “author”, “yearPublished”, “ISBN”, and so on.
Try to recognize the relationship(s) each object will have with other objects. Continuing with the book example, there will be a relationship with other nouns like “publisher” and “genre.”
Going through this process of brainstorming is intended to introduce you to the requirements and depth of detail required to help eventual users of the database. There is nothing here that is to be graded yet so this work is preparation for your draft ERD.
You have made it through Module 2. Let us take a look back at what we have covered so far.
You have seen several database designs at various stages of development, including BOOK_CLUB and SPOTIFY. You have seen these developed from UNF to 3NF; hopefully, you have been able to get a basic understanding of the process for how we engage a business topic and create a basic database that will support the long-term operations of an application supporting the organization.
You are now ready to further develop your database topic! Previously, in 2.19, you brainstormed the nouns that are associated with your database topic; now you will create a draft ERD in draw.io by taking your conceptual database diagram and going through the normalization process to target 3NF. Once you have completed your updates, you will submit them in Canvas.
To receive maximum points, you need to avoid the common mistakes below that early developers make (as outlined in the previous sections):
PK/FK going in the wrong direction
Yes/no questions as column headers
Missed M:M relationships
Referential loops
Transitive dependencies
Related categories:
SQL
UML Design
Database Administration
Database Programming
Database Development