Professional Documents
Culture Documents
DEPARTMENT OF COMPUTER SCIENCE & ENGNEERING CAREER INSTITUTE OF TECHNOLOGY AND MANAGEMENT ARAVALI HILLS, FARIDABAD (HARYANA)
1
April, 2008
ACKNOWLEDGMENT
The successful realization of the project is an outgrowth of a consolidated effort of people from disparate fronts. We express our deep thanks to Dr. R.K RATHY (HOD Computer Science Department, CITM) and Dr. M K Soni (Director, CITM) for warm hospitality and affection extended towards us. Their constant encouragement has helped to widen the horizon of our knowledge and inculcate the spirit of dedication to the purpose. We are thankful to Mr. Suresh Kumar, Ms. Promila Sehdev, Ms. Nitika Jindal, Ms. Rachna Behl and lab staff for their valuable advice and support extended to us without which we would not have been able to complete our project. For a success, it requires diligence, perseverance, inspiration, motivation and innovation. Words cannot express our gratitude for all those people who helped us directly or indirectly in our endeavor. We take this opportunity to express our sincere thanks to all the staff members of the CSE department for their valuable suggestions.
ACKNOWLEGMENT
The successful realization of the project is an outgrowth of a consolidated effort of people from disparate fronts. We express our deep thanks to Dr. R.K RATHY (HOD Computer Science Department, CITM) for warm hospitality and affection extended towards us. His constant encouragement has helped to widen the horizon of our knowledge and inculcate the spirit of dedication to the purpose. We are thankful to Mr. Suresh Kumar (Project Coordinator) and Ms. Nitika Jindal (Project Guide) for their valuable advice and support extended to us without which we would not have been able to complete our project. For a success, it requires diligence, perseverance, inspiration, motivation and innovation. Words cannot express our gratitude for all those people who helped us directly or indirectly in our endeavor. We take this opportunity to
3
express our sincere thanks to all the staff members of the CSE department for their valuable suggestions.
CERTIFICATE
This is to certify that the project report entitled ONLINE EXAMINATION SYSTEM submitted by us in partial fulfillment of the requirements for the Award of the Degree of Bachelor Of Engineering in Computer Science and Engineering of Maharishi Dayanand University, Rohtak (Haryana) is a record of own bonafide work and has not been submitted anywhere else for any other purpose.
SUMMARY
The use of computer has been steadily increasing in science and technology since its invention. Computer Technology has spread its root in various areas including Industry, Science, Technology, Education and Business. Their application is increasing day by day in various other fields and their most recent conquest is Online Applications. With the advent of various online systems for example: Online reservations, online banking, online shopping, auctioning etc., appearing for an examination through
4
Internet or rather we will say online has become an essential part of a students life. We have tried to design a system, which can be used by the students to take tests for various subjects. The questions have been designed to be objective/multiple type instead of elaborative. The user has to register for the test. The Administrator provides an unique user name and password to the student. The user name and password will be required by the student for taking the test. At the end of the test the student can see his Result. The Administrator can only add a teacher and the teacher can provide questions for only one subject only. The teacher will also be given a specific user name and password, by which the teacher can login in and add/update questions. The teacher will have to provide questions in the multiple choice format. The teacher will provide the right answer also. The administrator can view, update records of the users and can add/modify users details i.e. the administrator has the rights to make any changes in the database.
TABLE OF CONTENTS
1.4 Objectives
2. SYSTEM ANALYSIS
2.1 Detailed Problem 2.2 Requirement Analysis 2.3 Software development Cycles 2.4 Object Model 2.5 Dynamic Model 2.6 Functional Model
3. SYSTEM DESIGN
3.1 Modular Design 3.2 Database Design 3.3 E-R Diagram 3.4 Interface Design
4. SYSTEM IMPLEMENTATION
4.1 Platform Used 4.1.1 About .Net 4.1.2 About SQL Server 4.2 Coding
5. TESTING
5.1 Verification and Validation 5.2 Levels of testing 5.3 A Sample Testing Cycle
6
6. CONCLUSION
6.1 Future Scope 6.2 Bibliography 6.3 References
CHAPTER-1 INTRODUCTION
INTRODUCTION
CITM online exam is helpful for the students to check out their performance in various subjects. Authenticated user can access to the website. Only teachers can add new questions to any subject with one right answer. And they can delete questions as well.
8
Students have to log in, select the subject and can take the test. Floating difficulty level of the questions based on students performance. Only the correct answer provided by teacher will fetch marks to the students.
The Format of the test will be as follows: When a student starts a test, he will get a simple level question.If the student gives the right answer,then he will get the Medium level question.If the students gives the right answer to that,then he will get a Difficult level question.If in any condition the student fails to give the right answer,then the level will fall down to one level below.The first question of the test will be a random question from the simple question database
The scoring in the exam will be done on the following Prameters: For every right answer of the respective level,the following marks will be fetched
=1 =2 =3
Instant feedback to students: The students can get the result instantaneously. Greater flexibility with respect to location and timing. The students can give the test any time they want and the test location is also flexible. The student can give the exam at any time or place. Improved reliability: Machine marking is much more reliable than human marking. Enhanced question styles which incorporate interactivity and multimedia
1.3 MODULES
ADMINISTRATOR:
The administrator will perform the most important responsibilities of the system.He will overlook the entire functioning of the project.He will be like an oversear over the teacher and student.The administrator willhave all the rights in the system.Functions of the Administrator are:
10
LOGIN: The teacher can login in using a valid username and password provided by the administrator. ADD STUDENT: The administrator can only add a new student and as well his details.
MODIFY STUDENT: The administrator can modify an already existing student record as well as delete an existing one.
ADD TEACHER: The administrator can only add a new teacher and as well his details
MODIFY TEACHER: The administrator can modify an already existing teacher record as well as delete an existing one.
STUDENT :
Every student that enrolls for the online examination is provided with a secret user name and a secret password. Whenever the student wants to give the examination it is required to enter that user name and password. This will ensure the security of the system. After the password is accepted by the system the student is made to choose the subject of the exam.This can be done by selecting the category option provided in the system.
After that the question paper will be generated infront of the student with the questions comprising of multiple choices as answers where in the student can mark
11
only one choice. After submitting the student can move to the next question.At the end of the exam student can obtain the final result for the test along with the correct answers for the wrong choices marked by him
LOGIN: The teacher can login in using a valid username and password provided by the administrator.
CATEGORY: The student can select the category o the test, i.e the subject in which the student wants give the test.
TEST: The test will be a multiple choice question exam. The student will have to tick one option as correct. Whether the answer is correct or wrong will be displayed there and then.The student can not move to the next question until he ticks one option.The student cant also move back to the previous question.
LOGOUT: At the end of the exam the student can logout. He can even logout in between the test also if he wants to.
TEACHER:
The Teacher will be given a valid username and password by the administrator. The teacher can login using that valid username and password only. The teacher is entitled
12
to add and update questions. The teacher will have to provide multiple choice questions with the right answer. The Teacher can perform the following functions. LOGIN: The teacher can login in using a valid username and password provided by the administrator.
ADD QUESTION: The teacher can add questions in the database. The teacher will have to provide the questions in a Multiple choice format. The right answer provided by the teacher only will fetch the marks to the questions. The Teacher will have to mention the level of the question as well, whether the question is Easy, Medium or Difficult.
UPDATE QUESTION : Only is teacher has got the rights to update the existing questions.
DELETE QUESTIONS: The teacher can also delete the existing questions.
1.4
OBJECTIVES
Online exam is helpful for the students to check out their performance in various subjects. Authenticated user can access to the website.
Only teachers can add new questions to any subject with one right answer. And they can delete questions as well. Students have to log in, select the subject and can take the test.
13
Floating difficulty level of the questions based on students performance. Only the correct answer provided by teacher will fetch marks to the students.
14
15
As we all know that the planning is the most important part of the project and so it is the most time consuming one too. After planning came the turn of the design issues of the project which in itself was a time consuming and tedious task. Finally we started up with what we all were anxiously waiting for and it was the coding part of the project. Our project comprised of the three main modules i.e.
STUDENT
TEACHER ADMINISTRATOR
2.3.1Initial investigation
The company was following the tradition manual system of data entry. We went through numerous registers and files being maintained by the officials and clerical staff. Weekdays were the most tiring for the staff members because on these days, a reconciliation of the whole week's progress had to be made in time and paper, thus consuming are lots of time and effort. As individual, did the work it was prone to human and logical errors
2.3.2Feasibility study
Depending on the results of the initial investigation, our survey was expanded to a more detailed feasibility study. Our efforts were extended to test the proposed computerized system according to its: Workability Impact on the organization Ability to meet users need Effective use of available resources
2.3.3Analysis
After the acceptance of the initial thought of the computerized system, a detailed study was carried out on the operation of the proposed system and its relationship within and outside the organization. Data was collected from the files being maintained and the transactions being handled by the existing manual system. A thorough understanding was required of the tasks to be done by the computerized system
18
2.3.4Design
This was the most creative and challenging phase of the system lifecycle. Here an effort was made to describe the final system and the process by which it be developed. The technical requirement of both hardware and software were specified and the user of a variety of test data repeatedly tested the programs being developed. The desired format of the output was provided to the user by a presentation of sample reports. Careful preparations and maintenance of the input data and master files was required. Also, an effort was made to completely document the source for thereby keeping a margin for Re-enhancement of the project. Details related to justification of the system and an estimate of the impact of the system on the user and the company were documented and evaluated by the management as a step toward implementation.Procedural DFD's, record layouts, and report layouts were prepared for the effective and complete portrayal of the candidate system.
2.3.5Implementation
This phase is concerned with training the official and staff of the installation of new system. The system is finally tested for checking whether it is working properly runs or not. The user appreciated the readiness and accuracy of the reports in the click of a button.Test data were fed in to the system and finally, the software was run with live data to locate errors in the program. Repeated testing added assurance against error in the candidate system and also gave the user staff and opportunity to obtain experience to operations
software. Software changes would have to be made if the new information it is inconsistent with the design specifications. Also periodic maintenance of the hardware is required to keep the tune with designs specifications. A constant effort is needed to bring the new system to the standards of the market. System enhancements might also be called for on the evolution of any of the following factors Changes in organizational requirement Environmental factors
20
21
22
23
FUNCTIONAL MODELS
STUDENT:
24
ADMINISTRATOR:
25
TEACHER:
26
OBJECT MODEL
27
28
29
30
31
32
33
34
3.5 INTERFACE
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
CHAPTER 4
SYSTEM IMPLEMENTATION
56
SYSTEM IMPLEMENTATION
4.1 PLATFORM USED
Front end : .NET Back end : SQL Server
To provide a code-execution environment that minimizes software deployment and versioning conflicts.
To provide a code-execution environment that guarantees safe execution of code, including code created by an unknown or semi-trusted third party.
To
provide
code-execution
environment
that
eliminates
the
Base Class Library - The Base Class Library (BCL), part of the Framework
Class Library (FCL), is a library of types available to all languages using the .NET Framework. The BCL provides classes which encapsulate a number of
58
common functions, including file reading and writing, graphic rendering, database interaction and XML document manipulation.
Security - .NET allows for code to be run with different trust levels without the
use of a separate sandbox. A design goal of the .NET Framework was to support platform independence]. That is, a program written to use the framework should run without change on any type of computer for which the framework is implemented.
59
Microsoft SQL Server 2000 is a full-featured relational database management system (RDBMS) that offers a variety of administrative tools to ease the burdens of database development, maintenance and administration. In this article, we'll cover six of the more frequently used tools: Enterprise Manager, Query Analyzer, SQL Profiler, Service Manager, Data Transformation Services and Books Online. Let's take a brief look at each: Enterprise Manager is the main administrative console for SQL Server installations. It provides you with a graphical "birds-eye" view of all of the SQL Server installations on your network. You can perform high-level administrative functions that affect one or more servers, schedule common maintenance tasks or create and modify the structure of indivisual database Query Analyzer offers a quick and dirty method for performing queries against any of your SQL Server databases. It's a great way to quickly pull information out of a database in response to a user request, test queries before implementing them in other applications, create/modify stored procedures and execute administrative tasks. SQL Profiler provides a window into the inner workings of your database. You can monitor many different event types and observe database performance in real time. SQL Profiler allows you to capture and replay system "traces" that log various activities. It's a great tool for optimizing databases with performance issues or troubleshooting particular problems. Service Manager is used to control the MSSQLServer (the main SQL Server process), MSDTC (Microsoft Distributed Transaction Coordinator) and SQLServerAgent processes. An icon for this service normally resides in the system tray of machines running SQL Server. You can use Service Manager to start, stop or pause any one of these services.
4.2 CODING
60
Add new question using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class AddNewQuestions : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { SqlConnection con = new SqlConnection("server=(local);user id=sa;password=; initial catalog=citmtest"); con.Open(); SqlDataAdapter sa = new SqlDataAdapter("select * from language", con); DataSet ds = new DataSet(); sa.Fill(ds, "language"); cmblanguage.DataSource = ds; cmblanguage.DataTextField = "language1"; cmblanguage.DataValueField = "language1"; cmblanguage.DataBind(); con.Close(); } } protected void btnsave_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection("server=(local);user id=sa;password=;initial catalog=CitmTest");
61
con.Open(); SqlCommand cmd = new SqlCommand("insert into AddNewQuestions values('" + txtquestionno .Text + "','"+cmblanguage.SelectedItem.ToString() +"','"+cmbquescategory.SelectedItem.ToString() +"','"+txtquestion.Text+"','"+txtanswer1.Text+"', '"+txtanswer2.Text+"','"+txtanswer3.Text+"','"+tx tanswer4.Text+"','"+cmbcorrect.SelectedItem.ToStr ing()+"','no')", con); cmd.ExecuteNonQuery(); con.Close(); txtquestionno.Text = ""; cmblanguage.SelectedIndex = -1; cmbquescategory.SelectedIndex = -1; txtquestion.Text = ""; txtanswer1.Text = ""; txtanswer2.Text = ""; txtanswer3.Text = ""; txtanswer4.Text = ""; cmbcorrect.SelectedIndex = -1; Response.Redirect("saved.aspx"); } protected void cmblanguage_SelectedIndexChanged(object sender, EventArgs e) { } protected void WebUserControl1_Load(object sender, EventArgs e) { } }
Administrator
62
using using using using using using using using using using
System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class admin : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void LinkButton2_Click(object sender, EventArgs e) { Response.Redirect("NewStudent.aspx"); } protected void LinkButton1_Click(object sender, EventArgs e) { Response.Redirect("modifystudent.aspx"); } protected void LinkButton3_Click(object sender, EventArgs e) { Response.Redirect("NewTeacher.aspx"); } protected void LinkButton4_Click(object sender, EventArgs e) { Response.Redirect("ModifyTeacher.aspx"); } }
Contact us
63
using using using using using using using using using using
System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class ContactUs : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } About us using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class AboutUs : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { }
Delete
64
using using using using using using using using using using
System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class AboutUs : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } FAQ using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class faq : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } }
LANGUAGE SUBJECT
65
using using using using using using using using using using
System; System.Data; System.Configuration; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnsave_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection("server=(local);user id=sa;password=;initial catalog=CitmTest"); con.Open(); SqlCommand cmd = new SqlCommand("insert into Language values('" +txtlanguage.Text + "')", con); cmd.ExecuteNonQuery(); con.Close(); txtlanguage.Text = ""; Response.Redirect("saved.aspx"); } }
public partial class Login : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnlogin_Click(object sender, EventArgs e) { Session["Username"] = txtusername.Text; Session["questionno"] = "0"; Session["type1"] = "Simple"; Session["done"] = "yes"; Session["questionno1"] = "0"; Session["question"] = "x"; SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); SqlCommand cmd2 = new SqlCommand("update test set right_wrong='NotAttempted'", Con); cmd2.ExecuteNonQuery(); Con.Close(); Con.Open();
String Sql; Sql = "select max(test_id)+1 from Test"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataReader dtr = cmd.ExecuteReader(); int kk; kk = 0; while (dtr.Read()) { Session["user_test_id"] = dtr[0].ToString(); } //-------------------------------------------------------------Con.Close(); Con.Open(); Sql = "select * from newstudent where username='" + txtusername.Text + "' and password='" + txtpassword.Text + "'"; SqlCommand cmd1 = new SqlCommand(Sql, Con); SqlDataReader dtr1 = cmd1.ExecuteReader(); kk = 0; while (dtr1.Read()) { kk = 1; } Con.Close();
68
if (kk == 0 && txtusername.Text != "admin" && txtpassword.Text != "admin") { if (txtusername.Text != "teacher") { Label1.Text = "This user does not exist"; return; } } if (txtusername.Text == "admin") { Response.Redirect("admin.aspx"); } else if(txtusername.Text == "teacher") { Response.Redirect("teacher.aspx"); } else { Response.Redirect("MyAccount.aspx"); } } }
public partial class Logout : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Session.Abandon(); Response.Redirect("login.aspx"); MARKS DETAILS using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class marks_details : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } }
70
RESULT using using using using using using using using using using using System; System.Data; System.Data.SqlClient; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class mask : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //lab // .Text = Session["Username"].ToString(); // txtuser_id.Text = Session["user_test_id"].ToString(); // txtlanguage.Text = Session["Language"].ToString(); try { Label1.Text = Session["Username"].ToString(); Label2.Text = Session["user_test_id"].ToString(); Label3.Text = Session["Language"].ToString(); if (!Page.IsPostBack) { fill(); } } catch { Response.Redirect("login.aspx"); } }
71
public void fill() { string x = Session["Username"].ToString(); SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;Initial Catalog=CitmTest"); Con.Open(); string tt = Session["user_test_id"].ToString(); //SqlCommand cmd = new SqlCommand(@"SELECT Status, Right_Wrong, COUNT(Right_Wrong) AS wronganswer, test_id FROM Test GROUP BY Status, Right_Wrong, test_id HAVING (test_id = '" + tt + "')ORDER BY Status", Con); SqlCommand cmd = new SqlCommand("SELECT Status, Right_Wrong, test_id FROM Test where test_id = '" + tt + "'", Con); SqlDataReader dr; dr = cmd.ExecuteReader(); //string simple, medium, tough; //simple = medium = tough = null; int r_s1, r_m1, r_t1; int w_s1, w_m1, w_t1; r_s1 = r_m1 = r_t1 = w_s1 = w_m1 = w_t1 = 0; int count; count = 0; while (dr.Read()) { count = count + 1; if (dr["status"].ToString() == "Medium") { if (dr["Right_Wrong"].ToString() == "Right") { r_m1 = r_m1 + 1; Label7.Text = r_m1.ToString(); } else { w_m1 = w_m1 + 1; Label8.Text = w_m1.ToString();
72
} } else if ((dr["status"].ToString() == "Simple")) { if (dr["Right_Wrong"].ToString() == "Right") { r_s1 = r_s1 + 1; Label4.Text = r_s1.ToString(); } else { w_s1 = w_s1 + 1; Label5.Text = w_s1.ToString(); } } Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from AddNewQuestions where QuestionNo='" + txtquestionno.Text + "'"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataReader dr; dr = cmd.ExecuteReader(); while (dr.Read()) { cmblanguage.SelectedItem.Text = dr[1].ToString(); cmbquescategory.SelectedItem.Text= dr[2].ToString(); txtquestion.Text = dr[3].ToString(); txtanswer1.Text = dr[4].ToString(); txtanswer2.Text = dr[5].ToString(); txtanswer3.Text = dr[6].ToString();
73
} protected void btnsave_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;initial catalog=CitmTest"); Con.Open(); String Sql; Sql = "update AddNewQuestions set Language1='" +cmblanguage.SelectedItem.ToString() + "',QuestionCategory='" +cmbquescategory.SelectedItem.ToString() + "',Question='" +txtquestion.Text + "',Answer1='" + txtanswer1.Text + "',Answer2='" + txtanswer2.Text + "',Answer3='" +txtanswer3.Text + "',Answer4='" +txtanswer4.Text + "',CorrectAnswer='" + cmbcorrect.SelectedItem.ToString()+ "' where QuestionNo='" +txtquestionno.Text + "'"; SqlCommand com = new SqlCommand(Sql, Con); com.ExecuteNonQuery(); Con.Close(); txtquestionno.Text = ""; cmblanguage.SelectedIndex = -1; cmbquescategory.SelectedIndex = -1; txtquestion.Text = ""; txtanswer1.Text = ""; txtanswer2.Text = ""; txtanswer3.Text = ""; txtanswer4.Text = ""; cmbcorrect.SelectedIndex = -1;
74
Response.Redirect("Modify.aspx"); } protected void Button1_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "delete AddNewQuestions where QuestionNo='" + txtquestionno.Text + "'"; SqlCommand com = new SqlCommand(Sql, Con); com.ExecuteNonQuery(); Con.Close(); txtquestionno.Text = ""; cmblanguage.SelectedIndex = -1; cmbquescategory.SelectedIndex = -1; txtquestion.Text = ""; txtanswer1.Text = ""; txtanswer2.Text = ""; txtanswer3.Text = ""; txtanswer4.Text = ""; cmbcorrect.SelectedIndex = -1; Response.Redirect("Delete.aspx"); } }
75
MODIFY STUDENT using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class ModifyStudent : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnsearch_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from NewStudent where Name='" + txtname.Text + "'"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataReader dr; dr = cmd.ExecuteReader(); while (dr.Read()) { txtaddress.Text = dr[1].ToString(); txtdob.Text = dr[2].ToString(); txtphone.Text = dr[3].ToString(); cmbgender.SelectedItem.Text = dr[4].ToString(); cmbbranch.SelectedItem.Text= dr[5].ToString();
76
cmbyear.SelectedItem.Text = dr[6].ToString(); txtrollno.Text = dr[7].ToString(); txtusername.Text = dr[8].ToString(); txtpassword.Text = dr[9].ToString(); } dr.Close(); Con.Close(); } protected void modify_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "update NewStudent set Address='" + txtaddress.Text+ "',DOB='" + txtdob.Text + "',Phone='" + txtphone.Text + "',Gender='" + cmbgender.SelectedItem.ToString() + "',Branch='" + cmbbranch.SelectedItem.ToString() + "',Year1='" +cmbyear.SelectedItem.ToString() + "',RollNo='" +txtrollno.Text + "',UserName='" +txtusername.Text + "',Password='"+txtpassword.Text+"' where Name='" +txtname.Text + "'"; SqlCommand com = new SqlCommand(Sql, Con); com.ExecuteNonQuery(); Con.Close(); txtname.Text = ""; txtaddress.Text = ""; txtdob.Text = ""; txtphone.Text = ""; cmbgender.SelectedIndex = -1; cmbbranch.SelectedIndex = -1; cmbyear.SelectedIndex = -1; txtrollno.Text = ""; txtusername.Text = ""; txtpassword.Text = ""; Response.Redirect("Modify.aspx"); }
77
protected void btndelete_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "delete NewStudent where Name='" + txtname.Text + "'"; SqlCommand com = new SqlCommand(Sql, Con); com.ExecuteNonQuery(); Con.Close(); txtname.Text = ""; txtaddress.Text = ""; txtdob.Text = ""; txtphone.Text = ""; cmbgender.SelectedIndex = -1; cmbbranch.SelectedIndex = -1; cmbyear.SelectedIndex = -1; txtrollno.Text = ""; txtusername.Text = ""; txtpassword.Text = ""; Response.Redirect("Delete.aspx"); } }
78
MODIFY TEACHER using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class ModifyTeacher : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnsearch_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from NewTeacher where Id=" + txtid.Text + ""; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataReader dr; dr = cmd.ExecuteReader(); while (dr.Read()) { txtname.Text = dr[1].ToString(); txtaddress.Text = dr[2].ToString(); txtphone.Text = dr[3].ToString(); cmbgender.SelectedItem.Text = dr[4].ToString(); cmbqualification.SelectedItem.Text = dr[5].ToString();
79
txtexperience.Text = dr[6].ToString(); cmbposition.SelectedItem.Text = dr[7].ToString(); txtdob.Text = dr[8].ToString(); txtusername.Text = dr[9].ToString(); txtpassword.Text = dr[10].ToString(); } dr.Close(); Con.Close(); } protected void btnmodify_Click(object sender, EventArgs e) { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "update NewTeacher set Name='" + txtname.Text + "',Address='" + txtaddress.Text + "',Phone='" + txtphone.Text + "',Gender='" + cmbgender.SelectedItem.ToString() + "',Qualification='" + cmbqualification.SelectedItem.ToString() + "',Experience='" +txtexperience.Text + "',Position1='" +cmbposition.SelectedItem.ToString() + "',DOB='" + txtdob.Text + "',UserName='"+txtusername.Text+"',Password='" + txtpassword.Text + "' where ID=" + txtid.Text + ""; SqlCommand com = new SqlCommand(Sql, Con); com.ExecuteNonQuery(); Con.Close(); Response.Redirect("Modify.aspx"); } protected void btndelete_Click(object sender, EventArgs e) { SqlConnection Con;
80
Con = new SqlConnection("server=(local);uid=sa;password=;in itial catalog=CitmTest"); Con.Open(); String Sql; Sql = "delete from NewTeacher where Id=" + txtid.Text + ""; SqlCommand com = new SqlCommand(Sql, Con); com.ExecuteNonQuery(); Con.Close(); Response.Redirect("Delete.aspx"); } }
81
MY ACCOUNT using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class MyAccount : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Response.Write(Session["user_test_id"].ToString() ); } protected void LinkButton1_Click(object sender, EventArgs e) { Response.Redirect("ModifyStudent.aspx"); } protected void LinkButton2_Click(object sender, EventArgs e) { Response.Redirect("TestNow.aspx"); } protected void LinkButton3_Click(object sender, EventArgs e) { Response.Redirect("mask.aspx"); } }
82
NEW STUDENT using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class NewStudent : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnsave_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection("server=(local);user id=sa;password=;initial catalog=CitmTest"); con.Open(); SqlCommand cmd = new SqlCommand("insert into NewStudent values('" + txtname.Text + "','" + txtaddress.Text + "','" + txtdob.Text + "','" +txtphone.Text+ "','" +cmbgender.SelectedItem.ToString() + "','" + cmbbranch.SelectedItem.ToString() + "','" + cmbyear.SelectedItem.ToString() + "','" + txtrollno.Text + "','" +txtusername.Text + "','"+txtpassword.Text+"')", con); cmd.ExecuteNonQuery(); con.Close(); txtname.Text = ""; txtaddress.Text = ""; txtdob.Text = ""; txtphone.Text = ""; cmbgender.SelectedIndex = -1; cmbbranch.SelectedIndex = -1; cmbyear.SelectedIndex = -1;
83
84
NEW TEACHER using using using using using using using using using using using
System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class NewTeacher : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void btnsave_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection("server=(local);user id=sa;password=;initial catalog=CitmTest"); con.Open(); SqlCommand cmd = new SqlCommand("insert into NewTeacher values('"+txtid.Text+"','" + txtname.Text + "','" + txtaddress.Text + "','" + txtphone.Text + "','" + cmbgender.SelectedItem.ToString() + "','" + cmbqualification.SelectedItem.ToString() + "','" +txtexperience.Text + "','" +cmbposition.SelectedItem.ToString() + "','" +txtdob.Text + "','"+txtpassword.Text+"','" + txtpassword.Text + "')", con); cmd.ExecuteNonQuery(); con.Close(); Response.Redirect("saved.aspx"); } }
85
RESULT using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class Result : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { try { string x = Session["Username"].ToString(); SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); string tt = Session["user_test_id"].ToString(); SqlCommand cmd=new SqlCommand (@"SELECT Status, Right_Wrong, COUNT(Right_Wrong) AS wronganswer, test_id FROM Test GROUP BY Status, Right_Wrong, test_id HAVING (test_id = '" + tt + "')ORDER BY Status",Con); SqlDataReader dr; dr = cmd.ExecuteReader(); string simple, medium, tough; simple = medium = tough = null; int r_s1, r_m1, r_t1;
86
int w_s1, w_m1, w_t1; r_s1 = r_m1 = r_t1 = w_s1 = w_m1 = w_t1 = 0;
while(dr.Read()) { if (dr["status"].ToString() == "Medium") { if (dr["Right_Wrong"].ToString() == "Right") { r_m1 = r_m1 + 1; m1.Text = r_m1.ToString(); } else { w_m1 = w_m1 + 1; m2.Text = w_m1.ToString(); }
} else if ((dr["status"].ToString() == "Simple")) { if (dr["Right_Wrong"].ToString() == "Right") { r_s1 = r_s1 + 1; s1.Text = r_s1.ToString(); } else { w_s1 = w_s1 + 1;
87
s2.Text = w_s1.ToString(); }
} dr.Close(); Con.Close();
//
}
88
} public void showgrid() { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); string tt = Session["user_test_id"].ToString(); String Sql; Sql = "select*from Test where username='" + Session["Username"].ToString() + "' and date1='" + Session["date1"].ToString() + "' and test_id='" + Session["user_test_id"].ToString() + "'"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView1.DataSource = ds; GridView1.DataMember = "naveen"; GridView1.DataBind(); }
89
public void showgrid2() { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from Test where username='" + Session["Username"].ToString() + "' and date1='" + Session["date1"].ToString() + "' and test_id='" + Session["user_test_id"].ToString() + "'"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView2.DataSource = ds; GridView2.DataMember = "naveen"; GridView2.DataBind(); } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { } protected void GridView2_SelectedIndexChanged(object sender, EventArgs e) { } }
90
RESULT END using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class Result1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { try { string x = Session["Username"].ToString(); } catch (Exception y) { Response.Redirect("Login.aspx"); } try { showgrid(); } catch(Exception yy) { Response.Redirect("Result1.aspx"); } } public void showgrid() {
91
SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from Test where username='" + Session["Username"].ToString() + "'"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView1.DataSource = ds; GridView1.DataMember = "naveen"; GridView1.DataBind(); } }
92
SAVING RECORD using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class saved : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } }
93
TEACHER using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls;
public partial class teacher : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void LinkButton2_Click(object sender, EventArgs e) { Response.Redirect("AddNewQuestions.aspx"); } protected void LinkButton1_Click(object sender, EventArgs e) { Response.Redirect("ModifyQuestion.aspx"); } }
94
TEST using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class Test : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { try { txtuser.Text = Session["Username"].ToString(); txtuser_id.Text = Session["user_test_id"].ToString(); txtlanguage.Text = Session["Language"].ToString(); txtdate.Text = System.DateTime.Today.Date.ToShortDateString(); Session["date1"] = txtdate.Text; fill(); } catch { Response.Redirect("login.aspx"); } } } public void fill()
95
{ SqlConnection con = new SqlConnection("server=(local);user id=sa;password=;initial catalog=CitmTest"); con.Open(); string type1 = Session["type1"].ToString(); string done = Session["done"].ToString(); if (done == "no") { if (type1 == "Tough") { type1 = "Medium"; } else if (type1 == "Medium") { type1 = "Simple"; } } if (done == "yes" && txtright.Text=="Right") { if (type1 == "Simple") { type1 = "Medium"; } else if (type1 == "Medium") { type1 = "Tough"; } } Session["type1"] = type1; SqlCommand cmd = new SqlCommand("select * from AddNewQuestions where language1='" + txtlanguage.Text + "' and selected='no' and questioncategory='" + Session["type1"] .ToString() + "'", con); SqlDataReader dr; dr = cmd.ExecuteReader(); RadioButtonList1.Items.Clear(); int j; j = 0; RadioButtonList1.Items.Clear(); txtcorrectanswer.Text = "";
96
Session["questionno"] = dr["Questionno"].ToString(); txtquestion.Text = dr["Question"].ToString(); Session["question"] = txtquestion.Text; RadioButtonList1.Items.Add(dr["Answer1"].ToString ()); RadioButtonList1.Items.Add(dr["Answer2"].ToString ()); RadioButtonList1.Items.Add(dr["Answer3"].ToString ()); RadioButtonList1.Items.Add(dr["Answer4"].ToString ()); txtcorrectanswer.Text = dr["correctanswer"].ToString(); txtstatus.Text = dr["questioncategory"].ToString(); int i = Convert.ToInt32(Session["questionno1"].ToString() ); j=Convert.ToInt32(txtquesno.Text) ; j=j+1; txtquesno.Text = j.ToString(); i = i + 1; Session["questionno1"] = i.ToString(); if (i >10) { //Response.Redirect("Result.aspx"); Response.Redirect("mask.aspx"); } }
97
dr.Close(); con.Close(); } protected void btnnext_Click(object sender, EventArgs e) { try { RadioButtonList1.Enabled = true; if (txtanswerselected.Text == txtcorrectanswer.Text) { txtright.Text = "Right"; Session["done"] = "yes"; } else { Session["done"] = "no"; txtright.Text = "Wrong"; } SqlConnection con = new SqlConnection("server=(local);user id=sa;password=;initial catalog=CitmTest"); con.Open(); SqlCommand cmd = new SqlCommand("insert into Test values('" + txtdate.Text + "','" + txtlanguage.Text + "','" + txtuser.Text + "','" + txtquesno.Text + "','" + txtquestion.Text + "','" + RadioButtonList1.Items[0].Text + "','" + RadioButtonList1.Items[1].Text + "','" + RadioButtonList1.Items[2].Text + "','" + RadioButtonList1.Items[3].Text + "','" + txtanswerselected.Text + "','" + txtcorrectanswer.Text + "','" + txtstatus.Text + "','" + txtright.Text + "','" + txtuser_id.Text + "')", con); cmd.ExecuteNonQuery(); con.Close(); con.Open();
98
SqlCommand cmd1 = new SqlCommand("update AddNewQuestions set selected='yes' where questionno='" + Session["questionno"].ToString() + "'", con); cmd1.ExecuteNonQuery(); con.Close(); txtcorrectanswer.Visible = false; fill(); } catch { Response.Redirect("mask.aspx"); //Response.Redirect("Result.aspx"); } } protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) { int i; i = RadioButtonList1.SelectedIndex; i = i + 1; txtcorrectanswer.Visible = true; txtanswerselected.Text = i.ToString(); if (txtcorrectanswer.Text == txtanswerselected.Text) { txtright.Text = "Right"; } else { txtright.Text = "Wrong"; } RadioButtonList1.Enabled = false; } }
99
TEST NOW using using using using using using using using using using using
System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class TestNow : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { SqlConnection con = new SqlConnection("server=(local);user id=sa;password=; initial catalog=citmtest"); con.Open(); SqlDataAdapter sa = new SqlDataAdapter("select * from language", con); DataSet ds = new DataSet(); sa.Fill(ds, "language"); cmblanguage.DataSource = ds; cmblanguage.DataTextField = "language1"; cmblanguage.DataValueField = "language1"; cmblanguage.DataBind(); con.Close(); } } protected void btnsubmit_Click(object sender, EventArgs e) { Session["language"] = cmblanguage.SelectedItem.ToString(); Response.Redirect("Test.aspx");
100
VIEW LANGUAGE using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class ViewLanguages : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { showgrid(); } public void showgrid() { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from Language"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView1.DataSource = ds; GridView1.DataMember = "naveen"; GridView1.DataBind(); } }
101
VIEW QUESTION using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class ViewQuestions : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { showgrid(); } public void showgrid() { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from AddNewQuestions"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView1.DataSource = ds; GridView1.DataMember = "naveen"; GridView1.DataBind(); } }
102
VIEW STUDENT using using using using using using using using using using using System; System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class ViewStudent : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { showgrid(); } public void showgrid() { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from NewStudent"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView1.DataSource = ds; GridView1.DataMember = "naveen"; GridView1.DataBind(); } } VIEW TEACHER using System;
103
using using using using using using using using using using
System.Data; System.Configuration; System.Collections; System.Web; System.Web.Security; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.WebControls.WebParts; System.Web.UI.HtmlControls; System.Data.SqlClient;
public partial class ViewTeacher : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { showgrid(); } public void showgrid() { SqlConnection Con; Con = new SqlConnection("server=(local);uid=sa;password=;In itial Catalog=CitmTest"); Con.Open(); String Sql; Sql = "select*from NewTeacher"; SqlCommand cmd = new SqlCommand(Sql, Con); SqlDataAdapter sa = new SqlDataAdapter(Sql, Con); DataSet ds = new DataSet(); sa.Fill(ds, "naveen"); GridView1.DataSource = ds; GridView1.DataMember = "naveen"; GridView1.DataBind(); } }
104
CHAPTER-5
TESTING
TESTING
105
106
UNIT TESTING:
The methodology of unit testing was followed in the manner that each and every piece of code was tested as a soon as it was written. The individual components were
107
tested to ensure that they operate correctly and independently. Lets have a closer look at this kind of pattern: Each component is tested independently without the other system components. It is the first level of testing and the different modules are tested against the specifications. Unit testing is essential for verification of the code product during the coding phase, and hence the goal is to test the internal logic of the module. Unit testing focuses in the verification effort of the smallest unit of software design module.
MODULE TESTING:
A module is a collection of dependent components such as procedures and functions. A module encapsulates related components so that it can be tested without other system modules. Module testing is a systematic technique for constructing the program structure while at the same time conducting test to uncover errors associated with interfacing. The program is constructed and testing in small segments where errors are easier to isolate and correct interfaces are more likely to be tested completely.
SYSTEM TESTING:
Collections of modules make a sub-system and collection of sub-systems makes the entire system. This phase involves testing of collection of sub-systems, which have been integrated into the entire system. Aim is to find out errors, which normally result from unanticipated interaction between sub-systems and components. It is also concerned with validating that the system meets its functional and non-functional requirements. Generally, it begins with low volumes of transactions based on live data.System testing is actually a series of different tests whose primary purpose is to fully exercise the computer-based system. In system testing, performance and acceptance standards are developed.
108
ALPHA/BETA TESTING:
Alpha Testing- in this of testing the system is tested with the user provided data. Customer tests the system at developer site. Developer looks over shoulder and records errors & usage problems. Test is conducted in a controlled environment. Beta Testing this kind of testing involves delivering the system to a number of potential customers who give their feedback regarding the software. The system is then modified with respect to the feedback given. Repairing the system may introduce new bugs or errors in the system, thus testing has to be repeated after the system has been modified. Beta testing is conducted at one or more customers site by the end user. Unlike in alpha testing, the developer is generally not present.
Black Box Testing method focuses on the functional requirements of the software. A set of input conditions are derived that will fully exercise all functional requirements for a program. It is not an alternative to white box but is a complementary approach that uncovers a different class of errors than white box methods. Black Box method attempts to find out errors relating to incorrect or missing functions, Interface errors, errors in data structures, performance errors, initialization and termination errors. White box testing is performed at earlier stages but black box testing is applied at the later stages of testing.
These errors were removed using following techniques: Monitoring the compilation of the program. By appropriate statements in the program. By applying the right logic.
Finally the project is run to test the connectivity and integrity of different options given in the menu to choices given by the user. This is to ensure that the system is responding well and giving best results as per user expectations and requirements.
110
111
CHAPTER-6 CONCLUSION
CONCLUSION
112
The project has performed all the basic features, which are required to make the project alive. We have tried to design a system, which can be used by the students to take tests for various subjects. The questions have been designed to be objective/multiple type instead of elaborative. It is also authentic from the security point of view where in all the rights are reserved by the concerned authority. The online examination system tests the true caliber of the student with the application of enhanced features included in our project. It also makes sure that the manual work in the examination system is reduced to negligible.
FUTURE SCOPE:
There are limited number of questions. We can include more number of questions. On Re-Test a student may get the same questions again. That can be removed. Once an answer is selected, it cannot be changed. We are also planning to include Tutorials, on-line. The possibility of reviewing the paper and to help the student in correcting his/her mistakes, with some description automatically, so that the same mistakes are not made again.
BIBLIOGRAPHY
Complete Reference for C# Software Engineering (fifth edition) by Ian Somerville
REFERENCE
www.gre.com www.studentforum.com www.onlinetutorials.com
114