Está en la página 1de 33

A

MINOR PROJECT
ON
JBRR VIRTUAL CLASSROOM
Submitted by:
Bina Baral(2008/BCT/510)
Juna Somare(2008/BCT/515)
Raksha Roy(2008/BCT/530)
Rumisha Shakya(2008/BCT/532)
Submitted to:
Department Of Electronics and Computer Engineering
13th November, 2011

Acknowledgement
First of all, our deep gratitude to the Department of Electronics
and Computer Engineering for providing the opportunity to do this
project. Virtual Classroom is the online platform bringing together both
local and distant learners and the teachers within one class via a web
based system and we are indebted to our project supervisor Er. Badri
Adhikari for his interest in the project and his invaluable advices and
suggestions. Similarly we are also thankful to Er. Shyan Kirat Rai and
Er. Sanjog Bhatta for assisting and guiding us in our project.
We would like to acknowledge and thank our group members and
seniors for their sincere advice and supervision and continuous
encouragement throughout the groundwork of the project.
At last, but not the least we would like to thank our college management
for providing us the good environment to do this report.

Bina Baral (2008/BCT/510)


Juna Somare(2008/BCT/515)
Raksha Roy(2008/BCT/530)
Rumisha Shakya(2008/BCT/532)

November,2011

ii

Abstract
Virtual classroom is a web based system that provides a learning
atmosphere for all learners. As it requires computers and internet
connection it is referred as a web based system. This project points to
develop a web application through which teachers can appear in front of
a webcam in their desk, and students can view the teacher and listen to
his/her voice through a web page at real time. This Virtual classroom has
the feature of audio-video conferencing between tutor and learners after
they have logged in using their usernames and passwords.

iii

List of abbreviations
API

Application Programming Language

DTS

Data Information Service

GUI

Graphical User Interface

IDE

Integrated Development Environment

JMF

Java Media Framework

JSP

Java Server Page

MSDTC

Microsoft Distributed Transaction Coordinator

MS SQL

Microsoft Sequel

RTP

Real Time Protocol

RDBMS

Relational Database Management System

Rs.

Rupees

iv

Table of Contents
Acknowledgement .....................................................................................ii
Abstract .................................................................................................... iii
List of abbreviations .................................................................................iv
List of figures ......................................................................................... vii
1. Introduction ........................................................................................... 1
2. Objectives .............................................................................................. 2
3. Background............................................................................................ 3
4. Case study .............................................................................................. 4
5. Methodology.......................................................................................... 5
6. Project schedule ..................................................................................... 6
7. Literature review ................................................................................... 7
7.1 JAVA ................................................................................................ 7
7.2 MS SQL ............................................................................................ 8
7.3 NETBEANS ..................................................................................... 9
7.4 Java Media Framework .................................................................. 10
7.5 Real Time Protocol ......................................................................... 10
7.6 Application Programming Interface ............................................... 10
7.7 Java Applets .................................................................................... 11

8. Feasibility analysis .............................................................................. 12


8.1 Operational feasibility .................................................................... 12
8.2 Technical feasibility ....................................................................... 12
8.3 Economic Feasibility ...................................................................... 13
8.4 Schedule Feasibility........................................................................ 13
9. System design ...................................................................................... 14
9.1 Architecture diagram ...................................................................... 14
9.2 Use Case Diagram .......................................................................... 15
9.3 Er-Diagram ..................................................................................... 16
10. Scope ................................................................................................. 17
11. Screen shot......................................................................................... 18
12.System testing ..................................................................................... 20
13. Cost estimation .................................................................................. 21
14. Conclusion ......................................................................................... 22
14.1 Results........................................................................................... 22
14.2 Problem faced .............................................................................. 22
14.3 Conclusion .................................................................................... 23
15. Future Enhancements ........................................................................ 24
16. Bibliography ...................................................................................... 25

List of figures
Figure 1:Architecture Diagram ............................................................... 14
Figure 2:Use Case Diagram .................................................................... 15
Figure 3:Login Page ................................................................................ 18
Figure 4:Transmission of audio and video through JM Studio .............. 19
Figure 5: Displaying audio and video signal and chat in webpage ........ 19

1. Introduction
Virtual classroom is online environment that facilitate learners
and tutors to communicate synchronously using audio, video, text chat,
interactive whiteboard, application sharing, instant polling etc. It is
based on the JMF API of java. JMF is a good API for media related
works. The learners and tutors have their own username and password.
Thus to login into the Virtual classroom they must enter correct
username and password and then they can have audio as well as video
conferencing. Virtual Classroom allows the learners and their
teachers to attend the classes from any part of the world. Virtual
classroom can be a very useful dexterity for distant learners and for
peoples who cannot meet face to face because of lack of time or other
reasons.

