Vous êtes sur la page 1sur 64




In partial fulfillment for the award of the degree of

Information Technology


(May, 2012)

Certified that this project report Virtual Class Room System. is the bonafide of Tushar Goel and Narendra Singh, work of who carried out the project work under my supervision.



HEAD OF THE DEPARTMENT Mr. Bibek Kumar Katiyar


C.S. & I.T. Department ABSSInstituteof gy Mawana Road Meerut

C.S. & I.T. Department Technology ABSSInstituteofTechnolo

Mawana Road Meerut

Online Education is flexible study via the Internet, whenever and wherever you want. Online tutorial, online materials and Campus flexible convenient studying which will suit your busy work and home life while you continue to earn. No classroom attendance is ever required. You set your own weekly study schedule and attend class. Video lectures, class chat rooms and online office hours give you the knowledge and training to improve your job performance and increase your chances for promotion. The traditional school will never go away, but the virtual classroom is a significant player in todays educational community. Corporations are using the online model to train technical professionals while private and public universities redefine the world as their markets. The market for students is expanding rapidly. The e-classroom project target is provided electronic courses for the students to take in their own pace. Firstly, we put our focus in marketing short courses like English and Mandarin online. Afterwards, we will try to deliver more courses in ESAP for students to take on the Internet.



Table No.

Table Name
Student Faculty Admin Ppt Video Question Answer

Page No.
42 42 44 44 45 45 45

1. 2. 3. 4. 5. 6. 7.



Figure No.
1. 2. 3. 4. 5. 6.

Figure Name
Class Diagram Data Flow Diagram E R Diagram Use Case Diagram Activity Diagram Deployment Diagram

Page No.
13 17,18 19 20 21,22,23 41



CHAPTER NO. TITLE NO. ABSTRACT LIST OF TABLE LIST OF FIGURES 1: INTRODUCTION 1.1 Background 1.2 Advantages 1.3 Limitations 1.4 Users of the System 2: ANALYSIS MODELING 2.1 Basic Approach 2.2 Class Diagram 2.3 UML Diagrams 2.3.1 Data Flow Diagram 2.3.2 Entity Relationship Diagram

PAGE iii iv v 1-8 1-3 4 5 6-8 9-25 9 13 14 17 19

2.3.3 Use Case Diagram 2.3.4 Activity Diagrams

20 21

2.4 Description of Modules 3: SYSTEM PLANNING & SCHEDULING

23 26-31

3.1 Procedure for planning Of Virtual Classroom 26 3.2 System Concept. 3.3 Factor influencing the planning of the System. 27 28


DESIGN 4.1 Design Concepts. 4.2 System Design. 4.2.1 Deployment Diagram.

32-41 32 33 41 42-45




IMPLEMENTATION 6.1 Software Development Practices Adopted. 6.2 Hardware & Software requirements.

46-50 46 48 51






CONCLUSIONS 8.1 Limitations. 8.2 Recommendation on Future Improvement. 8.3 Conclusion. 9: REFERENCES 52 53 55 56

With the ever-increasing popularity and accessibility of the Internet, it is only natural that the educational community should want to make use of this tremendous resource. Use of the Internet and Web are leading to significant changes in educational models. Effective exploitation of these changes requires adequate attention to understanding the technology, the educational processes and issues, students characteristics, etc. As this use of Internet is increasing, a traditional classroom has shifted to E-Learning. While advancements in communication tools were easily adapted to learning methods, it was the introduction of the personal computer and the development of the Internet that would create the most radical transformation in higher education. Learning by computer can be as easy as communicating with your professor and fellow classmates via email, student utilizing an interactive CD-ROM.

Thus, E-Learning can be defined an approach to facilitate and enhance learning by means of personal computers, CD-ROMs, and the Internet. It may be as simple as that teacher may simply post their material on Internet; students can read it online or can download it for further access. Since student wont be in a classroom with professor and classmates, he

must be capable of independent learning. Instructor will provide him with a syllabus, course documents, and required readings. The interaction between the professor and the student will happen via e-mail, discussion board, forums etc. Since the class doesnt meet in a physical space at a scheduled time, the student will have to learn independently. He will be responsible for keeping up with the assigned reading and completing assignments according to the timeline on the syllabus.

The growing popularity of E-Learning has introduced new terms to education, as Virtual Classroom, where student will be present with his professor and fellow learners in a classroom. They will not be present physically in the classroom but connected to the classroom via Internet. Virtual classroom aims to simulate the experience of attending a class over the web. So everyone is able to see other participant virtually.

1.1 BACKGROUND:Just as the term virtual means a simulation of the real thing, Virtual Classroom is a simulated classroom via Internet, which provides a convenient communication environment for distance learners just like traditional face-to-face classroom. A virtual classroom allows learners to attend a class from anywhere in the world and aims to provides a learning

