General Interface Concept

OERca - General Interface Concept

function + concept
After some lengthy discussion, testing, and mock-ups, we've decided to ditch bins and stamps (and yes, cabinets) and focus more on workflow and tasks. Essentially, we are thinking of the system in two ways:


 * 1) Each user has a workflow for processing objects. That workflow can be broken into a few "plugable" modules (e.g., our process: organizing, metadata adding, clearing, reviewing) that are linked and help objects flow through the system.
 * 2) Users need various tools to assist in the processing of objects. These tools (e.g., communication, crowdsourcing, image search, task management) need to be accessible at any point during the processing.

The basic function of OERca2 involves bringing objects into the system, breaking them up into their components, adding information about each object for processing, recompiling those objects into their appropriate packages, and then exporting them out of OERca.



This functionality is broken into the modules and tools concept, which defines how these processes will be done and helps the user accomplish the work. The modules are core to OERca and are the central workflow. Different organizations using OERca can choose which modules are necessary. The tools are helper components that sit outside the modules. They can be accessed by any module and should be lightweight (anyone can build a tool to plug into OERca). (side note: we might end up using the Cloud Social tool architecture here for integration and overlap with LMSng.) Here are the main workflow modules:


 * organize - a space for the user to label objects and organize them for processing, and also organize the OERca system and user access
 * metadata - a space for the user to apply information (e.g., source, description, license, keywords) about objects
 * clear - a space for the user to make sure the object has appropriate rights for sharing at its destination
 * review - a space for the user to evaluate objects before they are exported

Here are the tools we expect to build that will give the user a hand in the processing (others may come afterwards):


 * import - used to extract objects from packages and bring them into OERca
 * export - used to package and send objects to a variety of destinations
 * communicate - used by all users to converse about specific objects or the process in general
 * crowdsource - used to solicit help from other users for processing objects
 * search - used to quickly find an object locally or its replacement externally (from various sites with open content)
 * manage - used by the system to remind the user of tasks to be completed, used by the individual to create tasks or assign tasks, or simply give an overview of work status
 * report - used by admins to generate reports on objects, workflow status, users, etc.

modules
Depending on the user or organization managing the system, the workflow in OERca can be altered to display only the modules that are appropriate. For instance, if the Library of Congress is processing a collection of images for Flickr, it may only need to organize objects, add metadata, and review them before exporting to Flickr. Also, 3rd parties can create new modules that address their workflow needs. Generally speaking, objects are imported into the system through some sort of upload function. These objects may be packaged in a variety of formats (e.g., powerpoint, open office docs, zip, website URL) and may have a multitude of destinations (e.g., Flickr, Drupal, Sakai, YouTube, eduCommons). OERca importer &lt;dScribe import scenario&gt; will extract the objects, index them, and pull out any appropriate text helpful for establishing keywords.

organize
Objects can be organized by applying labels. Labels do all the work hierarchical organization (like folders) does and give you an extra bonus: a user can add more than one to an object, depending on how the user wants to process it. For example, if a user at MIT OCW is building a course and needs to clear a number of IP objects embedded within multiple PDF files, the user can take those objects and organize them according to class, class section, or even production cycle by tagging it with the appropriate label. Another example is a dScribe2 at Open.Michigan, labeling all objects created by U-M dScribes to become part of a set or collection within Flickr. &lt;dScribe organization scenario&gt;

metadata
A key component of OERca is metadata addition. The module supporting this will allow users to define an appropriate set of metadata (or pull from pre-made lists like Dublin Core) for the objects and then fill in the metadata fields necessary for processing. Some of these fields will be packaged and sent along with the objects on export, others might be strictly internal to OERca processing. Users can select multiple objects and apply specific metadata to that group of objects. Users might also use the crowdsourcing tool along with this module to get object source information help from other users. &lt;dScribe metadata scenario&gt;

