Archive for the ‘LMS Proposal’ tag
LMS Architecture Proposal, Part 4
What follows is a draft of a document that I prepared that outlines a proposed architecture for Learning Management Systems. Because of it’s length, I have separated it into four posts, Executive Summary, The Emerging Meme, LMS in the Enterprise Architecture, and Key Online Application Integration. They will not all be posted at once but as they do you can see them here.
Key Online Application Integration
The proposed architecture shows five pre-built adapters in the Open Adapter Framework. These adapters would be provided to allow immediate integration with already popular online applications. These adapters integrate general RSS, Delicious, Facebook, Google Apps, and Twitter into the LMS out-of-the-box.
The general RSS adapter allows users in a group or course to easily add an online RSS feed to their group. RSS is a common method for syndicating content on the web. By providing this functionality, users will be able to bring online content directly into their groups for research and study. RSS is widely used to syndicate blogs as well. This adapter would allow the users to bring content from their personal blogs into the group to encourage collaboration and to contribute to the group.
A Facebook adapter would allow two-way communication between the LMS and Facebook. This adapter would bring Facebook features, such as the wall, chat, and friends, into the LMS. Conversely, content from the LMS could be pushed to Facebook as well. An example would be the ability to have a user update their Facebook status from within the LMS. Because of the breadth of features in Facebook, not all possibilities are explored here.
Another popular online tool that could be integrated into the LMS is social bookmarking. Delicious has been the most popular tool on the web for sharing bookmarks. Because users of delicious can categorize, or tag, their bookmarks, sites can be shared with others regarding specific topics very easily. Consider the following use case:
An instructor wants the students to do some online research about a topic they are studying. The instructor creates a tag for the topic in the LMS and then shares that tag name with the students. As the students perform their research, they bookmark the sites they find interesting and add the tag created by the instructor along with their notes about the site. As the students bookmark their sites using delicious, the LMS aggregates those sites and displays them for all members of the course to review. The next time the class meets they review together the interesting sites they found.
Google Apps is being widely adopted by universities because of the ability to collaborate on documents, spreadsheets, and presentations. Currently, students need to know the email addresses of the other participants to share the document with them. Integration into the LMS would facilitate not only the sharing of Google App content but would provide a simple repository within the group or course for the documents themselves. This would provide simple organization and availability to all content related to the group or course.
Micro-blogging using tools like Twitter can create dynamic learning environments. Twitter allows users to post small (140 characters) bits of information about what they are doing and the interesting things they discover. There are two main ways Twitter would be integrated into the LMS. First, the LMS allows students to link their Twitter account with their LMS account so that they can easily find and follow others in their group. Second, a live updating search feature would be incorporated to allow users in a group to watch the public timeline for key search terms (see tweetgrid.com for an example). Integration of Twitter into the LMS would provide a way for users to build lasting relationships and share information about what they are learning dynamically and in a non-obtrusive way.
Online Applications Index
What follows is a list of popular online applications that are being adopted by universities to increase learning. All of these applications are good candidates for building adapters for the Online Adapter Framework.
Image Tools: Flickr, Picasa
Blogging Tools: WordPress, Tumblr, Blogger, TypePad, MovableType
Micro-Blogging Tools: Twitter, Yammer, Identica, Laconica
Wiki Tools: PBWiki, Wikispaces, Wikidot, WetPaint
Online Chat: AIM, MSN, Yahoo!, GTalk, Skype, Meebo, Campfire
Social Networks: Facebook, MySpace, LinkedIn, Ning
Online Broadcasting: Ustream.tv, Mogulus, Qik, Kite.tv
Audio/Video: YouTube, TeacherTube, iTunesU, Hulu, Vimeo
Web Sharing: Digg, Reddit, StumbleUpon
Social Bookmarking: Delicious, Magnolia, Diigo
Online Applications: Google Apps, Microsoft Office Live, Zoho Apps, EtherPad, Basecamp, Backpack (from 37 Signals)
LMS Architecture Proposal, Part 3
What follows is a draft of a document that I prepared that outlines a proposed architecture for Learning Management Systems. Because of it’s length, I have separated it into four posts, Executive Summary, The Emerging Meme, LMS in the Enterprise Architecture, and Key Online Application Integration. They will not all be posted at once but as they do you can see them here.
LMS in the Enterprise Architecture
The following is a diagram of the proposed role of an LMS in a typical enterprise architecture.
The architecture is made up of four key components: the Presentation, the IT Core, the Learning Management System, and the Open Adapter Framework. The details of each of these components and their integration together are described below. The key ideas communicated in the diagram are the relationships between the components, the physical separation of each component, and the role of the LMS as a facilitator of context and information to the different components.
IT Core
The IT Core consists of enterprise applications that are deployed on the university infrastructure. In addition to providing information about faculty and students, the IT Core fills other responsibilities as well. As the IT Core consists of many systems that support the university, only those that apply to the integration of the LMS are represented in the diagram. Each component is described below:
Flash Media Server: Server used to provide streaming audio and video. Most of the digital media owned by the university is provided through this server and is made available through a player that can be embedded into virtually any web site.
CMS / DMS / Portfolio: The content management system (CMS), also known as a document management system (DMS) is used as a repository for documents and files. These repositories are under version control and are made searchable through a common web interface. Users can share documents using a static URL which links directly to a document. The portfolio system would ideally be linked into the existing CMS system.
Identity Store: The identity store currently consists of an integration layer and a set of Active Directory and LDAP identity systems. These systems contain simple identity information and provide authentication services to other enterprise systems.
University ERP: The ERP system for the university contains the current student and employee information as well as the course to user relationships.
Learning Management System
The Learning Management System (LMS) serves as a provider of course and group context as well as a grade book. Course information is stored locally and is synced with course, student, and faculty information from the university’s ERP system. The users of the LMS create the group taxonomy. The grade book stores scores and final grades for students.
The group taxonomy simply provides a framework for organizing individuals in the system. It also contains a set of tools that can be used by the group. Groups are created either from existing courses or groups or completely ad-hoc. The following are a few use cases describing groups:
An instructor wishes to create groups of students in their course to assign specific assignments to each. The instructor uses the “create group” functionality within the LMS to create the groups from a list of students registered in the course.
A university society wishes to create an online workspace where they can collaborate on events and projects. The leader of the society uses the LMS to create a group and then is given the opportunity to invite the other members of the group to participate.
A group of students within the same major form a study group to help one another with assignments and upcoming tests. A student uses the LMS to form a group and then sends a URL to those that want to join. The other receiving students navigate their browser to the URL and request to join the group.
Groups are the foundation of all gathering that occurs at the university. They provide users with a workspace to collaborate and share information. The tools that they use are tools integrated into the LMS through the adapter framework.
Courses are specialized groups with added tools and are created by the system based on a taxonomy that comes from the university ERP and are created and destroyed by the system. Courses have one or more instructors and a set of students. The additional tools that are made available include a grade book and a course syllabus. Other tools built on the adapter framework can also be included by default.
The interfaces to the LMS are a crucial in that they provide the groups and courses with the tools that the users in the group will use. These interfaces also provide back-end developers with a way to get group and course taxonomies from the system such that they can provide context to their external applications. The following table shows some examples of API calls made through the interfaces.
| API Call | Parameters | Result (in XML or JSON) |
| get_groups | user_id | set of group names |
| get_courses | user_id, semester | set of courses the user belongs to during the provided semester |
| get_user_info | user_id | set of public attributes for the user |
| get_group_info | group_id | set of public attributes for the group |
| create_group | group_name, group_type | group_id or error code |
| add_user_to_group | user_id, group_id | success code or error code |
| remove_user_from_group | user_id, group_id | success code or error code |
| destroy_group | group_id | success code or error code |
| set_group_attribute | group_id, attribute_id, value | success code or error code |
| get_tools | (none) | set of available tools |
| get_group_tools | group_id | set of tools available in the group |
| add_group_tool | group_id, tool_id | success code or error code |
| remove_group_tool | group_id, tool_id | success code or error code |
| add_score | user_id, assignment_id, value | success code or error code |
| add_assignment | group_id, assignment_name, assignment_type | success code or error code |
| get_final_grade | group_id, user_id | grade or error code |
| get_grade_details | group_id, user_id | list of assignments, scores, and final grade |
In addition to an open service based API, the LMS includes a SCORM 2004 interface for adding and retrieving scores from the grade book. This interface allows the creation of SCORM compliant assignments and tests by the university and provides great flexibility in the medium by which they can be created.
Presentation
Two major factors affect the presentation layer of the LMS: an extraordinary range of the technical ability of the user base and university branding. As such, dynamic user interfaces that can be completely customized by the university are critical in the success and adoption of the LMS. In a traditional LMS implementation, the user interface is largely static based on the design by the engineers who built the system. The presentation layer, however, will be better suited to the user-base if it is created and maintained by the university. This will allow administrators to enable and disable functionality, incorporate university approved branding, and integrate online and self-hosted web technologies seamlessly.
One approach to this level of customization in the past has been to use a customizable portal with boxes, or portlets, that contain custom content from various sources. While this approach allows for some customization, the user is still locked into a designated wire-frame. This limits branding and custom look and feel. These portal systems are also often based on out-of-the-box development platforms that require extensive back-end development to customize. This increases the rigidity and cost of customizing the look and feel.
A better approach is to provide a basic multi-column wire frame built on an open framework based on popular languages, such as PHP or XSLT, and give the university complete control over layout and look and feel. The university could then utilize commodity web developers, such as students, to provide customization and branding. An example of this approach is the popular WordPress blogging platform that provides basic functionality with complete customizability. This framework provides developers a multiplicity of options to mashup information from the LMS with core IT data as well as online application data in a seamless and consistent environment.
In the proposed architecture, the presentation layer of the LMS is completely separate from the core systems. This allows the university to tie their existing CMS system and the LMS into the university web space. The flexibility that this architecture provides would promote a single and consistent view to all the tools the university and the web have to offer in a consistent and integrated environment.
Open Adapter Framework
Because the proposed architecture focuses on the core value proposition of the LMS and not on providing learning tools such as blogs, wikis, and other collaboration tools, there needs to be a way to provide the course and group context to external tools in a low cost manner. The portion of the architecture designated to provide this is the Open Adapter Framework (OAF).
The OAF is a software development kit (SDK) providing web developers the opportunity to build integrated adapters connecting online, and custom applications into both the LMS and the Presentation layer. The SDK provides the following key features:
- API documentation to the LMS
- A secure method for connecting to the LMS
- Hooks for authentication
- Hooks for the presentation layer
- REST based APIs
- Embeddable JavaScript
- Example pre-built adapters
Another key aspect of the OAF is an online developer community where adapters can be shared and downloaded fitting many of the initial needs of the university. All adapters follow open source methodologies in their development and distribution. This approach will encourage developers to not only build adapters for major online learning tools, but will decrease the amount of overall effort needed to integrate popular online tools into the LMS. The following use cases can then be put into effect:
A university wants to integrate a wiki tool that has been adopted by many of the students in the Business College. The software engineering group browses the online open adapter repository to see if anyone has contributed an adapter for this wiki. An adapter is found, downloaded, and installed on the OAF. The popular wiki is now available as a tool for all groups and courses in the LMS.
After searching the online open adapter repository, no adapter could be found that integrates a discussion board tool that was recently purchased by the academic department. The tool supports basic web services and has embeddable components. The IT group employs a small team of students, provides them with the Open Adapter Framework SDK, and kicks off a project to build the adapter. In less than two months, the team has finished building the adapter, integrated the discussion board into the LMS, and contributed the adapter back into the online repository for other schools to use.
LMS Architecture Proposal, Part 2
What follows is a draft of a document that I prepared that outlines a proposed architecture for Learning Management Systems. Because of it’s length, I have separated it into four posts, Executive Summary, The Emerging Meme, LMS in the Enterprise Architecture, and Key Online Application Integration. They will not all be posted at once but as they do you can see them here.
The Emerging Meme
The current model for building and deploying a Learning Management System (LMS) is to create a system where teachers and students login to manage course information and utilize collaboration tools. Course information includes anything from a course syllabus, a grade book, and documentation related to the curriculum. Collaboration tools are provided as chat, email, announcements, and discussion boards. In more advanced implementations of an LMS, collaborative workspaces, wikis, and blogging tools are made available.
This implementation breaks down, however, as more enlightened learning models vs. the traditional “Sage on the Stage” are implemented in higher education. These learning models focus on lasting learning and decentralized group projects. In addition, as more courses are provided online, traditional LMS implementations fail to level the playing field, so to speak, between the online students and students gathered physically in the class room.
Consequently, if the LMS is to facilitate these newer learning models it must be able to adapt from traditional course-centric taxonomies and embrace more ad-hoc groupings of teachers and students. While the need for course taxonomy for academic purposes will always exist, an LMS can facilitate increased learning by allowing for ad-hoc group taxonomies as well. The ability to create groups within a course has been a standard feature in an LMS for some time; however, the process of creating and managing those groups has not reached full maturity.
Another problem facing the traditional approach is the influx of very usable online applications and social networks that students and faculty use outside the LMS. Examples include Google Docs, Twitter, and Facebook. Because these applications are generally the sole focus of the companies that create them, they are able to develop and deploy advanced functionality very quickly. Students and faculty are continually being introduced to these solutions leading to a rapid adoption rate leaving the built-in functionality included in the LMS widely unused.
The key value proposition of any LMS is IT systems integration and user experience consistency by providing the course or group context to a wide set of learning tools. By focusing on aspects of the learning experience that cannot be found online such as the course/group taxonomy, the grade book, and integration with core IT systems, an LMS can capitalize on its core value rather than providing outdated learning tools. An LMS can also serve as a bridge between core IT systems and online tools utilizing established web standards such as REST-based APIs and embedded JavaScript.
Traditional LMS implementations involve monolithic architectures that require more advanced programming techniques and methodologies for integration with core IT systems. To capitalize on the value that an LMS can bring, however, more open services based architectures are better suited. By decreasing the friction needed to integrate the LMS with online applications and IT systems, the LMS provides more accurate and real-time context to the available tools. It also decreases the time needed to do the integration.
The LMS must also serve as a bridge between online applications and IT systems. By providing an open API based on web services, organizations can employ commodity development resources, such as teams of students, to provide the majority of the integration work. In aggregate, this greatly reduces the cost of ongoing development work needed for integration.
In short, by focusing the functionality of the LMS to open programming interfaces, course and group taxonomies, and a grade book rather than on implementing sub-par learning tools the LMS increases its value to the organization. Such an LMS will also integrate more easily in modern service based architectures decreasing the time and cost to deploy the solution.
LMS Architecture Proposal, Part 1
What follows is a draft of a document that I prepared that outlines a proposed architecture for Learning Management Systems. Because of it’s length, I have separated it into four posts, Executive Summary, The Emerging Meme, LMS in the Enterprise Architecture, and Key Online Application Integration. They will not all be posted at once but as they do you can see them here.
Executive Summary
Universities face a growing dilemma that involves technology and the classroom. As technologies on the Internet grow increasingly sophisticated and open, the ability for Information Technology departments to integrate these new technologies decreases. In addition, enterprise class software with its intrinsic size and scope doesn’t inherently provide the agility needed to bring the user experience and functionalities that smaller, more open solutions provide.
The Learning Management System (LMS) is not immune from these trends. Leaning more toward enterprise class software and less toward open web based software in its architecture, an LMS is unable to provide the functionality and features that both students and teachers want to use. The key value of an LMS is, therefore, not to provide all the functionality its users desire, but to provide integration with core IT systems and course context to the users online experience.
The following proposal focuses on integration as the key value proposition of the LMS. Because of this, the architecture described is very different from typical architectures based on traditional LMS implementations. The proposed architecture is a service-based architecture presented at a high level to communicate the overall picture rather than delving into the actual implementation details such as service oriented middle-ware and specific communication protocols. This higher view will allow for discussion of guiding principles and encourage innovation rather than being stifled with specific details.
The architecture is based on four key components: IT Core, LMS, Presentation, and the Open Adapter Framework. Each of the components is described utilizing, where applicable, use cases to explore the functionality of the end product. The details on each section will be limited to explaining basic functionality rather than specific technologies or implementations.
The last two sections of this proposal outline key online applications that are recommended for integration. The first section, Key Online Application Integration, outlines five online resources that are popular tools used by students and teachers. The following section, Online Applications Index contains a simple list of online applications that should be considered for integration into an LMS due to their ease of use, open APIs, and ubiquity.
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_c.png?x-id=fb9ceccd-d2ca-4f51-85ff-4f6cc962d15f)

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_c.png?x-id=186e7d99-ace5-4e8a-b1ae-084b6977b517)
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_c.png?x-id=0cf67e84-9a5f-4b76-947b-4f0835095f0f)
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_c.png?x-id=e85cc2f8-37b0-4a95-a144-abf930edcdef)