experience that is similar to a real classroom. When we go to college we have a schedule of lectures, which we must attend. Student must arrive on time, and when he enters the classroom, he finds a teacher, fellow learners, a blackboard or whiteboard, LCD projector, optionally a television screen with videos. Likewise, a Virtual Classroom is scheduled, online, teacher-led training session where teachers and learners interact together using computers linked to a network such as the Internet. A virtual classroom enables to bring learners from around the world together online in highly interactive virtual classes while greatly reducing travel, time, and expense of on-site teaching training programs. It can be used as a solution for live delivery and interaction that addresses the entire process of creating and managing our teaching-learning process. It facilitates instructor and student in teaching-learning events, such as a seminar, online discussion or a live training for employees in company.

As in traditional classroom, there are professor and fellow learners present with the student; we have many participants present in virtual classroom. They can talk with each other as in the traditional classroom via chat. Similarly presenter uses whiteboard, gives notes/resources, and gives presentation as given in traditional one. Thus, virtual classroom can be visualized as a classroom where a lecture or session is conducted using

Internet. Now, that we have some idea about virtual classroom, we will discuss some advantages that virtual classroom offers over traditional classroom.

1.2 Advantages of Virtual Classroom:Following are some of the advantages of Virtual classroom over traditional classroom model: Removal of geographical barriers (Anywhere learning).A virtual classroom allows learners and teachers to attend a single live training session from any place in the world; provided they have a computer and Internet connection. Sessions can be recorded If learners miss a traditional classroom-based training session, they have very little opportunity to engage in the learning experience that took place. A virtual classroom has a facility to record the session so learners or teachers can replay it afterwards. Teachers also get an opportunity to review their own or their colleagues performance. Quicker to organize Training can be organized more quickly than traditional classroom-based training. Classrooms and projectors do not need to be reserved; materials do not need to be distributed. The sessions are easier to schedule or reschedule since attendees will not be traveling to the venue of the session. One to one communication in a virtual classroom environment, learners

can talk to the teacher and to each other, and although this communication is not rich in a traditional classroom, it still can help learners, since it is one to one. Due to these advantages, concept of virtual classroom is getting very popular. Since it allows learners to attend sessions from anywhere in world, it is very useful for distant learners and for peoples who cannot meet face to face because of lack of time. Though it gives lots of advantages, it has some pitfalls also. Following section describes some limitations of virtual classroom.

1.3 Limitations of Virtual Classroom:Following are some of the limitations of Virtual classroom over Traditional classroom:Teachers and students need to become familiar with the tools Teachers and students are familiar with the workings of a traditional classroom, that is, they understand the concepts of hand raising, the whiteboard, assignments, and so forth. With a virtual classroom, all attendees must become familiar with the way the virtual classroom works before virtual classroom based training starts. Time dependency for Live Sessions Attending virtual classroom training is restricted to a certain scheduled time. Infrastructure for the participants PC needs to be prepared .Virtual classroom sessions need to be scheduled, teachers need

to be invited, and participants PCs need to be prepared. Technical Limitations, Technical issues such as bandwidth, speed of the connection or power failure may create problem while presentation is going on.

1.4 Users of the System:There are different classes of users of virtual classroom based on the roles that they play. When presenter enters in virtual classroom, he has different work to do than participant. Depending on the user type, virtual classroom takes different form for each user. These forms can be categorized depending on the user's role. These roles are as follows: (>>)Presenter (or Administrator) Facilities provided by presenter interface to Faculty:

(.) Register new users

Presenter as an administrator has to register new users that will be attending the session.

(.) Create a session

Presenter has to decide the session time, users that will be invited for the session. While creating a session, he can specify the time and users of the particular session.

(.) Cancel a user registration

If any registered user does not want to attend the session, presenter cancels his registration.

(.) Conduct Online presentation

As a presenter, he conducts the session for participants. During presentation he performs various activities in the classroom. He can load the presentation slide that will be displayed to participants.

(.) Share Resources

Presenter can add various resources to the session. It may be a file or just a simple web page link that participant can download at their end.

(.) Conduct Poll

He can create a poll for participants. Also he can chat with participants.

(.) Explain concepts using Whiteboard

He can use whiteboard to explain some of the topic, which may not be able to explain via presentations, or to solve any particular doubt asked by the participant. (>>) Facilities provided by participant interface to students:

(.) View online presentation

When a participant joins the session, they can view the presentation, which are conducted by the presenter in the virtual classroom. The presentation may include the PowerPoint presentation slides or it may also include the snap of the whiteboard on which the presenter can explain the concepts to the participants.

(.) Public/Private Chat

The participants can have a conversation with the fellow participants

publicly or privately via the chat feature available in the interface, the chat allows the participant to send the instant messages to the participants who are also attending the session. Participants can also send private messages to any of the participant but he is not allowed to send private messages to the presenter but can do so by using the hands up facility, which is explained next.

(.) Raise Hands

Whenever any participant will have any doubt, then he can tell that to presenter by using the hands up facility available in the user interface of the participant, using this feature the participant can interact with the presenter via the private chat.

