https://gdstechnology.blog.gov.uk/2018/10/12/using-agile-architecture-across-government/

Using agile architecture across government

GDS held the second Consulting Technical Architects (CTA) drop-in workshop at our Whitechapel offices in September. The focus of the workshop was agile architecture. We chose this theme because architects across government said they wanted clarity and information about best practices.

The benefits of building agile architecture

We’ve already blogged about the benefits of agile working. These principles also apply to building architecture. Government organisations should aim to build simple architectures in an agile way wherever possible. This allows service teams to:

  • respond to immediate user needs
  • release updates and get feedback quickly
  • focus on improving the service through software development
  • deal with ambiguity and work in a flexible way

The main principles of agile architectures are that you should take an incremental and structured approach to design.

Architects in agile teams play a crucial role in providing guidance and building the necessary infrastructure for teams to get projects started.

Architects do this by:

  • identifying the context, stakeholders and components that go into the solution
  • defining common, reusable patterns to these solutions
  • communicating the architecture to relevant stakeholders

Discussing different types of modelling

In the workshop, our group discussion focused on the main categories of modelling approaches:

  • no modelling
  • lightweight modelling
  • heavyweight modelling

No modelling

Your team can jump into a project quickly, be flexible and focus on delivery when you skip the modelling stage. This is because you don’t go through a detailed planning phase.

The disadvantage of skipping this stage, however, is that, your team may find that the architecture you start building does not scale. Having no overall strategy or plan for the future ahead can lead to a waste of resources.

Workshop attendees agreed that you should only skip modelling in a project if you are prototyping or doing simple, single-use processes such as one-time data migration or file transformation.

Lightweight modelling

Lightweight modelling consists of lists and simple diagrams which illustrate a particular aspect of a system.

You can use these sketches and lists to communicate concepts and get approval from stakeholders. You can also document decisions, peer review designs before building architecture and test ideas.

Formal methods can help you to identify useful components and reuse them across projects. The downside of lightweight modelling is that  some architects view this approach as a shortcut. Lightweight modelling can also cause lack of clarity and may result in poorly developed architecture.

Lightweight modelling is potentially suitable for:

  • alpha’s and proof-of-concepts
  • low impact systems
  • web services that perform simple operations such as document uploads

Heavyweight modelling

Heavyweight modelling tools are primarily database driven. They capture entities and relationships. These tools present views into the architecture from different perspectives, and encourage collaboration and reuse of architectural components and patterns.

Heavyweight modelling requires a lot of work at the start of a project but usually results in well planned architecture. It can also help people build  a thorough understanding of products. Teams are accountable for choices and you can use a common language and taxonomy.

The downside of heavyweight modelling is that it’s inflexible, assumes perfect knowledge of user needs and requires a lot of resource.

Workshop attendees suggested that heavyweight modelling is good when you are building:

  • high-reliability systems
  • industrial systems
  • security architecture
  • national infrastructure

Join us at the next CTA workshop to discuss mobile apps

Our next CTA workshop is on 16 October where we’ll discuss mobile apps with architects from the NHS and the Home Office. The event will take place at The White Chapel Building in London.

Get in touch with us at CTA-Mailbox@digital.cabinet-office.gov.uk if you’d like to attend, or would like to discuss agile architecture in your organisation.

2 comments

  1. Comment by David Heath posted on

    Michael Nygard’s Architecture without an end state has a lot to offer on this topic:

    https://www.infoq.com/presentations/Architecture-Without-an-End-State

    Reply
  2. Comment by Igniel posted on

    Awesome post thanks for sharing.

    Reply

Leave a comment

We only ask for your email address so we know you're a real person