Vous êtes sur la page 1sur 49

1.

Project Description

Virtual education refers to instruction in a learning environment where teacher and student are separated by time or space, or both, and the teacher provides course content through the use of methods such as course management applications, multimedia resources, the internet, and videoconferencing. Students receive the content and communicate with the teacher via the same technologies. Students in virtual education can acquire knowledge in a uni-directional manner (e.g. by studying a video, reading a textbook chapter), this would be known as asynchronous instruction. Subsequent discussions of problems, solving exercises, case studies, review questions, help the students to understand better what they learned before. The Virtual Classroom system is a web based initiative. It is highly personalized as the content provided to the student can be changed according to his/her affinities for subjects and media types. The virtual classroom represents an interface between the students and a virtual professor while providing personalized learning materials. The virtual classroom is a shared space online that enables instructors to dynamically deliver content, provide rapid feedback and guidance, and engage in a mix of testing and assessment activities. Critically, it is accessible to learners from anywhere assuming they have adequate bandwidth. Its an environment that simulates and often surpasses the physical, in-person classroom experience. Virtual classroom is a virtual learning environment created with computer network, communication and multimedia technologies. It allows teachers and students to aware each other in different location and to undertake many of the teaching learning activities of physical class environment through real-time communication. Other traditional teaching activities of distant education such as asynchronous assisting and discussion can also be carried out in the virtual classroom. It breaks through the barrier results from the back-to-back teaching mode and pays much emphasis on the real-time interaction and cooperation among teachers and students in order to share the teaching and learning workspace freely. Virtual classroom provides with lots of features that enables student to study with the help of internet. Through this application student will be able to learn various concepts with its practical implementation. Virtual classroom thus provide an virtual space for learner and to discuss various concept online.

Page 1

1.2

Purpose

A virtual classroom is a learning environment created in the virtual space. The purpose of a virtual classroom is to improve access to advanced educational experiences by allowing students and instructors to participate in remote learning communities using personal computers; and to improve the quality and effectiveness of education by using the computer to support a collaborative learning process. The explosion of the knowledge age has changed the context of what is learnt and how it is learnt the concept of virtual classrooms is a manifestation of this knowledge revolution.

Fig. 1 Virtual Classroom Functionality

Page 2

1.3

Scope of the Development Project

The concept of Virtual classroom has started gaining ground in several academic circles. The growing popularity of this concept can be attributed to its emphasize on collaborative learning based on cooperative efforts among faculty and students, active participation and interaction on the part of both students and instructors, and active sharing of new ideas and information. An important utility, which can be implemented in this project, is to integrate the classroom with a live session, similar to. Additionally, support for local area voice and video chat is also integrated in to the software. This comes handy when some concept or problem cannot be explained using text or figures.

1.4

Assumption and Constraints

1.4.1 Assumption

The user should have internet connection. Server must always run on Linux System. Each User must have unique Username and Password.
1.4.2 Constraints

This product is a web based application meant due to which a major constraint on the
performance will be due to the bandwidth of the web connection on both sides. A faster bandwidth will result in smaller time lags.

Another major constraints faced by distance learners is the absence of an Academic


faculty to guide them and answer their queries. To overcome this constraint the Virtual Classroom and Online Faculty chat sessions have been introduced in this project. 1.5 Document Overview

The Homepage gives us a glimpse of learning environment. It also provides recent Notices that are uploaded by the administrator. It contains the links to different pages, login section and overview of virtual classroom. Login section is for the students, faculties or the administrator, so that they can register themselves with the software. The project also provides a student bulletin board so that they can discuss on any perspective topic, they can download different materials for their studies. Also the facility to upload and download notes is made available. Any users can edit their information after login.

Page 3

The delivery of Introductory courses of Computer Technology through virtual classroom [1] Technological advances in education are contributing to a broaden list of alternative to meet the needs of the divergent student population. Televised and computerized media are allowing a continually-growing number of distant students to take better advantage of a diversified collection of educational opportunities. Efforts must be geared towards maintaining a reasonably consistent learning environment and achieving parity with on-campus programs. The delivery of competent instruction beyond pre-taped lecturing and electronic discussions is an area that must be addressed. Web - Based Virtual Classroom [2] In this study, an agent based Virtual Classroom defined within the Virtual University is presented. A set of agents of the same type is responsible for handling different users and their requests. The classroom represents an interact between the students and a virtual professor and should provide personalized learning materials. The .Virtual Classroom system is web based and its usage is intuitive, although the content provided to students, changes accordingly to its affinities for subjects and media types.

