Lecture: 3 hours
Laboratory: 1 hour
Prerequisite: Programming skills at the level of course 40; Math 21C
Grading: Letter; projects (60%), midterm (17%), final (23%)
Catalog Description:
Relational databases, SQL, non-standard databases, XML, scientific
workflows, interoperability, data analysis tools, metadata.
Expanded Course Description:
Topics to be covered and approximate time spent on each (sequence
may vary):
Textbook:
Several papers and tutorials will be made available
Computer Usage:
Students work on projects in a Linux environment, using standard
Linux/UNIX tools as well as major database software packages and associated
development tools.
Programming Projects:
There will be several individual and group projects. In individual
projects, students have to use an existing scientific database (such as
a Protein DB, Image DB, spatial DB (satellite data), query the database
and build simple tools on top of the database. In group projects, students
have to install a DBMS package, populate the database with scientific data,
and design and implement a complete scientific workflow on top of that
database.
Engineering Design Statement:
The projects involve design, implementation and verification of scientific
database applications using a variety of public domain and commercial
database systems, including Postgres, Oracle, GRASS, and Kepler. The
systems and tools used for these projects resemble those that would be
found in industry to the extent possible, including the standard database
query languages SQL and technologies such as XML, RDF and Ontology description
languages. Projects are graded based on the design, performance, and
correctness, including documentation. Examination questions are based
on scientific (meta) data models and database design techniques discussed
in the lecture and from the projects.
ABET Category Content:
Engineering Science: 2 units
Engineering Design: 2 units
Goals:
Students will:
Student Outcomes:
Instructors: B. Ludaescher
Prepared By: B. Ludaescher, M. Gertz (April 2005)
Overlap Statement:
This course offers only a very basic introduction to relational databases,
a topic that is covered in detail in ECS 165A. A much shorter introduction
to XML is taught in ECS 165B.