2. Objectives
The main objectives of the Virtual Classroom can be listed as
follow:-

Capturing audio from audio devices.


Capturing video from video devices.
Transmitting real time audio and video through the network.
Receiving real time audio and video.
Transmitting and receiving recorded videos.
Chat

3. Background
For the finishing point of our project on Virtual Classroom
we used a high level programming language JAVA and windows
platform. We have used the most recent edition of the Java programming
language for the latest facet included in Java. Likewise webcam is used
as a capturing device for the completion of the project.
The main purpose of the project is to develop a web application through
which tutors can appear at the front of a webcam in their desk, and
learners can outlook the tutors and listen to his/her voice through a web
page, at real time. The main source for the completion of this project is
the web, www.uioe.sf.net , Java media framework API, and several
other similar articles.

4. Case study
We have studied about different articles on the web related to the
JMF API of java. Similarly we studied and researched about different
articles like Cactus and documentations related to Virtual Classroom.
Likewise we also premeditated and researched about Java related topics
like JSP, RTP Applets.
JM Studio is an open source Java media player, which we found during
our research through internet. JM Studio transmits and receives audio
and video in real time.
We also did research on whiteboard implementation, emotions, note
sharing. But due to lack of time we were unable to implement them in
our project.

5. Methodology
Different steps were implemented during the preparation of the
projects.
The following methods were employed for Virtual Classroom:
Sample survey: A brief research was done about the project.
Information: The required information was unruffled from
different sources like web, articles, and also from our seniors.
In depth study: Finally in depth study was made related to the
project and studied the different ways of implementing the found
resources.
Programming: After all above were done the programming was
done using high level language JAVA.
Testing and maintenance: Finally after programming was
completed testing and maintenance was done.

6. Project schedule
The schedule of the project is as follow.
The estimation of the time is as follow: ID

Task

Duration(Days) Commutative days

Choose project

10

10

Discussion

20

30

Resource collection

13

43

Proposal writing

47

Programming

20

67

70

75

preparation
6

Coding

6.1

Transmitting and
Receiving audio

6.2

Transmitting and
Receiving video

Debugging

13

88

Report writing

90

7. Literature review
7.1 JAVA
JAVA was introduced in 1995.It is a high level programming
language that connects users with information whether that information
comes from web servers, databases, information providers or any other
imaginable sources.JAVA has everything a good language, a high
quality

execution

environment

and

characteristics of JAVA are listed below:


Simple
Object oriented
Network savvy
Robust
Secure
Architecture neutral
Portable
Interpreted
High performance
Multithread
Dynamic

an

immense

library.

The

7.2 MS SQL
Microsoft SQL Server 2005 is a full-featured relational database
management system (RDBMS) that offers a variety of administrative
tools to ease the burdens of database development, maintenance and
administration. In this article, we'll cover six of the more frequently used
tools: Enterprise Manager, Query Analyzer, SQL Profiler, Service
Manager, Data Transformation Services and Books Online.
Enterprise Manager is the main administrative console for SQL Server
installations. It provides you with a graphical "birds-eye" view of all of
the SQL Server installations on your network. You can perform highlevel administrative functions that affect one or more servers, schedule
common maintenance tasks or create and modify the structure of
individual databases. Query Analyzer offers a quick and dirty method
for performing queries against any of your SQL Server databases. It's a
great way to quickly pull information out of a database in response to a
user request, test queries before implementing them in other
applications, create/modify stored procedures and execute administrative
tasks.
SQL Profiler provides a window into the inner workings of your
database. You can monitor many different event types and observe
database performance in real time. SQL Profiler allows you to capture
and replay system "traces" that log various activities. It's a great tool for

optimizing databases with performance issues or troubleshooting


particular problems.
Service Manager is used to control the MSSQL Server (the main SQL
Server

process),

MSDTC

(Microsoft

Distributed

Transaction

Coordinator) and SQL Server Agent processes. An icon for this service
normally resides in the system tray of machines running SQL Server.
We can use Service Manager to start, stop or pause any one of these
services.
Data Transformation Services (DTS) provide an extremely flexible
method for importing and exporting data between a Microsoft SQL
Server installation and a large variety of other formats. The most
commonly used DTS application is the "Import and Export Data" wizard
found in the SQL Server program group.

