The Electronic Classroom (EClass) Tool is a desktop program that is set to be deployed in Computer Science/Engineering classrooms here at Cal Poly with possible plans to be implemented for other subjects and classrooms. The program will open in a full-screen window and have a different (but highly similar) view for the user depending on if the user is a presenter or student. Presenters will also have access to features students will not and vice versa such as kicking a student and viewing the roster as a presenter. The main window will contain the whiteboard and lecture presentation. All other tools such as the drawing tools pane and layer manager pane can be accessed from the menu bar. Presenters are able to open pre-made lectures and turn them into slides using the EClass program or they may create a new one from scratch. Other major presenter operations include: saving/exporting a presentation, changing student drawing permissions, record audio/video of a presentation, and drawing on a presentation. Major student operations include: drawing on a presentation, sharing drawing layers with the presenter, messaging other students through the forum, and asking questions to the presenter.
Because EClass is, essentially, an extension of many existing presentation tools
available, its unique features are what define it. And while these features add
to the entirety of the EClass experience, many of them may be a difficult for
the implementation team, whether it be because of technical or time constraint
difficulties.
One these features will be the video and audio feed for remote students.
The main difficulty here will be being able to sync both feeds so that there is
no audio delay when the student is viewing the video feed. The best the team can
hope for will be a built in library for their language of choice that already
supports audio and video as well as syncing of the two, rather than trying
to implement audio and video themselves.
Another feature is the layer manager, a much more core feature to the EClass in
comparison to the remote student feed. The layer manager must support the
ability to add, remove, and edit all objects to be shown on the current
whiteboard dynamically. This is the most graphically intensive part of the
project and the team will most likely end up using a graphics library. The
difficulty lies in being able to render objects on top, behind, and in between
of each other because of the stack nature of the layers.