To generate excitement and drive adoption of the new features among your learning community, see the Communication and Adoption Toolkit.
In addition to the release notes and technical details in this section, use the following resources when updating from an earlier release to the current release:
|Anonymous and Delegated Grading||Learn 9.1 April 2014||Instructors can hide student names from submitted assignments for anonymous grading. Instructors can delegate grading to specific users.|
|Assessments||Learn 9.1 April 2014||Significant figures have been added in calculated formula test questions, such as leading zeros.|
|ConnectTxt||Learn 9.1 April 2014||ConnectTxt is now available for Blackboard Learn. You can learn more about ConnectTxt and download the build from here.|
|eXplorance bluepulse||Learn 9.1 April 2014||Bluepulse is an open social platform that directly ties student input to classroom improvement. It is bundled in the Learn 9.1 April 2014 release.|
|Financial Aid Reporting||Service Pack (SP) 12 and higher||Generate reports of student academic contribution within a single or multiple courses in Blackboard Learn 9.1.|
|Mobile Learn||All Learn 9.1 Releases||This update includes resolved issues.|
|My Grades||All Learn 9.1 Releases||The look and feel of My Grades has been updated. Students now view feedback by clicking View Feedback.|
|Portfolios||Learn 9.1 April 2014||Portfolios are now accessed from the global navigation menu and have a new authoring canvas.|
|Profiles||Learn 9.1 SP 10 and higher||Profiles will be integrated with MyEdu to deliver an Enhanced Cloud Profile. The Enhanced Cloud Profile provides users with their first professional profile; helping them demonstrate skills & competencies they have developed through their educational journey in a visual and uniquely compelling way.|
|Redis Cache||Learn 9.1 April 2014||Redis Cache is bundled in Learn 9.1 April 2014.|
|SafeAssign||Learn 9.1 April 2014||SafeAssign is integrated into regular Learn assignments.|
|Student Preview||Learn 9.1 April 2014||Instructors can view their course exactly as a student does by using a student account the system generates for them.|
To learn how to install and activate building blocks, see Install Building Blocks.
The installer has been updated. For a successful installation or upgrade, read the new Install and Upgrade topics.
Environments are more secure, simplified, and better performing because all Web traffic is secured and tunneling proxy Web server has been eliminated for those without Shibboleth. To learn more, see Performance and Scalability.
Learn no longer supports SSL Choice and must be run over HTTPS. To learn more, see Install and Upgrade and SSL Configuration.
Activity Accumulator tasks have been moved from the database to bb-tasks. This change improves performance by running Activity Accumulator tasks in a low-priority pool and improves reliability as they may no longer become unavailable in the database. These tasks (bb.stats.queue_update and bb.etl.refresh_noaa) are configured in blackboard/config/bb-tasks.xml to run on at least one application server. This requires no additional editing of the bb-tasks.xml file.
The default task period is ten minutes for bb.stats.queue_update and one hour for bb.etl.refresh_noaa.
The new tasks in bb-tasks.xml are:
<!-- Must run on at least one application server -->
<task-entry key="bb.stats.queue_update" version="60">
<property name="delay" value="600000" />
<property name="period" value="600000" />
<property name="db-priority" value="low" />
<!-- Must run on at least one application server -->
<task-entry key="bb.etl.refresh_noaa" version="60">
<property name="delay" value="3600000" />
<property name="period" value="3600000" />
There is no db-priority on bb.etl.refresh_noaa because the priority is handled internally. This job always runs with low priority no matter how it’s triggered: Admins can trigger it manually and scheduled reports trigger the job before a run. This minimizes performance impact.
Technical changes to the primary navigation in Blackboard Learn make navigation easier for visually-impaired users and prepare the interface for future enhancements to better support hand-held devices.
Frames have been completely removed from the Learn application and replaced with HTML5 compliant DIVs and iFrames. This change improves page printing, accessibility, and page navigation.
There are two main reasons for making this change:
This release includes changes in the installer that modified the services and configurations of Blackboard Learn:
The Course Creation Wizard entitlement has been added to system roles: System Support and System Administrator. Users of the Course Creation Wizard module must be assigned this system role entitlement. The Course Creation Wizard found in the System Admin panel is unaffected by this change.
To learn more, see the User Roles and Privileges.
Blackboard is committed to improving security features and resolving security vulnerabilities quickly and carefully. Such security vulnerability resolutions may lead to the release of a Security Advisory as well as any needed product update for our customers based on the context, severity and timing of confirmed vulnerabilities. Below we have outlined the security enhancements and security vulnerabilities resolved in this release.
To learn more about specific security fixes for the April 2014 Release, see Security Fix Release Notes for April 2014 on Behind the Blackboard.
Input Sanitization is a security countermeasure to harden against cross-site scripting attacks. This release is part of a multi-release strategy to further enhance this security counter-measure. This release contains updated input sanitization APIs around primary key identifiers to make a more secure platform. To achieve the correct solution in the future without impacting clients, developers, and partners, Blackboard is starting by logging areas no longer conforming to expected API use to prepare for the API changes. These logging changes provide a means to identify needed changes in building blocks and other customizations prior to implementing stricter Input Sanitization filtering in the future and reduce the likelihood of potentially vulnerable transactions in Blackboard Learn.
At this time, these logged events are informational and helpful in identifying areas requiring code changes to conform to Primary Key Handling Coding Practices. In a future release, Blackboard Learn will begin filtering all of these potentially vulnerable requests.
Therefore, for events related to core Blackboard code appearing in the logs, no action is required. These items are planned to be resolved in an upcoming release prior to enforcing filtering. However, for events logged related to installed/add-on building blocks, this information will be valuable in planning for the future. Whether the building block is developed in-house or from a third party such as partner, an open source community, or Blackboard Consulting, administrators should begin conversations with the developers to plan for changes to the reported building blocks to conform to newer security practices related to the handling of primary keys.
These security events are logged in the Blackboard Learn bb-security-log.txt log file with a Learn specified security event code of 1026.
Support for IMS LIS has been updated to conform to the 2.0 final specification, supporting more recent releases from SIS partners and vendors. We also now support the retrieval of grade information through the LIS specification.
To learn more, see LIS - IMS Learning Information Services.
Integration feeds no longer are required to provide Learn passwords (RDBMS) at creation time for users, and passwords can safely be omitted from all types of integration feeds. When a password is not provided by the integration, Learn generates a Type 4 Guid hashed by MD5 password, which cannot be used for login and is used solely as a placeholder to ensure only external authentication is used.
The default for the password field in newly defined SIS integration is changed to be ignored on record update.
Existing integrations need to be manually changed to reflect this setting, which is correct unless the external record source (SIS) knows the bb-internal RDBMS password.
This also includes legacy command-line snapshot, and the PASSWD field has been added to person.bb.controlled.fields.
|On record creation when no password is provided||On record creation when a password is provided||On record update|
|SIS Integration|| |
Previously, when no password was provided in this scenario, a processing error would occur since a value was required. With this change, a placeholder password that cannot be used for login is used. The placeholder value is a Type 4 Guid hashed by MD5.
No changes. If the provided password is hashed, it would continue to be used. If the provided password was not hashed, then the system would by default securely hash using a salted SHA-512 hashing algorithm.
This release resolves a password syncing issue for RDBMS authentication and improves performance for customers using external authentication.
|Legacy Snapshot|| |
With this release, a placeholder password that cannot be used for login is used. The placeholder value is a Type 4 Guid hashed by MD5. This is a higher performing placeholder password than the previous algorithm and is acceptable because it is not used for authentication
|This release improves performance for password hashing. Passwords are hashed with salted SHA-512.||This release resolves a password syncing issue for RDBMS authentication and improves performance for customers using external authentication.|
In order to improve startup performance, Building Blocks (B2s) that previously shipped in the unavailable state are now inactive by default when performing a clean installation of Blackboard Learn. These changes do not affect upgraded systems.
Every available or unavailable B2 will be mounted at startup, and therefore impact startup time. If startup performance is a concern, consider reviewing and marking inactive any B2s that are not in use. Note however, that B2s do not necessarily implement availability controlled features, so changes should be tested carefully. A B2 having an unavailable state does not necessarily mean functionality can’t be used, or services are not being provided to the Learn platform.
Additionally, Blackboard has added two improvements to the Building Block Framework which improve application startup time by circumventing unnecessary class loading via bean introspection activity and unnecessary checks for loading of shared libraries. Both are additions to bb-manifest.xml.
Blackboard has added an element to the bb-manifest.xml file to circumvent class loading via bean introspection in cases where class loading is not used by the extension. The requires-bean-introspection element controls whether class loading is required by the building block. This change does not impact Blackboard class loading.
Addition of this element is only required when the following error is logged when attempting to install a building block:
"This classloader does not allow bean introspection, cannot load <classname>"
If a building block exhibits this error, add <requires-bean-introspection value="true"/> to the last line of the bb-manifest.xml (directly above the closing </plugin> tag). This instructs the Building Block Framework to perform the required dependency check for the building block to load and operate correctly.
Do not add this element unless required as indicated by the above logged error as this will negatively impact Learn Startup.
If the requires-bean-introspection element is absent or set to false, class loading via bean introspection is not performed, thus improving load-time for that building block effecting a positive overall Learn application startup time.
Blackboard has added a provided-packages element to the bb-manifest file to control the searching for shared libraries to those specified by the building block. This does not impact the loading of blackboard or com.blackboard packages.
If this building block is sharing packages via its libext folder for use by other building blocks, these packages are declared as child elements of the provided-packages element in the bb-manifest.xml. The provided-packages element is placed above the closing </plugin> tag (and requires-bean-introspection tag if required) as shown below:
<requires-bean-introspection>...</requires-bean-introspection> <!-- This line shown only for provided-packages placement - do not include this line if not required by the Building Block -->
This addition should be made in all cases where dependencies on shared packages are necessary as this manages the scope of package searches for loading.
For developers, there have been changes in deprecation status and organization of APIs for Gradebook access and persistence. Of specific note, package names for some APIs have changed. To learn more, see Building Blocks API and Web Services Specifications and Changes and Integration Development.
For developers, there are changes in this release regarding the values returned on some bb-config.properties when requested using ConfigurationServiceFactory.getInstance().getBbProperty() in a java class.
Of specific note, the return values for the following deprecated properties have changed:
In previous versions (e.g.: 9.1 SP13) the values returned were:
|Static Constant||Bb-config Property Returned|
In the April 2014 Release the following values are returned when using pre-April 2014 static constant references:
|Static Constant||Bb-config Property Returned|
For the April 2014 Release these should be replaced in java code as following:
|Pre-April 2014 Release||Static Constant|
Note: Failure to use the new constants in your April 2014 targeted Building Blocks will result in unexpected behavior as the values returned may not be as expected.
For a B2 using java classes utilizing these deprecated properties and constants to be compatible with previous versions of Learn you must provide a Learn version conditional that specifies the appropriate static variable request per version. The old property static variable must be hard-coded in the conditional as the string representation of the bb-confige value when compiling using the April 2014 Release libraries. E.g.: use “bbconfig.webserver.fullhostname” instead of the static constant WEBSERVER_FULLHOSTNAME.
To learn more about additional Known Issues that were resolved, see the Known Issues page.
For self-hosted installations, be sure your server hardware and software will support this release.
Windows 2012R2 Support
Windows 2012R2 is supported for 9.1 April 2014 Release
Given these significant changes, Blackboard strongly recommends that you perform a complete review of the install and upgrade documentation be performed before attempting to install or upgrade Learn.
Existing Blackboard Learn Release 9.1 clients can upgrade from the following versions to Blackboard Learn 9.1 April 2014 (Build: 9.1.201404.160205):
If you are a self-hosted client on a Blackboard Learn 9.1 release prior to 9.1 SP 12, you will need to upgrade to 9.1 SP 12 before you can upgrade to Learn 9.1 April 2014.
If you are upgrading from one of the releases listed below, please refer to Install and Upgrade for information to help you plan for this move. There are planning, training, and communication materials available to make this upgrade as smooth as possible. Please reference next steps based on your current release. For those migrating from Blackboard Learn Release 9.0 or Blackboard Academic Suite Release 8.0, please ensure that you include migrating to a 64-bit environment in your upgrade plans.
If you are a self-hosted client, you are on a release that is earlier than Blackboard Learn 9.1 SP 6, and you also use Oracle, you can use a pre-upgrade utility to minimize your downtime during this upgrade. Please consult the 9.1 SP 6 Release Notes and the Readme for the Pre-Upgrade Utility for Oracle for more information on this utility.
To learn more, see Installation and Upgrade.