(.) Give Response to the polls

The participants can answer the polls that are submitted by the presenter by using the Submit Response facility provided in the interface. The poll can be of type objective or it may be of Yes/No type. It the particular poll is public then participants can see response for that particular poll, else it will be kept hidden from the participant. The Only presenter is able to see the response for private poll.

(.) Download Resources

The resources that are been shared by the presenter can be downloaded by the participants at their machine. The resources can be the files which may include course material, e-books etc, or it may be also web links which presenter may want the participants should refer.


2.1 Basic Approach:Our approach is to build a system that would facilitate conducting seminars on Internet for participants from anywhere in world. Users can get many advantages by using virtual classroom. He can save a lot of time by using the virtual classroom to attend the session. Our virtual classroom will have two types of users, as presenter and participant. When a user enters in the virtual classroom, he will be asked whether he want to join the classroom as presenter or participant. Presenter is the one who conducts the session, and participant is the one who attends the session. Presenter when enters the classroom, he can also perform administrative functionalities. The users of virtual classroom (presenter and participant) has different interface of the classroom, when they enter in the classroom. Depending on the user type, the features of the classroom will be different for: Presenter Participant Features of Virtual Classroom Session The presenter can create the session in the beginning & will conduct online presentation in the session.

The participants can attend this session using the name of the session and view the presentation made by the presenter. In the session of the classroom, various functionalities that will be performed by the users are as follows: .Agenda (.) The presenter creates the agenda in the beginning of the session. This agenda specifies an outline of the session. (.) The participants can only view the agenda in their main window. The agenda will give him the idea about the topics that will be covered in the session. Presentation Area In the presenter interface, the presentation area allows presenter to upload the presentation file. It also allows him to navigate between the slides In the participant window, the presentation area will display the slide that the presenter is explaining. Whiteboard The presenter will be able to write, draw and highlight any particular area on the whiteboard. The white board will be consists of various components such as various shapes, lines, eraser, pointer, etc, using which he will be able explain the particular topic to the participants. The participants can view the whiteboard in their interface, but they will not be allowed to use it (they will not be allowed to make any changes to whiteboard). The changes made by the presenter on the whiteboard will be displayed to the participants.


Shared Resources & Web links The presenter can share their resources using the load resources facility that will be present in the presenter interface. The resources will be files of type (doc, rtf, pdf) or web links (URL). The participants can download these shared resources on their machines, also they can refer the given web links using their web browser. Poll The presenter can ask the participant any question by using the poll functionality that will be of the objective or yes/no type question. The response of the poll will be public or private. If the response of any particular poll is private, the response will not be shown to the participant; only presenter will be able to see the response. The response will be shown in the vertical bar chart format. The participant will be able to submit his response to the poll submitted by presenter. Also, he can view the responses of the polls for which presenter has allowed permission to see the response by participants. The private responses will not be shown to the participants Chat: The presenter will use the chat functionality to send text messages to the participants. He can send a message to particular participant or to all participants. The participants will be able to send text messages to each other. But, he will not be able to send message to presenter directly. He can do it by using the hands-up facility.


Hands-up: The presenter interface will consist of hands-up list, which will display the names of the participants, which has raised their hands. Hands-up by participant indicates he has some doubt or question to be discussed with presenter. Participant will use the hands-up facility if he wants to ask some question or want to talk with presenter. He can use this facility to initiate the conversation with the presenter. After the participant uses the hands up facility, presenter will allow him to have a private chat with him. Participant list: In the presenter interface, there will be the list of participants, which will consist of the names of the participants that will be attending the session. If the presenter has to eject any particular participant, then he can use the eject facility that will be available in presenter interface. In the participant interface, the list of participants will only show the names of the fellow participants that are attending the session.12

2.2 Class Diagram:-


Fig 1 Class diagram of Virtual Classroom


2.3 UML DIAGRAM:2.3.1 What is DFD? The DFD also known as the Bubble Chart is a simple graphical formalism that can be used to represent a system in terms of the input data to the system. Various processing carried out on these data, and the output data generated by the system. The main reason why the DFD technique is so popular is probably because of the fact that DFD is a very simple formalism-it is simple to understand and use. A DFD uses a very limited number of primitive symbols to represent the functions performed by a system and the data flow among these functions. Starting with a set of high-level functions that a system performs, a DFD model hierarchically represents various sub functions. The five different types of primitive symbols used for constructing DFDs are: [1]



A function is represented using a circle. This symbol is called a process or a bubble. Bubbles are annotated with the names of the corresponding functions. EXTERNAL ENTITY:

An external entity such as a librarian, a library member, etc. is represented by a rectangle. The external entities are essentially those physical entities external to the software system that interact with the system by inputting data to the system or by consuming the data produced by the system. In addition to the human users, the external entity symbols can be used to represent external hardware and software such as application software. DATA FLOW:

