Top Banner
Blackboard Building Blocks Introduction to Building Blocks Wednesday, June 15, 2022 Bob Alcorn, Director, Platform Architecture
51

Blackboard Building Blocks

Jan 22, 2016

Download

Documents

alcina

Blackboard Building Blocks. Introduction to Building Blocks. Bob Alcorn, Director, Platform Architecture. Tuesday, September 2, 2014. Topics. Goals of Building Blocks What are Building Blocks Types of Building Blocks Building Blocks Program Components Developers Community - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Blackboard Building Blocks

Blackboard Building Blocks

Introduction to Building Blocks

Friday, April 21, 2023

Bob Alcorn, Director, Platform Architecture

Page 2: Blackboard Building Blocks

Topics

Goals of Building BlocksWhat are Building BlocksTypes of Building BlocksBuilding Blocks Program ComponentsDevelopers CommunityBuilding Blocks Roadmap

Page 3: Blackboard Building Blocks

Goals of Building Blocks

For Students and Instructors

Access to a wide range of discipline specific, pedagogically specific, and more engaging content and applications.

Page 4: Blackboard Building Blocks

Goals of Building Blocks

For System AdministratorsCreation of new breeds of applications to aid in the deployment management and operation of the Blackboard Platforms.

Integration of other tools, applications, and services under a common platform.

Page 5: Blackboard Building Blocks

Goals of Building Blocks

For Developers

Create an extensible platform which can be used to create exciting new applications, integrate existing tools, and extend the core modules on top of a common, easy to learn, platform.

Page 6: Blackboard Building Blocks

Goals of Building Blocks

For Partners

Create a marketplace for 3rd party application developers and consultants for their products and services.

Page 7: Blackboard Building Blocks

Goals of Building Blocks

For the CIO, CFO

Enhance the ROI for Blackboard and other applications which can be integrated together to increase utilization.

Page 8: Blackboard Building Blocks

Goals of Building Blocks

For Blackboard

Extend the value proposition for our clients far beyond what we as a single company can provide.

Page 9: Blackboard Building Blocks

Technical Goals – High Level

Iterative functionality– Start with lightweight objects

Managed extensibility– System extensions and deployment model– Well defined entry points– Non-binding entry points

Simple persistence– Database abstraction– XML and Database– Originally targeted for import/export

Page 10: Blackboard Building Blocks

What are Blackboard Building Blocks?

Blackboard Building Blocks (B2) is theunderlying architecture that enables the Blackboard platform to easily integrate educational web-based tools and content that meet institution-specific, discipline-specific or accessibility needs.

Page 11: Blackboard Building Blocks

Blackboard Building Blocks

It is NOT just a set of Application Programming Interfaces (APIs)

It is a framework for extending the Blackboard Platforms, integrating new components, and interoperating with other applications.

It is a robust program for facilitating the development of enhancements to the Blackboard platforms.

Page 12: Blackboard Building Blocks

Building Blocks Across Products

Page 13: Blackboard Building Blocks

“Operating Environment”

Blackboard Building Blocks

Content Mgt

Content Authoring

Communication

Collaboration

Content

Assessment

Security Library Systems

Homegrown Applications Back Office Systems

Page 14: Blackboard Building Blocks

Building Blocks Technology

Java Platform– JDK 1.3.1 and higher– Web application

• Servlet 2.3• JSP 1.2

– Security

Blackboard APIs– Data APIs– Service APIs– Tag Libraries (JSP/Servlet)

Page 15: Blackboard Building Blocks

Tomcat

Building Blocks Technology

Database(SQL Server,

Oracle)

Perl (ActiveState,

mod_perl)

Web app

Web Server(IIS, Apache)

Page 16: Blackboard Building Blocks

Anatomy of a Building Block

Package (.war/.zip file)

Platform Descriptor

Blackboard Manifest

Web Resources

Libraries

web.xml (Servlets)

Servlets, JSP (Java)

.class, .jar files (Java)

Content Type, Tools, etc.

