ABSTRACT:
The purpose of the system is to develop Virtual Exam Controller., used to test the Domain
knowledge of the students, and employees with respect to the particular technology. The manual
procedure used for conducting exam is time consuming process and error prone due to human
limitations. The System purpose is to completely automate the old manual procedure of
conducting exam to Online Web Based Examination System.
Virtual Exam controller is web based application for technical evaluation. Automatic Test
Generator is a program that automatically generates multiple-choice Computer Architecture tests
and handles the submission/marking of results. Login is required either by a student or a lecturer.
Each client has different functions available. Students have the ability to login, take a test, submit
the test, and view previous test results. Lecturers have the ability to login, generate random test
questions, store these in a database, send login passwords to students, and make tests available to
students, correct tests, and store results.The project has been planned to be having the view of
distributed architecture, with centralized storage of the database. The application for the storage
of the data has been planned. Using the constructs of MS-SQL Server and all the user interfaces
have been designed using the ASP.Net technologies. The database connectivity is planned using
the “SQL Connection” methodology. The standards of security and data protective mechanism
have been given a big choice for proper usage. The application takes care of different modules
and their associated reports, which are produced as per the applicable strategies and standards
that are put forwarded by the administrative staff.
Virtual Examination Management System.
The Examination Department Automation Software, a solution for the examination department,
has been designed to make the examination processes easier and paper free. It is designed under
the access authority level security to prevent misuse and mismanagement of legal and official
data by any unauthorized
Scope
For the above processes to work in their best functionality new facilities have been added:
Examination Process
Results Preparation
i. Make Attendance
ii. Answer Book No.
iii. Marks Foil
iv. Tabulators Marks Entry
v. Marks Check
vi. Tabulation Sheet
vii. College Results
viii. Marks Correction
ix. Certificates
Advantages:
Handling all the work in a computerized and secure way is a perfect solution for a
coaching institute.
INTRODUCTION TO PROJECT
Online Web Examination is a program that creates the tests and he submission/marking of
results. Login is required for a student. Each client has different functions available. Students
have the ability to login, take a test, submit the test, and view previous test results. Admin has the
ability to store the results in a database, send exam key word to students, and make tests
available to students, correct tests, and store results.
3. It is less user-friendly.
4. It is having lots of manual work (Manual system does not mean that you are working with
pen and paper, it also include working on spread sheets and other simple software's).
The development of the new system contains the following activities, which try to automate the
entire process keeping in view of the database integration approach.
The development of the new system contains the following activities, which try to automate the
entire process keeping in view of the database integration approach.
· The system makes the overall project management much easier and flexible.
· There is no risk of data mismanagement at any level while the project development is
under process.
· It provides high level of security using different protocols like https etc.
PROPOSED SYSTEM
To debug the existing system, remove procedures those cause data redundancy, make
navigational sequence proper. To provide information about audits on different level and also to
reflect the current work status depending on organization/auditor or date. To build strong
password mechanism.
We all know the importance of computerization. The world is moving ahead at lightening
speed and every one is running short of time. One always wants to get the information and
perform a task he/she/they desire(s) within a short period of time and too with amount of
efficiency and accuracy. The application areas for the computerization have been selected on the
basis of following factors:
· Updating and deletion of such a huge amount of data will become easier.
GUI’S
In the flexibility of the uses the interface has been developed a graphics concept in mind,
associated through a browses interface. The GUI’S at the top level have been categorized as
The administrative user interface concentrates on the consistent information that is practically,
part of the organizational activities and which needs proper authentication for the data collection.
The interfaces help the administrations with all the transactional states like Data insertion, Data
deletion and Date updation along with the extensive data search capabilities.
The operational or generic user interface helps the users upon the system in transactions through
the existing data and required services. The operational user interface also helps the ordinary
users in managing their own information helps the ordinary users in managing their own
information in a customized manner as per the assisted flexibilities.
NUMBER OF MODULES
The system after careful analysis has been identified to be presented with the following modules:
Administrator
Student
Reports
Authentication
Administrator:-
The administrator is the organization user of this project. Any body except admin cannot
enter into this page. The admin can give Keyword to student to write the exam & gives privileges
that which exam they can access. The admin can create new Test Type and new tests and creates
new question and he assign no marks to each question, and he can modifies the test types, tests
and question already entered by himself. Admin can assign the tests to the students based on the
student request for the particular exam. Whenever he assign a test to student he can generate a
key to that exam and sends that key to the student. The administrator has all the information
about all the students & about all the Exams and Questions.
Students:-
This module contains all the information about the student. In this personal information
student can change his password and he can update his personal information if any modification
are there like address change he can do that modifications. Student can go inside the login and
select the test type that means which test he want to write and he can request the date of the exam
to write. Whenever the admin assign the test to student he send a key to student. Student enters
the key before start the exam on the particular date he requested and give the answers to the
question in that question paper. After completion of the exam they will get the complete
information about the question which they have written how many right and wrong are and how
many question he attempted etc.
Authentication:-
This module contains all the information about the authenticated user. User without his
username and password can’t enter into the login if he is only the authenticated user then he can
enter to his login and he can see the quotation and give the quotation for the particular products.
Examination Module:
Admin having the all the privileges over the project. Means Admin can do anything over
the project such as
User Module:
User having the less permissions over the Admin and Manager.
He can only view & search the data.
Reports:-
This module contains all the information about the reports generated by the admin based
on the particular student, particular exam.
PROJECT INSTRUCTIONS:
· Based on the given requirements, conceptualize the Solution Architecture. Choose the
domain of your interest otherwise develop the application for ultimatedotnet.com. Depict the
various architectural components, show interactions and connectedness and show internal and
external elements. Design the web services, web methods and database infrastructure needed
both and client and server.
· Provide an environment for up gradation of application for newer versions that are
available in the same domain as web service target.
SYSTEM CONFIGURATION
Microsoft .NET is a set of Microsoft software technologies for rapidly building and
integrating XML Web services, Microsoft Windows-based applications, and Web solutions. The
.NET Framework is a language-neutral platform for writing programs that can easily and
securely interoperate. There’s no language barrier with .NET: there are numerous languages
available to the developer including Managed C++, C#, Visual Basic and Java Script. The .NET
framework provides the foundation for components to interact seamlessly, whether locally or
remotely on different platforms. It standardizes common data types and communications
protocols so that components created in different languages can easily interoperate
The .NET Framework is a new computing platform that simplifies application development in
the highly distributed environment of the internet
The CLR is described as the “execution engine” of .NET. It provides the environment within
which programs run. The most important features are:
The following features of the .NET framework are also worth description:
Managed Code - is code that targets .NET, and which contains certain extra
information - “metadata” - to describe itself. Whilst both managed and unmanaged code can run
in the runtime, only managed code contains the information that allows the CLR to guarantee,
for instance, safe execution and interoperability.
Managed Data - With Managed Code comes Managed Data. CLR provides memory
allocation and Deal location facilities, and garbage collection. Some .NET languages use
Managed Data by default, such as C#, Visual Basic.NET and JScript.NET, whereas others,
namely C++, do not. Targeting CLR can, depending on the language you’re using, impose
certain constraints on the features available. As with managed and unmanaged code, one can
have both managed and unmanaged data in .NET applications - data that doesn’t get garbage
collected but instead is looked after by unmanaged code.
Common Type System - The CLR uses something called the Common Type System
(CTS) to strictly enforce type-safety. This ensures that all classes are compatible with each other,
by describing types in a common way. CTS define how types work within the runtime, which
enables types in one language to interoperate with types in another language, including cross-
language exception handling. As well as ensuring that types are only used in appropriate ways,
the runtime also ensures that code doesn’t attempt to access memory that hasn’t been allocated to
it.
Common Language Specification - The CLR provides built-in support for language
interoperability. To ensure that you can develop managed code that can be fully used by
developers using any programming language, a set of language features and rules for using them
called the Common Language Specification (CLS) has been defined. Components that follow
these rules and expose only CLS features are considered CLS-compliant.
The set of classes is pretty comprehensive, providing collections, file, screen, and
network I/O, threading, and so on, as well as XML and database connectivity.
The class library is subdivided into a number of sets (or namespaces), each providing distinct
areas of functionality, with dependencies between the namespaces kept to a minimum
Operating System
3.3.3.1 ASP.NET
ASP.NET is the .NET framework layer that handles Web requests for specific types of files,
namely those with (.aspx or .ascx) extensions. The ASP.NET engine provides a robust object
model for creating dynamic content and is loosely integrated into the .NET framework.
Client requests for these file types cause the server to load, parse, and execute
code to return a dynamic response. For Web Forms, the response usually consists of HTML or
WML. Web Forms maintain state by round-tripping user interface and other persistent values
between the client and the server automatically for each request.
A request for a Web Form can use View State, Session State, or Application State
to maintain values between requests. Both Web Forms and Web Services requests can take
advantage of ASP. Net’s integrated security and data access through ADO.NET, and can run
code that uses system services to construct the response. So the major difference between a static
request and a dynamic request is that a typical Web request references a static file. The server
reads the file and responds with the contents of the requested file.
ASP.NET supports all the .NET languages (currently C#, C++, VB.NET, and
JScript, but there are well over 20 different languages in development for .NET), so you will
eventually be able to write Web applications in your choice of almost any modern programming
language.
Every time an ASP.NET page is viewed, many tasks are being performed behind
the scenes. Tasks are performed at key points ("events") of the page's execution lifecycle.
OnInit
The first event in our list to be raised is OnInit. When this event is raised, all of
the page's server controls are initialized with their property values. Post Back values are not
applied to the controls at this time.
On Load
The next event to be raised is On Load, which is the most important event of them
all as all the pages server controls will have their Post Back values now.
OnPreRender
This event is raised just prior to the page or server control's html output being
written into the response stream that's sent to the client web browser. This is last chance you
have to make any modifications. By this point, all the server controls on the page have the final
data applied.
On Unload
This is the last event in our list to be raised and you should destroy any un-
managed objects and close any currently open database connection at this point. It is not possible
to modify any controls on the page at this point as the response stream has already been sent to
the client web browser.
As each event of the page is raised it also automatically tells all its child controls
to raise their own implementation of the same event.Then execution flow is passed back to the
main page class to continue onto the next event and the process is repeated for that event.
• Object-oriented
• Event-based
NAMESPACES
LANGUAGE INDEPENDENT
TYPES OF CONTROLS
ASP.NET has two basic types of controls: HTML server controls and Web server
controls.HTML Server Controls are generated around specific HTML elements and the
ASP.NET engine changes the attributes of the elements based on server-side code that you
provide.The ASP.NET engine takes the extra steps to decide based upon the container of the
requester, what HTML to output.
Fig 3.3 Web Controls
ADO.NET provides a set of classes which a script can use to interact with
databases. Scripts can create instances of ADO.NET data classes and access their properties and
methods. A set of classes which work with a specific type of database is known as a .NET Data
Provider. ADO.NET comes with two Data Providers, the SQL Server.NET Data Provider
(which provides optimised access for Microsoft SQL Server databases) and the OLEDB.NET
Data Provider, which works with a range of databases. The main ADO.NET OLEDB data access
classes are OLEDBConnection,OLEDBCommand,OLEDBDataReader and OLEDBDataAdapter.
Interoperablity
Maintainablity
Programmability
Performance Scalability
3.3.4.1 VISUAL STUDIO .NET
Visual studio.NET is a complete set of development tools for building ASP web applications
XML web applications ,XML web services desktop applications and mobile applications in
addition to building high performing desktop applications ,you can use visual studio’s powerful
component-based development tools and other technologies to simplify term-based design,
development and deployment of enterprise solutions. Visual basic .NET, Visual C++.NET and
visual C#,NET all use the same integrated development environment (IDE) which allows them to
share tools and facilitates in the creation of mixed language solutions .
The OLAP Services feature available in SQL Server version 7.0 is now called
SQL Server 2000 Analysis Services. The term OLAP Services has been replaced with the term
Analysis Services. Analysis Services also includes a new data mining component. The
Repository component available in SQL Server version 7.0 is now called Microsoft SQL Server
2000 Meta Data Services.
They are,
1. TABLE
2. QUERY
3. FORM
4. REPORT
5. MACRO
3.4.1.1 TABLE:
1. Design View
2. Datasheet View
Design View
Datasheet View
To add, edit or analyses the data itself we work in tables datasheet view
mode.
3.4.1.2 QUERY:
A query is a question that has to be asked the data. Access gathers data
that answers the question from one or more table. The data that make up the answer is either
dynaset (if you edit it) or a snapshot(it cannot be edited).Each time we run query, we get latest
information in the dynaset.Access either displays the dynaset or snapshot for us to view or
perform an action on it ,such as deleting or updating.
3.4.1.3 FORMS:
use the familiar controls such as textboxes and checkboxes. This makes viewing
and entering data easy.
Views of Form:
We can work with forms in several primarily there are two views,
They are,
1. Design View
2. Form View
Design View
Form View
The form view which display the whole design of the form.
3.4.1.4 REPORT:
A report is used to vies and print information from the database. The report can
ground records into many levels and compute totals and average by checking values from many
records at once. Also the report is attractive and distinctive because we have control over the size
and appearance of it.
3.4.1.5 MACRO:
3.4.1.6 MODULE:
Modules are units of code written in access basic language. We can write and
use module to automate and customize the database in very sophisticated ways.
DATA FLOW DIAGRAM
Level 0
Level 1
Level 2
Use Case Diagram
<<include>>
Add Modify/Delete
Login
<<include>>
Add Modify/Delete
<<include>>
Add Class Modify/Delete
<<include>>
Add Modify/Delete
Admin
Division
<<include>>
Add New Modify/Delete Students
Logou
Check Papers
Mark Attendance
<<include>>
<<include>>
Teachers <<include>>
Declare Result
Admission Form
CLASS DIAGRAM
Get Enrolled
Hire 0..*
Students Write
+1 Teachers
-Id: Char
Admin
-Name: Char
-Id: Char Prepares
-PhNo: Integer
-Name: Char
-Address: Char
-Password: Char
+PrepareTestPaper() +0..*
+Login()
+MarkAttendance() TestPaper
VIRTUAL EXAM CONTROLLER:
Introduction:
Purpose:
The purpose of this application is to conduct and process various types of certificate/non-
certificate exams at different centers across any country via online.
Features:
Any institute or company can register their various types of certificate/non-certificate
programs and conduct an online examination for the same.
Just register the programs, their fees (if paid) and the centers (where the exam will be
conducted) in order to start the examination process.
Questions and answers would be objective type and the format would be as per the
company’s choice.
User can select the company, its program, exam schedule and pay fees online in order to
give his exam at the selected center.
Advantages:
Today, most of the companies or institutes are conducting their exams online to be a part
of this fastest growing world.
Online Examination System covers almost all type of problems faced by a company or
institute while conducting online examinations.
User can give any available exam at any available center as per his/her choice.
The results of the online exam will help a company or institute to list out the outstanding
exam takers all over the country.
The purpose of the system is to develop On-Line Examination System, used to test the Domain
knowledge of the students, and employees with respect to the particular technology. The manual
procedure used for conducting exam is time consuming process and error prone due to human
limitations. The System purpose is to completely automate the old manual procedure of
conducting exam to On-Line Web Based Examination System.
On-Line Examination is web based application for technical evaluation. Using this On-Line
Exam system, we can conduct any type of objective type examinations on line. On end of the
exam, the result will be displayed.
On-line examinations can be conducted at any time and does not incur higher cost as traditional
exam scenario as there is no paper work involved.Utilize advanced assessment settings,
including flexible database driven question pooling, skipping, and randomization and timed
response with feature to either conduct the conduct the exam on paper or online.
Exam Assignment
Question Exam can be assigned to student, batch, group (option available to assign
question Exam selectively)
Scope of this project is very broad in terms of other manually taking exams.
O Can be used anywhere any time as it is a web based application (user Location doesn’t
matter).
O No restriction that examiner has to be present when the candidate takes the test.
FEATURES:-
ü Secure
ü Easy to use
ü No need of examiner
The online test created for taking online test has following stages
ü Login
ü Test
ü Result
MODULES:
Registration
Time table
Assignment
Admin Module:
Admin having the all the privileges over the project. Means Admin can do anything over
the project such as
Manager Module:
User Module:
User having the less permissions over the Admin and Manager.
He can only view & search the data.
XML PARSER FOR EMAIL
MODULES
Creating data banks and tests with the Online Examination System
Online examination questions can be categorized according to topic, types, etc. (libraries)
The online examination system makes provision for difficulty levels of items.
A test can be compiled with questions from different topics/libraries.
A “serial number” is provided for each question according to topic, etc.
The “serial number” can be used to search for and select questions.
Questions can be converted to the databank from existing databanks.
Questions can be converted from word processing files.
Tests can be created on a random basis per student.
Specific questions can be flagged to be included/excluded in a test.
The online examination system is suitable for surveys.
The online examination system can automatically add the marks allocated in each
question to determine the total mark for the test.
A printed paper and a memorandum can be compiled.
Different papers (shuffle code) and memoranda can be compiled.\
Export question papers and memoranda to .txt or .doc file
2. SYSTEM STUDY
The feasibility of the project is analyzed in this phase and business proposal is put
forth with a very general plan for the project and some cost estimates. During system analysis
the feasibility study of the proposed system is to be carried out. This is to ensure that the
proposed system is not a burden to the company. For feasibility analysis, some
ECONOMICAL FEASIBILITY
TECHNICAL FEASIBILITY
SOCIAL FEASIBILITY
ECONOMICAL FEASIBILITY
This study is carried out to check the economic impact that the system will have on the
organization. The amount of fund that the company can pour into the research and development
of the system is limited. The expenditures must be justified. Thus the developed system as well
within the budget and this was achieved because most of the technologies used are freely
TECHNICAL FEASIBILITY
This study is carried out to check the technical feasibility, that is, the technical
requirements of the system. Any system developed must not have a high demand on the available
technical resources. This will lead to high demands on the available technical resources. This
will lead to high demands being placed on the client. The developed system must have a modest
requirement, as only minimal or null changes are required for implementing this system.
SOCIAL FEASIBILITY
The aspect of study is to check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. The user must not feel
threatened by the system, instead must accept it as a necessity. The level of acceptance by the
users solely depends on the methods that are employed to educate the user about the system and
to make him familiar with it. His level of confidence must be raised so that he is also able to
make some constructive criticism, which is welcomed, as he is the final user of the system.
SYSTEM TESTING
TESTING METHODOLOGIES
o Unit Testing.
o Integration Testing.
o User Acceptance Testing.
o Output Testing.
o Validation Testing.
Unit Testing
Unit testing focuses verification effort on the smallest unit of Software design that is the
module. Unit testing exercises specific paths in a module’s control structure to
ensure complete coverage and maximum error detection. This test focuses on each module
individually, ensuring that it functions properly as a unit. Hence, the naming is Unit Testing.
During this testing, each module is tested individually and the module interfaces are
verified for the consistency with design specification. All important processing path are tested
for the expected results. All error handling paths are also tested.
Integration Testing
Integration testing addresses the issues associated with the dual problems of verification
and program construction. After the software has been integrated a set of high order tests are
conducted. The main objective in this testing process is to take unit tested modules and builds a
program structure that has been dictated by design.
The following are the types of Integration Testing:
2. Bottom-up Integration
This method begins the construction and testing with the modules at the lowest level in
the program structure. Since the modules are integrated from the bottom up, processing required
for modules subordinate to a given level is always available and the need for stubs is eliminated.
The bottom up integration strategy may be implemented with the following steps:
The low-level modules are combined into clusters into clusters that
perform a specific Software sub-function.
A driver (i.e.) the control program for testing is written to coordinate test case
input and output.
The cluster is tested.
Drivers are removed and clusters are combined moving upward in the
program structure
The bottom up approaches tests each module individually and then each module is module is
integrated with a main module and tested for functionality.
User Acceptance of a system is the key factor for the success of any system. The system
under consideration is tested for user acceptance by constantly keeping in touch with the
prospective system users at the time of developing and making changes wherever required. The
system developed provides a friendly user interface that can easily be understood even by a
person who is new to the system.
After performing the validation testing, the next step is output testing of the proposed
system, since no system could be useful if it does not produce the required output in the specified
format. Asking the users about the format required by them tests the outputs generated or
displayed by the system under consideration. Hence the output format is considered in 2 ways –
one is on screen and another in printed format.
The text field can contain only the number of characters lesser than or equal to its size.
The text fields are alphanumeric in some tables and alphabetic in other tables. Incorrect entry
always flashes and error message.
Numeric Field:
The numeric field can contain only numbers from 0 to 9. An entry of any character
flashes an error messages. The individual modules are checked for accuracy and what it has to
perform. Each module is subjected to test run along with sample data. The individually tested
modules are integrated into a single system. Testing involves executing the real data
information is used in the program the existence of any program defect is inferred from the
output. The testing should be planned so that all the requirements are individually tested.
A successful test is one that gives out the defects for the inappropriate data and produces
and output revealing the errors in the system.
Taking various kinds of test data does the above testing. Preparation of test data plays a
vital role in the system testing. After preparing the test data the system under study is tested
using that test data. While testing the system by using test data errors are again uncovered and
corrected by using above testing steps and corrections are also noted for future use.
Using Live Test Data:
Live test data are those that are actually extracted from organization files. After a system
is partially constructed, programmers or analysts often ask users to key in a set of data from their
normal activities. Then, the systems person uses this data as a way to partially test the system. In
other instances, programmers or analysts extract a set of live data from the files and have them
entered themselves.
It is difficult to obtain live data in sufficient amounts to conduct extensive testing. And,
although it is realistic data that will show how the system will perform for the typical processing
requirement, assuming that the live data entered are in fact typical, such data generally will not
test all combinations or formats that can enter the system. This bias toward typical values then
does not provide a true systems test and in fact ignores the cases most likely to cause system
failure.
Artificial test data are created solely for test purposes, since they can be generated to test
all combinations of formats and values. In other words, the artificial data, which can quickly be
prepared by a data generating utility program in the information systems department, make
possible the testing of all login and control paths through the program.
The most effective test programs use artificial test data generated by persons other than
those who wrote the programs. Often, an independent team of testers formulates a testing plan,
using the systems specifications.
The package “Virtual Private Network” has satisfied all the requirements specified as per
software requirement specification and was accepted.
Whenever a new system is developed, user training is required to educate them about the
working of the system so that it can be put to efficient use by those for whom the system has
been primarily designed. For this purpose the normal working of the project was demonstrated to
the prospective users. Its working is easily understandable and since the expected users are
people who have good knowledge of computers, the use of this system is very easy.
7.3 MAINTAINENCE
This covers a wide range of activities including correcting code and design errors. To
reduce the need for maintenance in the long run, we have more accurately defined the user’s
requirements during the process of system development. Depending on the requirements, this
system has been developed to satisfy the needs to the largest possible extent. With development
in technology, it may be possible to add many more features based on the requirements in future.
The coding and designing is simple and easy to understand which will make maintenance easier.
TESTING STRATEGY :
A strategy for system testing integrates system test cases and design techniques into a
well planned series of steps that results in the successful construction of software. The testing
strategy must co-operate test planning, test case design, test execution, and the resultant data
collection and evaluation .A strategy for software testing must accommodate low-level tests
that are necessary to verify that a small source code segment has been correctly implemented
as well as high level tests that validate major system functions against user requirements.
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification design and coding. Testing represents an interesting anomaly for
the software. Thus, a series of testing are performed for the proposed system before the
system is ready for user acceptance testing.
SYSTEM TESTING:
Software once validated must be combined with other system elements (e.g. Hardware,
people, database). System testing verifies that all the elements are proper and that overall system
function performance is
achieved. It also tests to find discrepancies between the system and its original objective, current
specifications and system documentation.
UNIT TESTING:
In unit testing different are modules are tested against the specifications produced during
the design for the modules. Unit testing is essential for verification of the code produced during
the coding phase, and hence the goals to test the internal logic of the modules. Using the
detailed design description as a guide, important Conrail paths are tested to uncover errors
within the boundary of the modules. This testing is carried out during the programming stage
itself. In this type of testing step, each module was found to be working satisfactorily as regards
to the expected output from the module. In Due Course, latest technology advancements will
be taken into consideration. As part of technical build-up many components of the networking
system will be generic in nature so that future projects can either use or interact with this. The
future holds a lot to offer to the development and refinement of this project.
Conclusion:-
Any system, which has been in use for a number of years, gradually, decays and become less
effective because of the change in environment to which one has to adapt. For a time it is
possible to overcome problems by amendments and minor modification to acknowledge the need
of fundamental changes. Computerization was proposed as a solution to the problem of being
outdated with the fast present technologies. In this project, our aim was to provide online
registration.
BIBLIOGRAPHY
Good Teachers are worth more than thousand books, we have them in Our Department
REFERENCES
[1] S. Basu, A. Banerjee, and R. Mooney, “Active semi-supervision for pairwise constrained
clustering,” in SIAM International Conference on Data Mining, pp. 333–344, 2004.
[3] M. Bilenko, S. Basu, and R. Mooney, “Integrating constraints and metric learning in semi-
supervised clustering,” in International Conference on Machine learning, pp. 11–18, 2004.
[4] I. Davidson, K. Wagstaff, and S. Basu, “Measuring constraint-set utility for partitional
clustering algorithms,” Knowledge Discovery in Databases, pp. 115–126, 2006.
[6] D. Cohn, Z. Ghahramani, and M. Jordan, “Active learning with statistical models,” Journal of
Artificial Intelligence Research, vol. 4, pp. 129–145, 1996.
[7] Y. Guo and D. Schuurmans, “Discriminative batch mode active learn- ing,” Advances in
Neural Information Processing Systems, pp. 593– 600, 2007.
[8] S. Hoi, R. Jin, J. Zhu, and M. Lyu, “Batch mode active learning and its application to medical
image classification,” in International Conference on Machine learning, pp. 417–424, 2006.
[9] S. Hoi, R. Jin, J. Zhu, and M. Lyu, “Semi-supervised SVM batch mode active learning for
image retrieval,” in Computer Vision and Pattern Recognition, pp. 1–7, 2008.
[10] S. Huang, R. Jin, and Z. Zhou, “Active learning by querying informative and representative
examples,” Advances in Neural Information Processing Systems, pp. 892–900, 2010.
[12] R. Huang and W. Lam, “Semi-supervised Document Clustering via Active Learning with
Pairwise Constraints,” in International Conference on Date Mining, pp. 517–522, 2007.