A directed arc or an arrow is used as a data flow symbol.


A data flow symbol represents the data flow occurring between two processes, or between an external entity and a process, in the direction of the data flow arrow. Data flow symbols are usually annotated with the corresponding data names. DATA STORE:

A data store represents a logical file. It is represented using two parallel lines. A logical file can represent either a data store symbol, which can represent either a data structure, or a physical file on disk. Each data store is connected to a process by means of a data flow symbol. The direction of the data flow arrow shows whether data is being read from or written into a data store. A arrow flowing in or out of a data store implicitly represents the entire data of the data store and hence connecting to a data store need not be annotated with the name of the corresponding data items.



The output symbol is used when a hard copy is produced and the user of the copies cannot be clearly specified or there are several users of the output. 2.3.1 Data Flow Diagrams:STUDENT(I)
at ion
ar St


fo r en t in m

St ud


Jon request

id V



eq st


Me s
D ra win g, L

sa g



oad D U R o cu m L e
ed vi d eo



Ca ur pt



Figure 2: 0-Level DFD for Virtual Classroom System.


Figure 3: 1-Level DFD for Virtual Classroom System.


2.3.2 Entity Relationship Diagram:-

Figure 4: ER diagram for Virtual Classroom System.


2.3.3 Use Case Diagrams:-

Figure 5: Use Case diagram for Virtual Classroom System.


2.3.4 Activity Diagrams:-

Figure 5: Activity diagram for Registered User


Figure 6: Activity diagram for Create Presentation Use case.


Figure 7: Activity diagram for Start Presentation Use case.

2.4 DESCRIPTION OF MODULES:1. Student Login: It enables a person to login as a student or sign up if he/she has not


registered for the classroom. Once logged in a student has the following features:a) Edit Profile: It allows modifying the details b) Study Material & Video Lectures: It displays a list of ppts & interactive video lessons categorized by subjects as posted by the faculty c) Ask doubts: It enables the students to ask questions d) Answers: It shows the answers by the teachers to the questions asked by various students 2. Faculty Login: It enables a person to login as a faculty member or sign up if he/she has not registered for the classroom. Once logged in a faculty member has the following features:a) Edit Profile: It allows modifying the details b) Study Material & Video Lectures: It allows the faculty members to post & remove ppts & video lessons c) Doubts: It shows all the questions asked by the students d) Answers: It enables teachers to answer the questions asked by the students.


3. Administrator Login The administrator is the ultimate controller of the application with the highest authority. He/she has the following features:a) Student/Faculty: It displays a list of students/faculty members registered for the classroom b) Student/Faculty request:

It displays a list of students/faculty members whose sign up request is still pending c) PPT (upload/del)/Video (upload/del): It displays a list of ppts & videos posted by the faculty members. The administrator has the power to remove ppts/videos from the list and upload according to wish d) Question/Answer: It displays a list of questions asked by students/answers to questions by teachers. The administrator has the power to delete questions/answers from the list.



3.1 Procedure for planning for Virtual Classroom:The purpose of project planning is to identify the scope of the project, estimate the work involved, and create a project schedule. Project planning begins with requirements that define the software to be developed. The project plan is then developed to describe the tasks that will lead to completion. The purpose of project monitoring and control is to keep the team and management up to date on the project's progress. If the project deviates from the plan, then the project manager can take action to correct the problem. 3.2 System Concepts:In computing, the term issue is a unit of work to accomplish an improvement in a system. An issue could be a bug, a requested feature, task, missing documentation, and so forth. The word "issue" is popularly misused in lieu of "problem." This usage is probably related. For example, OpenOffice.org used to call their modified version of


BugZilla IssueZilla. As of September 2010, they call their system Issue Tracker. Problems occur from time to time and fixing them in a timely fashion is essential to achieve correctness of a system and avoid delayed deliveries of products. Issues are often categorized in terms of severity levels. Different companies have different definitions of severities, but some of the most common ones are: (.)Critical (.)High The bug or issue affects a crucial part of a system, and must be fixed in order for it to resume normal operation. (.)Medium The bug or issue affects a minor part of a system, but has some impact on its operation. This severity level is assigned when a noncentral requirement of a system is affected. (.)Low The bug or issue affects a minor part of a system, and has very


little impact on its operation. This severity level is assigned when a non-central requirement of a system (and with lower importance) is affected. (.)Cosmetic The system works correctly, but the appearance does not match the expected one. For example: wrong colors, too much or too little spacing between contents, incorrect font sizes, typos, etc. This is the lowest severity issue. 3.3 FACTOR INFLUENCING THE PLANNING OF SYSTEM:Technology projects, unlike most others, have a potential to fail to meet their goals. Over the past few years we have isolated six factors that influence the risk of failure. Factor 1: Achievable goals Failure is defined as "Results not meeting expectations". Excellent results can still fail to meet expectations, if the expectations are too high or too vague. Thus it is important to specify realistic, concrete, and written goals in order to guide the project. As important as achievable goals are well-defined goals. They should as explicit and precise as possible without being limiting. In order clarify