Interrelated Components of Virtual Classroom to Achieve Model for Teaching Practice [3] Extension of the application of teaching methods on the Internet is a new challenge for higher education institutions in IT intensive education. As practical realizations of teaching programs, virtual classroom are in the focus. The authors of this paper studied the possibilities and difficulties of introduction of model based distance learning in higher education practice. They survey some important issues and methodological elements of virtual classrooms in comparison with demands for teaching, procedures, programs, and materials. The main objective is to reveal specific circumstances that allow definition of modeled objects appropriate for course modeling. In this paper, an analysis of application of predefined virtual classroom features introduces a primary methodology. Following this, course on the Internet is discussed including local and global extent of education. Then virtual methods are analyzed for the practice considering one of the published virtual classroom models. Finally, possibilities for implementation of virtual classroom model are concluded.

Page 4

Virtual Classroom Discussions versus Traditional Classroom Discussion [5] The author of this paper designs, develops, and teaches online courses. This paper examines the students' constructive sociocultural interaction in which learning occurs. This paper compares the classroom discussions in virtual and traditional classrooms and analyses the virtual communication in greater detail according to their content. A virtual classroom interface for student participation measurement [4] The aim of this paper is to describe the methodology employed in the construction of a virtual classroom tool based on a collaborative learning interface, also able to analyze and measure users data for assessing the application performance and evaluating the level of students participation in the proposed e-learning model. The future target will be based on the comparison of the results obtained during the experimentation phase for studying the best way to create a personalized learning path. An Instructor-Oriented Prototype System for Virtual Classroom [6] Providing lifelong education through distance education system has become one of the most important roles in higher education. But currently fewer systems can provide one good teaching environment for the instructor to know the feedback from learners and conduct the evaluation of their learning process in real time. It is difficult for the instructor to instantly adjust his lesson during class. In order to provide one face-to-face teaching environment for the instructor, the paper proposes one instructor-oriented interactive prototype system. The prototype may provide one virtual classroom, just like one traditional classroom. The instructor may instantly know who is engaged, who is distracted. In order to improve the teaching & learning efficiency and learners interests, the problem-based teaching technology is also introduced. Moreover, the shared electronic board will be provided for all participants, which will improve the freedom of teaching and learning. Before deciding scope for our project, we have studied many existing virtual classrooms. This study helped us lot for knowing the various features of virtual classroom. HP, IBM Lotus, Blackboard virtual classrooms are some virtual classrooms used worldwide. We have studied each virtual classroom and noticed some special features of them that are listed as follows: IBM Lotus Virtual Classroom

Page 5

2.1.1 Snapshots

Fig. 2.1 IBM Virtual Classroom Participant Interface 2.1.2 Features The features of IBM Lotus Virtual Classroom can be listed as: IBM Lotus virtual classroom supports real time Audio as well as Video. Virtual classroom sessions can be recorded. The sessions can then be replayed as if they are videos. Learners or instructors can replay a session at any time after the session has finished. The Outline function allows the teacher to define the agenda of the virtual classroom session. The outline is usually defined before the start of the meeting. The presenter can send Web pages to class participants. This results in a new browser window opening on each person machine. Participants can then independently view the Web page and navigate through it. Breakout sessions allows presenter to divide the participants into groups to discuss a specific topic or to work on a group assignment. After participants have entered the breakout session, it is as if they are in a different room.

Page 6

2.1.3 Comments IBM virtual classroom has many useful features such as outline, screen-sharing, breakout rooms that add greater interactivity between presenter and participants. One can use its license copy or can buy it, which costs lot. Also if user wants to add more functionality from his end, he is not able to do so. 2.2 Common Features of virtual classroom We can extract the following common features of Virtual classroom from the above systems studied: Directing Messaging among participants or between presenter and participants is possible using chat feature in virtual classroom. Audio and Video can be used in session. Using audio, presenter can deliver voice-based lectures in a classroom. Shared whiteboard, are used by instructors and students to view images, presentations, or other application. Resource sharing is possible between presenter and participants. Presenter uploads files (notes) to the session. Participants at their end can download these resources. Presenter creates polls. These polls are useful for presenter to get feedback from participants. Virtual hands up, to indicate that participant has questions to ask. When participant does his hands up, presenter can chat with him.

