Online Examination Using Farming Based System Ajay Anand(d ) Kapil More(d ) Sri Ram(d ) Yogesh Patrikar(d )
Online Examination Using Farming Based System Load Balancing Corba Architecture Platform Independent N-tier Architecture Analysis and Design Database Connectivity GUI and Web Server
Load Balancing The core idea of this project is Load Balancing. Load Balancing is done by the Scheduler Scheduler Receives the request from the client and on the basis of priority/time requirement,loads on the servers,forwards the requests to the appropriate server. There are lots of servers behind the Scheduler to handle the requests.
Common Object Request Broker Common Object Request Broker Architecture is a standard architecture for distributed object systems. It allows distributed heterogeneous collection of objects to interoperate by providing a set of standard interfaces.
Platform Independent This project is Platform Independent. Client and Server can reside anywhere in the word on any platform. Client makes call without knowing where the server is. Handle Transparency.
N-tiers Architecture Scheduler
N-tiers Architecture It is an N-Tiers Architecture. The Sequence is: Client-Web Server-Scheduler-Cluster Server-Database-……….
Architecture… APP1 APP2 APP3 APP4 Scheduler Tomcat Web Client MySQL
Detail Architecture… APS1 APS2 APS3 APS4 Scheduler Tomcat Web Client MySQL NS 1000 NS 2000 Registration, Authentication, …………. Registration1, Registration2, Registration3, ……………. Proxy Design Pattern
Scheduler Mechanism…. function_impl { give(info); waitforlock(); getlock(); ….. client code follows…… Scheduler Function call Server ID
Analysis and Design UML(Unified Modeling Language) –Standard for describing designs –Visual: a set of diagrams Use Case Diagrams Sequence Diagrams Collaboration Diagrams IDL
Use Case
Sequence Diagram:SystemAdmin-Config
Collaboration Diagram:SystemAdmin-Config
Sequence Diagram:Student- Examination
Collaboration Diagram:Student- Examination
Sequence Diagram:Student- ViewResult
Collaboration Diagram:Student- ViewResult
Sequence Diagram:HRAdmin- Login
Collaboration Diagram:HRAdmin-Login
Sequence Diagram:Student- Login
Collaboration Diagram:Student- Login
Sequence Diagram:HRAdmin- PaperCreation
Collaboration Diagram :HRAdmin-PaperCreation
Sequence Diagram:Student- Registration
Collaboration Diagram:Student- Registration
Sequence Diagram:HRAdmin- Report
Collaboration Diagram:HRAdmin-Report
Sequence Diagram :SystemAdmin-User-Report
Collaboration Diagram :SystemAdmin-User-Report
Sequence Diagram :SystemAdmin-Login
Collaboration Diagram :SystemAdmin-Login
Sequence Diagram:SystemUser- Login
Collaboration Diagram:SystemUser-Login
IDL File //IDL file for corba based client-server online testing application module Farming_based_system { interface Question {attribute unsigned short current_question_paper ; typedef sequence question_paper ; //list of questions that are in one paper typedefsequence question_no_array; //list of questions previously answered by the candidate exception QNFException { string reason; }; exception ONSException { string reason; }; exception CFException { string reason; }; //get a question from the curren question paper such that it is not previously asked to the candidate void get_unique_question(in question_no_array prev_questions_nos, out string question) raises (QNFException);
IDL Continued…. //verify the answer given by candiate. void check_ans(in unsigned long question_no,in unsigned long ans_option, out boolean is_correct) raises (ONSException); //add to new question paper to the database void add_question_set(in question_paper question_update) raises (CFException); //change the question paper for coming exam void change_current_question_set(in unsigned long ques_set_no) raises (CFException); };
IDL Continued… interface Authentication { struct Login_detail { string user_name; string password; }; exception InvalidLoginLException { }; void validate_user(in Login_detail details, out boolean validated) raises (InvalidLoginException); };
IDL Continued… interface Registration { struct Regist_details { string name; string password; string address; string sex; unsigned long phone_no; string _id; }; exception IDException { string reason; }; //register user for test void register(in Regist_details details) raises (IDException); };
IDL Continued…. //get marks of particular student void get_student_mark(in string stud_ID,out unsigned long marks) raises (reportException); //get marks of all students void get_marks_report( stud_IDs student_ID,out marks student_marks) raises (reportException); };
IDL Continued… interface report_manager { struct pass_stud_report { unsigned long total_registered_stu; unsigned long total_appeared_stu; unsigned long total_passed_stu; }; struct fail_stud_report { unsigned long total_registered_stu; unsigned long total_appeared_stu; unsigned long total_failed_stu; }; typedef sequence stud_IDs;//list of student ids typedef sequence marks;//list of marks exception reportException { string reason; }; void get_pass_report(out pass_stud_report passed_stud) raises (reportException); void get_fail_report(out fail_stud_report failed_stud) raises (reportException);
Database Connectivity JDBC Mysql
Database Database : onlineexam Tables : | Tables_in_onlineexam | | examresult | | examstats | | questionset | | user |
Schema examresult : | Field | Type | Null | Key | Default | Extra | | id | varchar(100) | YES | | NULL | | | marks | int(11) | YES | | NULL | | | status | char(1) | YES | | NULL | |
Schema… examstats: | Field | Type | Null | Key | Default | Extra | | month | int(11) | YES | | NULL | | | year | int(11) | YES | | NULL | | | t_registered | int(11) | YES | | NULL | | | t_appeared | int(11) | YES | | NULL | | | t_passed | int(11) | YES | | NULL | | | t_failed | int(11) | YES | | NULL | |
Schema… questionset : | Field | Type | Null | Key | Default | Extra | | question_no | int(11) | | PRI | 0 | | | question | varchar(255) | YES | | NULL | | | opt1 | varchar(100) | YES | | NULL | | | opt2 | varchar(100) | YES | | NULL | | | opt3 | varchar(100) | YES | | NULL | | | opt4 | varchar(100) | YES | | NULL | | | ans | int(11) | YES | | NULL | | | section | varchar(25) | YES | | NULL | |
Schema… user : | Field | Type | Null | Key | Default | Extra | | id | varchar(100) | | PRI | | | | name | varchar(50) | YES | | NULL | | | password | varchar(10) | YES | | NULL | | | address | varchar(200) | YES | | NULL | | | sex | char(1) | YES | | NULL | | | phoneno | varchar(10) | YES | | NULL | | | dob | date | YES | | NULL | |
GUI and Web Server HTML JSP Servlets Web Server -Tomcat(linux)
Beginning of the end Thank you……….