The pretest and posttest engine allowed creating different sets of test questions (in multiple-choice question format) for different lessons or chapters. The pretest and posttest engine will display the questions for student to answer. The marks scored by the students, in both pretest and posttest, should be recorded in database for future analysis purpose.
1.2. Classroom Response Capturing
In order to encourage the students to response actively in lessons, classroom response capturing enable the students to raise their questions and opinions (named or anonymously) through the system. During a particular lesson, lecturer should be allowed to start a classroom response session. Questions or opinions posted by the students will be shown at her screen at real-time. Whereas other students are allowed to view and vote on the questions or opinions posted, on which they think most require an answer or action from lecturer.
1.3. Feedback Processing
It is important to obtain feedbacks from the students after every lesson, for the purpose to review, evaluate and improve teaching style and method. As part of the system, it enables the students to post their feedbacks (named or anonymously) through the system.
1.4. General Assets Maintenance
There will have a maintenance page that only allows web administrator to maintain student details, upload documents (i.e. note, tutorial, and assignment), and schedule of class through Internet ubiquity.
1.5. Security and User Account
Basic authentication and authorization should be implemented to grant different access privileges to different user roles (i.e. lecturer and student). The lecturer (who acts as the system administration, in this case) should be allowed to add student accounts, in order to grant the students with access to the system.
1.6. Input Validation
All inputs should be completely validated. It is essential to ensure that all data are logically valid and the data integrity are always be maintained.
1.7. Report Generation
The system will produce useful management reports. The type of management reports includes detail / transaction report (with control break), exception report and summary report.
2. Data Flow Diagram (DFD)
Context Diagram
Report
Login Details
Test Question
Document File
File Maintenance
Opinion
Login Details
Question
Opinion
Feedback
Document File
E-Learning System
0
Student
Lecturer
Diagram 1: [Authenticate Login Details]
Login details
Login details
Validate Input
Lecturer
Student
Error message
Error message
Validated login details
Authenticate User
Certified Login
Certified Login
Invalid Lecturer
Invalid Student
Verification of login information
User account
Diagram 1: [Documents Maintenance]
Upload Document
Download Successful
Document File
Lecturer
Modification
File
Update File
File Record
File
File
Prepare Requested File
Request Document
Student
Diagram 1: [Display Question]
Posttest question
Pretest question
Student
Student details
Verify status
Verified student status
Verified student status
Display pretest
Display posttest
Test
Test
Test Record
Diagram 1: [Display Question & Opinion]
Capture student question
Captured question
Question
Student
Capture opinion
Opinion
Display question and opinions
Chat Record
Question & Opinions
Chat record
Opinion
Captured Opinion
Update chat record
Updated Chat record
Lecturer
Response
Response
3. Database Design
Entity Relationship Diagram (ERD)
User
Post
Reply
Student
Student Mark
Test Set
Test Question
Course
Class
Subject
Feedback
Lecturer
3.2 Table Design and Sample Data
User Table
Table Name: User
Description: To store the user's login information, which include security question and answer for future reset password purpose.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
UserID
PK
Auto Number
6 chars or more
Format: 100001
Yes
-
UserType
-
Text
-
Yes
-
LoginID
-
Text
-
Yes
-
LoginPass
-
Text
-
Yes
-
Security
Question
-
Number
-
No
The number indicates which security question selected.
Security
Answer
-
Text
-
No
-
Verify
-
Text
-
Yes
Default value is No.
The Verify field is store user history. (Change default LoginID to their personal like LoginID)
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
UserID
000001
100899
UserType
Student
Lecturer
LoginID
000001
Chia
LoginPass
232323
123456
Security
Question
5
2
Security
Answer
College
INTI
Verify
No
Yes
Student Table
Table Name: Student
Description: To store the student individual information's.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
StudentID
PK, FK
Auto Number
6 chars or more
Format: 080001
Yes
StudentID is same with UserID.
StudentName
-
Text
-
Yes
-
Gender
-
Text
-
Yes
-
Address
-
Text
-
Yes
-
City
-
Text
-
Yes
-
Postcode
-
Text
-
Yes
-
State
-
Text
-
Yes
-
CourseCode
FK
Text
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
StudentID
111111
222222
StudentName
John
Janice
Gender
Male
Female
Address
1357, Jalan Bunga
2468, Jalan Rumput
City
Subang
Klang
Postcode
30000
30000
State
Selangor
Selangor
CourseCode
DNS
DNS
Lecturer Table
Table Name: Lecturer
Description: To store the lecturer individual information's.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
LecturerID
PK, FK
Auto Number
6 chars or more
Format: 080001
Yes
LecturerID is same with UserID.
LecturerName
-
Text
-
Yes
-
Gender
-
Text
-
Yes
-
Address
-
Text
-
Yes
-
City
-
Text
-
Yes
-
Postcode
-
Text
-
Yes
-
State
-
Text
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
LecturerID
010101
202020
LecturerName
Chia
Alex
Gender
Male
Male
Address
201, Jalan Satu
185, Jalan Dua
City
Ipoh
Ipoh
Postcode
31400
31400
State
Perak
Perak
Course Table
Table Name: Course
Description: To store the course offered in the college.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
CourseCode
PK
Text
-
Yes
-
Level
-
Text
-
Yes
-
Description
-
Text
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
CourseCode
DICT
DNS
Level
Diploma
Diploma
Description
Business Information Systems
Internet Technology
Subject Table
Table Name: Subject
Description: To store the subject/unit in the college.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
SubjectCode
PK
Text
Fixed 8 chars
Format: ABCD1234
Yes
Combination of 4 alphabets and 4 numeric codes.
SubjectName
-
Text
-
Yes
-
Description
-
Memo
-
No
-
CreditHrs
-
Number
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
SubjectCode
AAAA1111
AABB1122
SubjectName
Computer Ethics
JAVA Programming
Description
Computer ethics is …
This subject is offer for student to learn ...
CreditHrs
4
4
Class Table
Table Name: Class
Description: To store the class enrollment in which subjects.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
CourseCode
PK, FK
Text
-
Yes
-
SubjectCode
PK, FK
Text
Format: AAAA1234
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
CourseCode
DNS
DICT
SubjectCode
AABB1122
AABC1123
Test Table
Table Name: TestSet
Description: To store the set of test for particular subject.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
SetID
PK
Auto Number
7 chars or more
Format: J000001
Yes
-
TestName
-
Text
-
Yes
-
Instruction
-
Memo
-
No
-
TestDate
-
Date/Time
Format: Short Date
Yes
-
SubjectCode
FK
Text
Format: AAAA1234
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
SetID
J100001
J123456
TestName
Chapter 1 Test
Chapter 7 Test
Instruction
Answer all questions. All question carry equal marks.
Please select the correct answer.
TestDate
10/7/2010
22/9/2010
SubjectCode
AABC1123
AABB1122
Test Question Table
Table Name: TestQuestion
Description: To store the question for particular test.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
QuestionID
PK
Auto Number
7 chars or more
Format: J000018
Yes
-
SetID
FK
Number
Format: A123321
Yes
-
Question
-
Memo
-
Yes
-
Choice
-
Memo
Format: A@B@C@D
Yes
"@" character act as separator of 4 choices.
Answer
-
Text
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
QuestionID
Q123456
Q654321
SetID
J014131
J308140
Question
What is ASP.NET?
There are three methods of placing ASP.NET code in Web page. Which following is NOT one of the methods?
Choice
Server-side technology@Client-side technology@Protocol@Programming Language
Script tags@Inline code blocks@Server Control@Inline Control
Answer
Server-side technology
Inline Control
Student Mark Table
Table Name: StudentMark
Description: To store the student pretest and posttest mark.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
StudentID
PK, FK
Number
Format: 000012
Yes
-
SetID
PK, FK
Number
Format: J001244
Yes
-
Pretest
-
Number
-
Yes
Default value is -1.
Posttest
-
Number
-
Yes
Default value is -1.
If the pretest or posttest value is -1, then it means the student is not taken the pretest or posttest yet.
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
StudentID
011246
713530
SetID
J128432
J885423
Pretest
70
50
Posttest
-1
90
Post Table
Table Name: Post
Description: To store the post started by user.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
PostID
PK
Auto Number
-
Yes
-
SubjectCode
FK
Text
Format: AACC3144
Yes
-
PostTitle
-
Text
-
Yes
-
Content
-
Memo
-
Yes
-
PostDate
-
Date/Time
Format: Short Date
Yes
-
PostTime
-
Date/Time
Format: Medium Time
Yes
-
UserID
FK
Number
-
Yes
Default value is -1.
Vote
-
Number
-
Yes
Default value is 0.
If UserID field value is -1, then the author is anonymous.
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
PostID
1331
546312
SubjectCode
AABB1122
AACC1133
PostTitle
What is sentinel value?
How can I connect to MS Access database?
Content
As title. Can anyone tell me what the usage is?
Anyone knows how to connect to MS Access database in ASP.NET webpage?
Date
1/8/2010
14/8/2010
Time
5:34 PM
9:22 AM
UserID
120023
754000
Vote
12
-8
Reply Table
Table Name: Reply
Description: To store the user's reply to particular post.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
ReplyID
PK
Auto Number
-
Yes
-
PostID
FK
Number
-
Yes
-
Content
-
Memo
-
Yes
-
ReplyDate
-
Date/Time
Format: General Date
Yes
-
UserID
-
Number
-
Yes
Default value is -1.
Vote
-
Number
-
Yes
Default value is 0.
If UserID field value is -1, then the author is anonymous.
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
ReplyID
45681
12816
PostID
1312
546312
Content
Sentinel value is a special value that causes a loop to stop.
To connect to database, you must include the System.Data.OleDb namespace in order to use OleDbConnection, OleDbCommand and OleDbDataReader classes.
You can refer to Chapter 6 note for more details information.
ReplyDate
11/8/2010 5:11:22 PM
18/8/2010 4:06:11 AM
UserID
564813
-1
Vote
0
5
Feedback Table
Table Name: Feedback
Description: To store the student's feedback.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
FeedbackID
PK
Auto Number
7 chars or more
Format: F001234
Yes
-
StudentID
FK
Number
Format: 465108
Yes
LecturerID
FK
Number
Format: 012458
-
-
Evaluation
-
Memo
-
Yes
"*" character act as separator of the evaluation.
Comment
-
Memo
-
No
-
EvaluateDate
-
Date/Time
Format: Short Date
Yes
-
Anonymous
-
Text
-
Yes
The Evaluation field numbers indicate the range of evaluation.
(3=Agree, 2=Natural, 1=Disagree)
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
FeedbackID
F123546
F654321
StudentID
021504
133532
LecturerID
123512
335460
Evaluation
1*1*2*1*2*2
3*1*2*2*3*1
Comment
Overall, I'm very satisfied with the teaching style of this lecturer.
EvaluateDate
12/9/2010
3/9/2010
Anonymous
Yes
No
Lecturer Subject Table
Table Name: Lecturer-Subject
Description: To store the subject teach by which lecturer information.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
LecturerID
PK, FK
Auto Number
6 chars or more
Format: 100001
Yes
LecturerID is same with UserID.
SubjectCode
PK, FK
Text
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
LecturerID
011408
204003
LecturerName
AABB1122
AACC1133
Evaluation Question Table
Table Name: EvaluationQuestion
Description: To store the evaluation questions.
Field Name
PK / FK
Data Type
Length / Format
Required
Rules / Remarks
QuestionID
PK
Auto Number
-
Yes
Question
-
Text
-
Yes
-
Sample Data:
Field Name
Sample Data (Set 1)
Sample Data (Set 2)
QuestionID
1
2
Question
Overall the subject was well organized?
The lecturer provided adequate supporting material?
5. Report Design
5.1 Student Advancement Report
This is details report about student advancement in test. The purpose of the report is to figure out the advancement rate of student in test before and after the lesson. Poor advancement rate show that improvement of lecturer is needed.
Repot Header
Student Advancement Report
Page Header
Student ID
Student Name
Subject
Test
Pretest
Posttest
Advancement Rate
J000001
Chia
JAVA Programming
Chapter 1
50
70
40.00%
J000002
Jolin
JAVA Programming
Chapter 1
60
70
16.67%
DetailsJ000003
David
JAVA Programming
Chapter 1
40
50
25.00%
J000004
Alex
JAVA Programming
Chapter 1
90
100
10.00%
J000005
Jack
JAVA Programming
Chapter 1
70
90
28.57%
J000006
Ivan
JAVA Programming
Chapter 1
60
90
50.00%
Calculation of advancement rate is (Posttest - Pretest) / Pretest * 100%
5.2 Student Feedback Report
This is summary report about student feedback to particular lecturer after the lesson. The purpose of the report is to figure out the student agree with the lecturer teaching style. The more poor rating indicates that the lecturer have to change their behavior; Natural rating indicates the lecturer need to improve the teaching style; and the lecture who gain many agreement of student need to retain their teaching style.
Repot HeaderStudent Feedback Report
Page Header
Details
Lecturer ID
Lecturer Name
Feedback
Evaluation Mark
L000001
Jacky
F000001
15/18
F000002
13/18
F000003
17/18
Average
15/18
L000002
Alex
F000004
6/18
F000006
8/18
F000007
9/18
F000008
12/18
Average
8.75/18
5.3 Student Test Fail Report
This is exception report shown student who has been failed both pretest and posttest. The purpose of the report is to find out the student who did not understand the chapter. Therefore the lecturer can given attention to those student during lesson, make sure they well understand the lesson.
Page Header
Repot HeaderStudent Test Fail Report
Student ID
Student Name
Subject
Test
Pretest Mark
Posttest Mark
J000001
Chia
JAVA Programming
Chapter 1 Test
30
40
JAVA Programming
Mid-Term Test
10
20
S000002
Jolin
JAVA Programming
Chapter 8 Test
10
30
E-Commerce
Chapter 2 Test
10
20
S000003
David
Computer Forensic
Mid-Term Test
0
30
Web Development
Mid-Term Test
20
40
JAVA Programming
Mid-Term Test
10
40
Details
*The test passing mark is 50%, mark lower than that consider fail.
*This report only show student who has failed both pretest and posttest.
Details5.4 Student Test Report
This is details report display number of student pass and fail in particular test. The purpose of the report is let the lecturer know which chapter are harder for student to understand. Therefore the lecturer can make a revision class for the particular chapter, in the future can pay more effort when teaching.
Repot HeaderStudent Test Report
Subject
Test
Total Student
No. of Student Pass
No. of Student Fail
JAVA Programming
Chapter 1 Test
25
15
10
Chapter 2 Test
25
14
11
E-Commerce
Chapter 1 Test
30
14
16
Chapter 2 Test
30
20
10
Computer Forensic
Chapter 2 Test
25
21
4
Chapter 3 Test
25
25
0
Details
Page Header