Course web page: Introduction to problem solving with applications James Tam | Return to the course web page |
For this assignment you must use the initial [Access database]. All students begin with a grade point of zero on this assignment. Implementing the features described below will earn you grade points equal to the value specified in the brackets e.g. properly setting the 3 primary keys of the three tables will earn you a 0.3 GPA for this assignment. As you implement more features your grade will increase. If you violate style requirements your grade can be decreased.
The database consists of three tables: 'Employees', 'Locations' and 'Titles'. The Employees table is a data table while the Titles tables is a validation table. The Locations table provides the features of a lookup table but also contains data. An appropriate primary key must be selected for each table (0.1 GPA for each table x 3 tables = 0.3 GPA for the 3 keys).
Fields of the Employees table |
|
|
|
|
|
|
|
|
|
Fields of the Locations table |
|
|
|
|
Fields of the Titles table |
|
|
Note: the above properties of the attributes are something that you need to enforce in the "DataSheet" view of MS-Access and it's not required when the queries are entered nor do you have to explicitly enforce these properties in the graphical form (feature described below). Also the previous description indicates what the end result be like in Access without explicitly stating the feature of features of Access that you should employ. That means that before you start the assignment you should thoroughly study the materials from the database section and familiarize yourself with the concepts and terms that have been introduced because you will be required to recognize when a concept must be applied in order to implement a particular feature (because in real life you will only be given the formatting requirements because your client won't be able to tell you if you should, say, use an input mask or validation rule).
But it isn't sufficient for your database to "just work" (e.g., fulfill the above format and data validity requirements)> It must also conform to good stylistic conventions.
The 'Description' attribute in the datasheet view should make other people aware what type of information should be contained within a field as well as formatting or range constraints. For this assignment every time that there are restrictions on the format of the data (e.g., postal code must be in a specific pattern of alphanumeric and a dash) or range of data (e.g., no negatives) the description field should document the requirement. If the description field is not filled in when it should be: -0.1 GPA if there was one missing description field, -0.2 GPA lost for the second occurrence, -0.3 GPA lost for more than two occurrences.
If the user enters invalid data, useful error messages should be provided (whenever it's possible i.e. for the Validation Rules) that helps the user keep from making the same error again e.g., "Age cannot be less than zero and greater than 123 years". If the error messages are not provided or inadequate then: -0.1 GPA will be deducted if there was one occurrence of a poor error message, -0.2 GPA lost for the second occurrence, -0.3 GPA lost for more than two occurrences in the database.
Both of these requirements are also important in the design of a real life database. In the case of the assignment these things were already done for you (e.g., base salary is already defined as a 'currency' type, all attributes have already been given names) so unless you decide to change the names or type of an attribute these requirements won't play a role in your grade for this assignment).
Using the notation that you learned in lecture draw an ERD (Entity-Relationship diagram) for the three database tables, their attributes and the relationships between the tables as well as the multiplicity. You can use any drawing program, it needn't be done with something specifically designed to create an ERD. Even hand-drawn diagrams may be acceptable (scan in the drawing). However your diagram must use the correct notation and it must be clear enough for your marker to understand. (You won't get marks if your marker cannot read your hand writing for instance). Save your ERD in one of the following formats (if it comes in another format it won't be marked): gif, jpg, pdf, png and upload it to D2L along with your database. (0.2 GPA)
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
||
|
|
For the remaining queries you need to use the following formula: Actual Salary = Base salary * (1 + (Years of service/100)). This value MUST be a calculated value that is generated as part of the query in order to get credit for the query. |
|
|
|
|
|
For the last query (#8 employees with extreme pay), generate a report showing the query results. Below is a sample report. Results should be reasonably neat-looking and formatted. (0.1 GPA)