OpenShift: making Agile development a reality for government projects

How and why we used a Platform as Service (PaaS) to help the Ministry of the Attorney General build capacity and improve citizen access to justice.
XFacebookLinkedInEmailCopy Link

Burdened by a high rejection rate for uncontested divorce filings, the Ministry of the Attorney General set out to simplify the process for citizens. Their primary objective was to improve access to justice for British Columbians filing for uncontested divorces without a lawyer. In this case, access to justice meant making the filing experience more empathetic, more affordable, and less error-prone. Using OpenShift, service design, and Agile development, our teams created the Online Divorce Assistant Application.

Bringing design research to life

To design the best possible service we consulted people inside and outside of government. We travelled from Vancouver to Victoria, Prince George, and beyond conducting interviews with people who had used the old system as self-represented litigants, lawyers, filing clerks, and judges. Our design research uncovered the strengths and weaknesses of the existing filing experience.

Our service design approach to creating a new digital experience included prototyping and iterating. The goal was to build, learn, and improve while the service was being developed. To accommodate learning derived from ongoing user feedback, we used an Agile development approach. This framework was suitable for the project because it welcomes changing requirements, daily cooperation, and the frequent delivery of software.

Laptop showing OpenShift platform screen

Embracing new methodologies

Historically, most comparable government digital service projects employ a waterfall methodology. But for the Online Divorce Assistant Application we wanted to follow a pattern of build, test, and refine. This pattern made it possible for our internal teams to work collaboratively and concurrently during research, design, and development.

Older generations of web-based applications come with legacy web and application server environments, managed through rigid build processes and release schedules designed for stability and control of the platform. Release windows open and close infrequently, with code freezes and testing cycles taking months to complete. This way of working threatened our goal of rapid iteration and would have slowed the project significantly. From the start of the project we knew that pursuing a citizen-first digital service in an Agile manner was incompatible with legacy ways of working.

Enabling innovation through collaboration and OpenShift

By partnering with the Office of the Chief Information Officer and Ministry of Citizens’ Services we were granted special permission to use a state of the art Platform as Service (PaaS) called OpenShift. OpenShift made deploying application changes into production a simple, repeatable, and automated process. Because it was containerized the application was isolated from the environment in which it was going to run. This enabled more consistent deployment, and eliminated any risk of interfering with other applications in the same environment. We were then able to manage multiple application environments (development, testing, production) with much less effort and cost than what’s possible in traditional build environments.

Home page of the new site using OpenShift and Agile Development

Building in an OpenShift sandbox

OpenShift made it possible for the Online Divorce Assistant to exist in its own private "sandbox." Pathfinder—the name given to the BC Government’s OpenShift initiative—was sheltered from the complexity of previous systems. Government systems and deployment environments typically have a steep learning curve, which slows the pace of development and impacts productivity. Thanks to OpenShift, the Ministry was able to avoid that.

Another benefit of OpenShift was that it allowed us to use an automated deployment process. This increased confidence for the Ministry because it reduced the likelihood of human error. Automated deployments guaranteed that no steps were missed when doing everything from backing up the database to setting up containers. This also meant that the environments could be created in minutes using a fully-scripted configuration.

By using OpenShift we helped the Ministry modernize both their technology capabilities and their infrastructure. The outcome is a citizen-first digital service created using a process informed by the principles of service design and brought to life using agile development.

Ready for OpenShift?

Wondering if you can benefit from OpenShift and make Agile development possible for your next project?