Developing Quality Software Competency
Business Problem
We have technical software delivery bottlenecks and frequent post-release defects with high maintenance costs.
Business Outcomes
- Reduced post-release defects and maintenance costs.
- Faster resolution of critical software vulnerabilities, including a reduction in rework and support.
- Increased trust in AI system reliability and accuracy.
- Enhanced ability to adapt to evolving technical demands.
Why is the Developing Quality Software Competency important?
Agile Software development requires modern practices that reliably and predictably create quality software systems and products. These practices originated with eXtreme Programming (XP) but have significantly evolved over the past two decades.
Maintaining quality engineering practices in software development is even more crucial in the current AI age. Flaws in software can lead to AI system failures or vulnerabilities, potentially causing significant harm or financial loss. Additionally, as AI systems become more integrated into critical infrastructure and decision-making processes, the consequences of software failures escalate. Emerging practices such as MLOps, ModelOps, and AIOps are concerns of Agile software development. MLOps manages the deployment and maintenance of machine learning models. ModelOps ensures AI model scalability and accuracy over time. AIOps uses AI to automate and optimize IT operations, integrating various tools for proactive monitoring and issue resolution.
The Developing Quality Software Competency is focused on practices specific to software and software quality. Software may well be the richest and best-defined area for applying Built-in Quality. This was driven by necessity, as software is exceedingly complex and intangible. You can’t touch it or see it, so traditional approaches to inspecting, measuring, and testing are inadequate. If quality isn’t built in endemically, then it’s unlikely to exist at all.
Which roles would benefit from mastering this competency?
Software Engineers, Quality Engineers, System and Solution Architects, Product Owners, Scrum Masters, Release Train Engineers, team-level technical coaches, and SPCs.