expectations, goals must be defined in three areas: technical, schedule, and cost. The most obvious example of well-defined goals is systems that are a 1to-1 replacement for existing systems. This never occurs, however, since a new system always has additional goals. Other ways of looking at whether goals are achievable is to consider their size, their complexity, whether they are replacing more than one existing system, how stable is the process being automated, numbers of interfaces with other systems (or this may be part of factor 4), and stability of requirements. The total duration of the project might give a clue also. Projects that take more than one year are automatically higher risk. Factor 2: Activity type The activity for which the technology system is targeted is a factor in the probability of success. Activities can be placed into a 2x2 matrix according to whether they are Critical or Noncritical to achieving the mission, and whether they are Focus or No focus. Focus activities are those for which the organization was founded and that staffs are specialists in.


Factor 3: Resources and commitment Resources include money and people, but might also consider computer systems, space, etc. Factor 4: Organizational setting Organizational Setting describes to what extent the proposed project requires cooperation and interrelationship between organizational units. In organizational theory, there are three ways that organizations can be affected by their technologies. "Long-linked" technologies imply close coordination among departments, especially time-dependent

coordination. "Mediating" technologies are common standards and practices. "Intensive" technologies do not imply any relationship between departments but are used by individuals focusing on the problem at hand. Long-linked technologies are the most costly and hardest to change; intensive the least costly and easiest to change. In other words, the riskiest projects are those that require close, time-dependent interactions among organizational units. The least risky projects are those that are done by a small team of specialists, apart from the main organization. Other organizational considerations are the policies in place,

methodologies (for planning, analysis, and systems development), an information architecture, etc.


Factor 5: Project participants The most important aspect of the project participants is their experience in the use of the proposed technology. Low experience means high risk. Other aspects are their commitment to the project, their time and attention available, their skills, and their attitudes. Appointment of a single project manager who bears responsibility for success is also a factor. Factor 6: Technology age Technology Age describes whether the technology proposed is New, Old, or Current. Newer the technology, the higher are the risks. One might also consider the availability, quality, staffing, and stability of the infrastructure, such as databases, data administration, languages and tools, networks, etc. In many software companies, issues are often investigated by Quality Assurance Analysts when they verify a system for correctness, and then assigned to the developer(s) that are responsible for resolving them. They can also be assigned by system users during the User Acceptance Testing (UAT) phase. Issues are commonly communicated using Issue or Defect Tracking Systems. In some other cases, emails or instant messengers are used.


4.1 DESIGN CONCEPT:The ADSA project set out to investigate the concept of distributed Web search and to build a working prototype of a system based on this concept. The system was designed to allow independent ownership of its components, which together provide an integrated search service. This was to relieve scalability problems inherent in todays centralized search engine design, to allow individuals and organizations with low resources to enter the search services market, and to provide a search service for the invisible Web. A number of other features are also supported, such as search-based advertising, payments, topic-specific Web crawling, and attribute-based search. The concept for this project came from the success of peer-to-peer overlay networks such as GnutellaeDonkey2000, Bit Torrent and others. They showed that loosely coupled peer-to-peer systems with thousands of independently owned and operated nodes could build very large information storage and retrieval systems at a very low entry cost to each individual participant. Each node in such a network is free to choose what information it makes available to others (publishes). A prototype system has been developed. It operated a public


pilot service for more than a year. The conclusions drawn from this experience and future directions are presented in the paper..

