SOME COMMENTS FROM THE LAST YEAR ON FREQUENT ERRORS MADE BY STUDENTS IN THEIR PROJECTS:

 

System Requirements

1. Missing requirements

2. Essay-like description of the system instead of concise (but informative) bullet-type specification

3. Missing min, or max constraints when relations are described

4. Relations between entities considered only in one direction

 

Contextual DFD

1. Lack of directions for presented data flows

2. Two-directional arrows to specify data flows

3. All data flows going in the same direction

4. Not distinguishing clearly the DB system you are designing

 

ER in Min, Max notation

1. PK's are not marked properly (or missing, or placed in incorrect locations)

2. Min or/and Max values in relations are not specified

3. Identifying relations are missing for weak entity types (or have incorrect min or max constraints)

4. Partial PK's are not marked properly, composite PK’s marked incorrectly.

5. Using unexpected symbols with no explanation (e.g. arrows)

6. Confusing relationship types with entity types

7. Omitting System Requirements, despite having them specified earlier

8. Confusing drawing (links merged together before connecting to entity/relationship types)

9. Spreading parts of diagram over multiple pages without specifying connectors between them on the diagram

10. Merging composite attributes (e.g. first and last name put together limits your search capabilities)

11. Improper specification of entity types

12. Frequent repetition of names for relationship types got me confused (e.g. includes, defines, has, contains, etc.)

13. Modeling of existing documentation (i.e. forms) instead of the actual system

 

Rationale for DBMS

1. Not taking under consideration client's preferences

2. Making a choice without strong rationale for it

3. Lack of comparison with other alternative DBMSs

 

Implementation-ready Model

1. Lack of de-normalization when needed

2. Claiming that the implementation-ready model is normalized, whereas it is not

3. Improper mapping

4. Redundant attributes/tables (especially in the case when tables with only one attribute have been specified)

 

Data Dictionary

1. Missing entries

2. Missing/Empty columns

 

SQL

1. Lack of constrains: PKs, FKs, ON UPDATE, ON DELETE, etc.

2. Permanent (i.e. software generated) NO ACTION flag for all “ON DELETE” and “ON UPDATE” constraints... this make me think you did not even look through the code you generated…

3. Improper data formats used for the attributes (e.g. varchar for date values, etc.)

 

Documentation

1. Missing page(s)

2. Hand-written comments/modifications/page numbers

3. Wrong order of pages

4. Lack of consistency in format and information between the phases (e.g. the same table/attribute named differently in different sections of the project)

5. Diagrams put in appendix, and without clear references.

 

Presentation

1. Lack of slides

2. Absence/Lack of actual presenting

3. Missing crucial parts of your projects during presentation