Project Specification Page 1 ONLINE CERTIFICATION EXAM Abstract The Online Certification Exam project caters to various organizational needs viz. testing the qua lit y of parti cip ants’ gra sp of the tra ini ng imp art ed to the m, gaugi ng the tec hni cal comprehension of staff, measuring the expertise of incumbent candidates, etc. Data Flow Diagram Page 1 SRM Systems & Software P Ltd. 1 Authentication Sign-Up Sign-In UserRegdUsers 2 Prepare for exam 2.1. Choose exam categ 2.2. Display total questions 2.3. Display exam duration 3 Taking the exam 3.1. Display question 3.2. Accept User Input 3.3. Accumulate Score 3.4. Display next question 4 Reports 4.1. Category-Wise 4.2. Tech Proficiency ECateg HallOfFame QCateg
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
The Online Certification Exam project caters to various organizational needs viz. testing thequality of participants’ grasp of the training imparted to them, gauging the technicalcomprehension of staff, measuring the expertise of incumbent candidates, etc.
Data Flow Diagram
Page 1 SRM Systems & Software P Ltd.
1
Authentication
Sign-UpSign-In
User
RegdUsers
2
Prepare for exam
2.1. Choose exam categ2.2. Display total questions2.3. Display exam duration
3
Taking the exam
3.1. Display question3.2. Accept User Input3.3. Accumulate Score
Table: RegisteredUsersColumn Name Datatype Description
UserId VARCHAR(15) Unique string to identify a particular examinee/candidate.Password VARCHAR(15) Case-sensitive identification string for every user.FirstName VARCHAR(25) First Name of candidate.LastName VARCHAR(25) Last Name of candidate.CompanyName VARCHAR(50) Candidate’s current company. Can also contain Nulls.
Desig VARCHAR(25) Candidate’s designation at current workplace. Cancontain Nulls.Add1 VARCHAR(50) Street & Area name of candidate’s mailing address.Add2 VARCHAR(50) State, City and Country of candidate’s mailing address.Pin VARCHAR(7) Zip Code/PIN Code of candidate.
JobIndustryId INTEGERIDENT
Foreign Key linking to the JobIndustries table.
JobFunctionId INTEGERIDENT
Foreign Key linking to the JobFunctions table.
DiscloseResults BIT Whether candidate wants his certification results to bedisclosed.
SubscribeNewsLetter
BIT Whether candidate wants to receive mail-outs from thissite.
Table: RegisteredEmployers
Column Name Datatype DescriptionEmployerId INTEGER
IDENTUnique identification for headhunters and employers.
FirstName VARCHAR(25)
LastName VARCHAR(25)
CompanyName VARCHAR(50)
Desig VARCHAR(25)
Add1 VARCHAR(50)
Add2 VARCHAR(50)
Pin VARCHAR(7)
Email VARCHAR(99)
SubscribeNewsLetter BIT Whether this guy wants to subscribe to the site’snewsletter.Descr VARCHAR(4)
Table: Questions
Column Name Datatype Description
QNo VARCHAR(4) Question Id. Must start with “S” or “M” only. (Single/MultipleChoice)
QText VARCHAR(255)
Text for this question.
QCateg VARCHAR(4) Foreign key that links to the QuestCategories table.ExamCateg VARCHAR(4) Foreign key that links to the ExamCategories table.Score NUMERIC(4,
2)Marks carried by this particular question.
Table: Answers
Column Name Datatype DescriptionANo CHAR(4) Unique identification for every answer. Must start with
“A” only.AText VARCHAR(255
) Text for this answer.
QNo VARCHAR(4) The question number for which this answer is one of thechoices.
Correct BIT Whether this answer is (or is one of ) the right choices.
• Microsoft Windows NT Server 4.0 with Service Pack 4
• Microsoft Internet Information Server (IIS) 4.0
On the Web Client
• Microsoft Windows 95/98/2000/NT-Workstation Operating System
• Recent version of Microsoft Internet Explorer/Netscape Navigator web browser
Approach #1 – The Client/Server Way
This approach will use the six in-built objects of ASP’s Object Model in collaboration withMicrosoft’s ISAPI Extensions MSADO15.DLL and CDONTS.DLL. As a programmer, you will beresponsible for developing HTML pages that carry user responses between the clientbrowser and Web Server. The ASP code bound to your HTML pages should handle all server-side processing including RDBMS Access, Flat File Access, Session Management andApplication Management.
Approach #2 – The Multi Tiered Way
This approach will use the six in-built objects of ASP’s Object Model in collaboration withyour custom DLLs that handle all database traffic. As a programmer, you will beresponsible for developing HTML pages that talk to a custom DLL. This custom DLL shouldtake care of talking to the RDBMS. Remember, you should never instanciate adatabase connection if you’re using the 3-Tiered Approach ! The DLL that youdevelop, should handle all RDBMS Access and Flat File Access. Session and Applicationmanagement must be done using your ASP pages.
Flow of Events
Candidate keys-in his user id and password (or) clicks the New User hyperlink on startpage.
• If user id/password combination is correct, he/she is taken to the CHOOSE EXAM
screen, where he/she selects his/her choice of exams from a drop-down listbox and clicksSUBMIT .
• If candidate selects New User, he/she fills-up all fields in the RegisteredUser tablethrough an ASP page and is then taken to the CHOOSE EXAM screen.
• Upon SUBMIT of the information in CHOOSE EXAM screen, the candidate is taken to apage that displays Maximum Questions for this exam, duration of each question (180seconds is standard for all questions) and other rules of the examination. This page hasan OK button, which takes the candidate to the first question.
Page 6 SRM Systems & Software P Ltd.
The site can be built using two technological approaches:
• Client/Server Architecture using ASP 2.0 and SQL Server 7.0
• Three-Tiered Architecture using ASP 2.0, COM and SQL Server 7.0
As a programmer, you are responsible for remembering the exam category, currentquestion, max questions and candidate’s score throughout the site. As of now, the best wayto implement all this is using Session variables. Please ensure that you submit the answer to
a separate ASP page for evaluation. You can then jump to the next question after evaluatingthe answer (whether correct or not).
Modus Operandii
Here’s a quick hint about how to proceed with the development of the site:
• Store the Maximum Questions value in a session variable. (refer the ExamCategories table)
• Store the current question in a session variable and increment it when a question isdisplayed.