4.2 System Design:Software design is the activity where software requirements are analyzed in order to produce a description of the internal structure and organization of the system that will serve as the basis for its construction. There are two activities: Software architectural design: the top-level structure and organization of the system is described and various components are identified (how the system is decomposed and organized into components and must describe the interfaces between these components. Software implementation design: each component is sufficiently described to allow for its coding. The software design objectives can be listed as follows: () To produce various models that can be analyzed and evaluated to determine if they will allow the various requirements to be fulfilled, () To examine and evaluate various alternative solutions and tradeoffs, and () To plan the subsequent development activities. Software system design results in the following products: ()A list of design goals derived from the nonfunctional requirements


()Software Architecture ()Subsystem decomposition in terms of :: - Responsibilities : - Dependencies : - Mapping to hardware : - Major policy decision such as : - Control flow : - Access control : - Data storage : - Access control : - Boundary condition A use case is a technique for capturing the potential requirements of a new system or software change. Each use case provides one or more scenarios that convey how the system should interact with the end user or another system to achieve a specific business goal. Use case diagrams depict: Use cases: A use case describes a sequence of actions that provide something of measurable value to an actor and is drawn as a horizontal ellipse. Actors: An actor is a person, organization, or external system that plays a role in one or more interactions with your system. Actors are drawn as stick figures. Associations: Associations between actors and use cases are indicated in use case diagrams by solid lines. An association exists whenever an


actor is involved with an interaction described by a use case. Associations are modeled as lines connecting use cases and actors to one another, with an optional arrowhead on one end of the line. The arrowhead is often used to indicate the direction of the initial invocation of the relationship or to indicate the primary actor within the use case. System boundary boxes (optional): We can draw a rectangle around the use cases, called the system boundary box, to indicate the scope of the system. Anything within the box represents functionality that is in scope and anything outside the box is not. System boundary boxes are rarely used. Packages (optional): Packages are UML constructs that enable us to organize model elements (such as use cases) into groups. Packages are depicted as file folders and can be used on any of the UML diagrams, including both use case diagrams and class diagrams. As seen in use case diagram, in virtual classroom, there are two entities, Presenter and Participant, which interacts with the system. These two entities can be identified as actors in the System. Activities performed by the presenter: Registering new Users Create session


Create Agenda Create Poll Load Resources to the Session Start the Presentation End the Session The functionalities of presenter are identified as use-cases in the system. Activities performed by the participant: Apply for the registration Attend the presentation Download Resources Give Response for the poll Participant can apply for registration for the presentation; also he attends the presentation in Virtual classroom. Therefore, use-cases identified for him in the system are as apply for registration and attend the presentation.

Activity diagrams represent the business and operational workflows of a system. It is a dynamic diagram that shows the activity and the event that causes the object to be in the particular state. It describes the workflow behavior of a system. An Activity diagram consists of the following behavioral elements: Initial Activity: This shows the starting point or first activity of the flow, denoted by a solid circle. This is similar to the notation used for Initial State.


Activity: Represented by a rectangle with rounded (almost oval) edges. Decisions: Similar to flowcharts, a logic where a decision is to be made is depicted by a diamond, with the options written on either side of the arrows emerging from the diamond, within box brackets. Concurrent Activities: Some activities occur simultaneously or in parallel. Such activities are called concurrent activities. For example, listening to the lecturer and looking at the blackboard is a parallel activity. This is represented by a horizontal split (thick dark line) and the two concurrent activities next to each other, and the horizontal line again to show the end of the parallel activity. Final Activity: The end of the Activity diagram is shown by a bull's eye symbol, also called as a final activity. A class diagram consists of a group of classes and interfaces reflecting important entities of the business domain of the system being modeled, and the relationships between these classes and interfaces. The classes and interfaces in the diagram represent the members of a family tree and the relationships between the classes are analogous to relationships between members in a family tree. Interestingly, classes in a class diagram are interconnected in a hierarchical fashion, like a set of parent classes (the grand patriarch or matriarch of the family, as the case may be) and related child classes under the parent classes.


4.3 SYSTEM CONSIDERATION:The growth of the Internet and the World Wide Web allow increasing number of users to access vast amounts of in- This work was supported in part by an NSF Research Infrastructure Award (CDA-9624082) and grants from IBM, Intel, Lucent Bell Laboratories, Mitsubishi Electronic Research Laboratories (MERL), NASA, Novell, and Sun Microsystems. Dahlin was also supported by an NSF CAREER grant (CCR-9733842), and VIN was also supported by an NSF CAREER grant (CCR-9624757). Copyright 1999 IEEE. Published in the Proceedings of International Conference on Distributed CompCS99), May 1999 Austin, Texas. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other words, must be obtained from the IEEE. Contact: Manager, Copyrights and Permissions / IEEE Service Center / 445 Hoes Lane / P.O. Box 1331 / Piscataway, NJ 08855-1331, USA. Telephone: + Intl. 908-562-3966. Information stored at geographically distributed sites. However, long round-trip propagation delays between client and server sites, as well as hot spots of network and server load yield high latencies for information access. Caching provides an opportunity to combat this latency by allowing users to fetch data from a nearby cache rather than from a


distant server. But because users tend to access many sites, each for a short period of time, hit rates of per-user caches are low. Thus, some organizations have begun to utilize shared proxy caches [11] or hierarchical caches [5] so that each user can benefit from data fetched by others. Current shared cache architectures face a dilemma. On one hand, they wish to share data among a large number of clients to achieve good hit rates. On the other hand, as a shared cache system services more clients, the response time it provides to any one client worsens due to the increased distance between client and cache, the increased load on the cache, or the increased number of levels in the cache hierarchy. Thus, these hierarchies of data caches achieve modest hit rates [2, 7, 11, 13], can yield poor response times on a cache hit [21, 26], and can slow down cache misses. This paper examines techniques for building systems of shared, distributed caches that scale to hundreds or thousands of caches with tens of thousands to millions of users. We believe our techniques will be of interest to system designers building large-scale, distributed cache infrastructures in a range of environments including network service providers, independent service providers, cache providers, collections of caches linked by formal service agreements [28], and large intra-nets.


