Achieving Software Quality Through Layered Practices

Software quality thrives not on excelling in one area but on maintaining competence across multiple layers of delivery. Each layer acts as a filter, removing around two thirds of defects. Focusing solely on one element, like exhaustive testing, leads to diminishing returns. Collaborative approaches across testing, CI/CD, and requirements prevent issues effectively.

Delivery Focused Software Teams

Software delivery in many organisations is still far too waterfall, inefficient, and often unhealthy to be a part of. The myriad of methodologies which can be applied in different combinations to achieve something more efficient can be overwhelming. Normal organisational structures deny people the authority to make the efficiency savings which seem logical to them. … Continue reading Delivery Focused Software Teams

Technical Excellence

"Don't overengineer this. We need to move as fast as we can."Too many business representatives The Agile Manifesto is built on 12 pillars, the 9th of which (at the time of writing) is: Continuous attention to technical excellence and good design enhances agility. I regard the Agile Manifesto as a thing of truth. It has … Continue reading Technical Excellence

Avoiding Delivery Hell

Some enterprises have grown their technical infrastructure to the point where dev ops and continuous deployment are second nature. The vast majority of enterprises are still on their journey, or don't even realise there is a journey for them to take. Businesses aren't generally built around great software development practices - many businesses are set … Continue reading Avoiding Delivery Hell