Page 7

Objective: - To design a web-application for learning through which student and instructor can interact via synchronous and asynchronous means of communication.

Or To develop a tool that represents interaction between the students and a virtual professor and should provide personalized learning materials. Description: - The virtual classroom enhances the present education system by developing interactive web-services that can be used to conduct real time quizzes, interactive sessions. Individual student can easily analysis oneself and can improve in ones education. Other features include quick attendance, and generating grade reports reducing work load of professionals.

Page 8

SYSTEM REQUIREMENTS

HARDWARE REQUIREMENTS Server Specification


Server: - Server Class System

Client Specification
Processor: - Pentinum IV or above Hard Disk: - 40 GB RAM: - 512 MB

SOFTWARE REQUIREMENTS Server Specification


Operating System: - Windows 2003 Server Application Server: - Apache Tomcat 5.0 and Above Database: - MySQL Server 5.0

Client Specification
Operating System: - Windows-XP, Linux Browser Specification: - IE- +5.0 & above, Chrome, Mozilla

Page 9

SYSTEM ANALYSIS
4.1 Introduction After analyzing the requirements of the task to be performed, the next step is to analyze the problem and understand its context. The first activity in the phase is studying the existing system and other is to understand the requirements and domain of the new system. Both the activities are equally important, but the first activity serves as a basis of giving the functional specifications and then successful design of the proposed system. Understanding the properties and requirements of a new system is more difficult and requires creative thinking and understanding of existing running system is also difficult, improper understanding of present system can lead diversion from solution. 4.2 Analysis Model The model that is basically being followed is the INCREMENTAL MODEL, which combines elements of the linear sequential model with the iterative philosophy of prototyping. First of all the feasibility study is done. Once that part is over the requirement analysis and project planning begins. If system exists one and modification and addition of new module is needed, analysis of present system can be used as basic model. The design starts after the requirement analysis is complete and the coding begins after the design is complete. Once the programming is completed, the testing is done. In this model the sequence of activities performed in a software development project are: Requirement Analysis Project Planning System design Detail design Coding Unit testing System integration & testing

Page 10

End of the phase and the output of one phase is the input of other phase. The output of each phase is to be consistent with the overall requirement of the system. Some of the qualities of spiral model are also incorporated like after the people concerned with the project review completion of each of the phase the work done. INCREMENTAL MODEL was being chosen because all requirements were known beforehand and the objective of our software development is the computerization/automation of an already existing manual working system and further enhancement on the project need to be done after basic model.

Fig 5.1: Incremental Model

Page 11

Phases Involved in INCREMENTAL MODEL Communicated Requirements (Analysis Phase) It consists of planning and requirement definition activities. The end products of planning are: a. System Definition:It is expressed in English. Ti incorporates charts, figures, graphs, tables, etc. The notations used here are highly dependent on problem area. b. Project Plan:It contains the life-cycle model to be used at the beginning of development schedule, beginning cost estimates and resource estimates, tools and techniques to be used and standard practice to be followed. There are two types of designing techniques followed in designing phase:i. Architectural Designing Identifies various software components like functions data streams, data source. Decouples and decomposes software components into modules and conceptual data structures. Specifies the inter connections between various software components. ii. Detailed Debugging It is concerned with detail designing and implementation procedures to process the algorithm, structure and interconnection between the modules and data structures. The various activities that this phase includes are: Adaption of the existing codes. Modification of existing codes. Design of data representation. Packaging of software products.

Page 12

Implementation Phase It involves the translation of the designing specifications into source code. It involves activity such as debugging, documentation and unit testing of source code. In this stage, various programming can be followed like built in and user defined data types, source type checking, flexible rules, concurrency construction.

System Testing Phase It involves two activities:i. Integration: - It involves testing by integrating various modules and testing overall performance due to integration. ii. Acceptance: - It involves planning and execution of various types of test in order to demonstrate that the implemented software systems satisfy the requirement stated in requirement document. Maintenance Phase In this phase the activities include: i. Corrective maintenance: - Correcting errors that were not discovered during the product development phase. ii. Perfective Maintenance: - Improving the implementation of the system and enhancing the functionality of the system according to customers requirements. iii. Adaptive Maintenance: - Adaptation of software to new processing environment.