Using measurements of several caches on the Internet and analysis of several traces of web traffic, we first attempt to understand the factors that limit the performance of current web caches. We find that to provide good performance to the end user, it is important not only to maximize hit rates, but also to improve hit times and miss times. Based on these measurements, we derive three basic design principles for large-scale caches: (1) minimize the number of hops to locate and access data on both hits and misses, (2) share data 1 among many users and scale too many caches, and (3) cache data closed to clients. Although these principles may seem obvious in retrospect, current cache architectures routinely violate them at a significant performance cost. For example, hierarchical caches in the United States are often seen as a way to reduce bandwidth consumption rather than as a way to improve response time.



Fig.8 Deployment diagram of JSP




The structure of all tables included in the project is as under:1. STUDENT

+--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | user | varchar(25) | YES | UNI | NULL | | | pass | varchar(25) | YES | | NULL | | | name | varchar(25) | YES | | NULL | | | ph_no | varchar(25) | YES | | NULL | | | year | varchar(2) | YES | | NULL | | | branch | varchar(4) | YES | | NULL | |


+---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+


| user | varchar(25) | YES | | NULL | | | pass | varchar(25) | YES | | NULL | | | name | varchar(25) | YES | | NULL | | | ph_no | varchar(10) | YES | | NULL | | | subject | varchar(25) | YES | | NULL | | | branch | varchar(4) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 3. STUDENTSIGNUP

+--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | user | varchar(25) | YES | UNI | NULL | | | pass | varchar(25) | YES | | NULL | | | name | varchar(25) | YES | | NULL | | | ph_no | varchar(25) | YES | | NULL | | | year | varchar(2) | YES | | NULL | | | branch | varchar(4) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 4. FACULTYSIGNUP


+---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | user | varchar(25) | YES | | NULL | | | pass | varchar(25) | YES | | NULL | | | name | varchar(25) | YES | | NULL | | | ph_no | varchar(10) | YES | | NULL | | | subject | varchar(25) | YES | | NULL | | | branch | varchar(4) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 5. ADMIN

+-------+------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+------------+------+-----+---------+-------+ | pass | varchar(5) | YES | | NULL | | +-------+------------+------+-----+---------+-------+ 6. PPT

+---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | subject | varchar(10) | YES | | NULL | | | ppt | varchar(50) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+


7. VIDEO +---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | subject | varchar(10) | YES | | NULL | | | video | varchar(70) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 8. QUESTION +---------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+--------------+------+-----+---------+-------+ | que | varchar(200) | YES | | NULL | | | askedby | varchar(25) | YES | | NULL | | | subject | varchar(10) | YES | | NULL | | | qid | int(11) | YES | UNI | NULL | | +---------+--------------+------+-----+---------+-------+ 9. ANSWER +----------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+-------+ | qid | int(11) | YES | UNI | NULL | | | answer | varchar(200) | YES | | NULL | | | answerby | varchar(25) | YES | | NULL | | +----------+--------------+------+-----+---------+-------+


6.1 Software Development practices Adopted:The open source movement created a set of software engineering tools with features that fit the characteristics of open source development processes. To a large extent, the open source culture and methodology are conveyed to new developers via the toolset itself and the demonstrated usage of these tools on existing projects. The rapid and wide adoption of open source tools stands in stark contrast to the difficulties encountered in adopting traditional Computer-Aided Software Engineering (CASE) tools. This chapter explores the characteristics that make these tools adoptable and discusses how adopting they may influence software development processes.

One ongoing challenge facing the software engineering profession is the need for average practitioners to adopt powerful software engineering tools and methods. Starting with the emergence of software engineering as a field of research, increasingly advanced tools have been developed to address the difficulties of software development. Often these tools addressed accidental difficulties of development, but some have been aimed at essential difficulties such as management of complexity,


communication, visibility, and changeability (Brooks 1987). Later, in the 1990s, the emphasis shifted from individual tools toward the development process in which the tools were used. The software process movement produced good results for several leading organizations, but it did not have much impact on average practitioners. Why has adoption of CASE tools been limited? Often the reason has been that they did not fit the day-to-day needs of the developers who were expected to use them: they were difficult to use, expensive, and special purpose. The fact that they were expensive and licensed on a per-seat basis caused many organizations to only buy a few seats, thus preventing other members of the development team from accessing the tools and artifacts only available through these tools. One study of CASE tool adoption found that adoption correlates negatively with end user choice, and concludes that successful introduction of CASE tools must be a topdown decision from upper management (Iivari 1996). The result of this approach has repeatedly been shelfware: software tools that are purchased but not used.

Why have advanced methodologies not been widely adopted? Software process improvement efforts built around capability maturity model (CMM) or ISO-9000 requirements has required resources normally only found in larger organizations: a software process improvement group,


time for training, outside consultants, and the willingness to add overhead to the development process in exchange for risk management. Top-down process improvement initiatives have often resulted in a different kind of shelfware, where thick binders describing the organizations software development method (SDM) go unused. Developers who attempt to follow the SDM may find that it does not match the process assumptions embedded in current tools. Smaller organizations and projects on shorter development cycles have often opted to continue with their current processes or adopt a few practices of lightweight methods such as extreme programming in a bottom-up manner (Beck 2000).

