Geog 495: GIS Database Design
10/6/05
GIS Database Design Project
The individual or group project will include the design and implementation of GIS databases. The project should be robust enough to be demonstrable as a prototype. Here prototype means that you don’t need to work on real-world data, but it should be considered as the typical model of GIS database development project. Your project should meet the minimum requirements specified below. The project is composed of five milestones that follow database design steps, namely problem description, DB conceptual design, DB logical design, DB population, and implementation. You are expected to submit your work for each section every two weeks on average. Presentations for the project are scheduled on the last week of the quarter, and the written report of final version of the project is due on the last day of the quarter (December 9th).
Five milestones
#: Description Weight Due
P1: Proposal (scenario) 7.5pts 10/21 Fri 5:00pm
P2: DB Conceptual design (ERD, UML) 15pts 11/4 Fri 5:00pm
P3: DB Logical design (Normalization) 15pts 11/18 Fri 5:00pm
P4: DB Population
& implementation 7.5pts 12/2 Fri 5:00pm
P5: Written report of final version 45pts 12/9 Fri 5:00pm
10pts for doing more than minimum
Database minimum requirements
Your project is required to meet certain criteria to help ensure that it is at least a little bit interesting in a structural sense. The projects that do not meet these minimum criteria will be severely penalized.
The database model for your database must include
(1) At least 5 distinct, significant (classes of) entities/objects
At least 2 of entities/objects should be spatial
(Note this
is not the number of tables. As you will find out, each entity in a model will
be converted into one or more tables in the corresponding database design).
(2) At least 4 relationships
At least one of these relationships must be a legitimate 1:N relationship
At least one of these relationships must be a legitimate M:N relationship
P1: Proposal
It describes the scenario for which you will be developing a database. You can consider this sort of the planning phase of your project. You will be defining the problem you wish to solve, establishing the scope of your solution, and assessing the feasibility of your proposal. The proposal should include the following five subsections.
(1) Scenario: background of the project (write two full paragraphs)
(2) Problems: major problems that the users in the given scenario would like to solve (write at least one separate, full paragraph)
(3) Questions: include a list of specific examples of at least five significantly-different questions that the users of your proposed system would like to be able to have answered using your completed database (write in the form of a numbered or bulleted list)
(4) Reports: include a list of specific examples of at least one map and at least one report that the users of your proposed system would be able to generate using your completed database (write in the form of a numbered or bulleted list)
(5) Feasibility: do you think your proposal is doable? Why or why not? What possible problems do you foresee? Specify any assumptions you need to make (if appropriate).
Here you should not be mentioning tables or relations at this point at all.
P2: DB conceptual design
It includes your database model, expressed either as entity-relationship diagrams (ERD) or as unified modeling language (UML). These may be neatly hand-written or computer-drawn. You do not need to include attributes (as it will be too cluttered), but you do need to include lists of attributes for each entity separately, either further down the sheet or on the next page. The diagram should conform to standard notations.
P3: DB logical design
It includes tables where primary keys must be explicitly defined for each table, and foreign keys, as needed, must be explicitly defined for all relationships between tables. Also include the description of each table’s purpose and explain any attribute whose meaning is not immediately clear from its name. You should include the use of SQL CREATE statement if you use option A or describe equivalent procedures for option B.
Option A: Linking spatial data to non-spatial data using ODBC when you use ERD
Option B: Importing UML to Geodatabases
P4: DB population & implementation
You populate your database. In terms of how much data you should include per table, the main is that you should include enough to make your project at least a non-trivial, demonstrable prototype. Trying to giving some firmer guidelines, have at least 10 rows per table. For option A, you should include the use of SQL Select statement or describe equivalent procedures for option B.
P5: Final version of written report
(1) Cover page: your name, course number, completed date, and some ‘title’ for your complete database project.
(2) Proposal section
(3) DB conceptual design section
(4) DB logical design section
(5) DB population & implementation section
(6) Representative queries section: five substantially-different and structurally different representative queries ŕ more on criteria of representative queries will be circulated around the fifth weeks (when we cover SQL).
(7) Example map/report section: one map and one report
The most important criteria for grading is that they should show clearly how the database could be useful to end user(s). That is, your queries/report/map should show that your database solves the problems you hoped it would solve, as given in your database proposal.
If the feedback for previous four milestones indicates any significant change/update, such a feedback should be reflected in the final version of your written report.