All Software Architecture, All the Time
June 10-13, 2019
San Jose, CA

Architecture as code: Objective measures of value in a changing world

Paula Paul (ThoughtWorks), Cassandra Shum (ThoughtWorks)
3:00pm–3:45pm Wednesday, June 12, 2019
Average rating: ***..
(3.83, 18 ratings)

Who is this presentation for?

  • Enterprise architects, systems architects, solutions architects, CIO/CTO/CDOs, and senior developers

Level

Intermediate

Prerequisite knowledge

  • Basic understanding of architecture concerns for the "-ilities," such as scalability, reliability, security, maintainability, observability (and more)

What you'll learn

  • Learn the benefits of expressing architecture through code and driving development with fitness functions

Description

The idea that architecture can support change was described by Neal Ford, Rebecca Parsons, and Pat Kua in 2017 as evolutionary architecture. How do we enable this kind of evolution?

Architectural goals and constraints change independently of functional expectations. Fitness functions describe how close an architecture is to achieving an objective goal. During test-driven development, we write tests to verify that features conform to desired business outcomes; we can also write fitness functions that measure and monitor a system’s alignment to architectural goals as they evolve.

In order for technology to deliver lasting business value, it must be adaptable. Prose enterprise architecture standards or rigid architecture frameworks often don’t have the flexibility to support constant change. Regardless of application architectures (monolith, microservices, microkernel, etc.) or business architecture, fitness function–driven development can introduce continuous feedback for architectural conformance and inform the development process as it happens rather than after the fact.

Architecture can be expressed and tested as code, in a pipeline, in the same way we express and test business capability and infrastructure as code. The concept of architecture as code is a tremendous leap for most traditional architecture and development teams, challenging long-standing perceptions and mindsets.

Paula Paul and Cassandra Shum share adventures in the enterprise as they take architects and engineers on a journey toward fitness function–driven development, with real-world hurdles and unexpected insights, as they rethink the connection between architecture and business value in a digital world.

Photo of Paula Paul

Paula Paul

ThoughtWorks

Paula Paul is a Distinguished Engineer with Slalom Build, where she helps organizations adopt cloud native technology and serves the community as an ABI Syster, diversity speaker, and mentor. Paula entered the workforce as a software engineer at IBM in the early ’80s, where she shipped her first product on magnetic tape. She’s shipped many software products since then, evangelized .NET with Microsoft, held executive positions in technology architecture and operations, and taught people of all ages to code. Paula is passionate about equal opportunities for technical literacy and enjoys (half) joking that Kubernetes reminds her of IBM/370 systems programming.

Photo of Cassandra Shum

Cassandra Shum

ThoughtWorks

Cassie Shum is the technical director and principal consultant for the east portfolio in North America at ThoughtWorks. A software engineer and architect, she’s spent the last nine years focusing on architectures including event-driven systems and microservices, a wide range of technologies with an emphasis on mobile and software delivery excellence, and she’s helped grow delivery practices and technical strategy and support the next generation of technologists. Some of her passions include advocating for women in technology and public speaking. She’s involved in promoting more female speakers in technology.