6.3 Hardware and Software Requirements:TOOLS/PLATFORM USED: Front End:Java Server Pages User friendly GUI Separation of work (designing & coding) Written once run anywhere Middle-Tier Java Beans


Back End MS Access 2007 Security Performance Scalability Reliability Support RDMS concepts



Pentium 4th



Hard Disk




Operating System

Windows 98/2000/XP,UNIX

Front End


Back End

MS-Access 2007.

Design Patterns



Structured testing tools had been used for testing the programs.

Small programs are developed to test the individual modules.

Each module is tested by the development of appropriate functionality.

Groups of people were assigned to test the software functionality.

The same group is responsible to test the reliability of software by using various I/P and techniques, on various parts and functionalities.

The group had done Alpha testing.


Software is distributed to doctors and scientist to Beta-test the entire S/W.

CHAPTER -8 LIMITATIONS, FUTUTE SCOPE & CONCLUSION Limitations of Virtual Classroom:Following are some of the limitations of Virtual classroom over Traditional classroom: Teachers and students need to become familiar with the tools Teachers and students are familiar with the workings of a traditional classroom, that is, they understand the concepts of hand raising, the whiteboard, assignments, and so forth. With a virtual classroom, all attendees must become familiar with the way the virtual classroom works before virtual classroom based training starts. Time dependency for Live Sessions Attending virtual classroom training is restricted to a certain scheduled time. Infrastructure for the participants PC needs to be prepared


Virtual classroom sessions need to be scheduled, teachers need to be invited, and participants PCs need to be prepared. Technical Limitations:Technical issues such as bandwidth speed of the connection or power failure may create problem while presentation is going on.

Future Scope Of The System:-

When we talk about scope, we are talking about developing a common understanding as to what is included in, or excluded from, a project i.e. proposed system. Scope can be defined in terms of deliverables, functionalities that the proposed system will perform. Scope of our system- Virtual Classroom is defined in terms of tools or features that the proposed system will have. The features of the proposed system can be listed as: Agenda: Before starting the session, presenter has to create agenda for the session. Agenda briefly describes the topics for the discussion. Thus it gives an outline of the session to all participants. Presentation display: The presenter can show PowerPoint presentation in the session. For that he can load presentation file into the session. He is able navigate between different slides using appropriate buttons.


Whiteboard: Whiteboard is used to write while session is going on. Authority of using whiteboard will be with Presenter only. As a participant in the session, he can view whiteboard screens. Presenter can write on screen, or he can draw different geometrical shapes. Chat: Using this feature presenter and participants can send short text messages to each other. Participants are allowed to send message to presenter using Hands-up facility. To give any message to participant, presenter can use chat tool. Poll: Presenter can add poll question to session using this feature. He can select different types of polls like multi-choice or yes-no polls. Also, he can select whether participant is allowed to see poll response or not. At participant interface, he can submit answer to polls and allowed to see response of only those polls to which presenter has allowed permission to see. Resource Sharing: Presenter uploads the resources that can be useful to the particular session. Participants can download these resources. Also, presenter can give any resource link on the web. Participants can see that web page separately at their end.


Participants list and Hands-up list: Participants list displays the name of the participants that are logged in for the session. Hands-up list displays the participants name that has raised their hands (virtually) using hands up.


As given in system specification, we have implemented most of the functionalities of the proposed virtual classroom. Our virtual classroom will be used for conducting web seminars. It has mainly two users, presenter and participant. A presenter will conduct a session for participants, which will attend the session from anywhere in the world. When a session is started, presenter can conduct seminars for participants in the session. As a presenter he can add new users to session, he can create agenda for the session that will give an outline about the session, he can add various resources (i.e. files or web links) to the session, he can show power point presentation to participants, also he can use white board, he can answer participants doubts using chat facility, he can create different poll questions. When participant enters in classroom, he can attend the session. He is able to download the resources submitted by presenter, he can chat with other participants in classroom, he can answer the polls, and also he can


see the responses submitted by participants to those polls, he can view the slide transition, whiteboard, also he can do hands up, if he has some question to ask to presenter.


[1] Patrick Naughtan (1994) Complete Reference Vol.42 No.1, pp.421425. [2]. OReilly. (1980) Java Servlet Programming, Michigan Mach, J., Vol.27, pp.8194. [3] Jason Gilliam . (1984) Pure JavaScript, Proc. Amer. Contr. Conf.,

San Diego, CA, pp. 1231-1236 [4] Apress Publication. (2010) Java Server pages

[5] Using IBM Lotus Virtual Classroom: A Best Practices Guide to eLearning [6] Software Engineering A Practitioners Approach [5/e (2001) Pressman] [7] Designing Flexible Object-Oriented Systems with UML [Charles Richter].