This software is to be prepared using JavaServerPages and the back end used is MySQL. In this software different pages will be prepared individually using different constraints. Three types of user rights are given: Administrator, Student and Faculty.

Page 13

Front-End
Java can be defined as a simple, object oriented language distributed, interpreted, robust, and secure, architecture neutral, portable, high performance, multithreaded and dynamic language. Characteristics include: SIMPLE: Java is truly a simple language with syntax similar to that of C++ except that some of the esoteric features of C++ such as pointer were dropped. SECURE: Java programs are downloaded from the servers where they reside and executed on the client machine. Since their program can reside on the Internet, there is a cautious of viruses and other threats. The java runtime environment, simply does not execute any code that comes across, it verifies the integrity of the code. If it feels that the code is not safe, then code is rejected. PORTABLE: Many types of computer and operating systems are in use through-out the world and are connected to the Internet. For program to be dynamically downloaded to all the various types of platforms connected to the Internet, some means of generating portable executable code is needed. ROBUST: The multiplatformed environment of the Web places extraordinary demands on a program, because the program must execute reliably in a variety of systems. Thus, the ability to create robust programs was given a high priority in the design of Java. OBJECT ORIENTED: Java requires everything to be object oriented every class in java directly or indirectly descended from the super class of all classes the object class. HIGH PERFORMANCE: Although the java runtime environment is interpreted and every technique is slow. The just in time compliers give us performance to that of native C/ C++ code. MULTITHREADED: Java was designed to meet the real-world requirement of creating interactive, networked programs. To accomplish this, Java supports multithreaded programming, which allows you to write programs that do many things simultaneously. The Java run-time system comes with an elegant yet sophisticated solution for multiprocess synchronization that enables you to construct smoothly running interactive systems. DISTRIBUDED: Java is designed in a way to run across the network; hence it has extensive TCP/IP and HTTP capabilities. Though Java was primarily used as the web language, it is an excellent substitute for C++ in corporate platforms also; Java is highly dynamic compared to other software. JAVA AND INTERNET: Java is strongly associated with the Internet. Internet users can use java to create applet program and run them locally using java enabled browser. They can also use a

Page 14

java-enabled to download an applet located on a computer anywhere in the Internet and run it on a local computer. In fact java applets have made the Internet a true extension of the storage system of the local computers. JSP (JAVA SERVER PAGES) JavaServer Pages (JSP) technology is the Java platform technology for delivering dynamic content to web clients in a portable, secure and well-defined way. The JavaServer Pages specification extends the Java Servlet API to provide web application developers with a robust framework for creating dynamic web content on the server using HTML, and XML templates, and Java code, which is secure, fast, and independent of server platforms. JSP has been built on top of the Servlet API and utilizes Servlet semantics. JSP has become the preferred request handler and response mechanism. Although JSP technology is going to be a powerful successor to basic Servlets, they have an evolutionary relationship and can be used in a cooperative and complementary manner. Servlets are powerful and sometimes they are a bit cumbersome when it comes to generating complex HTML. Most servlets contain a little code that handles application logic and a lot more code that handles output formatting. This can make it difficult to separate and reuse portions of the code when a different output format is needed. For these reasons, web application developers turn towards JSP as their preferred servlet environment.

Java's Role for Server Applications


Sun Microsystems, having consulted many expert partners from other related IT industries, has come out with a number of open APIs for the technologies and services on server side. This collection of APIs is named as Java 2 Enterprise Edition (J2EE). The J2EE specification provides a platform for enterprise applications, with full API support for enterprise code and guarantees of portability between server implementations. Also it brings a clear division between code which deals with presentation, business logic and data. The J2EE specification meets the needs of web applications because it provides: 1. Rich interaction with a web server via servlets and built-in support for sessions available in both servlets and EJBs. 2. The use of EJBs to mirror the user interaction with data by providing automatic session and transaction support to EJBs operating in the EJB server. 3. Entity EJBs to represent data as an object and seamless integration with the Java data access APIs

Page 15

