The surprising truth about success (and why some people never learn from their mistakes), is that it has everything to do with failure. Failure is not the opposite of success, it’s an essential part of it. It’s through failure, in a controlled and tested environment, that we learn and improve; a core principle of continuous delivery. Cloud-native technology speeds up the development cycle so that we can fail earlier and faster. But companies must also maintain quality, increase velocity and change the way they design and deliver their software to achieve a full cloud impact. This article explains how to do each of these three.
The business mindset is shifting to one where expertise is never fully achieved or accomplished. It’s crucial to nurture professional development as a constant, evolving process. This new mindset means that companies must continually “refresh” and refortify their established experts and nurture the growth of new ones. Forward-thinking companies do this by committing to ongoing training programs that focus on applicable knowledge instead of textbook skills.
Organizations need to develop the ability to release valuable software whenever they want. Yet, despite their continuous delivery and agile endeavors, many organizations still cannot release working software on demand. Instead, it often takes multiple sprints lengths to put working software into production. Future-ready organizations develop the ability to bring high-quality software to production instantly.
Why? Because too many activities are delayed until after the sprint although organizations experience an ever increasing need to deliver value to production. This article takes you through the most important pain points IT organizations experience when putting quality software into production. Next, we suggest a series of next steps to start addressing these pain points. This will help organizations to get a very important trend at their fingertips: organizations bringing high-quality software to production instantly.
Topics: Test Automation & Quality
Contrary to popular belief in software development, you cannot test quality in. Rather, achieving quality is akin to growing a healthy tree: its health can only be observed by looking at the tree as a whole. Is the tree supported by a solid trunk, does its roots go deep, does it have healthy branches and leaves? Also, a large part of quality is seemingly invisible just like the amazing water system inside a tree.
At LMAX where I worked for a while, they have extensive, world-class, automated acceptance testing. LMAX tests every aspect of their system and this is baked in to their development process. No story is deemed complete unless every acceptance criterion associated with it has a passing, automated, whole-system acceptance test.