clear
Many users will employ OERca as a tool for clearing copyright issues around objects. This particular module will assist users with decisions on what to do with objects. For example, Open.Michigan typically chooses one of three options for an object: Retain (keep it because U-M has permission through a license of some sort, it's in the public domain, or they have analyzed it for copyright issues and decided they can legally use it), Replace (search for an open replacement, create a replacement, or commission the creation of a replacement), or Remove (do not publish and share the object in question). The clearing workflow/decision choices can be customized by the admin of OERca. Different organizations or users of the system will want a variety of processing choices in this module. This module will also take advantage of a number of tools in OERca. Specifically, users might use the search tool to find replacement objects, users might use the crowdsourcing tool to get help finding replacement objects, and users might use the communication tool to ask supervisors or even lawyers about the copyright status of objects. Similarly, users might find the task manager tool helpful: as an object moves from one module in the workflow to the next, the user is notified by the task manager what needs to be done to continue processing that object.

review
Prior to exporting the processed objects, users will want to review the work they have done in OERca. They may also want to invite others to review that work and make suggestions on any remaining objects that need processing. The review module will provide this functionality as a final phase in the main workflow of OERca. One tool that our team will probably not build, but would be nice, would be a tool that allows the user to make final edits within the native file that will be exported. For instance, if I replace three objects in a file, it would be nice to see those objects inside that file and be able to adjust some of the formatting within the file before exporting it for publication. The review module will also take advantage of the export tool, which will allow the user to decide on the destination for the objects, the package type, and will employ our document recomposition component that will recreate your document based on the processing of the objects within it.

import
The import tool will allow users to bring content into OERca. Users will need to bring in materials like powerpoint or pdf files, as well as individual images, videos, web pages, and zip files. The import tool should decompose documents when possible and extract individual content objects as well as text. The interface should allow the user to make a choice to decompose a document or not. The import tool should provide feedback about the progress of the upload. It should also allow users to import multiple items at once, including items of different types (i.e. a powerpoint file as a material and jpg file as a content object). When entering the import tool, the user should be presented with a field into which any kind of document information can be entered (i.e., a location on the hard drive, a url, a zip file location, CTools import etc.). The system should be able to recognize what kind of document is being imported rather than forcing the user to choose from several different fields for importing content from different locations. Lastly, the user should be able to link the uploaded file or files to preexisting documents already in OERca (versioning).

export
The exporter tool helps users move content out of OERca. This means not only selecting a destination for the content, but packaging it up appropriately and sending it to the right place. The packaging of the content means recomposing documents (embedding metadata, license tags, image replacements, etc.) and putting the content into a structured package depending on where it needs to go. For example, a user downloading 4 powerpoint files for editing will get those files, embedded with the appropriate changes they've made in OERca, in a zip file delivered to the desktop. As another example, a user sending 30 images to Flickr will get a package of the images and the appropriate Flickr metadata (title, description, tags, camera information, etc.) sent directly to the designated Flickr account. As a final example, an OCW publisher could package up all the edited documents from a course in a particular hierarchy (using the labels in the organizer module), that is ready for transport to Sakai via the IMS Common Cartridge package.

communicate
While OERca enables users to comment on any object, replacement, or review of documents, the Communicator tool will aggregate those comments pertaining to a particular user. The communicator will also allow a user to select multiple objects and comment on them as a group. Comments might be statements or questions directed toward a particular user. Similar to Facebook or Flickr picture comments, users related to that object will receive notification that a comment appeared there. These notifications will also appear in the communicator tool. Users will be able to sort through comments here, or link directly to objects of interest. For instance, if a user wants to view all comments from another particular user, she can select that user's name and read the aggregated list. She can then click on an object of interest and view the object and its metadata.

crowdsource
The crowdsource tool serves a user by enlisting the help of other OERca users for object metadata and replacement. Users can post an object to the OERca world for comment. Users can also post the object to the OERca Flickr site, where contacts (who must be Flickr friends) can try to help with metadata and replacement finding.

search
This tool will be used for both internal search of objects, documents, users, and external searches on content. Internally, users may want to find objects with which they are working, objects that have already been cleared in OERca, documents containing objects of interest, or users within the system. This search interface will be a simple keyword search using all metadata in OERca to present results. Externally, users might use this search to reach out to sites like Flickr and Google Image Search to find openly licensed content. They will be required to specify the licensing constraints for their search, but will be presented with the results from a few different site options. External searches will allow the user to instantly download the object into OERca and begin using it as a replacement (they will need to designate the original object, for replacement). Internal searches will allow the user to specify whether they want a particular object as a replacement.

manage
The manager tool is designed for users to keep track of tasks. Tasks might be self-assigned, like a to-do list, or assigned by another user, like a supervisor. This manager will auto-update the task list with objects that need processing next in the workflow. For example, once an object has its metadata filled in, the task manager will indicate that this object is ready for the clearing module. This tool will also provide the user with an aggregate of object status, so the user sees what content is where in the overall workflow - a sort of status summary of all their work.

report
This tool is mainly for administrators within OERca. The admin users will use this tool to generate reports on object status within OERca, user productivity, crowdsource effectiveness, object processing efficiency, etc.