Objectives, Indicators, and Agreements. What’s the
difference,
who do they apply to, and why should you care?
The Objective is the vision you share (with your customers). It’s what you
want to do. It’s how things would look in a (realistic) perfect world.
The Indicator is how you know what’s really going on. How you define your
indicators is critical, because if the don’t measure and report on your objective your
setting yourself (and your customers) up for failure.
The Agreement is the contract you have with your customers. It’s the promise you make about
how close to your SLO you’re guaranteeing, and what you’re going to do if you don’t get there.
And before we get to far along, I want to respond to that mumbled comment
in the back row about this not applying because “I don’t have any
customers”. Yes, you do have customers. Unless you’re doing some side
project that impacts no-one and you never tell anyone anything about, you
have customers. From the obvious things like a service guaranteeing to
respond within X ms, to a single number in a weekly verbal status report,
someone is looking at the information and functionality you’re providing.
That person is your customer. The person could be on your team, could be on
a elated team, could be a data scientist pulling data out of the data lake,
or even, one day soon, a person on the side of the rode that pushed a button
and expects a care to show up. We ALL have customers.
Now that that’s out of the way, back to the SL’s. You care because they impact
everything you do. You design for your Objectives. You monitor your Indicators, and
you operate to your Agreements. And you don’t just care when you miss your SLAs. Your
SLA’s can help you way before that.
Remember when you started to design that system and you had to cut something? How did
you know what to cut? How did you know what could wait until the next release? You used
priorities. And where did those priorities come from? They didn’t appear fully developed
and delivered by a PM as holy writ. They started with the Objectives and Agreements. What
do you need to do, what do you want to do, what can you not do, and when do they need
to be done by? That’s why you care about SLOs and SLAs you write the first line of code.
As for the SLIs, you get what you measure. SLIs don’t just wake you up in
the middle of the night. If they’re done right they let you sleep in peace
because you know things are going to be OK. They let you know when things
get close to a red line before they get there so you can do something about
it (and sleep peacefully). They do the same for your customers. They know
that they can rely on you and can focus on their value add. They can tell
when a problem is theirs and not bother you.