Slide 1

Slide 1 text

Blackboard Testing and Development in a Multi-Tier Environment

Slide 2

Slide 2 text

Kenny Barnt Marcus Jackson Application Administrators Office of Information Technology Central Michigan University

Slide 3

Slide 3 text

Obligatory Environment Description

Slide 4

Slide 4 text

Learn at CMU • Self-Hosted on Windows • 2016 Q2 Release (CU4 currently in testing) • For Fall 2016-Spring 2017 – 10,500 Courses – 26,500 Students – 2,000 Instructors

Slide 5

Slide 5 text

Three Tiers

Slide 6

Slide 6 text

Production • Infrastructure – Fault Tolerance – High Availability – Load Balancing – Disaster Recovery • Usage – It’s production…

Slide 7

Slide 7 text

Staging • Infrastructure – As close to Production as reasonably possible • Usage – Day-to-day troubleshooting – Change testing – Late Stage Development

Slide 8

Slide 8 text

Test • Infrastructure – Very simple, not necessarily at all like Production • Usage – Tech Previews – New Releases – Development

Slide 9

Slide 9 text

Maintenance Keeping the lights on

Slide 10

Slide 10 text

Production • All configuration changes must be approved. – Ticket to track work – Vetted in staging – Approved by manager (CRB if impact is high) • Maintenance Windows – Changes only allowed during Windows – Made during least impactful time.

Slide 11

Slide 11 text

Production Freeze Windows 1. Beginning of fall semester: Thursday of prep week through Tuesday of the first week of classes 2. End of fall semester: Monday through Thursday of exam week 3. Beginning of spring semester: First two days of classes 4. End of spring semester: Monday through Thursday of exam week

Slide 12

Slide 12 text

Staging • Enables testing of upgrades (CU’s, B2’s, etc.) • Periodic refresh from production – Based on Bb documentation – Documentation Repository • Step-by-step on refresh • B2’s custom configurations • Lessons learned from past iterations

Slide 13

Slide 13 text

Refreshing Staging • Gather B2 Settings • Refresh content share – 2,898,247 files – 1.5TB – ~ 4hours • Refresh SQL (from production backup) • Copy application folder from production • Make staging specific changes • PushConfig • Update B2 configurations

Slide 14

Slide 14 text

Test • Updated ad hoc • Never gets bulk data from production

Slide 15

Slide 15 text

Change Testing & Development

Slide 16

Slide 16 text

Basic Testing • Low-Risk changes • First Pass for higher-risk changes • Does the change do what it’s supposed to do? • Does the change break anything obvious/likely?

Slide 17

Slide 17 text

Testing Matrix • Common functionality used by students and instructors • Historically problem- or regression-prone functionality • eLearning Support maintained

Slide 18

Slide 18 text

Release/CU Installation Rehearsal • Refresh & Update • Basic Testing and Testing Matrix • Refresh & Rehearse at least 2x • Load testing

Slide 19

Slide 19 text

Annual Readiness Testing • Stress Testing • Multiple Applications Simultaneously • Fail-overs • Production

Slide 20

Slide 20 text

“Learning Opportunities” • SQL SA Accounts • Authentication • Safe Assign • Content Share

Slide 21

Slide 21 text

Questions? Test Matrix Available at: http://bit.ly/cmumatrix