Developing an Interoperable Blackboard Proxy Tool



Similar documents
Integrating Moodle with an external tool

Project SailFin: Building and Hosting Your Own Communication Server.

Introduction to Oracle Mobile Application Framework Raghu Srinivasan, Director Development Mobile and Cloud Development Tools Oracle

SaaS-Based Employee Benefits Enrollment System

Drupal and the LMS with LTI

WHITE PAPER. Domo Advanced Architecture

Cloud Computing with Windows Azure using your Preferred Technology

Project Title: Judicial Branch Enterprise Document Management System RFP Number: FIN122210CK DMS TECHNICAL REQUIREMENTS

MOBILIZING ORACLE APPLICATIONS ERP. An Approach for Building Scalable Mobility Solutions. A RapidValue Solutions Whitepaper

OpenAM All-In-One solution to securely manage access to digital enterprise and customer services, anytime and anywhere.

SOA, case Google. Faculty of technology management Information Technology Service Oriented Communications CT30A8901.

AquaLogic Service Bus

Web Service Testing. SOAP-based Web Services. Software Quality Assurance Telerik Software Academy

Introduction to Oracle WebLogic. Presented by: Fatna Belqasmi, PhD, Researcher at Ericsson

Debugging Mobile Apps

Sakai and uportal Integration Options

Safe Harbor Statement

Foundations for your. portable cloud

Chapter 22: Integrating Flex applications with portal servers

Single Sign On. SSO & ID Management for Web and Mobile Applications

What's New in Sametime 8.5. Roberto Chiabra IBM Certified IT Specialist

Access Your Cisco Smart Storage Remotely Via WebDAV

Building and Deploying Enterprise M2M Applications with Axeda Platform

IT Exam Training online / Bootcamp

Cloud Computing Technology

Is Liferay Right for Your Organization? Seven Things to Consider When Choosing a Portal Platform

Easy as 1-2-3: The Steps to XE. Mark Hoye Services Portfolio Consultant

<Insert Picture Here> Building a Complex Web Application Using ADF and Siebel

Securing SAS Web Applications with SiteMinder

Using mobile phones to access Web Services in a secure way. Dan Marinescu

The New Style of IT. Rob McMahon. Director Cloud Computing HP General Western Europe

Cross-domain Identity Management System for Cloud Environment

Examples with.net & PHP. Martin Haagen, QlikTech, Systems Manager;

Alfresco. Wiley Publishing, Inc. PROFESSIONAL. PRACTICAL SOLUTIONS FOR ENTERPRISE. John Newton CONTENT MANAGEMENT. Michael Farman Michael G.

M2M: EE Connectivity. 22 July , EE LIMITED 1

An Oracle White Paper June Integration Technologies for Primavera Solutions

Cloud Computing & Service Oriented Architecture An Overview

The Common Cartridge Alliance

Open ebay Apps Jumpstart

CMSs, Open Source, Hosted & Cloud-Based Applications

Cisco Enterprise Mobility Services Platform

Scaling Web Applications in a Cloud Environment. Emil Ong Caucho Technology 8621

Building WebRTC Solutions with the Avaya WebRTC Collaboration Environment Snap-in. Joel Ezell Lead Architect, Collaboration Environment R&D

Choose an IBM WebSphere Application Server configuration to suit your business needs

Titolo del paragrafo. Titolo del documento - Sottotitolo documento The Benefits of Pushing Real-Time Market Data via a Web Infrastructure

A Comprehensive Solution for API Management

SSL, Load Balancers, Rewrite, Redirect, and More Advanced Configuration

A Comparison of Open Source Application Development Frameworks for the Enterprise

ClearPass A CAS Extension Enabling Credential Replay

A standards-based approach to application integration

OPENIAM ACCESS MANAGER. Web Access Management made Easy

IONA Security Platform

Lecture 10 Fundamentals of GAE Development. Cloud Application Development (SE808, School of Software, Sun Yat-Sen University) Yabo (Arber) Xu

Integration of Google Docs as a collaborative activity within the LMS using IMS BasicLTI

Kaltura Presentation

Calendar Synchronization in OpenEMR. Business Need. Solution

Oracle EXAM - 1Z Java EE 6 Web Services Developer Certified Expert Exam. Buy Full Product.

MicroStrategy Course Catalog

enterprise^ IBM WebSphere Application Server v7.0 Security "publishing Secure your WebSphere applications with Java EE and JAAS security standards

HOL9449 Access Management: Secure web, mobile and cloud access

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Alcatel-Lucent IMS Application Server

OpenText Secure MFT Network and Firewall Requirements

<Insert Picture Here> Application Testing Suite Overview

Retrofi8ng OAuth 2.0 Security into Exis?ng REST Service [CON1765]

Rhomobile cross-platfrom

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

Enterprise IT Architectures SOA Part 2

Web Services Security: OpenSSO and Access Management for SOA. Sang Shin Java Technology Evangelist Sun Microsystems, Inc. javapassion.

ebay : How is it a hit

S P I E Information Environments Shibboleth and Its Integration into Security Architectures. EDUCAUSE & Internet 2 Security Professionals Conference

