Komodo Digital Logo

Police E-Box Windows Mobile App

The design and development of a Windows Mobile application for Northumbria Police


Komodo’s role in the project was the design and development of a native Windows 8 mobile application that has been deployed to Windows smartphones and successfully rolled out across the force.

The full feature-set of the app is extensive but some of the key features include:

  • Easy and intuitive to use pivot control design pattern
  • Officers are notified when allocated to an incident
  • Officers can easily view associated data to any incident
  • Users can view and update previously allocated incidents
  • Easily search for incidents and access real time data and intelligence via the device
  • The app highlights any warnings that are attached to a record
  • Updates to incidents available via notifications
  • Easily associate data records to incidents
  • The officer can use on board camera to take pictures and attach directly to incident. This functionality is currently switched off until Northumbria Police implement a media repository
  • Comments can be directly added to an incident
  • Officers can subscribe to and follow multiple incidents

Benefits that the Police E-Box application provides the force are many, here are some of the key benefits:

  • Frees officers from the confines of desks when they need ready access to information
  • Reduces load on Resource Controllers and radio channels
  • Improved preventative policing
  • More effective and efficient call management and officer deployment
  • Improved management of vulnerable people
  • Significantly increase officer productivity leading to increased officer capacity and visibility.
  • Improved data capture reducing the amount of duplicated processing effort
  • Consistent, timely and comprehensive view of real-time data including people, vehicles and premise
  • Improved decision making  
  • Improved quality of service provided to communities by the force
  • Improved customer satisfaction

The app is undergoing continuous development that will see enhanced functionality and an expanding feature set in subsequent iterations and Komodo continue to work with Northumbria Police on the project as the mobile design and development partner for the Police E-Box project.

“This has been a significant project for the studio and demonstrates our design and development capabilities within the mobile field along with our ability to deliver complex and highly technical projects in close collaboration with a client project team and users with highly specialised requirements.”

Andy Greener – Managing Director, Komodo

Project Background and Purpose

Northumbria Police’s Police E-Box project is transforming the way policing services are delivered to communities. Enabled by technology, officers and support staff have the ability to interact with the information they need in the place that they need it, for police officers this means their communities. This capability will not only enable the increase of efficiency in redesigned end-to-end processes but also improve the quality of service provided to communities by the force.  

Previously, IT services with the force were accessed from traditional desktop PCs in police premises connected with traditional WAN/LAN technology so mobile technology has changed infrastructure requirements and, most importantly, freed officers and staff from the confines of desks when they need ready access to information.

The Force’s operational system has been developed in-house over the past three decades and, whilst rich in data and functionality, suffered from a poor user experience and was constrained by its character-based user interface.

Modernising the system to deliver a state-of-the-art user experience (on multiple service access devices) drives significant efficiencies and service improvements. e.g. More timely and dynamic intelligence-led tasking and briefing will lead to improved preventative policing, enabling more effective identification of vulnerable people and timely protective measures to be taken.  Also, more effective and efficient call management and officer deployment will lead to improved management of vulnerable people and improved customer satisfaction.

Dynamic and timely use of information by officers will significantly increase their productivity leading to increased officer capacity and visibility. Improved intelligence capture will reduce the amount of duplicated processing effort whilst providing a consistent, timely and comprehensive view of intelligence to support improved decision making.  

In short the adoption and integration of mobile technologies within the force will fundamentally improve the service that it delivers within its communities, the Police E-Box project is at the heart of this.

Our Team and Role

Our role in the project involved the Komodo team working closely with the Northumbria Police Police E-Box project team throughout with directly responsibility for:

  • Design of the user experience and interface for tablets and smartphones
  • Development of the user mobile application
  • Initial testing of the mobile application
  • Providing support to the Forces testing, pilot and roll out of the application
  • Providing hand over training to the Forces ICT Department to allow internal support of the applications.  

The project team consisted of a Technical Lead, a Design Lead, two mobile developers, two UX/UI designers and a Project Manager.

Each sprint started with a planning event that defined the backlog of user stories that we would deliver during it and each day there was a stand up meeting to discuss progress and highlight any potential blockers or stoppers to the sprint progress. At the end of each sprint we released what had been produced during the sprint for review and feedback from the Northumbria Police team.

We know and understand software development to be a creative process that throws up a myriad of challenges over a project lifetime. The Agile approach, with the consent and support of our clients, was the ideal tool to navigate and address challenges and change with minimal disruption to delivery of the Police E-Box project.

UX/UI Modelling and Design

Once a full backlog of user stories had been created it was possible to model out the user flow through the app in detail so that all features and functions described with the user stories were incorporated and planned into the design and development workflow.

Detailed task flow diagrams were created for all features within the app so that a clear understanding of each feature was established and agreed across the project team. The product flow was highly granular and the user stories were constantly referred to in order to align them perfectly.

Windows UI guidelines were followed closely and standard Windows interactions utilised wherever possible to facilitate this.

Throughout the design process design iterations presented and discussed with officers from a range of teams and departments that included traffic, firearms and rural amongst others who all highlighted specific requirements. An example being officers that operate in rural areas are often unable to connect to a mobile network so it was important that the application would cope with these scenarios where connectivity was an issue.