This family of APIs means that the final web page can be generated from a user input request, which was processed by a servlet or JSP and a session EJB, which represents the user's session with the server, using data extracted from a database and put into an entity EJB. Thus, the Java revolution of portable code and open APIs is married with an evolution in existing products such as database, application, mail and web servers. The wide availability of products to run Java applications on the server has made this a fast-moving and very competitive market, but the essential compatibility through specifications, standard APIs and class libraries has held. This makes server-side Java a very exciting area.

JSP Architecture
There are two basic ways of using the JSP technology. They are the client/server (page-centric) 2tier approach and the N-tier approach (dispatcher). The Page-Centric Approach Applications built using a client-server (2-tier) approach consist of one or more application programs running on client machines and connecting to a server-based application to work. With the arrival of Servlets technology, 2-tier applications could also be developed using Java programming language. This model allows JSPs or Servlets direct access to some resource such as database or legacy application to service a client's request. The JSP page is where the incoming request is intercepted, processed and the response sent back to the client. JSPs differ from Servlets in this scenario by providing clean code, separating code from the content by placing data access in EJBs. Even though this model makes application development easier, it does not scale up well for a large number of simultaneous clients as it entails a significant amount of request processing to be performed and each request must establish or share a potentially scarce/expensive connection to the resource in question. Page-view - This basic architecture involves direct request invocations to a server page with embedded Java code, and markup tags which dynamically generate output for substitution within the HTML. This approach has been blessed a number of benefits. It is very straightforward and is a low-overhead approach from a developerment perspective. All the Java code may be embedded within the HTML, so changes are confined to a very limited area, reducing complexity drastically. The big trade-off here is in the level of sophistication. As the scale of the system grows, some limitations begin to surface, such as bloating of business logic code in the page instead of factoring forward to a mediating Servlet or factoring back to a worker bean. It is a fact that utilizing a Servlet and helper beans helps to separate developer roles more cleanly and improves the potential for code reuse.

Page 16

The Dispatcher Approach In this approach, a Servlet or JSP acts as a mediator or controller, delegating requests to JSP pages and JavaBeans. There are three different architectures. They are mediator-view, mediatorcomposite view and service to workers. In an N-tier application, the server side of the architecture is broken up into multiple tiers. In this case, the application is composed of multiple tiers, where the middle tier, the JSP, interacts with the back end resources via another object or EJBs component. The Enterprise JavaBeans server and the EJB provide managed access to resources, support transactions and access to underlying security mechanisms, thus addressing the resource sharing and performance issues of the 2-tier approach. Front end JSPs or Servlets manage application flow and business logic evaluation. They act as a point to intercept the HTTP requests coming from the users. They provide a single entry point to an application, simplifying security management and making application state easier to maintain. Presentation JSPs or Servlets generate HTML or XML with their main purpose in life being presentation of dynamic content. They contain only presentation and rendering logic. These categories resemble to the Modal-View design pattern, where the front-end component is the model and the presentation component the view. In this approach, JSPs are used to generate the presentation layer and either JSPs or Servlets to perform process-intensive tasks.

Benefits of JSP
One of the main reasons why the JavaServer Pages technology has evolved into what it is today and it is still evolving is the overwhelming technical need to simplify application design by separating dynamic content from static template display data. Another benefit of utilizing JSP is that it allows to more cleanly separating the roles of web application/HTML designer from a software developer. The JSP technology is blessed with a number of exciting benefits, which are chronicled as follows: 1. The JSP technology is platform independent, in its dynamic web pages, its web servers, and its underlying server components. That is, JSP pages perform perfectly without any hassle on any platform, run on any web server, and web-enabled application server. The JSP pages can be accessed from any web server. 2. The JSP technology emphasizes the use of reusable components. These components can be combined or manipulated towards developing more purposeful components and page design. This definitely reduces development time apart from the At development time, JSPs are very different from Servlets, however, they are precompiled into Servlets at run time.

Page 17

MySQL

