Appropriate Hardware Identified
The hardware requirements I will need is simply the PC itself attached with a mouse, keyboard and also a printer in order to create and print the database. The mouse and keyboard is basic as we have to input the data using the two and a printer is needed to print reports etc.
Data collection and input
Mrs Knight will need to input the following data into the database:
- A list of students in each class. These lists will be obtained from a list produced by the school database at the start of the school year. A StudentID will be assigned to each of the pupils and their student’s class, surname and first name will be entered into the database.
- Details of each assignment. Details of assignments would be updated and keyed into the database, when each assignment has been decided on at various times in the school year. Each assignment will be noted down and details would be eyed in later. The assignments would consist of data such as assignment title, date to be handed in, description, maximum marks achieved and the assignment type (e.g. Coursework, Exam, and Homework.)
- Assignment marks achieved by each student on a particular assignment. The marks each student has achieved will be keyed into the database, but only after the assignment has been marked and checked. After the data has been entered, the StudentID and the marks achieved will be entered and the system will validate the data, to make sure that the mark is not greater than the maximum mark for the assignment.
The computer will automatically validate assignment ID, StudentID and AssignmentDate, which is most of the data, as they will be of a preset type such as Autonumber or Date.
Also, if a particular student has not been recorded in the database, it would not be possible to enter a mark for the student.
Data Flow diagrams showing data source, processes and destinations
Mrs Knight will input the details of all the students in each class into the database at the beginning of the term. The details will then be sorted by class and surname and the be stored in the Student table, in the database.
Student Name Student
and class Details
Whenever, Mrs Knight sets a new assignment, she will always have to enter details such as the title, date set, type of assignment and maximum mark. This is shown in the diagram below.
Assignment
Title, Type, Max Assignment
Mark and Date Details
As the Mrs Knight has entered the student and assignment details, she will now need to input the individual marks for each assignment as it is completed. From the marks entered, percentage grades are calculated which would then form the basis for the school reports for the students. This process is shown below:
Marks Marks
Student Marks
Assignment
Details Grades
Student Grades
Details
Data Manipulation
Tables will be required in the system in order to create the database. The tables will consist of Student, Assignment and StudentMark. Each of the tables contains individual fields, which will be as follows:
STUDENT – Contains the details of a student [StudentID, FirstName, Surname and class]
ASSIGNMENT – Contains information on the assignments set [AssignmentID, Type, Date, Description and MaxMark]
STUDENTMARK - Contain information on what marks the students have achieved for each assignment and will consist of [StudentID, AssignmentID, and Mark]
Two reports will need to be produced for the database. The first report will be the report for individual grades. To create the individual grades report, a query will run in the system to combine data from all three. This will produce the report. The user will then be able to specify a particular students name and then the query will be used to calculate the percentage grade for each assignment. This query that will need to be produced will be the source of the individual grade reports for each of the students. This report needed to find the average mark for a particular student using the summary function.
The second report will print a particular class’s grades, for each assignment covered. In order to do this the user will be asked to enter the assignment code and class name.
Alternative methods of Output Methods Considered
In order to view the reports or print them an on-screen monitor and printer will be required for the system. When Mrs Knight arranges a Parents Evening, she will need to print a report of an individuals grades and the class list of grades for a particular assignment. In other cases she might need to view information on if an individual has passed or failed an assignment. Again, she will need to view this on an on-screen monitor.
The reports will group and sort out some of the information to make the system easier to follow and understand.
Backup Strategy Identified
A backup or security strategy must be taken into hand for safety purposes. This could be done, by backing up the computer file containing the final system onto floppy disk or CD-Rom, once a week or whenever a large amount of data is input to the system, to access it later in the future. The backed up copy should be kept in a secret compartment incise of a dangerous hazard, such as a fire or in such cases theft!
Security Strategy Explained
The system should also be password protected so that information should be secure. The password should be remembered and should not be shared with any one. It should be one that a student cannot guess.
Menu structure Diagram
The menu structure for the system will be as shown below:
User Feedback on Initial Designs
Mrs Knight, the geography teacher, had a look at the initial designs, for her own feedback and approval to suggest any improvements that could be made. She claimed that there could be a few changes that could be made to the designs for improvement. Mrs Knight made the following comment:
“The initial designs you created seem to fit my needs but, however, there could be a few improvements by altering one or two things, for better performance.”
-
Although the assignment types consist of ‘Test’, ‘Homework’ and ‘Exam’, they will also need to include ‘Project’. Also, instead of typing it in each time, it would be much more grateful to just select the option from a list, as it would save time.
- Is it possible to enter the assignment details and then fill in the list of marks each student has achieved in a class, onto the same form? This would be really helpful instead of entering each student’s grade separately, as it would be much quicker and save more time ten the previous method.
- Is it possible to print out an individual report for each student in a class without having to enter their FirstName and surname individually? This would be great for events such as parents evening, where Mrs Knight can print an individual report for every student in a class.
Table Structures and Relationships defined
In the system three tables are required and they are related as shown below:
The tables are defined as follows:
tblStudent
tblAssignment
tblStudent
Query Explained in detail
For the database I will need to create 3 queries. Queries will able you to view, change, and analyse data in different ways but in my case, they are the source of records for forms, reports, and data access pages.
QryIndividualGrade
This query will combine data from all 3 tables. It will then ask the user to specify a particular pupil’s First name, surname and class by using all of the fields from the three tables. The query will then result in a pupil’s record of the grades they have achieved for each assignment completed. As well as this, the query will also calculate the percentage grade for each assignment, by creating new fields. The Percentage mark is premeditated from the mark and the Maximum mark. All this information is inputted into a new field named Percent.
Example on how to find the percentage mark for each grade:
Percentage = (Mark)/(MaxMark)*100
Entering a Surname, FirstName and class for an individual student.
e.g. (Enter Surname:)
This query will be used as the source for rptIndividualGrades for a particular student.
QryClassAssignmentGrade
This query will also combine data from the three tables. But this time, it will ask the user to state an Assignment ID and a class. A list of pupils in a particular class will then be shown and the mark that each pupil achieved for a particular assignment will be visible.
QryClassindividualGrade
The following query will be vastly similar to the qryindividualGrade, but it will only ask the user to enter a class rather than entering the names of the pupils.
Revised Menu Design
A menu is required to access certain forms and reports on particular pupil in each class. The menu will need to realize that grades and assignments can now be entered on the same form. To do this it will need to include an extra report.
Subtasks Identified
The implemented final design will need to be broken down to manageable sub-tasks to make it easier to understand. I will need to
- Create three tables and classify the particular default validations and values.
- Create relationships between each of the tables.
- Create the data entry form so that students can be entered into the system.
- Create the data entry form including the sub form so that assignments and grades can be added.
- Create the three queries so the user, can specify a particular pupils details such as first name, surname, and class to attain information about them.
- Create the three reports to display the assignments and grades for each pupil in a certain class.
- Finally, create the menu, so that the user can access the option they want e.g. assignments and grades on a particular pupil, individual grade reports etc. The menu will also need an exit button, so that you can exit the database.
The implementation section, gives evidence to show that the program has actually been created. I may find some errors in the program when implementing it, and any errors discovered will be described into why it has appeared as an error, and then gradually be corrected, to give the perfect result.
Test Results
The test plsns I created in the design section of the prject, can now be implemented