Mark Maietta, President and Chief Commercial Officer
Shift Left ignited a revolution in modern software development with the concept of early and continuous testing, resulting in higher quality and faster delivery.
The Shift Left principles focus on continuous integration and delivery, a practice designed to find and prevent defects early vs. later in the software delivery process.
Continuous integration is a development methodology that involves frequent integration of code into a shared repository through built-in controls that ensure quality and efficiency. Continuous delivery is the process of streamlining changes to production, such as configuration changes, new features and error fixes, with a goal of ensuring each deployment is high quality, sustainable, predictable and scheduled in a routine manner.
Christian Nicolini, Senior Director, Software Engineering explained, “It is much easier to ensure quality by moving tasks to the left in a software development lifecycle (SDLC), which means as early in the lifecycle as possible. The focus on quality starts at the beginning, instead of waiting for errors and bugs to be discovered late in the SDLC. We boost quality through the shift left process of enabling project teams to test, gather feedback, review changes and progress quickly.
Despite clear benefits and multiple advantages over the traditional waterfall approach, the clinical research industry was slower to adopt these ‘agile’ methodologies.
“Waterfall development is known for documentation at every stage of the software development lifecycle in sequential order, while one of the common misconceptions about agile approaches is prioritizing working software over comprehensive documentation,” said Mike Hughes, Senior Vice President, Product Development. “This has led to hesitation surrounding concerns of regulatory acceptance. In reality, agile can be modified to fit a variety of approaches. Documentation is still important, but it comes at the end of the development cycles rather than before development begins.”
The tide finally shifted a few years ago with broader industry acceptance of cloud technologies, and recognition of the beneficial impact of automation and iterative approaches. The initial hesitation quickly gave way to expectation, according to Steve Begley Chief Privacy Officer and SVP, Quality and Compliance.
The expanded use of Shift Left principles across clinical technologies drives better data quality, development efficiency and customer satisfaction, through earlier collaboration and minimization of surprises at the UAT stage.
So how does it work and what are some of the key components?
Test automation is one of the gates in the continuous integration pipeline. As code is developed and checked into a central shared repository, it flows through different automated control gates, with the goal of 80% of unit and 100% acceptance test coverage in each gate. (Unit testing refers to testing all layers of an individual function, to separate each part and ensure the components work together correctly. Acceptance is the test performed to determine whether the requirements or specifications have been met.) Each gate has a series of rigorous requirements for a successful build. Deployment takes place from the central repository, which also hosts all supporting documentation necessary for regulatory compliance and other good documentation practices. Deployment scripts and publish automation also help remove the siloed and error-prone nature of manual work during a release. “The automation of all pipeline activities prevents workflow interruption from scenarios like resource constraints, also boosting efficiency” added Christian.
Behavior-driven software development focuses on feature scenarios that describe how an application should behave from the user’s perspective. At YPrime, the feature lifecycle process begins with requirements gathering, followed by development of a feature file, which documents all planned scenarios for a software feature. Context is described first, followed by expected actions and behaviors. For example, if the intended user action involves easy navigation through the YPrime StudyBuilder to quickly configure a study; the scenario within the feature tests links and icons on the page, to ensure they direct the user to the proper page:
Scenario: Navigating to "Questionnaires" when user is on the eCOA Study Homepage Given User is on eCOA Study homepage When I click on a "Questionnaires" Icon Then I am re-directed to the "Questionnaires" page
Katelyn Toroniewski, who supervises the activities of business analysts responsible for guiding development of the feature file, described it as “like a specification document but written in plain English so it can be easily understood by all the different parties involved in development, from the technical to non-technical team members. From an application perspective, it’s the single source of truth.” Once the file is drafted by business analysts, it’s shared with all stakeholders involved in development to ensure understanding across the product team and planned scenarios are comprehensive.
The lifecycle of a feature undergoes a series of stakeholder reviews and further refinement from the development team until the feature file scenarios are accepted and ready for consumption.
While Shift Left principles require a mindset shift and business change that is best introduced with a phased implementation, it ultimately delivers scores of benefits critical for product performance which include:
- Early identification and fix of bugs
- Time and resource savings
- Improved test coverage
- Better collaboration across the teams involved with software development
- Faster, safer delivery
- Enhanced cost-effectiveness
- Better end user experiences
Stay tuned for more big news from YPrime related to agile development and eCOA solutions.