Wednesday, January 8, 2014

Binary Clarity Defined

A phrase often heard at my workplace is "binary clarity". While it is often heard (mostly from my lips), it is less understood, and even less frequently internalized. Starting with the dictionary can help us:

Binary -- consisting of, indicating, or involving two.
Clarity -- clearness or lucidity as to perception or understanding; freedom from indistinctness or ambiguity.

I especially like the last phrase in the clarity definition -- "freedom from ambiguity". Software and our language about the software we produce is filled with ambiguity, how can we ever be completely free from it? My answer has always to been to use language that is binary. By doing so we can dramatically reduce our ambiguity. Credit for this concept goes back over a decade to a Project Management Seminar that I took where the instructor used the phrase -- "Binary Completion Criteria".  Again, using the dictionary again, we find:

Criteria-- a standard of judgment or criticism; a rule or principle for evaluating or testing something.

I note the last phrase again -- "testing something".  When we put these three words together, it's clear that it is very relevant in our current agile/lean age. Our best criteria are tests. Tests can be expressed in binary fashion and their results increase our understanding. Anthony Boobier, writes in "Splitting a User Story",  If User Story A has completion that is binary; it is either 'Done' or ‘Not done’. He defines binary completion to mean mean the acceptance criteria must be met.   The best acceptance criteria is testable. Testing allows you to get to pass/fail == "binary"

Beyond the software itself, this can also be applied to our language. At a Webinar on Scrum and Kanban, Kent Beck made the statement, "Never underestimate the time you will spend defining 'done' ". I agree and add as a corollary, it is time well spent if it removes ambiguity. (See recent post with reference to "Done", "Done, Done" , and "Done, Done, Done").   For any task, we can decrease our ambiguity if our common language is binary: yes/no, black/white, etc.

Bottom line when I use the phrase -- "binary clarity", it is just a means to an end -- "Freedom from Ambiguity". In our daily work lives, what could be better than that?

No comments:

Post a Comment