Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What's Fitness Function-Driven Development for Operability?

What's Fitness Function-Driven Development for Operability?

Originally presented at Monitorama Baltimore, October 2019.

Too often, we leave observability and operability as the last to-do before deploying to production. This results in technical debt, lack of visibility into our system, or too few or many alerts or logs. Instead, how can we use fitness functions to drive the implementation of observability to suit our operational needs?

Fitness functions in evolutionary architecture allow us to optimize systems to fit our current capabilities. In this talk, we'll start with a basic introduction to the concept of evolutionary architecture and explain the idea of fitness functions. Then, we'll demonstrate an example of how we can use these fitness functions to drive an initial set of logs, alerts, dashboards, and metrics. Finally, we will do some refinement of each fitness function, accounting for alert fatigue and additional operational needs.


Rosemary Wang

October 21, 2019

More Decks by Rosemary Wang

Other Decks in Technology


  1. What's Fitness What's Fitness Function-Driven Function-Driven Development for Development for

    Operability? Operability? Monitorama Baltimore 2019 | @joatmon08
  2. Evolutionary Architecture Evolutionary Architecture

  3. Architectural changes affect Architectural changes affect everyone... everyone... Security Compliance

    "Operations" Development Infrastructure "Platform" Finance
  4. And the way they operate. And the way they operate.

    Architectural Change Operational Change Container architecture Vulnerability Management Microservices Observability GDPR Data Inventory Reporting Continuous Delivery Change Advisory Boards?
  5. Operability Operability is the ability to keep a system in

    secure and reliable functioning condition
  6. A Fitness Function A Fitness Function "Building Evolutionary Architectures" by

    Neal Ford, Rebecca Parsons, & Patrick Kua is a particular type of objective function that is used to summarize how close a given design solution is to achieving the set aims.
  7. Service-Level Objectives can be a fitness function... but there are

  8. None
  9. Fitness Function-Driven Fitness Function-Driven Development Development by Rosemary Wang &

    Paula Paul introduces continuous feedback for architectural conformance and inform the development process as it happens, rather than after the fact. Fitness Function-Driven Development
  10. Let's try this. Let's try this. Security github.com/joatmon08/2019- github.com/joatmon08/2019- monitorama

  11. None
  12. What did we like about it? What did we like

    about it? KonMari method for former assumptions, tools, and telemetry Highlight gaps in process, tooling, and telemetry Open discussions for technical debt Develop mutual learning context
  13. What would we improve? What would we improve? Try not

    to over-optimize Balance implemention with review from stakeholders
  14. What changed in our What changed in our architecture that

    architecture that affects how effectively affects how effectively we operate? we operate?
  15. References References github.com/joatmon08/2019-monitorama Fitness Function-Driven Development Building Evolutionary Architectures by

    Neal Ford, Rebecca Parsons, & Patrick Kua
  16. Thank you! Thank you! Rosemary Wang (she/her) @joatmon08 Developer Advocate,