Purpose:
This document provides information related to the method and process applied to software upgrades of the Vivoh multicast client and Vivoh Webinar Manager server.
Background:
The Vivoh multicast client and Vivoh Webinar Manager server are COTS (commercial off the shelf) software products produced by Vivoh. This software leverages the multicast protocol between a staff’s laptop and your data center infrastructure to facilitate scalable live video streaming. The software consists of a thick client agent that is installed on all corporate laptops (Windows and Mac) that enables staff to join a multicast live video stream on the customer network and a server that generates this stream. The software also provides functionality to detect when staff are not working on a multicast-enabled customer network and seamlessly redirect them to Zoom or Vimeo instead.
Methodology:
In alignment with the Technology Operations Patch Management Standard and Network Services Patching Guideline, customer updates the Vivoh software client as needed through an upgrade assessment and validation process.
Factors considered in the assessment include; vendor and industry vulnerability notifications, new feature enhancements and requirements, changes in platform (client OS) support, and software aging/end of support announcements.
The identification of a specific triggering requirement(s) is a prerequisite of a decision to move forward with an upgrade process.
Customer does NOT employ the practice of automatically upgrading software as soon as the latest version becomes available from the vendor. We find that doing so can lead to an ongoing cycle of continued evaluation and upgrading of software. This can result in replacing one defect with another unnecessarily. Instead, we prefer to carefully assess our requirements and only upgrade when necessary. This helps us avoid wasting valuable technical resource cycles and reduce the risk of defects being promoted to production. Instead, cycles are focused on periodical as needed upgrades in an efficient and structured process.
New software releases are carefully evaluated for potential risks and then distributed to systems in a phased approach.
Process:
The following process of evaluation, testing, and rollout will proceed after the assessment has resulted in a decision that an upgrade is warranted:
Identify requirements – New and pre-existing requirements are identified for focused functionality and regression validations.
Research - Software revisions are researched to find the best release candidate that will be used in the initial testing efforts.
Multiple factors go into this effort including a vendor consult, key requirements, a known bug review, and a software lifecycle assessment amongst others as needed.
Coordinate resources - Members of the Help Desk, Desktop Support and Engineering, Network Engineering, and the PM (Product Management) and Customer Advocacy team then collectively gather to begin an iterative process of performance and functionality validations.
Testing and Rollout – Vivoh software is released through a major, minor, and patch release practice. As such, validation practices can differ based on the level of risk associated with the level related to change and the likelihood of impact. The criticality of security risk may also play a part in escalation of deployment.
Major release updates – Includes major changes to a software product left of the decimal that are considered elevated risk, requiring multiple phases of testing and validation. This includes early testing by project and internal teams before moving on to multiple phases of early adopter and production roll out.
Minor release updates – May include new feature releases, as well as bug and security patches as necessary though are typically associated with a lower level of risk than major releases.
Patch release updates – May include minor patch and/or security updates. The latter of which may come in the form of an urgent requirement that is dependent on the level of severity.
Timeline and Iteration:
In some cases, multiple software releases may need to be tested during the process depending on the results. The iterative nature of this type of activity may extend the timeline as a suitable release of software is identified for production deployment.
Additional Context:
Vivoh software updates are initially deployed as an optional and self-initiated update for staff who can choose a time to perform the upgrade. This approach allows staff to select a convenient time for them to go through the software update process.