Have you ever thought about how much work goes on behind the scenes to keep all of NC State’s enterprise learning technologies running? In this story, we’ll look at how DELTA teams make upgrades to technologies and tools such as WolfWare, Moodle and Panopto with minimal downtime for campus users — thanks to regular maintenance and a rigorous testing process.
DELTA hosts a whole suite of WolfWare tools that must be integrated to work together. Updates, or patches, are released throughout the year. DELTA’s Academic Technology unit, which includes applications development and system support services, collaborates and works with project managers to meet their timelines.
For each enterprise learning technology DELTA offers, the upgrade process includes specific steps to make sure applying enhancements doesn’t “break” something.
According to Associate Director of Open Source Applications Steve Bader, upgrade teams are created for each tool, depending on how large a lift it is. Sometimes there are code modifications to test out while at other times, a significant upgrade in the code will demand close attention to detail to functions and the look and feel of the tool.
“It isn’t as easy as one may think,” says Bader. “With large web applications, there are servers to be configured, plug-ins to test, and support materials to be updated, etc.” There are members of the Systems Support team who deploy new servers for the upgrade teams to test the new versions of tools like Moodle, Panopto, Top Hat and more.
In the development review phase which takes place from October to February, an upgrade team is formed to evaluate all the plug-ins and code modifications to make sure they still work as expected. Once the team gets a copy of the new code for the upgraded versions, our team of PHP developers begins to compare the new code with the current version.
Below is a list of the Moodle development review steps. Keep in mind, this is just one tool and we host many others that require similar steps.
- Install new dev/test servers for developers and internal testing of the new Moodle install. This includes installing an unmodified Moodle instance to review new Moodle features in the upcoming version.
- Pull plug-in usage numbers and review current plug-ins. Create reports concerning all plug-ins with Moodle showing how much they are used and how supported the plug-in is by the community. Make decisions regarding what plug-ins will continue to be used and what can be removed from Moodle.
- Review open Feature Requests for potential inclusion or resolution. Determine what feature requests are satisfied by the new version of Moodle. Also, begin work on new feature requests that will launch with the new version of Moodle.
- NC State code commit walkthrough. Step through roughly 100 alterations to the code base that are made to customize Moodle to look and feel like an NC State application. Determine if changes are still needed. Update and improve if necessary.
- Review Configuration and Capabilities. Review settings and role capabilities that have been added in the new version of Moodle. Decide how each is to be set and write them to our configuration script.
- Install the initial test Moodle instance. The first version of the NC State themed, configured, and modified Moodle instance.
- Begin testing NC State integrations. Review Course Copier, Grade Submit, Outreach web API, Outreach enrollment monthly report cron, and prep competency sync scripts for new Moodle version.
Bader explains how the team reviews a usage report for all the current plug-ins to determine if they should be updated or eliminated. The team may also be adapting the code to include new feature requests as part of the maintenance cycle.
Sometimes feature requests from faculty and staff are sent to the WolfWare Governance team to approve before the team tests and adds new code.
The team reviews the capabilities and configurations of each module and plug-in. Bader further details how the team works with plug-in vendors to make sure they are doing their part to release their patches or new versions on time.
Each member of the upgrade team has a different role to assist with the review of plug-ins to make sure they are maintained and support the new version of the tool. The support teams in DELTA’s Digital Learning unit who create workshops and answer LearnTech help calls check the new versions to understand the enhancements they’ll need to teach and answer questions.
Prior to the “Go-Live” phase, which usually occurs in March, the team reviews a detailed list of items called the backlog. The new version of the tool is used for the next academic year, starting with summer sessions.
Non-academic Outreach and Project servers are typically updated in May to the new versions of the tool as a part of the yearly release.
Since Bader started working at DELTA in 2012, he explains how they have continually planned and worked on updates before they are launched.
For DELTA, this pivotal preparation has positively impacted how the tools continue to function properly. Bader says, “Our uptime is good because of our testing process. We are able to release upgrades each year because we are thorough. And as a team, we have grown to be able to have more eyes on the code. This year we hired Saras [Grandhi] who is our first developer dedicated to testing.”
In 2021, the team has completed
- 61 upgrade tasks
- 60 modifications to Moodle core that the team maintains
- 54 additional plug-ins in addition to Moodle (examples include Panopto, Zoom, H5P, Roadmap, Gamification, quick mail blocks, Turnitin, etc.)
- 20 LTI integrations (connections to another tool like PlayPosit, Gradescope, WeBWorK)
DELTA has the responsibility to keep the tools up and running with minimal disruptions for thousands of campus users.
For instance, the number of Registration and Records sections hosted in Moodle during fall 2021 was 5,749. This includes 34,534 active, unique students and 163,183 enrollments.
In addition to local modifications DELTA maintains for our Moodle installs, our team contributes comments, suggestions and code to Moodle’s core open-source application. Many of our developers have had their code suggestions adopted into Moodle core, thus improving Moodle for all users.
In fact, NC State is a member of the international Moodle Users Association, which increases the DELTA team’s understanding of the direction the tool will be headed. Bader is currently involved in development meetings with Moodle, which is headquartered in Australia.
It takes a village and time to implement updates to NC State’s enterprise learning technologies. Many times users may not even notice slight changes or improvements — which is the goal since DELTA’s teams work behind the scenes all year. DELTA’s teamwork behind the scenes all year to test, improve and keep applications current.
Stay tuned for more news about updates coming during spring break 2022.
Each Tool Has Its Own Upgrade Team
The current Moodle upgrade team is prepping for the spring break maintenance window. The team includes DELTA subject matter experts from many areas. Team members include:
- Steve Bader, Moodle Lead and Associate Director, Open Source Applications
- Christine Belledin, Project Manager
- Marty Dulberg, Coordinator of Learning Technologies
- David Howard, Interim Senior Director, Academic Technology
- Stacy Gant, Interim Senior Director, Digital Learning
- SarasChandrika Grandhi, Software and Testing Evaluation Analyst
- Bethany Smith, Association Director, Instructional Technology Training
- Scott Watkins, Associate Director, Instructional Technology Support, and
- Jeff Webster, Director, Educational Technology Services.