I believe in learning-by-example and learning-by-doing. This course presents an example of applying a database application development methodology to a major real-world project. All the database concepts, techniques, and tools that are needed to develop a database application from scratch are introduced along the way when they are needed. In parallel - slightly delayed - learners in the course will apply the database application development methodology, techniques, and tools to their own major class team project. Students will also learn the Extended Entity Relationship Model, the Relational Model, Relational algebra, calculus and SQL, database normalization, efficiency, and indexing. Finally, techniques and tools for metadata management and archival will be presented.
This course counts towards the following specialization(s):
Summer 2019 syllabus (PDF)
Note: Sample syllabi are provided for informational purposes only. For the most up-to-date information, consult the official course documentation.
Before Taking This Class...
Suggested Background Knowledge
Learners should be familiar with at least one scripting or programming language, e.g., PHP, Python, Java. Some familiarity with software engineering concepts and Git/source control will be helpful. Willingness to learn basic system administration tasks is necessary. Flexibility and readiness to work remotely with team members is a must.
Technical Requirements and Software
- Browser and connection speed: An up-to-date version of Chrome or Firefox is strongly recommended. 2+ Mbps is recommended.
- Operating system:
- PC: Windows XP or higher with latest updates installed
- Mac: OS X 10.6 or higher with latest updates installed
- Linux: any recent distribution will work so long as you can install Python and OpenCV
All Georgia Tech students are expected to uphold the Georgia Tech Academic Honor Code. This course may impose additional academic integrity stipulations; consult the official course documentation for more information.