Ok, I admit, this has got nothing to do with dog agility. I just wanted an excuse to put my dog up on the internet… I will however be talking about the contents of this blog, on actual Agile methods and how to apply them to GIS, in more detail on an Esri hosted ‘Face of Analytics’ webinar on Tuesday 15th November at 2pm.
When people talk about Agile, they often think of Sprints and Scrum Masters, large scale System Integration projects and an ensuing battle with the client to move away from waterfall project delivery. Applying Agile outside of this world, to analysis, reporting or GIS work, can often seem alien and overbearing. But essentially all we are doing is signing up to a set of guiding principles and utilising technologies and processes that allow us to realise some significant benefits.
So What is Agile?
In its simplest terms an Agile Methodology is a set of guiding principles that aim to:
- Allow the development of solutions through collaborative working practice
- Deliver early
- Iteratively evolve the solution
- Allow for the flexible management of change
Delivering a solution using an Agile method has significant benefits for both the solution provider and the client, however there are some challenges that have to be addressed for it to work:
We are finding more and more with our clients that GIS solutions in particular really respond to these benefits, so mastering the challenges is especially important.
Delivering Agile GIS
The key to delivering in an Agile manner, especially for GIS solutions, is to get the processes and technology right. Several hundred articles and books have been written on Agile processes and are mainly all applicable so I’ll concentrate more on talking about the technology. The only thing I will say on processes however, is Agile doesn’t necessarily mean lightweight. If you don’t put the processes in place to manage the requirements/backlog, communicate with the client and work efficiently with your team then the project will suffer and you won’t see any benefits, only challenges.
From a technology perspective we need some specific qualities for our analytics and GIS projects to exist in an Agile world:
- Rapidly deployable and scalable
- Flexible and adaptive
Over the last 2 years we have built up our own in-house cloud hosted technology stack, which is highly customisable and adapts well to projects with very specific, bespoke requirements. Some of this stack has been discussed in our August blog. However for pure GIS projects where we don’t necessarily want to bring on a web development team, we use Esri’s ArcGIS Online platform.
ArcGIS Online gives us a rapidly deployable environment, that allows our GIS team to move from spatial analysis to presentation seamlessly, without having to involve our Web Development team. It also helps address the challenges of working in an Agile manner:
- ArcGIS Online is a cloud solution. Applications can be deployed instantly and scaled appropriately
- GIS applications can be built quickly either by using several out-the-box templates or by using the bespoke Web AppBuilder
- As everything is online the client has early access to the solution and can collaborate to ensure the end solution meets expectations
- End-to-End security is built in
In a typical project using ArcGIS Online our GIS team will build up several rapid prototype applications, either using Web AppBuilder or a standard template. This forms part of our first early delivery. By the very nature of these applications, they are interactive, and help us explore the data and insights with the client, which better informs future requirements and sets expectations.
In further ‘sprints’/development cycles we build upon this work and feed it into a final deliverable, which typically will be a Story Map supported by the suite of Web Apps.
In effect we have moved our GIS delivery to a multi-phase, Agile process:
We recently applied this methodology to a client in the Property Development sector who wanted to understand the make-up of an area including transport analysis, demographic breakdowns and public infrastructure.
In an initial 2-3 week development cycle we delivered 3 Web Apps using ArcGIS Online and the client was able to interact with them and collaborate on the next set of development cycles. This gave us a clearer set of requirements going into each phase.
The final solution was a set of interactive applications and a summary Story Map that met client expectations and allowed them to explore the data further and generate their own insight.
A standard waterfall delivery would not have had the same results, as it was clear from the outset that the some of the analysis would be very detailed and need a richer set of requirements.
Agile has some major benefits to us and our clients. However there are significant hurdles to overcome to get to an efficient usage of these methodologies. Getting the processes and technology stack right is key, but once you have these in place you will be able to apply them to multiple analytics, reporting and GIS projects and really start seeing some positive results.