Page 17: Blackboard Building Blocks

Building Blocks Architecture

Core Services

Data Objects

Business Layer(JSP, Servlet, Struts)

View Layer(JSP, Servlet, Tag Library)

Log

Security

Config Persistence

Session

I18N VXI

Context Plug-ins

Page 18: Blackboard Building Blocks

Types of Building Blocks

Extend Existing Blackboard FunctionalityAdd New Functionality into Blackboard Integrate 3rd party applications with Blackboard Integrate Blackboard with “Back-office” SIS and

Authentication SystemsCreate and Consume XML-Based Web ServicesProvide and Render portal modules, portlets,

and RSS Channels… and MORE!

Page 19: Blackboard Building Blocks

Types of Building Blocks

Building Blocks which extend the existing functionality within Blackboard– Example: Adding a

new content type and handler to the content engine such as a WYSIWYG Editor

Blackboard PlatformBuilding Blocks Manager

JAVASQL

Application

Application

Application

Application

Application

Application

Application

Content Engine

Text

Images

Multimedia

WYSIWYG

WYSIWYG

Page 20: Blackboard Building Blocks

Types of Building Blocks

Page 21: Blackboard Building Blocks

Types of Building Blocks, contd.

Building Blocks which add new functionality to Blackboard and take advantage of the Blackboard platforms “machinery” to run.– Example: Adding a

new tool such as the dictionary / thesaurus tool to Blackboard.

Blackboard PlatformBuilding Blocks Manager

JAVASQL

Application

Application

Application

Application

Application

Application

Dict / Thes

Dictionary/T

hesaurus

Page 22: Blackboard Building Blocks

Types of Building Blocks, contd.

Page 23: Blackboard Building Blocks

Types of Building Blocks, contd.

Building Blocks which integrate a third party application with Blackboard– Example: Adding a

new assessment engine to Blackboard

Blackboard PlatformBuilding Blocks Manager

JAVASQL

Application

Application

Application

Application

Application

Gradebook

Integration Agent

Bb

Assessm

ent

C++

3rd Party Assessment Engine

SQL

Integ

ration

Ag

ent

Page 24: Blackboard Building Blocks

Types of Building Blocks, contd.

Integration Agents which integrates Blackboard with Back-office ERP systems such SIS system as well as authentication systems such as LDAP and Kerberos.

Blackboard PlatformBuilding Blocks Manager

JAVASQL

Application

Application

Application

Application

Application

ER

P In

tegratio

n A

gen

t

SISLDAP

Au

then

tication

Ag

ent

Application

Application

Page 25: Blackboard Building Blocks

Types of Building Blocks, contd.

Integration agents or Building Blocks which interoperate with XML based Web Services.

Blackboard PlatformBuilding Blocks Manager

JAVASQL

Application

Application

Application

Application

Application

Application

Application

Web Service

Web Service

Application

Page 26: Blackboard Building Blocks

Types of Building Blocks, contd.

Building Blocks which add new modules to the portal.– Example: adding a

portal module which allows students and faculty to preview the menu at the dining halls.

Blackboard PlatformBuilding Blocks Manager

JAVASQL

Portal M

odule

Portal M

odule

Portal M

odule

Portal M

odule

Portal M

odule

Portal M

odule

New Module

New

Portal M

odule

Page 27: Blackboard Building Blocks

Types of Building Blocks

Meta-data driven– Different “types” really just means different

“entry points”– Defined in bb-manifest.xml

Types are not specifically enforced– A “content handler” could in fact launch a

collaboration component

Page 28: Blackboard Building Blocks

Building Blocks Program Components

• Building Blocks Web Sites • http://www.blackboard.com

• Extend Blackboard “Tab”• Learn about Building Blocks• Building Blocks Catalog• Featured Building Blocks• Community Links

• Developers “Tab”• Building Blocks Software Developers Kit (SDK)• Documentation• Sample Code

Page 29: Blackboard Building Blocks

Building Blocks Program Components

