Education Design Documentation
by Caroline Meeks and Tzu-Mainn Chen
I. Essentials
II. Introduction
This package configures the ACS to meet the needs of an educational community such as a university. It is not a standalone module, but rather a tool for integrating the ACS to solve a particular set of problems. The result is a fully configured ACS installation called the ACES - the ArsDigita Community Education Solution.
This is accomplished by creating the following user groups types:
- Departments
- Classes
- Communities (ie clubs, interest groups etc)
The ACES essentially creates an intranet for the university. A brief list of the problems solved include:
- Management of class student and staff lists
- Shared group Calendars
- Document distribution
- Communication via email (spam), Announcements(news), Bulletin Boards (threaded bboard).
The Education Solution relies heavily on the use of portals to provide user and class centric views and customization.
Please also refer to the ASJ article for more details on system capabilities and future design objectives.
III. Historical Considerations
The Education Module was originally written by Randy Graebner and Aileen Tang for their Master's Thesis (June 2000) in Computer Science at the Massachusetts Institute of Technology (MIT). The education module was first release by ArsDigita in ACS 3.2 in March 2000. Over the summer of 2000 ArsDigita collaborated with the Sloan School of Management to create the ArsDigita Community Education Solution (ACES) for use in a pilot to support 8 classes at Sloan in the fall of 2000.
Differences between the Education Module and ACES.
The education module was written using ACS to support the IT needs of a university. Services not provided by the current version of ACS were written and included in the education module, making it one of the largest in ACS 3.2. When work on education was brought in house, ArsDigita was able to improve other modules (such as Calendar and Portals) so that they could provide services to education, thus the education package itself needs to have far less code.
In addition, this specific version of ACES was developed in collaboration with Sloan to meet their specific needs. Emphasis was given to usability and quality control on the features needed for Sloan rather than having the widest range of features. The data model developed by Mr. Graebner and Ms. Tang to meet the needs of a wide range of institutions is still in place but the interface and coding work has concentrated on the specific needs of Sloan. Features that were included in the original module but not implemented in the upgrade should be relatively easy to reimplement in future versions.
IV. Competitive Analysis
The table below provides a high level feature by feature comparison. If a feature is not currently part of ACES the table indicates which ACS module could be integrated and/or enhanced to provide the functionality. The main non-feature related advantages of ACES are:
- Open-source
- Basic system is free of charge
- Proven architecture, easily extendible
- Robust Dynamic Publishing Systems and Content Management/File Storage
- Supported by world's top developers
- No ongoing licensing fees
DEVELOPMENTAL FEATURES |
ACS Education Solution |
Black Board |
WebCT |
Content format will allow for simple transfer to/from another vendor's platform |
Y |
Y |
|
Platform uses open data standard so that it can communicate with existing university database applications |
Y |
Y |
|
Content can be authored on PCs running Windows 95/98/NT |
Y |
Y |
Y |
Content can be authored on Macs running OS 7.5 or greater |
Y |
Y |
Y |
Courses can be taken using a PC running Windows 95/98/NT |
Y |
Y |
Y |
Courses can be taken using a Macintosh running OS 7.5 or greater |
Y |
Y |
Y |
Platform provider is supportive of implementing IMS standard within product |
Y |
Y |
Y |
Platform provider is supportive of implementing AICC standards within product |
Y |
Y |
|
Platform utilizes standard HTML for content creation |
Y |
Y |
Y |
Platform is structured so students can view all of their current courses when they log on |
Y |
Y |
Y |
Platform's server software will run on DEC Unix |
Y |
Y |
Y |
Platform's server software will run on Windows NT |
Y |
Y |
|
Multiple choice questions can be created\scored with platform's authoring software |
Survey |
Y |
Y |
True\False questions can be created\scored with platform's authoring software |
Survey |
Y |
Y |
Matching questions can be created\scored with platform's authoring software |
Survey |
Y |
Y |
Short answer questions can be created\scored with platform's authoring software |
Survey |
Y |
Y |
Essay questions can be created\cored with platform's authoring software |
Survey |
Y |
Y |
Platform supports question database for management of test questions |
Survey |
Y |
|
Platforms supports reporting features for test questions |
Survey |
Y |
|
Platform supports Microsoft Internet Explorer 4.x and newer browsers |
Y |
Y |
Y |
Platform supports testing stage for courses to debugged before making them live to students |
Y |
Y |
Y |
Platform allows author to view course as student without logging out |
Y |
Y |
Y |
Platform has built-in threaded discussion list capabilities |
Y |
Y |
Y |
Platform has built-in chat capabilities |
Y |
Y |
Y |
Platform can be integrated with Real networks video and audio products |
|
Y |
Y |
Platform can be integrated with Macromedia Shockwave products |
|
Y |
Y |
Vendor provides development services |
v |
v |
|
Management component will create reports for tracking student progress |
Survey |
Y |
|
Operates without java script for improved cross browser compatibility and ease of use for visually disabled users. |
Y |
|
|
Platform has a feature to import existing test questions in a tab-delimited format |
Survey |
Y |
|
INSTRUCTOR TOOLS |
ACS |
Black Board |
WebCT |
Course planning |
Y |
Y |
Y |
Course managing |
Y |
Y |
Y |
Fast course revising |
Y |
Y |
|
Course monitoring |
Y |
Y |
|
Instructional designing |
|
Y |
Y |
Presenting information |
Y |
Y |
Y |
On-line testing |
Survey |
Y |
Y |
On-line presentation creation |
Wimpy Point |
|
|
On-line grading |
Y |
Y |
Y |
Managing records |
Y |
Y |
|
No HTML knowledge required |
Y |
Y |
|
Customization of student curriculum |
Y |
|
|
Student tracking |
Y |
Y |
|
Automated grading |
Y |
Y |
|
Level of control over design |
Display |
Y |
|
Instructor can assign specific course material to individual or group of students |
Sections |
Y |
|
Multiple choice self test tutorial questions - (automatic marking) |
Survey |
Y |
|
"Fill in the blank" self test tutorial questions - (automatic marking) |
Survey |
Y |
|
Customized feedback to tutorial questions |
Survey |
|
|
Redirect path of tutorial depending on question answers |
Survey |
|
|
Timed quizzes (graded with permanent mark retention) |
Survey |
Y |
|
On line marking and grades management of timed quizzes |
Survey |
Y |
|
Generate random set of questions |
Survey
|
Y |
|
Allows developer to preview course as a student |
Y |
Y |
|
|
|
|
|
Instructors can manage class membership as well as Tas and additional instructors |
Y |
|
|
Instructors control if class has open enrollment |
Y |
|
|
Instructors control if class is viewable to non-enrolled community members |
Y |
|
|
Separately configurable views of a class based on student type, i.e. distance vs on-campus students, paid vs unpaid etc. |
Y |
|
|
Separately configurable guest view of the class to allow for class shopping |
Enhanced Portals |
|
|
|
|
|
|
Allows instructor to manage class from single calendar on front page. |
Y |
|
|
INSTRUCTIONAL FEATURES |
ACS |
Black Board |
WebCT |
Faculty to student asynchronous communication is possible |
Y |
Y |
Y |
Faculty to student synchronous communication is possible |
Y |
Y |
Y |
Faculty can make their own changes to content |
Y |
Y |
Y |
Training is provided for faculty |
|
Y |
Y |
Courses can have consistent interface |
Y |
Y |
Y |
Platform includes an internal e-mail client |
Webmail |
Y |
|
Platform has e-mail management capabilities for students |
Webmail |
Y |
|
Platform has e-mail management capabilities for faculty |
Webmail |
Y |
|
Platform supports multiple instructors for a single course |
Y |
Y |
Y |
STUDENT TOOLS |
ACS |
Black Board |
WebCT |
Authentication |
Y |
Y |
Y |
Bookmark management |
Y |
|
|
Multimedia support |
|
Y |
|
Private e-mail |
Webmail |
|
Y |
File submissions |
Y |
Y |
|
On-line presentation creation |
Wimpy Point |
|
|
Threaded discussions |
Y |
Y |
Y |
Email alerts from discussions by topic, author or message |
Y |
|
|
Digested Email from bboards, daily, weekly or Mon-Thurs |
Threaded Bboard Enhancement |
|
|
Ability to respond to an discussion message by email |
Y |
|
|
Ability to rate messages by email or on the web |
Threaded Bboard Enhancement |
|
|
Course Chat rooms |
Y |
Y |
|
Threaded Chat and automatic posting of formatted chat |
Chat Enhancement |
|
|
Logged chat |
Chat Enhancement |
Y |
|
Whiteboard |
|
Y |
|
Self-assessing |
Survey |
Y |
|
Progress tracking |
Survey |
Y |
Y |
Desktop based file management for uploading to server |
Y |
|
|
Study skill building |
Survey |
Y |
|
Un-timed quizzes |
Survey |
Y |
|
One question-at-a-time function |
Survey |
Y |
|
Bulletin board/conferencing tools |
Y |
Y |
|
Image database |
Y |
|
|
Student access to own grades |
Y |
Y |
|
Access to course grade distribution |
Survey |
|
|
Automated glossary tool |
Glossary |
|
|
Automated index tool |
Site Wide Categories |
|
|
Online assistance |
|
Y |
|
Search tool for course content |
Site Wide Search |
Y |
|
Student presentations area |
Homepage |
Y |
|
Allows student to view all class events on one consolidated calendar/page once logged in. |
Y |
|
|
Sync of class calendar with palm pilot |
Palm |
|
|
Ability to view all the contributions of each student in all of their classes |
Y |
|
|
Students can sign-up for office hours automatically and the appointment shows up on both the students and instructors calendar |
Reservations |
|
|
Students can add or drop courses from their home portal |
Y |
|
|
Student can make private annotation of material. |
Customized General Comments |
|
|
Student Homepage Tool. |
HomePage |
Y |
Y |
Personal Address Book |
Y |
|
|
Personal Address Book syncs with Palm |
Palm |
|
|
ADMINISTRATOR TOOLS |
1 |
2 |
8 |
Server |
Y |
Y |
Y |
Client/Web interface |
Y |
Y |
Y |
Authorization tools |
Y |
Y |
Y |
Logout feature |
Y |
Y |
|
Resource monitoring |
Y |
Y |
Y |
Remote access tools |
Y |
Y |
|
Crash recovery tools |
Y |
Y |
|
Student support tools |
Y |
Y |
|
Instructor support tools |
Y |
Y |
Y |
Administrator support tools |
Y |
Y |
|
Built-in file management tools |
Y |
|
|
Ability to export raw data |
Y |
Y |
|
Customization of text messages |
Some |
Y |
|
Resume session function |
Survey |
|
|
Security access |
Y |
Y |
|
Variable level of security |
Y |
Y |
|
Online registration |
Y |
Y |
|
Registered markers |
|
Y |
|
Batch upload to register students |
Y |
Y |
|
Multiple Institutions on the same server |
Display and additional customization |
|
|
Guest account creation |
Y |
Y |
|
Student class list hidden from non-registered students |
Y |
|
|
|
|
|
|
On-line reservations for rooms and other resources that are integrated with users calendars |
Reservations |
|
|
Instructors can create groups of students |
Sections |
Y |
Y |
Educational Communities |
ACS Education Solution |
Black Board |
WebCT |
Create communities for Clubs, Alumni, interest groups etc. |
Y |
|
|
Community resources equal to class resources. Ie Calendar, File Storage, Discussions etc. |
Y |
|
|
Can give individual students administrative privileges based on the community. |
Y |
|
|
V. Design Tradeoffs
Ease of Use vs. System Flexability
The current implementation has considerable less flexability in the realm of permissions than the previous version. It was observed that users were confused by the permission choices, so these choices were simplified:
- Professors and TAs both have complete and identical group adminstration ability.
- Group files are all group readable and adminstrator writable.
As the previous version supported a wider range of options, it would not be difficult to upgrade the permissions system.
VI. Data Model Discussion
The current version was produced with minimal data model changes from the original thesis version. We plan to rewrite the data model significantly when we port to ACS 4.0.
A class is offered in a certain term. 'No Term' is automatically entered as an option.
create table edu_terms (
term_id integer not null primary key,
term_name varchar(100) not null,
short_name varchar(100) unique,
start_date date not null,
end_date date not null
);
Departments are created as a user group to support large institutions. The current version does not have a great deal of support for departments. Future version of education will move away from storing this sort of infomation in
_info
tables and use the
on_what_table/on_which_id
paradigm used in such modules as the address book.
create table edu_department_info (
group_id integer primary key references user_groups,
-- for schools like MIT where each department has a number
department_number varchar(100),
-- we'll generate a home page for them but if they have one already
-- we can provide a link
external_homepage_url varchar(200),
mailing_address varchar(200),
phone_number varchar(20),
fax_number varchar(20),
inquiry_email varchar(50),
description clob,
mission_statement clob,
last_modified date default sysdate not null,
last_modifying_user references users,
modified_ip_address varchar(20)
);
Subjects are placed within departments; administrators can then define a class as an instance of a subject - this is a common area of confusion for adminstrators. Eventually, we will implement the ability to copy a class from one term to another, copying the course material as well. This may cause us to rethink how
edu_subject
is used.
create table edu_subjects (
subject_id integer primary key,
subject_name varchar(100) not null,
description varchar(4000),
-- at MIT this will be a string like "3-0-9"
credit_hours varchar(50),
long_description clob,
long_description_html_p char(1) default 'f'
constraint edu_sub_lg_des_html_p_ck
check(long_description_html_p in ('t','f')),
prerequisites varchar(4000),
professors_in_charge varchar(200),
last_modified date default sysdate not null,
last_modifying_user not null references users,
modified_ip_address varchar(20) not null
);
A subject can be offered in more than one department.
create table edu_subject_department_map (
department_id integer references user_groups,
subject_id integer references edu_subjects,
-- this would be the full '6.014' or 'CS 101'
subject_number varchar(20),
grad_p char(1) default 'f' check(grad_p in ('t','f')),
primary key ( department_id, subject_id )
);
The user group view
edu_classes
is a primary feature of the Education Solution. This table holds pointers to specially named folders in file storage which is the key to most of the customization of document storage. The current data model has columns for several features that are not currently implemented, such as exams and teams.
create table edu_class_info (
group_id integer not null primary key references user_groups,
term_id integer references edu_terms,
subject_id integer references edu_subjects,
-- if the class doesn't start or end on the usual term boundary, fill these in
start_date date,
end_date date,
description varchar(4000),
-- at MIT, something like 'Room 4-231, TR 1-2:30'
where_and_when varchar(4000),
-- I still don't agree with this column. I think we should use
-- the file system to hold this and just keep a pointer to the
-- syllabus. That way we would have versioning which we do not
-- have now (randyg@arsdigita.com, November, 1999)
syllabus_id integer references fs_files,
-- we keep references to the class folders so that we can link to them directly
-- from various different parts of the system.
root_folder_id references fs_files,
assignments_folder_id references fs_files,
projects_folder_id references fs_files,
lecture_notes_folder_id references fs_files,
handouts_folder_id references fs_files,
exams_folder_id references fs_files,
-- will the class web page and the documents on it be open to the public?
public_p char(1) default 'f' check(public_p in ('t','f')),
-- do students receive grades?
grades_p char(1) default 'f' check(grades_p in ('t','f')),
-- not used in the current version
-- will the class be divided into teams?
teams_p char(1) default 'f' check(teams_p in ('t','f')),
-- teams are not implemented in the current version
exams_p char(1) default 'f' check (exams_p in ('t', 'f')),
-- exams are not implemented in the current version
-- does the class have a final exam?
final_exam_p char(1) default 'f' check (final_exam_p in ('t','f')),
last_modified date default sysdate not null,
last_modifying_user references users,
modified_ip_address varchar(20)
);
There are several views defined for convenience, such as
edu_classes
and
edu_current_classes
.
User groups for edu_sections
and edu_teams
are defined by the data model, but not yet reflected in the implementation. edu_textbooks
and edu_grades
are also not currently in use, but may be useful for future customization.
VII. Legal Transactions
The legal transactions for the education-specific portion of ACES are discussed in:
/arsdigita/doc/overviews/education.html. Other legal transactions are module specific, and should be investigated in their respective module documentation.
VIII. API
The major APIs in ACES deal with providing the appropriate views into other ACS modules. These views are contained in
education-procs.tcl
; one good example is
edu_display_attachments_in_table
, which displays a table of documents, scoped by group, and limitable to certain types of documents.
A full list of such APIs is impractical, since the APIs for other modules are often sufficient for ACES. However, if differnt views are necessary, the ACES makes it easy for programmers to create such views themselves.
IX. Future Improvements/Areas of Likely Change
ACES represents an integration of the ACS, rather than a stand-alone module. In many cases, all that is required to implement a new feature is to simply integrate an existing ACS module into the portals framework, and to have it interact with the user groups created by the education package. In other cases, the existing module may require some custom code in order to operate within standard ACS scoping protocols or to create easier default permissions.
ArsDigita envisions that the following features will likely be added to ACES either in collaboration with the open source community or through our work with specific clients.
Module |
Features |
Education |
Creation and support for additional subdivision of students into teams, sections etc. using user_groups . Each of these groups will have the same community and collaboration features as the Classes and Community groups now have.
Support for copying class content from one semester to the next. |
Survey (Online Testing and Polling) |
Integration of the ACS survey module to allow testing and grade reporting on a wide variety of test and answer formats. The ACS survey module includes branched surveys that can be used to form the basis of individualized tutorials.
The same basic module and data model can be used for polls, including the ability to have in class polls for wired classrooms with results immediately displayed on the web site for discussion. |
Ecommerce |
Integration with the ACS ecomerce module to allow institutions to require payment by credit card before access is given to course material. |
Student Homepages |
Integration of the ACS home page module to allow students to create their own web pages. |
Bboards |
The look and feel of the threaded bboard used by ACES is easily customizable. Future work on the functionality of this bboard system will include daily digested versions and the ability to rank/recommend postings both on the web and through email.
|
Display and graphics flexibility |
Currently, colors on portals can be set by group type (ie user, class, community). Future enhancements will allow each user group (ie each class) to have their own colors and graphics.
|
Calendar |
Future enhancements to the ACS Calendar module will include scheduling online appointments with instructors and room reservations, as well as the ability to sync with the palm pilot. |
WebMail |
The ACS webmail module can be used to provide hotmail like accounts for community members. |
Search |
Integration with the ACS and Oracle Intermedia search to allow search over all class content while maintaining permissions on read access to each specific document materials. |
Chat |
ACS has a chat module which is used. Future upgrades to the chat module will include: Ability to automatically post and email chat transcripts to the class. Ability to respond to a specific comment and thereby create a threaded chat that is easier to follow and can be formatted logically for posting. |
ACS 4.0 |
Port to ACS 4.0 and use of the ACS 4.0 content management system for posting and maintaining class materials. The ACS 4.0 work flow module can be used to facility both instructor collaboration in creation of education materials and students turning in and getting feedback on their work online.
ACS 4.0 will also have tools for internationalization that can be used to provide educational materials in different languages.
ACS 4.0 will also be used to develop Reusable Learning Objects to create structured XML compatible schema for lessons and classes. These will be reusable and could be sold/traded between institutions.
|
X. Authors
The current education solution represents the collaboration of many people, both at ArsDigita and Sloan. Caroline Meeks should be contacted for any questions on using ACS in an educational setting or producing other solutions similar to this one. Other ArsDigitans who are significant authors and can be helpful with technical questions are Tzu-Mainn Chen, Tarik Alatovic, Crag Wolfe, Scott Meeks, and Randy Graebner. Thanks also go out to Basel Y Al-Naffouri and Eric J. Cholankeril, who contributed significantly during their summer internship at ArsDigita.
On the Sloan team, thanks goes to Alfred Essa, Executive Director, Information Technology, MIT Sloan School of Management; Glen Johnson, Senior Project Manager; Deirdre M. Kane; and Julie Bergfeld.