LIS-S 511 Database Design
3 credits
- Prerequisite(s): LIS-S 500, LIS-S 507
- Delivery: On-Campus, Online
- Semesters offered: Fall, Spring (Check the schedule to confirm.)
Description
Database Design is concerned with a comprehensive view of the processes involved in developing formal access to data and information from a user-centered point of view. The course will introduce you to technical skills, theoretical concepts, and critical data issues on database design, management, and related socio-technical and ethical concerns. As an introduction to the area, you will cover basic database models and review different systems, which will support your work in libraries, museums, archives, cultural heritage institutions, and other various information roles.
Program Learning Goals Supported
Instructors map their courses to specific LIS Program Goals. Mapped program goals drive the design of each course and what students can expect to generally learn.
- Connect Core Values and Professional Ethics to Practice
- Organize and Represent Information
Learning Outcomes
Instructors develop learning outcomes for their courses. Students can expect to be able to achieve the learning outcomes for a given course after successfully completing the course.
- Design and implement relational databases using tables, keys, relationships, and SQL commands to meet user and operational needs.
- Diagram a relational database design with entity–relationship diagrams (ERDs) using crow’s foot notation to enforce referential integrity.
- Formulate queries in relational algebra using selection, projection, restriction, Cartesian product, join, and set operators.
- Evaluate the social and ethical implications of database designs and data practices
Course Overview
Instruction is in Canvas. Lessons are organized into Modules whose length may vary.
Module 1: Database Systems
- Identify data flaws (e.g., anomalies) in a table
- Differentiate between structured and unstructured data
- Produce a basic data dictionary using correct data types to account for data needs
Module 2: Data Models
- Distinguish between key structural aspects of entities
- Develop entity and attribute names using proper naming conventions
- Construct business rules for related entities
- Interpret entity relationships and their characteristics in an entity relationship diagram created using Crow’s Foot
Module 3: Relational Databases, Part 1
- Characterize the role of entity and referential integrity
- Find determinants in an entity
- Explain the value of a data dictionary for various types of users
- Develop a data dictionary documenting various aspects of attributes
Module 4: Relational Databases, Part 2
- Differentiate among different key types in a database
- Build entities and attributes using an RDBMS system
- Establish entity relationships and diagram them using RDBMS system tools
Module 5: Entity Relationship Modeling, Part 1
- Interpret a Crow’s foot entity relationship diagram to determine its parts and relationship types
- Craft a relational schema
Module 6: Entity Relationship Modeling, Part 2
- Interpret data needs and constraints in order to design a database's entity relationship diagram
- Design an accurate entity relationship diagram using Crow's foot symbols that reflections data needs and constraints
Module 7: Advanced Data Modeling
- Interpret a Crow’s foot entity relationship diagram to determine its supertype/subtype parts and relationships
- Build a basic supertype/subtype relationship in a Crow’s foot entity relationship diagram after reviewing a user’s information needs
Module 8: Database Normalization
- Analyze a dependency diagram to identify partial and transitive dependencies
- Produce a dependency diagram through the first, second, and third normal forms
Module 9: SQL Syntax and Programmatic Database Creation
- Break down DDL and DML queries to understand how their related parts lead to SQL actions
- Execute DDL and DML queries to build and modify database structures
Module 10: Beginning SQL Queries with the SELECT Statement
- Parse a stated information need to determine what to query
- Analyze database documentation in order to craft strategic queries
- Implement specific keywords to strategically filter through queried data
Module 11: SQL Queries and Programmatic Joins
- Summarize the differences between different join types
- Interpret an information need and a table’s structure to determine which join is applicable to retried the correct data
- Develop queries using different join types in accordance with specific information needs
Module 12: Filtering and Operators
- Develop queries using compare- and logic-type operators
- Compose subqueries to more specifically create intermediate datasets and filter through those datasets
Module 13: Querying for Data Visualization
- Produce joined datasets within Tableau to visualize
- Create basic visualizations using joined data within Tableau
Policies and Procedures
Please be aware of the following linked policies and procedures. Note that in individual courses instructors will have stipulations specific to their course.