• Blackboard Developer Network (BbDN)• Developer Tab• Bb Developer Licenses• Communities, Knowledge Base, Code

Snippets, White Papers, Beta Software

• “Blackboard Enabled” Logo Program

Page 30: Blackboard Building Blocks

Extend Blackboard

Page 31: Blackboard Building Blocks

Extend Blackboard– B2 Catalog

Page 32: Blackboard Building Blocks

Product Add-ons - Community

Page 33: Blackboard Building Blocks

Developers

Page 34: Blackboard Building Blocks

Developers – Code Samples

Page 35: Blackboard Building Blocks

Developers – Tips and Tricks

Page 36: Blackboard Building Blocks

Developer - Documentation

Documentation

Application Framework

Extension Developer Guide

Module Developer Guide

Extension Migration Guide

Blackboard API Reference (Javadoc)

Building Blocks FAQ

Page 37: Blackboard Building Blocks

Developer – Submit Building Block

Page 38: Blackboard Building Blocks

Blackboard Developers Network

Page 39: Blackboard Building Blocks

Developer Network Highlights

Access to a large community of expert Blackboard developers and administrators

Latest Blackboard SoftwarePre-release access to upcoming versions

Page 40: Blackboard Building Blocks

Active Community

Page 41: Blackboard Building Blocks

Growing Community Outside of Bb

Page 42: Blackboard Building Blocks

“Blackboard Enabled” Logo Program

Look for the Logo! Independent Compatibility Testing

– Conducted by Quality Partners

Assurance of safety, reliability, qualityFree test plans

– Blackboard 5– Blackboard 6 (coming very soon)

Page 43: Blackboard Building Blocks

Building Blocks Roadmap

Evolution of Building BlocksWhere we are todayWhere we are going tomorrow

Page 44: Blackboard Building Blocks

Evolution of B2 – Release 5.5

1st Generation of Building Blocks– 1st Release of APIs which included content,

user, announcement, and others– 1st Release of the Building Block Manager

which facilitated the deployment of building blocks

– UI hooks were student centric or content related

– Blackboard and the development community learned much.

Page 45: Blackboard Building Blocks

Evolution of B2 – Release 6.0

2nd Generation of Building Blocks– APIs are made consistent and simplified. New

APIs are added.– 2nd Release of the Building Block Manager

enhances management; adds security.– Additional UI hooks added throughout the

platforms. New hooks for instructors and administrators available.

– Portal APIs and “Back Office” APIs are added

Page 46: Blackboard Building Blocks

Where we are today

Over 500 Institutions are using Building Blocks

Over 3,000 extensions have been downloaded from the catalog

Over 150 extensions available in the Building Blocks Catalog

Active developer community– Bb Developers Network– External Community – Open Source, BbUG

Page 47: Blackboard Building Blocks

3rd Party Partners 3rd Party Tools and Services

Instant Messaging

PDA Synchronization

Enhanced Assessment Engines

Enhanced Collaboration Engines

Enhanced Handheld Support

Enhanced Content Management

Enhanced Content Handling

Mathematical & Scientific Notation

Content Management

Portal Technologies

Content

… and Much, Much More!

Page 48: Blackboard Building Blocks

Where we are going

Breadth – More ways to expose functionality– .NET based APIs which allow Building Blocks

to be developed on any of the CLR supported languages.

– Web Services. Platform-neutral APIs for rich client applications or server integration

– Additional UI hooks to integrated in almost every area within the control panels.

Page 49: Blackboard Building Blocks

Where we are going

Depth – More functionality– Event Based API System– New classes of APIs

• Reporting APIs • Licensing APIs

– UI and Building Block hooks into other elements of Blackboard such as “List Pages”, “Textboxes”, and “Browse Buttons”

…and More.

Page 50: Blackboard Building Blocks

Where we are going

B2 is a foundation technology for Blackboard

Much functionality from Blackboard will be release as Building Blocks, via Application Packs

Encouraging smaller, more manageable upgrades

Page 51: Blackboard Building Blocks

Thank You

Demos to Follow >