Monday, August 13, 2018
You may recall from the post last week that I was struggling to come up with a good mental image of what Agile and DevOps really “are” and how they differ from one another. I had the graphic that came to me via an Analyze Consulting LinkedIn post which seemed to help at first, but still left me feeling I was missing something important. It felt like I was missing a key piece of the puzzle.
So I showed the picture to Mark Medlin, one of the founders of Paragon and our CTO. Mark has been directing our transformation into an Agile organization for several years and has researched Agile and DevOps in depth.
As we talked, I had an epiphany of sorts and started to realize that I would have to stop thinking about process and people and product as separate quantities, but as three interconnected and complementary parts of the same entity. It may have taken me longer than most to figure this out, but in my defense, there are literally millions of different references to the concepts posted on the web, with many containing words like “confusion,” “overlap” and even “defy definition.”
In any event, it started to make sense to me:
And then there is one more thing that needs to get added to the mix: organization. I think this is where the real difference is between Agile and DevOps:
Again, some of this may have been obvious, but I searched a lot of sites and did not really find anything that looked quite like the picture in my head. Here is what I came up with:
It was hard to draw something that fits on a single piece of paper and gets the job done properly, so I will have to add a few qualifiers:
There is one key issue here that requires little additional clarification or definition – and that is the need to test. Having a well thought out and executed test plan is a critical part of any successful development methodology. With that said, the legacy tools and processes used in Waterfall will no longer be sufficient to support the pace of change in an Agile or DevOps environment. Automation and integration will be required to achieve success there. This is perhaps the biggest difference between Waterfall and Agile/DevOps, the shift toward a test-driven approach to development, i.e. testing everything all the time.
We recognize, of course, that every organization has their own business strategy, a unique set of resources and circumstances, as well as their own approach to developing products and services. The good news is that no matter where you are on the spectrum from Waterfall to Agile to DevOps, you can still improve your payment testing capabilities.
You need a solution specifically designed to give you maximum flexibility and control of your payments testing environment. You can begin by automating your first sets of regression tests (e.g. Robotic Process Automation). If you already have automated tests, use an API to integrate those with other systems in your development ecosystem – and you’ve begun your journey from Waterfall to Agile to DevOps, eventually progressing to a Continuous Testing scenario in which you automatically test and validate components in your system whenever one of those components change.
We would very much like to talk to you about your unique payment testing requirements and explore how our team and our Web FASTest product can help your organization in your progression to Agile/DevOps.
As far as my journey toward understanding Agile and DevOps goes, I think I have made significant process. Even though my picture may still be a bit fuzzy, I feel much better about the image in my head and about how the pieces fit together. Given the importance of the subject, all the people involved and everything that has been said and written so far, I am sure that this will not be the last word on the subject.