Online Courses
- Solution: Web-based Elearning System
- Industry: Education
- Technology Domain: Java EE Development
- Technologies Used: Java, JavaScript, HTML, SQL, XML/XSLT, JDK 1.4, Java Swing API, Java Servlet API, JSP, JavaMail API, JDBC, MySQL 4.1
One of the USA-based educational facilities decided to expand its services on the Internet and to offer online educational courses for students. The Online Courses application is used by the teaching staff of the university and offers comprehensive study materials, a range of online tests, advanced tools to track students’ achievements, a number of communication tools, and many others.
The system provides application, course & user management possibilities, has a built-in News System and Courses Calendar, and a number of modules:
- a Syllabus module,
- an E-Tests module that facilitates real-time online exams, and
- a Grade Book module with different types of graphical representations and scoring systems for instructors and students.
The Calendar and E-Tests are also available on PDA.
Development
The main goal of the project was to develop a powerful e-learning solution that would have an attractive interface and advanced functions, and would be easy to use. One of the main requirements was high performance, i.e. an ability to support a large number of users simultaneously.
Also, as a secondary goal, the software had to provide Application Service Providers possibilities (the application server had to provide online educational courses for any other organization and students). The principal requirements were light-weight and customizable web-design, multiple browsers support (incl. PDA-based) and usability.
System Highlights
- Scalable JAVA Servlet (Pages) API based architecture
- Wide range of supported browsers and operational systems (full set of well-known MAC, Linux, Windows browsers)
- User-friendly and light-weight web design, custom GUI (colors, fonts, etc.)
- Multilingual support, languages switching on the fly
- Built-in PDA browsers access (including page optimization for mobile browsers and resolutions)
Key Features
- Presentation Tool allows the instructor/teacher to create HTML-based educational presentations that comprise two kinds of materials: explanations and interactive tests. Presentation materials can include text, images, and sound files. The application has WYSIWYG design mechanisms; presentations can be exported either into HTML files viewed offline, or can be deployed to the main suite with online access for students.
- Communication Tools (Learning Chat Rooms, Message Box) enable users to post and discuss educational questions in a real-time mode. Instructors can send mail, including mass mail to all students at a time.
- Educational Features (Course Modules, Learning Oriented Maps (LOMs), Content Pages) enable instructors to visualize material and make the learning process interesting and easy. They can create and fill in online educational modules with test questions; upload ad hoc educational maps with glossaries, terms and learning questions; and import converted .doc, .pdf and .ppt files.
- Tracking and Analysis Tools (Grade Tracking System, Course Statistics & Analysis) display all modules, tests, LOMs, and Paper Tests students have taken; and are available in tables, charts and diagrams. They show how students’ grades change within a certain time period and help identify problems. The instructor can see the status of the assignments (Non-Started, In Progress, Finished, and Non-Scored) and reset scores.
- eMom Module allows tracking poor students through an advanced grade tracking and reporting system that alerts instructors about poor scores or missed e-tests to draw their attention to specific students before they fail the course. It includes a number of surveys that help to establish effective communication with these students, find out what kind of problems they have and adjust their schedule if needed.
- Auxiliary System Tools (File Converter & Log Files) facilitate the use of the system and provide capability to analyze user behavior. Instructors can convert .doc, .pdf and .ppt files into html pages with different types of content (text, images, and terminology), which can be further uploaded to the application, as well as track students’ activities, which are logged to a special file. The system also logs instructors’ activities (available under admin mode).
Technical Overview
The Online Courses is a web-based application supporting different browsers. Its architecture is based on a three-layer framework, which uses customizable JSP Tag Libraries for the presentation layer, Java and Servlet API classes for business logic, file system and MySQL for content and data storage. The implemented framework is already reused in other web-based Java applications, which proves its scalability and lower cost of integration.