Sunday 29 March 2015

Straight-Through Quality

Introducing the Agile concepts of Continuous Integration/Continuous Delivery to the Business.


Scope:
This article will show how to start off a conversation with Business stake holders around the concepts of CI (Continuous Integration [1]) / CD (Continuous Delivery [2]).

Problem:
CI/CD can be a difficult concept to relay due to the amount of infrastructure and set-up that is required to get it going. Stake-holders can often baulk at the ask on start-up time and cost that this can incur.


Of course there are plenty of metrics and articles out there that explain how in fact these Agile approaches in the mid-to-long term reduce cost and time to market. But this requires heavy reading validation by the Business investors.

To avoid a dulling of eyes and a loss of focus from your stake holders you need to get fast buy in, using language they understand.

Solution:
Fortunately plenty of Business users are familiar with the concept of using Straight-Through Processing [3] to automate away many of the problems they have. This approach has been used quite extensively within the financial services industry and beyond. It is a proven technique.
Thus the start of conversation will often go like so:

"Have you heard of Straight-Through Processing?"
Customer nods head
"Well Continuous Integration/Continuous Delivery is the techie-talk for what you would call Straight-Through Quality"
At this point using the concept of STQ (Straight-Through Quality [4]), it should now be a lot easier to explain some of the more fundamental Business benefits of CI/CD to to get their buy-in. Slowly proving these side-by-side with the multitude of metrics and endorsements you can obtain from all over the net.

Yes it's as simple as that. Once you speak their language they then have a reference point to baseline all the future conversations you have with them on CI/CD. As in the end to them its STQ.

Example:
Below is an example application of STQ using CD to shorten the delivery time [5]:

Agile CI Continuous Integration CD Continuous Delivery Straight-Through Processing


You can see from the above diagram that Quality runs straight through the delivery life-cycle as a constant flow. STQ is your STP enabler.

Agile Link:
STQ is also present on my Agile Development Poster [6] where the output is the Quality Enhanced Delivery. Which also links nicely into the first Agile manifesto principal of:

"Our highest priority is to satisfy the customer through early and continuous delivery of valuable software." [7]
I have rarely seen a lack of customer satisfaction when receiving Straight-Through Quality.


References:


[7] Agile Manifesto Principles: http://www.agilemanifesto.org/principles.html

Friday 20 March 2015

Agile Development Poster

Scope:
This article will present a new freely available development poster for Agile, referencing XP's [1]cyclic life-cycle model.


Problem:
There are several Agile posters available on the Internet. However quite a few of them are outdated.


Solution:
Hence I have created and made freely available a new poster that highlights some of the current Agile techniques and how they correlate to one another.


Self Critique:
Before we begin some of the explanations behind the posters elements, it should be noted that the author is well aware that it is a 'noisy' poster. This is not a poster you would show people who are new to Agile, especially Business users.

This complexity is somewhat resonate of Agile complexity in general. If this is too complex for any readers, then the suggestion is to ignore this poster and move on to better, simpler ones.


After all this is the Agile way, use what you need, leave the rest.

Poster Elements:
Some readers may see the similarities between this new poster and other posters. However all the images used to make the poster have bee originally created (not copied) and the cycles of activity represented by circular arrows were taken from diagrams directly associated with XP [2] (which others have also copied themselves). 

Not only that but an important concept for visibility of Production is present within the poster. For with production Agile as we know is a Continuous Delivery [3].

We can also see that ART [4] goes in and QED comes out. Where ART not only represents the value stream of the release train, but also the craft that goes into Agile.

QED not only represents a Quality Enhanced Delivery but also the Latin term "quod erat demonstrandum" [5] meaning "which had to be demonstrated”. Often one of the goals of an Agile feedback loop.

The rhythmic delivery nature of Agile is represented by the labels of cadency [6] and frequency. Other important labels are that documentation is automated as much as possible, along with profiling, integration and all the rest!

Daily self reliance with commits are activities often required by teams. Where the team is represented by the background image of One Team.

Along with the newer strategic approaches of SAFe [7] and older ones such as GQM [8].

We could go on, but I think the poster speaks for itself.

References:


[5] Quod Erat Demonstrandum: https://en.wikipedia.org/wiki/Q.E.D.
[6] Agile Development Poster: http://www.scaledagileframework.com/develop-on-cadence-release-on-demand/