Development

The core Komodo development team comprised of two Mobile Developers and the Technical Lead who provided leadership, expertise and support to the Mobile Developers working directly on the code.  Other, additional developers were brought onto the project as needed to assist with testing and specialist programming tasks.

The team worked together allocating development tasks effectively, ensuring a rigorous QA (Quality Assurance) process was in place and discussing approaches to the build that allowed the team to test and 

For the ‘techies’ reading this, the following are a couple of examples of the development challenges the development team faced and overcame.

Development of the Mock API

As the team didn’t have access to Northumbria Police’s API we were forced to write our own based upon a sample API provided. A lot of the functionality had to be replicated to mimic actual operation. The mock API was written using ASP.Net, primarily so it could be bundled alongside the app and run on a local machine easily using the same instance of Visual Studio.

The Mock API proved to be an invaluable tool and we were able to simulate latency, timeouts and the actual operation of the phone with as close to live data as possible.

It was especially useful when developing data synchronisation functionality, as this was a one of the most important parts of the app.

Architecture

The app is designed to work on both Windows Phone and Windows Tablets (the tablet version was not delivered due to changes in client priorities), so it was imperative that as much of the app logic was to be shared as possible with no dependencies on a platform. The team decided to use an MVVM system where ViewModels are supported by services and data providers. This provided the basis for a loosely coupled system.

However, we wanted to extend this thinking. In WinRT apps users are forced to navigate to Pages which would break the dependency on the platform. What we decided to do was to create a messaging bus system to solve various problems:

  • Inter ViewModel communication without reference holding
  • Separating logic into their own components
  • Extensibility

By manually bootstrapping a page (View) to a ViewModel, we could effectively navigate to the model, instead of navigating to the page. The model would identify which page to actually use, and then bind itself to the page.

The message bus is the backbone of the app, used for navigation, app lifecycle and many others. The upside of the bus is that the messages are platform agnostic and a ViewModel, service or dataprovider listening to a message doesn’t care who the sender is. This vastly helps decouple the models and provided a testable foundation for solid, well structured code.

Testing

Along with conventional testing the Komodo team additionally built an integrated automated testing suite to ensure a robust deployment process throughout the Agile development. This approach to testing ensured quick identification of issues and a feature complete deliverable which had been tested at each stage of review.

The app was developed with separation of concerns in mind. And this proved highly effective in aiding the construction of a Unit Test suite.

The team decided to forgo unit testing for simple methods whose logic is tested implicitly and instead concentrated on methods that perform complex logic; such as validation, subscribing, web requests and responses, database operations etc.

Each test has only 1 dependency – the ShellModel. The shell is the root model for the app and initialises all services that are used within the app. This made it trivial to ‘black box’ each test class so that it doesn’t interfere with another test, it just gets recreated for each class.

Because each ViewModel was limited to just display data, navigation and creating/running data provider operations; this limited testing to checking to make sure the model was displaying the correct information. For data providers, testing meant checking to make sure the api responses had nothing that would break the models.

Unit tests are good for testing individual slices of logic but they don’t test how that logic works together, for this we needed the functional tests. Towards the end of the project the Komodo team looked to add functional testing in the form of simulating user interaction.

The advantage of this is that we can, in essence pretend that we are actually tapping buttons and seeing what breaks. The architecture of the app allowed us to get rid of all the views in the app altogether, i.e. we don’t need the view to press a button. We could then, test when a user interacts with the app in a certain way by reproducing the steps.

For example:

Login using force id xxxx and password xxxxx
Go to this page here
Do this operation
Press the back button
Go to the same page

However, with the deadline for handover looming, we made the decision to leave out the unfinished functional test suite. However, the technique proved how powerful and comprehensive it could be, and in future apps we would utilise functional testing first and foremost to speed up development time.

During the course of development we had scheduled significant test sessions when another development team would tear the app apart to provide further oversight into QA and identify bugs and usability issues that slipped through the cracks.

Project Handover

Once all internal QA was completed the app has handed over to Northumbria Police for UAT (User Acceptance Testing). Because of the stringent QA at our end the UAT process highlighted minimal insignificant issues.

As part of the handover we then went through the codebase with their developers explaining every detail of the app including the architecture, services, view models, data providers, networking and every other key object.

Deployment

At the time of writing the Police E-Box application is being rolled out across the Northumbria Police force to several thousand officers whose feedback highly positive, they are finding the application a useful tool in their day to day operational duties and there are strong signs of a return on investment.

We look forward to continue to work with the force in the development of further features for the app.

“I’d like to take this opportunity on behalf of the team to thank everyone involved at Komodo in the development of Police E-Box and look forward to working with you again in the new year on the next iteration of Police E-Box, Crime at Source. As a team we have delivered an application which is already having a very positive impact to operational officers and their ability to serve the public.”

Martin Ibbotson – Project Manager, Northumbria Police

Improved Utilisation Image


Improved Utilisation

Bespoke UI / UX Elements Image


Bespoke UI / UX Elements

Reduced Resourced Cost Image


Reduced Resourced Cost

Let's Get To Work.

Contact Us