Trellis Development Discussion Notes
Contents
1. Course Progress (partially completed)
show only top level packages - only show responses links for packages that are not 'default' or 'other'
table structure:
row - attempt # -> valid (invalidate this attempt link)
row - scores - view responses
view responses link for parent package (you will see all nested responses) <--- not yet completed
view response link for child package (you will only see that specific package's responses)
2. SCORM Responses
create a new table to hold scorm responses, scorm_interactions.
3. Events
create a table in admin/reports to show events and their current status w/ ability to remove an event
4. course question objects
UPDATE THEM! Make them clean and usable...think about answer keys for high-level learners (admins)
5. UTF8 database
log queries on live client to find out which indexes are not/least used and remove them. figure out which indexes are used that are varchar 255.
6. Memcached
add support for memcached (http://www.danga.com/memcached/) to cache any data that remains consistent across requests. This data includes portal routing info, module/page mapping, and settings. We can also move sessions to the memcache.
7. Authoring/Course Management
the course info page will be revamped into a dashboard style page with:
- course title
- revision summary
- list of managers
- list of editors
- list of who is currently editing the course
- course log
- learning objectives
- issue summary
- uploaded files
- discussion notes
- course tags
a new permission will be added, possibly "manage_courses" that allows an administrator assign managers and editors to courses. Assigned managers will also be able to assign editors to courses.
managers/editors will be able to check out courses in order to edit them, currently checked out courses will show up on the homepage as will a task list and in the future messages from the messaging system.
the resource library will consist of a global and course specific library with searching capabilities. They will be organized by type: image, video, flash, audio. there will be a preview pane that shows a thumbnail and/or meta data.
the authoring tool will use modular editing panes for different types of packages: text->word processor, test->test generator, etc.
if we use svn for course revision control, we can use this library: http://pear.php.net/package/VersionControl_SVN
- table that associates users with courses: user_id, course_id, user_role:manager,instructional designer, etc
- basic discussion thread support, user_id, timestamp, message text, discussion_id?
- integration with the DMS, documents with access based on course privileges... modification of documents_access: access_type reference_id
- table for learning objectives, objectives can be linked to objects
- support for built in course evaluations utilizing reusable packages
system of tagging.. need to do some research on most efficient table design (http://codex.wordpress.org/WordPress_Taxonomy)
courses_contributors: course_id, user_id, contributer_type varchar, is_manager, is_editor discussions: discussion_id, discussion_title, discussion_type, reference_id, comment_count, last_comment_date discussion_comments: discussion_comment_id, discussion_id, user_id, comment_timestamp, comment_text, parent_comment_id, reply_count tags: tag_id, tag_word, tag_root tags_count: tag_id, item_type, tag_count tags_items: tag_id, item_type, reference_id tags_aliases: tag_id, alias catalogs_items: catalog_id, item_type, reference_id documents_access: document_id, access_type, reference_id course_objectives: course_objective_id, course_id, objective_description course_objectives_objects: course_objective_id, object_id
8. Virtual Classrooms
components of a classroom:
- Resources - documents, files, links, etc
- Lessons - lectures, video/audio, notes, slides, embedded quizzes, embedded discussion, etc (each lesson = Trellis course)
- Assignments - homework, projects
- Discussion - chatrooms, forums, polls, messages
- Assessments - quizzes and tests (each assessment = Trellis course)
- Evaluations (each evaluation = Trellis course)
the instructor will determine the schedule and students will be presented with an agenda at login. they will also be presented with a task list that will show them the various assignments, assessments, or other tasks they need to complete.
9. Special Plugin Paths
Modules: /pluginname.module OR /pluginname/module OR /plugin.pluginname/module
-> plugins/pluginname/modules/module
Resources: /resources/plugins/pluginname/resource_file
-> plugins/pluginname/resources/resource_file
10. Dedicated Resource Server Support
on a high traffic server, it will be beneficial, if not necessary, to allow resources to be served by a dedicated machine. This machine can run a light http server and relieve the application servers of a lot of unnecessary requests.
11. Trellis Library Structure
As trellis has grown, it has become apparent that the current class organization/structure will not be practical. I am proposing a new solution.
12. XML Beautifier
incorporate this class into trellis to reformat course xml. http://pear.php.net/package/XML_Beautifier






