blackboard building blocks looking ahead thursday, december 03, 2015 dan mcfadyen, tracy engwirda,...

18
Blackboard Building Blocks Looking Ahead Friday, March 25, 20 22 Dan McFadyen, Tracy Engwirda, Tom Joyce

Upload: michael-heath

Post on 13-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Blackboard Building Blocks

Looking Ahead

Tuesday, April 18, 2023

Dan McFadyen, Tracy Engwirda, Tom Joyce

Page 2: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’ve Been

6th Generation ProductNiche, small scale app to mission critical,

enterprise-wide applicationAn emerging vision…

Page 3: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We Are

API is “stable”– 6.0 is the baseline for development– We’ve seen the problems and know what’s

important moving forward

Growing developer community– Just look around…

The vision becomes reality…

Page 4: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Infrastructure Updates– Database support– Operating system support– JDK support

Embedded technologies– Tomcat upgrade (Servlet 2.3/JSP 1.2)

Page 5: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Breadth– Expose more functionality across subsystems

Depth– Expose more functionality within subsystems

Ease of Use– Simpler, more direct access to functions– Methods that encapsulate deeper logic

BbPersistenceManager pm = BbServiceManager.getPersistenceService().getDbPersistenceManager();

ContentDbLoader contentLoader = ContentDbLoader.Default.getInstance();

String contentIdStr = request.getParameter("folderId");

Id folderId = pm.generateId( Content.DATA_TYPE, contentIdStr );

Content folder = contentLoader.loadById( folderId );

String folderIdStr = request.getParameter( “folderId” )

Content folder = (Content)Id.generateId( Content.DATA_TYPE, folderIdStr ).loadObject();

Page 6: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Asynchronous processing– As B2 tools become ubiquitous, many tasks

need to become decoupled from user interface events

• E.g., should a user wait for 12 tools to handle a grade book event?

Page 7: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Event Infrastructure– “True” events that allow extensions to get

notified of data change events– User, course, enrollment synchronization– Data reconciliation

• Course Copy• Content Copy

Page 8: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Real-time logic extensibility– Data transformation

• Archive/restore/export/import

– Delegated logic• Extension decides rendering criteria

Page 9: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Workflow hooks– A step beyond events– Extensions can integrate seamlessly into

administrative workflows• User creation• Course creation• Enrollment

– Synchronous– Affect transaction outcome

Page 10: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Where We’re Going

Licensing and Access Control– Exposure of the Blackboard license API and

model– Extension of the model to support extension-

provided license criteria– API to standardize checks

Page 11: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Heterogeneous Development

CLR/.NET APIs (server)Web Services (server and client)

– Any language that can bind to a Web Service• Type-safe binding via stubs (generated from

WSDL)• Dynamic binding via standardized APIs (JAX-RPC)

– This is possible today… tell us what you want to see (or just build it and tell us about it)

Page 12: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Cartridge Integration

Better introspection of packages to get custom data types

Workflow to better facilitate getting the right extension into the system– Integrated mechanism to say, “Install this

Building Block now”

… but in a way that won’t make administrators nervous

Page 13: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Storage Solutions

Current model requires limiting storage decisions to remain “portable”

APIs to store arbitrary data in managed locations that are honored by import/export

Potentially opening and/or customizing the schema

Page 14: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Internationalization

Phase I – Support the dataPhase II – Support localization

– Extensions will require locale “matching” on install

Phase III – Support multiple locales– Locale matching gets more sophisticated– API to interact with locales at user and course

levels

Page 15: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Building Blocks as Enablers

Filling in feature gaps– Architecture changes are expensive; features

are less so

Can provide adaptor layer for standards support

Page 16: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Building Blocks and Blackboard

The new product strategy aims to leverage Building Blocks for our own releases

Smaller, lower risk platform upgradesApplication Packs

– Deployed via Building Blocks, where possible– Where it’s not possible, the platform will be

enhanced– More manageable upgrades, both for

Blackboard and customers

Page 17: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Building Blocks and Blackboard

Common functionality and framework across products– Learning System– Portal System– Content System

Knowledge on one will transfer to the others

Page 18: Blackboard Building Blocks Looking Ahead Thursday, December 03, 2015 Dan McFadyen, Tracy Engwirda, Tom Joyce

Thank You

Demos to Follow >