Database Design Theory?
Tyler Strickland
tyler at tylers.org
Tue Nov 8 22:44:14 MST 2005
On 11/08/2005 06:25 PM, Ross Werner wrote:
> On Tue, 8 Nov 2005, Levi Pearson wrote:
>
>> I'd say the general technique to follow is thus:
>> Exhaustively catalog the entities that you wish to model and their
>> relationships to one another
>> Draw up an ER or UML diagram of the entities and relationships
>> Convert the diagram to a database schema
>> Normalize the schema
>> Convert schema and constraints to SQL
>
>
> I think that's very excellent advice, but this sort of information (with
> each step made explicit with lots of examples, especially of common
> pitfalls and difficulties) isn't really what I saw in the database class
> at BYU. Now I didn't actually take the class, so I probably have no room
> to talk, but I've spoken with several people who *have* taken the class
> and this sort of stuff, to the best of my knowledge, wasn't covered in
> much more depth than what you've listed here. Would anyone who has
> actually taken the class care to chime in and relieve me of my ignorance?
In 2002, I took ISYS 402, the BYU business department's database class
for the ISYS majors. I wasn't one of them, but the class was a
requirement for my statistics degree.
The class was based on "Database Management and Design"(1) by Hansen and
Hansen, one of them being the professor. The book (and the class)
covered the following:
1. The history of databases
2. Database concepts, such as cardinality, attributes, etc. and how to
model them visually (UML)
3. The relational data model and normalization
4. Relational algebra
5. Basic SQL - nothing fancy, though we did do some fairly deep
subqueries. No mention of concepts more advanced than subqueries,
built-in functions, and GROUP BY/HAVING.
6. Basic concepts of client-server database systems
7. Physical database factors - HD access time, B+ trees, etc
8. Basics of distributed databases
At no time was a specific database mentioned or a query actually
performed. All was theory. It was good theory, but when I actually
wanted to start working with databases I found I didn't know much at
all. I could design a solid fourth-normal-form database, but beyond
that I was pretty lost.
--Tyler
(1)
http://www.amazon.com/exec/obidos/ASIN/0133088006/qid%3D1131514090/sr%3D11-1/ref%3Dsr%5F11%5F1/103-6333025-2797451
More information about the PLUG
mailing list