7.3 NETBEANS
The Net Beans IDE is open source and is written in the Java
programming language. It provides the services common to creating
desktop applications -such as window and menu management, settings
storage -- and is also the first IDE to fully support JDK 6.0 features. The
Net Beans platform and IDE are free for commercial and
noncommercial use, and they are supported by Sun Microsystems. Using
an Integrated Development Environment (IDE) for developing
applications saves you time by managing windows, settings, and data. In

addition, an IDE can store repetitive tasks through macros and


abbreviations. Drag-and-drop features make creating graphical user
interface (GUI) components or accessing databases easy, and
highlighted code and debugging features alert you to errors in your code.

7.4 Java Media Framework


Java Media Framework (JMF) is an Application Programming
Interface (API). It enables several time-based media to be added to Java
application and applets. JMF enables the development of media
streaming

and

conferencing

applications

in

Java.

(http://En.wikipedia/org/wiki/Java_Media_Framework)

7.5 Real Time Protocol


JMF contains classes that provide support for RTP (Real Time
Transport Protocol).

RTP enables the transmission and reception of real-time media


streams across the network.

RTP can be used for media-on-demand applications as well as


interactive services such as Internet telephony.

7.6 Application Programming Interface


An Application Programming Interface (API) is a library of
functions that Java provides for programmers for tasks like file transfer,
networking and data structures. The API is a reference for all predefined

10

classes provided by the Java language. This will allow the programmer
to utilize the classes into their programs. The API provides packages,
classes, methods, constants, etc.(www.roseindia.net/java/javaapi)

7.7 Java Applets


A Java applet is an applet delivered to users in the form of Java
byte code. A Java applet is a special kind of Java program that a browser
enabled with Java technology can download from the internet and run.
An applet is typically embedded inside a web page and runs in the
context of a browser. An applet must be a subclass of the
java.applet.Applet class. The Applet class provides the standard
interface between the applet and the browser environment (
http://en.wikipaedia.org/wiki/java_applet)

11

8. Feasibility analysis
To investigate and analyze the existing procedures and to
establish the key system requirements of the system feasibility study are
made before starting the project. We have proposed several alternative
solutions to meet our requirements.

8.1 Operational feasibility


This mode of operational feasibility analysis includes the operational
analysis of overall system. The system is tested under several
circumstances with varying inputs in unit approach of testing to
integrated approach of testing. The project can operate under available
environment.

8.2 Technical feasibility


Using various approaches to test the technical implementation of
project using available hardware, software, and technology it is noticed
that the project can be implemented using existing technology. Also our
system can adopt the technological upgrades as it is developed under the
considerations of software engineering principles. Moreover it uses
object oriented approach of programming which can enhance the
upgrading with new classes and modules as per requirement.

12

8.3 Economic Feasibility


Since, our system uses simple hardware components which are easily
available in market. Thus, the overall system is economically feasible to
be implemented by users.

8.4 Schedule Feasibility


The objective and principles involved in the development of the
system are well known and can be easily completed in the allocated
time. Tight schedules always help us to learn more in short period of
time. So respecting the tight schedule and considering the fixed
objectives of project it is expected to be a feasible system regarding the
schedule concerned.

13

9. System design
9.1 Architecture diagram

Teachers Computer

Students Browser

RTP Sender

RTP Player
Applet
VC Website
Web Server

Web Pages
RTP Receiver Applet
Logic Handler Servlets

DB Connector

Database

Figure 1:Architecture Diagram

14

9.2 Use Case Diagram

Registers
users

Apply for
registration

Receive audio
lectures

Provide audio
lectures

Answer
queries

Ask questions

Provide video
lectures

View videos

Figure 2:Use Case Diagram

15

9.3 Er-Diagram
Audio
Chat
Video
User
Teacher

Student
Name

Name

Password
Password
Gender

Gender

Address

Address

DOB

DOB

Email

Email

Watches

Faculty

audio

Faculty

video

16

10. Scope
Scope of Virtual Classroom is local learners to distant learners.
Virtual Classroom can be best platform for every learner due to its
immediate feedback on queries. Each student can have equal and active
participation which leads the interactive communication between
instructor and the learner. It can be a good platform for the learner who
hesitates to stand in front of mass and ask questions.
Virtual Classroom transmits real time video through webcam and
audio through microphone which help the learners to interact with
instructor directly.

17

11. Screen shot

Figure 3:Login Page

18

Figure 4:Transmission of audio and video through JM Studio

Figure 5: Displaying audio and video signal and chat in webpage

19

12.System testing
During the system testing,
Firstly, we created the new ad hoc connection for the transmission
of audio and video signals and chat between two computers.
We pinged two computers for further processes.
We transmitted audio and video signals through JM studio and
received these signals with java code.
We transmitted recorded video signal through JM studio and
received this signal with java code.
Coding for chat was done.
These signals and chat box were embedded in webpage.
For the login and sign up purpose, we created database where we
entered the details of users.
These steps were done and we received the result as we wanted.
And during the system testing, when wrong ip address was kept in the
codes than these signals werenot received in client side and message
transfer via chat between server and client is not possible. If somone
other than existing user tries to login, you are not allowed in this virtual
classroom written webpage appears.

20

13. Cost estimation


S.No Particular

Cost

1.

Core java volume 1 & 2

Rs.1760

2.

MS SQL developer edition

Rs.3528

3.

Developers

Rs.60000

salary(4*3months*Rs.5000)
4.

Project supervisor salary

Rs.15000

5.

Internet cost(3months*Rs.1788)

Rs.5364

6.

Documentation

Rs.500

7.

Extra

Rs.500

Total

Rs.86652

21

14. Conclusion
14.1 Results
Embedded media player in web page.
Audio video transmission from JM studio and received by
RTP player applet code in java by networking.
Transmitted video can be displayed in web page.
Connection of login page with DBMS.

14.2 Problem faced


Conflict during the selection of group members and topic for
the project .
JM Studio can be used only once
Restarting of computer is required for multiple use of JM
Studio
Problem in networking
Problem in Error identification

22

14.3 Conclusion
Thus, we embedded the media player in the web page. Since
this project is concerned about the transmission of video/audio
through the network interface till date we have been able to
transmit audio and video with the help of JM Studio and have been
able to receive those transmitted audios and videos by the help of
RTP player applet code. We then succeeded in displaying the
transmitted video in the web page as well. We also connected the
login page with database. We could not complete the transmission
of audio and video through java code due to lack of time. We only
added few features in this virtual classroom and we plan to add
more features in future.

23

15. Future Enhancements


There are certain incomplete parts in JBRR Virtual Classroom.
Adding and implementing additional features can complete the JBRR
Virtual Classroom.
JBRR Virtual Classroom can be further enhanced by adding
following features:
Whiteboard
Text chat
Presentation slides
Notes sharing
Emoticons like raising hands etc.

24

16. Bibliography
http://www.web-tech-india.com/software/jsp_chat.php
http://www.2000shareware.com/downloads/offline/chat/java/sourc
e/code/
http://www.sourcecodeonline.com/sources/java/applets/chat_syste
ms.html
http://www.tizag.com/mysqlTutorial/mysqltables.php
http://www.bssource.net/Decoder/Java-whiteboard-source-code2648.html
http://www.groupboard.com/products/
http://www.2000shareware.com/downloads/network/whiteboard/ja
va/code/
http://wbapplet.sourceforge.net/
http://www.javaworld.com/javaworld/jw-11-1997/jw-11-step.html
http://www.webstatschecker.com/stats/keyword/chat_using_jsp_an
d_servlet
http://codingcoding.com/JSP/Java_Chat_Application_using_JSP_a
nd_Servlets-1642.html
http://www.hotscripts.com/category/scripts/java/jsp-servlets/chatsystems/
http://www.google.com.np/#hl=ne&sugexp=ppwl&cp=42&gs_id=
4o&xhr=t&q=java+chat+application+using+jsp+and+javascript&p
f=p&sclient=psy25

ab&source=hp&pbx=1&oq=java+chat+application+using+jsp+and
+javasc&aq=0w&aqi=qw1&aql=&gs_sm=&gs_upl=&bav=cf.osb
&fp=78ce4ac5f5ea1d0c&biw=1246&bih=677
http://www.2000shareware.com/downloads/java/projects/source/co
de/for/web/application/
www.roseindia.net
www.dremincode.com
http://www.csun.edu/sociology/virexp.html
http://www.microsoft.com/sqlserver/2005/en/us/pricing.aspx
http://jolt.merlot.org/vol6no1/parker_0310.pdf
http://www.oracle.com/technetwork/java/overview-138580.html
http://www.virtual-classroom-16-.com-about.com/
http://ebookee.org/Knowledgenet-Virtual-Classroom_32469.html
www.Java.dzone.com
www.Teachandlearn.ca
www.Techi-buzz.com
www.Techcrunch.com
www.Softwaretopic.informer.com
http://www.eduunix.ccut.edu.cn/index2/html/java/Que.Special.Edi
tion.Using.Java.2.Standard.Edition.internal.eBookLiB/ch20lev1sec1.html
http://www.codeproject.com/KB/audiovideo/VoiceChatApplicationInCS.aspx

26

También podría gustarte