Stefan Thomé Yves Kising

Configuring Apache HTTP Server as a Reverse Proxy Server for SAS 9.2 Web Applications Deployed on BEA WebLogic Server 9.2

OpenSSO: Simplify Your Single-Sign-On Needs. Sang Shin Java Technology Architect Sun Microsystems, inc. javapassion.com

Web Application Hosting Cloud Solution Architecture.

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

Enterprise Portal Built by and for Higher Education

Budget Event Management Design Document

Develop PHP mobile apps with Zend Framework

Using Red Hat Systems Management Tools in a Hybrid Cloud

Storage Made Easy Enterprise File Share and Sync (EFSS) Cloud Control Gateway Architecture

Transform EMC Object Storage Into Enterprise Storage Services

WebLink 3 rd Party Integration Guide

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

Transcription:

Developing an Interoperable Blackboard Proxy Tool George Kroner Developer Relations Engineer Blackboard Inc. Lance Neumann Sr. Software Architect Blackboard Inc.

Agenda Building Blocks Proxy Tools Overview Design Approach Architecture & APIs Demo

Institutional Architecture Learning Environment Authentication Content/media Learning applications Mobile access/alerts Portal E-mail/webmail Registration Bursar/payment Library

Blackboard Learn Platform Course Delivery Advanced Tools Community Engagement Content Management Lecture Support Discipline-specific Portfolio Management Outcomes Assessment Virtual Collaboration Content Authoring Pedagogical support Simulations & models Course-specific

Plugins and App Frameworks Portability Ability to reuse/repurpose across many platforms Architecture Where does the app run? Plugged-in vs linked-together Security, scalability, reliability Advantages and disadvantages Other implications

Container/Runtime Easy Local Java Webapps JSR-168/286 Portlets W3 Standard Widgets Remote Google igadgets Open Social IMS LTI Apps Portability Difficult Blackboard Building Blocks Moodle Plugins Sakai Tools Apple iphone Apps WordPress Plugins Drupal Modules Confluence Plugins Facebook Apps

IMS Learning Tools Interoperability Subsequent version of IMS Tools Interoperability 1.0 addressing many of the issues surrounding TI 1.0 Lance Neumann co-chairs the IMS working group Write your learning app once, run it anywhere (ideally) Choose the application technology of your choice (Java,.NET, PHP, The Cloud) Single tool can be connected to multiple LMSs Reduced development, support costs Protection from poorly written plugins

Proxy Tools What are they? A new extension to the Blackboard Building Block Framework, LTI standards alignment when possible Programs that interact with Release 9 but run outside the Release 9 JVM Two types: Either with or without Placements (entry points) Can self-register if the administrator permits Can be written in any language that can utilize WSDL based web services

Proxy Tools 9.0 Server Providing Web Services and Proxy Tool support SOAP over HTTP(s) Simple HTTP(s) Callbacks Proxy Tool Server (java/.net/any client language supporting wsdl use) Interacts with Blackboard app server over HTTP(s) Interacts with Proxy Tool Server over HTTP(s) End User

Proxy Tool Motivations Building Block alternative to support better integration of external, third party applications or tools Standard integration, SSO, and communication model Standard Web Services Building Block alternative for a lower barrier to adoption from administrators (lower operational risk to production systems) Support both locally hosted and centrally hosted applications, with heterogeneous technology stacks Support a very similar set of use cases and entry points to Blackboard Building Blocks (placements) Succeeds CE/Vista capabilities with open standards

Proxy Tool Framework Self-registering Proxy Tools with or without placements (registertool Web Service method) Without Placements: Essentially means a standalone client application utilizing web services With Placements: Proxy Tool server provides configuration of access points within the Learning Management System Callbacks methods for certain events in Blackboard environment (simple HTTP API)

Proxy Tool Types Why have them without placements? To provide client applications that can interact with the users data in NG without using a web interface Why have them with placements? To provide a Building Block Installed Tool - style extension to the Release 9 interface without deploying any custom code on the Release 9 server itself

Proxy Tool Global Properties

Tool Registration Flow

Deployment Descriptor API registration, with a deployment descriptor Vendor and Tool information, high level metadata Tool Version and description Access URLs: http/https Web Services Required Singleton actions+events remote-configure action course-copied/exported/imported events Content-handler actions+events create/modify/view-content actions content-copied/exported/imported events Specific link placements course_tool, system_tool, etc.

Authorizing Proxy Tool

Web APIs Context get authenticated session Content Gradebook (subject to change) Util More to come

Proxy Tool Listing

User accessing form flow

Comparison of Technologies Installed Tools Custom code runs inside Blackboard Learn JVM Proxy Tools Custom code runs outside Blackboard Learn JVM Inherits look & feel of core application Supports multiple defined content levels. touch points plus additional application level definitions and portal module definitions Interacts with system data through all current direct access methods (APIs) Stores data on file system Supports touch points at the course, system, user, and content levels. Interacts with system data through exposed Web Services Stores tool data externally

Demo time!

For more information, please contact: Blackboard Developer Community edugarage@blackboard.com Visit: http://www.edugarage.com