Dutch National Police, Government / Front end & API
Organising evidence, with an API as the benchmark
In an Ordina High Performance Team, Aart den Braber designed a REST API and Angular front end for organising evidence and managing access rights to it.
- Angular
- OpenAPI
- CI/CD
- UX
Team experience. Aart den Braber worked on this project through Ordina, before joining WeCatalyze.
18 → 6 min
CI/CD pipeline build time
- Client
- Dutch National Police
- Role
- Lead front end & UX design
- Period
- 2020–2021
- Platform
- Angular + OpenAPI 3
The context
At the Dutch National Police, the team was responsible for an application to organise evidence and manage access rights to it. At the end, the team handed its knowledge over to a police team.
The problem
A complex existing application, a team that would take over the back end, and users with specific needs: the new foundation had to work for all of them.
Core problem
After every change, the successor team had to be able to see whether everything still worked.
The approach
Aart researched the system requirements and user needs, prioritised them and translated them through user testing into a detailed API design.
- 1
Designed a REST API in Swagger (OpenAPI 3), optimised for the front end, with partial responses as a kind of simplified GraphQL.
- 2
Set up a new Angular project, built on what users needed.
- 3
Sped up the CI/CD pipeline from 18 to 6 minutes with caching and other optimisations, and set up rolling updates so updates cause no downtime.
What was built
A thoroughly tested API that serves as the benchmark for the back end, and an Angular front end. In a follow-up project, the team made several smaller internal applications maintainable, with reusable packages.
Results
Using the API tests, the police team can see whether a refactoring or new feature succeeds without breaking anything else. Aart also gave workshops on testing; another team then wrote real tests instead of snapshots, with full coverage on its components.
- CI/CD build time
- 18 → 6 min
- downtime during updates
- 0
- component test coverage
- 100%
Facing a similar problem?
Tell us what you're running into and we'll show you how we would approach it.
