An Agile NHS Digital
Healthcare | Journey to Enterprise Agility
Spine is the national infrastructure platform that is used by the NHS. It supports critical NHS business applications, providing interoperability and the sharing of data across its various healthcare and management systems, enabling increased patient safety, improved quality of healthcare, greater clinical effectiveness and better administrative efficiency. It is used and supported 24 hours a day, 365 days a year. Spine is the world’s largest public healthcare system and is part of the UK’s critical national infrastructure.
Spine was originally conceived in 2004. This initial platform took some 15,000 man-hours to develop based on Waterfall development principles and was provided under a ‘Build-Own-Operate’ arrangement. As a result, it was expensive to build and deploy.
The legacy Spine lacked coherence and suffered from heavy on-going costs related to operating and having changes made to it. It was developed with different design patterns using different codebases, and at times, entirely different technologies. Each individual piece of its functionality had been delivered through a separate, highly bespoke mechanism. Alternatives had to be found.
The NHS requirements were clear: build and deploy a replacement system to reduce development, support and license costs, and increase reliability, performance and resilience. It required a partner with experience in replacing enterprise-scale systems using an Agile approach.
With virtually no disruption or downtime, BJSS successfully managed a major programme to rebuild Spine with Open Source products, securely transferring the entire NHS onto this improved system which would deliver increased reliability, performance and resilience.
The system uses Open Source rather than commercial products and was delivered iteratively using the award-winning BJSS Enterprise Agile® approach. This facilitated a rapid delivery, allowing for greater cost-savings and reliability and removed vendor lock-in. Spine is based on 12 Open Source products, ranging from databases to developer tools. These software products are proven on an Internet-scale, offering a viable alternative to commercial packages while delivering significant capital and operational cost-savings.
Automation is integral to the ability to support rapid and cost-effective change. Spine now includes comprehensive end-to-end test, deployment, service recovery and operational automation. This has resulted in a significant reduction in administrative overheads in comparison to the legacy system and has made it easier to make changes to the system.
The system’s new codebase is more efficient and easier to maintain, delivering a tenfold improvement in performance despite requiring just one-tenth of the legacy system’s infrastructure.
BJSS employed a coherent and uniform design approach to rebuilding Spine. As a result, while all existing interfaces have been retained, the various pieces of software used at its core now function in union. The system also benefits from full backward compatibility, is fully resilient and adds full automation and system testing. A five-fold increase in volume, achieving a 90 per cent reduction in latency has been recorded. Delivered on time and within budget, full ownership of the source code has been transferred to NHS in-house control.
The Enterprise Agile approach was used throughout the project to manage the overall software delivery process. While Enterprise Agile contains the best features of Agile, it also focuses on risk measurement from the onset, thus facilitating a tailored delivery approach which complements the project goals and ambitious timelines.
Key to the risk measurement phase was an intensive Discovery phase, where BJSS used Non-Functional Requirements (NFRs) to drive out technical architecture before proving it using PoCs. Suitable test approaches were determined while BJSS worked with the NHS teams to build and calibrate estimation models. An iteration plan was developed, which gave the NHS a timetable to work with and to monitor project progress.
Continual Discovery, refinement and client engagement were fundamental to the iterative patterns developed, allowing high-risk items to be delivered early. This iterative approach, with regular and consistent check-ins, was crucial to get the buy-in of the NHS operations team.
Continuous integration, testing and acceptance helped BJSS prevent ‘expensive’ surprises cropping up that would have resulted in significant code re-writes or delivery dates being missed. In addition to automated and continuous unit testing, formal UAT / OAT took place. Defects were closely monitored, and users were involved in data preparation and integration tests.
This focus on a ‘no surprises’ end game also meant that the NHS operations team could concentrate on planning how to make the new Spine more useful to its users.
BJSS integrated its governance structure with the Spine teams. This ensured a smooth handover on project completion to help satisfy the NHS’ demand to have more control of its IT.
By introducing the Enterprise Agile approach to NHS Digital and the Spine 2 project team, several benefits have been realised, including:
- Reduced personnel costs – The original Spine development was undertaken by a team of more than 850. Spine 2 was built with an Agile team of 25 and continues to be operated by a team of less than 30.
- Faster responses to Change Requests – The outgoing system required a costly test environment and between two and four years to implement. Continuous Integration, automated testing and deployment and a coherent design enable responsive and affordable action to change requests.
- Increased flexibility – Spine 2’s architecture enables further efficiencies to be achieved across the NHS. With built-in APIs, additional enhancements and innovations can be quickly achieved, and other suppliers and systems can easily integrate with the service.