Report Proccessing System
Report Proccessing System
ACKNOWLEDGEMENTS.........................................................................................................................2
SECTION A: Selection, Investigation and Analysis....................................................................................3
PROBLEM DEFINITION.......................................................................................................................3
Investigation of the current system..........................................................................................................3
Broad description of the system...............................................................................................................4
EVALUATION OF EXISTING SYSTEM.............................................................................................5
REQUIREMENTS SPECIFICATIONS..................................................................................................5
Aims and Objectives................................................................................................................................6
SECTION B: Consideration of alternative methods....................................................................................7
Consideration of alternative methods......................................................................................................7
Test Plan................................................................................................................................................12
Section C: Software Development.............................................................................................................14
Technical documentation.......................................................................................................................14
Pseudo codes.........................................................................................................................................14
Flowcharts.............................................................................................................................................15
Program Listing.....................................................................................................................................17
User Documentation..................................................................................................................................33
Running the system/ Navigation the system..............................................................................................36
Section D: Testing and Evaluation............................................................................................................42
Error Messages..........................................................................................................................................43
Ease of use testing.............................................................................................................................45
Functionally correct...........................................................................................................................45
Efficient to use...................................................................................................................................45
Easy to learn......................................................................................................................................45
Error tolerant.....................................................................................................................................45
Effectiveness.....................................................................................................................................46
Evaluation of the System...........................................................................................................................47
Achievements........................................................................................................................................47
Limitations................................................................................................................................................48
Opportunities for Future Developments....................................................................................................48
Appendix...................................................................................................................................................49
ACKNOWLEDGEMENTS
I would like to express my gratitude to my teacher Mr. Chapinduka for his great guidance when
challenges aroused. My parents for all the unconditional support they gave me. My colleagues
for installing the competence that encouraged hard word.
SECTION A: Selection, Investigation and Analysis
PROBLEM DEFINITION
St John’s School Chikwaka Report processing is a system that is currently running St John’s
High School Chikwaka which is a school situated in Goromonzi District 50km East of Harare. It
is 5km from Juru Growth point along the new Mutoko road. It is a private high school under the
Anglican Diocese of Harare. The school has about 900-1000 students and every end of term the
few teachers at this institution write the reports of every student and a lot of problems are
encountered during the process for example incorrect addition of marks due to limited processing
time. The school enrolls new students every year and writes their names on paper so this problem
of report processing started years back and it’s still existing. These reports are written by 52
teachers manually using the sharp calculator and therefore many problems are faced. The
teachers enter information about the student name, class, class position, percentage of
examination and comment. The reports are then kept at the administration block and then
distributed to the student at the end of the term.
I am Leslie M Sarai, a form four student who is conducting a project based on the Report
Processing at your school. I kindly ask you to assist me by answering truthfully for all the
questions that follow. Thank you in advance for your effort and time.
The teacher will enter the student’s details which include name, surname, gender and all the
student’s subject .The teacher will then record the marks of each student
Calculating the averages, percentages, total mark and to calculate the total number of subjects
failed and passed
The student’s total marks, grade and number of subjects passed or failed then written report
Storage
Reports for the class are then stored in one big envelope.
Reports are calculated manually therefore they are they are more prone to errors.
Takes long to process reports.
Requires more human efforts therefore tiring causing errors.
The reports can be stolen by students and may temper with their marks.
If errors are made on report a new one is required and process is repeated.
Records of the mark and grades can be also lost.
REQUIREMENTS SPECIFICATIONS
Software requirements
Microsoft Access
To create database for each class to make it easy to search for student’s information
Antivirus
To clear out viruses in the computer or laptop to make it work more efficiently.
Microsoft word
Printer
- To print out the report cards.
Hard Disc
To store the data
Objectives
Evidence of Research
(see appendix)
This involves inviting a System Analyst/ Developer to produce an Enrolment System that is
specifically for St John’s High School which will be user friendly.
The software is designed exactly to suit the St John’s High School Report processing System.
The software can be written to run on hardware that the institution, St John’s High School
already having or is flexible in using.
The user, St John’s High School has direct control over the program as the software was
produced “in-house.”
All features found in the software are useful as it is written for specific use
The software built can be integrated with the existing system at the institution
This involves purchasing of off-the-shelf software from Software shops, so that they help to
increase speed and efficiency on the current system.
It is less expensive compared to tailor- made since it is designed for general use
Readily available
Reliable as it is mostly bug-free
It takes a lot of time for the user to be able to operate the system smoothly, due to
presence of many general features
May contain some features which are not important for the required system since it is
designed for general purposes
Although there were a variety of choices to choose, which solution to implement in order to
overcome problems and limitations which are associated with the current system the system
Analyst chose Tailor Made because?
1. It is relatively cheaper for St John’s High School because there are no huge development
costs to be shared.
2. All features found in the tailor-made software are useful as it is designed for specific use
rather than purchasing a Package which comprises of many features which are not needed
in the Enrolment System.
3. The software built can be integrated with the existing system at the institution meaning
that it will be an aided advantage to St John’s High School.
Input Design
Login Form
Eg admin
Eg A-level
Output
Statistics
Test Plan
White Box text plan
The white box testing also identifies errors not identified by the black box testing. It verifies and
validates the quality as well as accuracy of the testing data. It helps identify the line of code that
is being executed. It also validates quality of a software’s product internal structures.
The system was taken through the White box test plan and the outcomes came out as illustrated
in the tables below. All the data is verified, checked for validation on both; the device
specifications and informational formats and the ability to search and give correct result or use a
system of message boxes for any error.
Login
NAME CASE DESCRIPTION EXPECTED OUTCOME OUTCOME
PASS/FAIL
1. Start
2. Enter username, password
3. Select department
4. If password length is less than 4 characters, Then
5. Display message “password too short”
6. Else If password length is more than 4 characters Then Add record to database
7. Else If any required field is empty Then Display error message “enter user credentials”
8. Create a record in database
9. Save progress
10. Stop
1. Start
2. Initialize All level=0,Allzjc=0,Allalevel=0
3. For n= 1 to number of students in the database
4. If data reader for level=”A level” then All level=Allalevel+1
5. Elseif data reader for level=”O level” then All level=Allolevel+1
6. Elseif data reader for level=”ZJC” then Allzjc=Allzjc+1
7. Display Allolevel,Allzjc,Allalevel
8. stop
Flowcharts
This section shows the flow of data within the system during the execution of a task
Deleting student
Start
Select a record
Start
Searching a student
Start
Enter name of student
Is query
Msgbox ”No results”
empty
Display results
Stop
Program Listing
The following are the codes that were used by the analyst to instruct the computer on some of the
modules.
The log in codes
Imports System.Data.OleDb
Imports System.IO
Public Class login
'the connection string
Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Application.StartupPath & "\Report.mdb")
Dim dr As OleDbDataReader
Dim i As Integer
Private Sub btnshow_CheckedChanged(sender As Object, e As EventArgs) Handles btnshow.CheckedChanged
'if the radio button is checked then the password is hidden
If btnshow.Checked = True Then
txtpass.UseSystemPasswordChar = False
'if the radio button is not checked then the password is shown
ElseIf btnshow.Checked = False Then
txtpass.UseSystemPasswordChar = True
End If
End Sub
Private Sub btnlogin_Click(sender As Object, e As EventArgs) Handles btnlogin.Click
'when the login button is clicked the following will happen
Authorization()
'All textboxes will be cleared
txtpass.Clear()
txtuser.Clear()
End Sub
' this is where the authorisation is taking place
Sub Authorization()
Try
conn.Open()
'selecting from the login table the credentials
Dim cmd As New OleDb.OleDbCommand("select*from Login where Username=@Username and
Password=@Password", conn)
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@username", txtuser.Text)
cmd.Parameters.AddWithValue("@password", txtpass.Text)
dr = cmd.ExecuteReader
'if credentials entered are correct
If (dr.Read() = True) Then
username = dr("username")
password = dr("password")
GunaLabel1.Text = "Authentication"
' your level is Admin you will go to the admin form
If dr.Item("Access") = "Admin" Then
Form1.Show()
' your level is Teacher you will go to the Teacher form
ElseIf dr.Item("Access") = "Teacher" Then
ClassTeacher.Show()
End If
Me.Hide()
Imports System.Data.OleDb
Imports System.IO
Public Class Form1
Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Application.StartupPath & "\Report.mdb")
Dim dr As OleDbDataReader
Dim i As Integer
Dim AllZJC, AllOlevel, AllAlevel, Female, Male As Integer
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
dataload()
Try
conn.Open()
lblstatus.Text = "Connected"
lblstatus.ForeColor = Color.DodgerBlue
Catch ex As Exception
lblstatus.Text = "Not connected"
lblstatus.ForeColor = Color.Red
End Try
conn.Close()
End Sub
'loading the data into the databases
Sub dataload()
'Selecting from the O-level Table
Try
Female = 0
Male = 0
AllOlevel = 0
GunaDataGridView1.Rows.Clear()
conn.Open()
Dim cmd As New OleDb.OleDbCommand("select * from Olevel", conn)
dr = cmd.ExecuteReader
While dr.Read
GunaDataGridView1.Rows.Add(dr.Item("Name"), dr.Item("Surname"), dr.Item("Level"), dr.Item("Sex"))
If dr.Item("Sex") = "Female" Then
Female = Female + 1
ElseIf dr.Item("Sex") = "Male" Then
Male = Male + 1
End If
AllOlevel = AllOlevel + 1
End While
dr.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
'Selecting from the ZJC Table
Try
AllZJC = 0
Dim cmd As New OleDb.OleDbCommand("select * from ZJC", conn)
dr = cmd.ExecuteReader
While dr.Read
GunaDataGridView1.Rows.Add(dr.Item("Name"), dr.Item("Surname"), dr.Item("Level"), dr.Item("Sex"))
If dr.Item("Sex") = "Female" Then
Female = Female + 1
ElseIf dr.Item("Sex") = "Male" Then
Male = Male + 1
End If
AllZJC = AllZJC + 1
End While
dr.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
i = cmd.ExecuteNonQuery
If i > 0 Then
Else
MsgBox("error", vbCritical)
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
conn.Close()
dataload()
clear()
End Sub
'Saving into A-Level
Sub Alevel()
conn.Open()
Try
i = cmd.ExecuteNonQuery
If i > 0 Then
MsgBox("welldone", vbInformation)
Else
MsgBox("error", vbCritical)
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
conn.Close()
dataload()
clear()
End Sub
'Saving into ZJC
Sub ZJC()
conn.Open()
Try
If MsgBox("do you want to save", vbYesNo) = vbYes Then
Dim cmd As New OleDb.OleDbCommand("insert into
ZJC(`Name`,`Surname`,`Sex`,`Level`,`Maths`,`English`,`Geography`,`Shona`,`Computer`,`History`,`FRS`,`Combin
ed`)values(@Name,@Surname,@Sex,@Level,@Maths,@English,@Geography,@Shona,@Computer,@History,@
FRS,@Combined)", conn)
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@Surname", txtsur.Text)
cmd.Parameters.AddWithValue("@Name", txtstuname.Text)
cmd.Parameters.AddWithValue("@Sex", sex)
cmd.Parameters.AddWithValue("@Level", cbolevel.Text)
cmd.Parameters.AddWithValue("@Maths", "N/A")
cmd.Parameters.AddWithValue("@English", "N/A")
cmd.Parameters.AddWithValue("@Geography", "N/A")
cmd.Parameters.AddWithValue("@Shona", "N/A")
cmd.Parameters.AddWithValue("@Combined", "N/A")
cmd.Parameters.AddWithValue("@Computer", "N/A")
cmd.Parameters.AddWithValue("@History", "N/A")
cmd.Parameters.AddWithValue("@FRS", "N/A")
i = cmd.ExecuteNonQuery
If i > 0 Then
MsgBox("welldone", vbInformation)
Else
MsgBox("error", vbCritical)
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
conn.Close()
dataload()
clear()
End Sub
Alevel()
ElseIf cbolevel.Text = "ZJC" Then
ZJC()
End If
End Sub
Sub delete()
'if the level is ZJC it will delete from the ZJC table
If cbolevel.Text = "ZJC" Then
Try
conn.Open()
If MsgBox("do you want to delete", vbYesNo) = vbYes Then
Dim cmd As New OleDb.OleDbCommand("delete from ZJC where Name=@Name", conn)
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@Name", txtstuname.Text)
i = cmd.ExecuteNonQuery
If i > 0 Then
MsgBox("welldone", vbInformation)
Else
MsgBox("error", vbCritical)
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
clear()
'if the level is Olevel it will delete from the Olevel table
ElseIf cbolevel.Text = "O-level" Then
Try
conn.Open()
If MsgBox("do you want to delete", vbYesNo) = vbYes Then
Dim cmd As New OleDb.OleDbCommand("delete from Olevel where Name=@Name", conn)
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@Name", txtstuname.Text)
i = cmd.ExecuteNonQuery
If i > 0 Then
MsgBox("welldone", vbInformation)
Else
MsgBox("error", vbCritical)
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
clear()
'if the level is Alevel it will delete from the Alevel table
ElseIf cbolevel.Text = "A-level" Then
Try
conn.Open()
If MsgBox("do you want to delete", vbYesNo) = vbYes Then
Dim cmd As New OleDb.OleDbCommand("delete from Alevel where Name=@Name", conn)
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@Name", txtstuname.Text)
i = cmd.ExecuteNonQuery
If i > 0 Then
MsgBox("welldone", vbInformation)
Else
MsgBox("error", vbCritical)
End If
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
clear()
End If
conn.Close()
dataload()
End Sub
Private Sub txtsur_MouseHover(sender As Object, e As EventArgs) Handles txtsur.MouseHover
txtsur.Clear()
End Sub
User Documentation
Installing the system
Select the folder entitled, “Application Files” double click to open it
Click on install to start the installation process .it will show a progress bar as shown below:
Click A
level
If you a teacher
Click
Statistics
Click O
level
Click A
level
Click ZJC
Section D: Testing and Evaluation
User Testing
This test was executed to check weather then system’s information validation was effective and
fortunately it provided positive results. This implies that if one enters in correct user credentials
the system will display error messages as follows:
To check whether the system Error message stating that the Pass
can accept data that in beyond entered data is not with the
the limit of the input field range of expected length
length
Error Messages
When a user tries to login without typing in some or any credentials the above message will be
displayed giving him / her another chance to try again.
Functionally correct
The primary criterion for usability is that the Report processing System correctly performs the
functions that the users need, entering marks, calculating marks, printing a report and keeping
record of the marks. If the system does not allow the users to do this, it would be rendered
useless.
Efficient to use
Efficiency can be measured by the time or actions required to perform a task, for example
transaction time with regards to user details retrieval from the database via the web interface
should be reasonable. This is one of the reasons it has been decided that Microsoft Access
database would be the choice of database to be used as procedures that are faster tend to be more
efficient.
Easy to learn
ease of learning determines how quickly new users can learn to accurately perform a task
procedure, for example the steps taken for a particular user to open the system should be kept to
an absolute minimum as research evidence suggests that the fewer steps a procedure contains,
the easier it is to learn. The layout of the controls in the system is provided in such a way that it
accommodates a user with less experience and even a novice user. The system provides guide to
the user in form of notification and error reporting message which makes it easy to the user to
learn and understand the system.
Error tolerant
Error tolerance is determined by how well errors are prevented, how easily they are detected and
identified when they occur, and how easily they are corrected once they are identified. The
Report processing system and the school’s record keeping process would be automated and
minimize the number of manual entries when doing the student’s inspection process in order to
reduce input errors, extensive input validations will be performed within the browser at runtime
without even accessing the database in the server.
Effectiveness
The effectiveness and learnability of the system, is important as it should be more effective than
the previous manual paper based system. This was assessed by asking the user to perform some
tasks. The user was given some sample data to perform the tasks on the data. Results indicate
that the user is able to navigate and perform the tasks relatively easily. For example, registering
inventory. It is also shown that the user is able to generate reports and extract required
information using queries.
However, issues which arose include that the times are not exceptionally quick, however this
does not suggest that the system is not effective, on observing it can be seen that the user is not
particularly a speedy computer user. The user became familiar with the system fairly quickly
which does suggest sufficient levels of learnability.
Evaluation of the System
Achievements
The analyst achieved the create system responsible for ensuring that the student marks are more
accurately when issued to the student or parents. Makes it easy to recognize a student whose
report hasn’t been processed yet rather than the old style of announcing if one hasn’t received
their reports yet. The analyst achieved termination procedures which is responsible for deleting
the Student from the system when he/she is no longer part of the institution. This seeks to meet
the objective of maintaining an updated database that shows the current information by adding
newly received students and deleting outgoing students. Security objectives have been met by
using log in username and password for each and every user. This security measure prevents
unauthorized users from logging-into the system. The system also promotes security through the
use of the back-up facility in case of corruption or accidental loss of data.
The system analyst achieved user-friendliness. Consistent user interfaces enable the application
to be easy to use, look tidy and indirectly it will increase user satisfaction on using the system.
Manual input is only required on the reception of new Student. Effort free navigation was
achieved which is one of the key requests to ensure that the system is relatively easy to use. The
user should easily be able to go back to the previous screen and there should be easy access to
the main menu from anywhere in the system to avoid confusion. The objective of developing a
usable and user friendly is achieved.
The objective of providing a full range of reports that will satisfy informational requirements at a
more reinforced speed is achieved. The system offers a reinforced response to time. Less time is
consumed in all the processes to be done in the new Report Processing System. A lot of time was
being taken in searching a student when a request is made. With the new system it is very fast to
compile reports, search and update all the records quickly.
The performance of the system has reinforced at is considered to be good as the response time of
user request is definitely instant.
In achieving the objective of capturing all the details of Student Marks, validation techniques
have been embedded in the system. System design provides validation features to minimize the
invalid input such as percentages if they are less than or greater than 100 an error will appear.
Error rates had been reduced because there are various validations being done to ensure that the
information entered is correct and matches the database attributes data type.
Limitations
The system can only execute on Microsoft Windows operating system therefore it is
incompatible with any other operating system so far. A considerable manual effort is required
especially during data capture when new Students are received at the school.
If given more time, the analyst will improve the networking capacity of the system to enable
many users to use the system concurrently. Therefore, the network usage provides a capability to
cater for a larger organization.
Security measures will be reinforced; the system will also incorporate an activity log monitoring
for the administrator. This is usually applicable when each department gets at least a computer
for checking in its staff to reduce the queuing at the reception idea. This security measure will
help the admin to track who did not attend to what and when the absenteeism was made.