What is a Database? A database is a structure that comes in two flavors: a flat database and a relational database. A relational database is much more oriented to the human mind and is often preferred over the gabble-de-gook flat databases that are just stored on hard drives like a text file. MySQL is a relational database. MySQL is a powerful database. It's very good and free of charge. Advantages: 1. Scalability and Flexibility The MySQL database server provides the ultimate in scalability, sporting the capacity to handle deeply embedded applications with a footprint of only 1MB to running massive data warehouses holding terabytes of information. Platform flexibility is a stalwart feature of MySQL with all flavors of Linux, UNIX, and Windows being supported. And, of course, the open source nature of MySQL allows complete customization for those wanting to add unique requirements to the database server. 2. High Performance A unique storage-engine architecture allows database professionals to configure the MySQL database server specifically for particular applications, with the end result being amazing performance results. Whether the intended application is a high-speed transactional processing system or a high-volume web site that services a billion queries a day, MySQL can meet the most demanding performance expectations of any system. With high-speed load utilities, distinctive memory caches, full text indexes, and other performance-enhancing mechanisms, MySQL offers all the right ammunition for today's critical business systems.

Page 18

3. High Availability Rock-solid reliability and constant availability are hallmarks of MySQL, with customers relying on MySQL to guarantee around-the-clock uptime. MySQL offers a variety of high-availability options from high-speed master/slave replication configurations, to specialized Cluster servers offering instant failover, to third party vendors offering unique high-availability solutions for the MySQL database server. 4. Robust Transactional Support MySQL offers one of the most powerful transactional database engines on the market. Features include complete ACID (atomic, consistent, isolated, durable) transaction support, unlimited rowlevel locking, distributed transaction capability, and multi-version transaction support where readers never block writers and vice-versa. Full data integrity is also assured through serverenforced referential integrity, specialized transaction isolation levels, and instant deadlock detection. 5. Web and Data Warehouse Strengths MySQL is the de-facto standard for high-traffic web sites because of its high-performance query engine, tremendously fast data insert capability, and strong support for specialized web functions like fast full text searches. These same strengths also apply to data warehousing environments where MySQL scales up into the terabyte range for either single servers or scale-out architectures. Other features like main memory tables, B-tree and hash indexes, and compressed archive tables that reduce storage requirements by up to eighty-percent make MySQL a strong standout for both web and business intelligence applications. 6. Strong Data Protection Because guarding the data assets of corporations is the number one job of database professionals, MySQL offers exceptional security features that ensure absolute data protection. In terms of database authentication, MySQL provides powerful mechanisms for ensuring only authorized users have entry to the database server, with the ability to block users down to the client machine level being possible. SSH and SSL support are also provided to ensure safe and secure

Page 19

connections. A granular object privilege framework is present so that users only see the data they should, and powerful data encryption and decryption functions ensure that sensitive data is protected from unauthorized viewing. Finally, backup and recovery utilities provided through MySQL and third party software vendors allow for complete logical and physical backup as well as full and point-in-time recovery. 7. Comprehensive Application Development One of the reasons MySQL is the world's most popular open source database is that it provides comprehensive support for every application development need. Within the database, support can be found for stored procedures, triggers, functions, views, cursors, ANSI-standard SQL, and more. For embedded applications, plug-in libraries are available to embed MySQL database support into nearly any application. MySQL also provides connectors and drivers (ODBC, JDBC, etc.) that allow all forms of applications to make use of MySQL as a preferred data management server. It doesn't matter if it's PHP, Perl, Java, Visual Basic, or .NET MySQL offers application developers everything they need to be successful in building databasedriven information systems. 8. Open Source Technology Many corporations are hesitant to fully commit to open source software because they believe they can't get the type of support or professional service safety nets they currently rely on with proprietary software to ensure the overall success of their key applications. The questions of indemnification come up often as well. These worries can be put to rest with MySQL as complete around-the-clock support as well as indemnification is available through MySQL Network. MySQL is not a typical open source project as all the software is owned and supported by MySQL AB, and because of this, a unique cost and support model are available that provides a unique combination of open source freedom and trusted software with support.
9. Management Ease

MySQL offers exceptional quick-start capability with the average time from software download to installation completion being less than fifteen minutes. This rule holds true whether the platform is

Page 20

Microsoft Windows, Linux, Macintosh, or UNIX. Once installed, self-management features like automatic space expansion, auto-restart, and dynamic configuration changes take much of the burden off already overworked database administrators. MySQL also provides a complete suite of graphical management and migration tools that allow a DBA to manage, troubleshoot, and control the operation of many MySQL servers from a single workstation. Many third party software vendor tools are also available for MySQL that handle tasks ranging from data design and ETL, to complete database administration, job management, and performance monitoring.

