Exposing Data For The National Trust

The National Trust are a UK conservation and protection charity. They protect places of historic importance and beautiful countryside, opening them up and making them accessible for the public to enjoy.

Embracing the Digital Age, The Trust embarked upon a large body of work to publish data about their places through a central API. In addition to relatively static data such as locations, opening times, and prices; a key requirement was to expose more dynamic data such as time sensitive notices.

Clarity Software Solutions were delighted to be engaged from the outset of this project, working onsite with The Trust’s development teams. We were involved in the full life cycle of this Agile Scrum project; from design, development and continual testing, through to deployment.

The API was designed as a stateless RESTful application, integrating with and exposing data collated from The Trust’s existing internal systems. Based around HATEOAS concepts, it was built using Java 8 and the Spring 4 framework; predominantly Spring Integration, Spring MVC, and Spring Data backed by a MongoDB database.
The development methodology was full Scrum with a particular focus on code cleanliness and separation of concerns. Test and Behaviour Driven Development (TDD and BDD) principles were followed throughout. jUnit tests were written to provide unit test coverage, whilst Gherkin feature files powered by Cucumber were used to test and assert feature scenarios and behaviour.

The project was successfully delivered on time and budget, and is a key component in The Trust’s data infrastructure, providing data to The National Trust main website and their mobile apps, with other projects and consumers being lined up to follow.