ADVANTAGES OF RDBMS Redundancy can be avoided Inconsistency can be eliminated Data can be Shared Standards can be enforced Security restrictions can be applied Integrity can be maintained Conflicting requirements can be balanced Data independence can be achieved.

DISADVANTAGES OF DBMS A significant disadvantage of the DBMS system is cost. In addition to the cost of purchasing of developing the software, the hardware has to be upgraded to allow for the extensive programs and the workspace required for their execution and storage. While centralization reduces duplication, the lack of duplication requires that the database be adequately backed up so that in case of failure the data can be recovered.

Page 21

ER Diagrams
An ERD is a model that identifies the concepts or entities that exist in a system and the relationships between those entities. An ERD is often used as a way to visualize a relational database: each entity represents a database table, and the relationship lines represent the keys in one table that point to specific records in related tables. ERDs may also be more abstract, not necessarily capturing every table needed within a database, but serving to diagram the major concepts and relationships. This ERD is of the latter type, intended to present an abstract, theoretical view of the major entities and relationships needed for management of electronic resources. It may assist the database design process for an e-resource management system, but does not identify every table that would be necessary for an electronic resource management database. The ERD presents a visual representation of e-resource management concepts and the relationships between them. The Data Element Dictionary identifies and defines the individual data elements that an e-resource management system must contain and manage, but leaves the relationship between the elements to be inferred by the reader.

Entities Entities are equivalent to database tables in a relational database, with each row of the table representing an instance of that entity.

Relationships Relationships are represented by lines between entities. Relationship lines indicate that each instance of an entity may have a relationship with instances of the connected entity, and vice versa.

Page 22

Fig. 5.2 E-R Diagram

Page 23

Data Flow Diagram


A data flow diagram is graphical tool used to describe and analyze movement of data through a system. These are the central tool and the basis from which the other components are developed. The transformation of data from input to output, through processed, may be described logically and independently of physical components associated with the system. These are known as the logical data flow diagrams. The physical data flow diagrams show the actual implements and movement of data between people, departments and workstations. A full description of a system actually consists of a set of data flow diagrams. Using two familiar notations Yourdon, Gane and Sarson notation develops the data flow diagrams. Each component in a DFD is labeled with a descriptive name. Process is further identified with a number that will be used for identification purpose. The development of DFDS is done in several levels. Each process in lower level diagrams can be broken down into a more detailed DFD in the next level. The lop-level diagram is often called context diagram. It consists a single process bit, which plays vital role in studying the current system. The process in the context level diagram is exploded into other process at the first level DFD. The idea behind the explosion of a process into more process is that understanding at one level of detail is exploded into greater detail at the next level. This is done until further explosion is necessary and an adequate amount of detail is described for analyst to understand the process. Larry Constantine first developed the DFD as a way of expressing system requirements in a graphical from, this lead to the modular design. A DFD is also known as a bubble Chart has the purpose of clarifying system requirements and identifying major transformations that will become programs in system design. So it is the starting point of the design to the lowest level of detail. A DFD consists of a series of bubbles joined by data flows in the system.

Page 24

DFD SYMBOLS: In the DFD, there are four symbols 1. A square defines a source(originator) or destination of system data 2. An arrow identifies data flow. It is the pipeline through which the information flows 3. A circle or a bubble represents a process that transforms incoming data flow into outgoing data flows. An open rectangle is a data store, data at rest or a temporary repository of data

CONSTRUCTING A DFD:

Several rules of thumb are used in drawing DFDS: 1. Process should be named and numbered for an easy reference. representative of the process. 2. The direction of flow is from top to bottom and from left to right. Data traditionally flow from source to the destination although they may flow back to the source. One way to indicate this is to draw long flow line back to a source. An alternative way is to repeat the source symbol as a destination. Since it is used more than once in the DFD it is marked with a short diagonal. Each name should be

Page 25

3. When a process is exploded into lower level details, they are numbered. 4. The names of data stores and destinations are written in capital letters. Process and dataflow names have the first letter of each work capitalized

A DFD typically shows the minimum contents of data store. Each data store should contain all the data elements that flow in and out. Questionnaires should contain all the data elements that flow in and out. Missing interfaces redundancies and like is then accounted for often through interviews.

SAILENT FEATURES OF DFDS 1. The DFD shows flow of data, not of control loops and decision are controlled considerations do not appear on a DFD. 2. The DFD does not indicate the time factor involved in any process whether the dataflow take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD.

Page 26

Fig. 5.3 Context Level-0 DFD

Page 27

Fig. 5.4 Context Level-1 DFD

Page 28

Fig 5.5 Level-2 DFD (Login Process)

Fig 5.6 Level-2 DFD (Question Bank)

Page 29

Fig 5.7 Sequence Diagram of Home-page

Fig 5.8 Sequence Diagram after User Login

Page 30

FLOW DIAGRAM

Figure 5.9:- Illustrating the initial page setup asking for their login-Id

Figure 5.10:- Illustrating the accessibility of Instructor

Page 31

Figure 5.11: Flowchart illustrating the different categories of quiz bank along with their Process

Page 32

Screenshot 1:- Home Page

Page 33

Screenshot 2:- Learning Methodology Page

Page 34

Screenshot 3:- Learning Methodology Page

Page 35

Screenshot 4:- Profile Page

Page 36

Screenshot 5:- Uploading File

Page 37

Screenshot 6:- Course Adaptation Page

Page 38

Screenshot 7:- Assessment Test Module

Page 39

Screenshot 8:- Discussion Room Page

Page 40

Screenshot 9:- Student/ Faculty Page

Page 41

Screenshot 10:- Administrative Page

Page 42

Table 1: User Registration

Table 2: User Login

Table 3: Edit Profile (General)

Page 43

Table 4: Edit Profile (Education)

Table 5: Edit Profile (Contact Details)

Table 6: Edit Profile (Others)

Table 7: Edit Profile (Photo)

Page 44

Table 8: Media Library

Table 9: Course Details

Table 10: Quiz Details

Table 11: Quiz Question Details


Page 45

Table 10: Assignment Detail

Table 11: Compose Mail

Table 12: Feedback

Page 46

CONCLUSION

Implementation of Online Learning Environment through Virtual Classroom Paradigm thus basically helps the users in their learning process. It helps the users to interact with any instructors through web via synchronous and asynchronous means of communication. The main objective of this work is to develop an application that helps the users by providing a virtual space for learning and providing information about the various technologies change and also saving their precious time.

THE PROJECT PROVIDES THE FOLLOWING FUNCTIONALITIES: Registration for multiple courses. Upload and Download of various assignments, journals, videos Real-time collaboration among users via chat rooms Asynchronous communications in the form of E-mails, discussion board that enable the communication to occur at convenient time that suit student schedules. Users (Students) can takes up various quizzes which are designed by different instructor which can help them to realize their inbuilt talents in various fields

Page 47

FUTURE SCOPE

The growing popularity of this concept can be attributed to its emphasize on collaborative learning based on cooperative efforts among faculty and students, active participation and interaction on the part of both students and instructors, and active sharing of new ideas and information.
In the future enhancements could be made to the project by increasing the number of functionalities in the project or enhancing the existing functionalities in the project itself.

Some of the future enhancements that could be made are listed below:

Addition of Live Session, thus increasing user interactivity and also integrating whiteboard for better understanding of a particular concepts taught by instructor. Utilization of the resources by Cloud Computing. At present, the files can be saved for limited time period and can be erase after sometimes. In the future, enhancements could be made to increase in the data retention period for Media Library. Addition of a Messaging Service for sending messages for the users. Addition of a customization

Page 48

BIBLIOGRAPHY

Papers Reviewed: The delivery of Introductory courses of Computer Technology through virtual
classroom by Fadi P. Deek, Maura A. Deek, and Howard Kimmel

Web - Based Virtual Classroom by Vladimir Trajkovic, Danco Davcev, Goran


Kimovski and Zaneta Petanceska

Interrelated Components of Virtual Classroom to Achieve Model for Teaching Practice by Gyula Kartyas and Jozsef Gati A virtual classroom interface for student participation measurement by Vincenzo Di Lecce, Alessandro Quarto and Antonella Giove

Virtual Classroom Discussions versus Traditional Classroom Discussion by Beate


Baltes

Websites Referred: http://www.moodle.org http://ocw.mit.edu/index.html http://www.ibm.com/VirtualClassroom http://www.scdl.net/scdl/

Books Referred: JavaServerPages by The Complete Reference Java by Herbert Schildt Database System Concepts by Silberschatz, Korth, Sudharshan

Page 49

Vous aimerez peut-être aussi