It’s not news that software is an integral part of business and customer experiences in every industry. That shift to digital value drastically changes the risk equation of every enterprise.
Development done perfectly is supposed to prevent all unpleasant unintended consequences, but betting your brand on perfect technology condemns leaders to a never-ending series of Maalox moments.
Software testing has often been cast as the annoying “last step” in software engineering, more of a necessary annoyance than an essential element of business risk mitigation. This is now changing. Quality engineering (QE) offers new value and impact to both IT and the business.
In an economy where business value and impact are increasingly shaped by software, existential threats come from unpredictability, pesky bugs, and fouled up test data. Poor software quality hurts consumer experiences, innovation timelines, and compounds business risk.
What changes the game for technology leaders is the focus on a robust QE strategy to lower digital economy risks. New technologies – immersive experiences, AI-powered apps, automation platforms, etc. – are only amplifying the importance of quality engineering in every sector.
Much has been said about application testing, quality assurance, and now quality engineering, so let’s clarify how we interpret a few critical terms.
- Testing is largely reactive – deployed during a specific testing phase – and often manual. Testing basically means checking on whether the software works, and then fixing what doesn’t by sending it back for repair.
- Quality Assurance (QA) is more proactive across the software development life cycle. There is some use of automation. Fixing issues is the responsibility of the entire IT team to help ensure the root cause of the issue is addressed.
- Quality Engineering (QE) is much more proactive across the SLDC and deeply integrated with the business requirements for the software. In fact, accelerating capability is the responsibility of the full product team – tech and business – so the applications created deliver business impact.
Our digital revolution is forcing outdated legacy solutions to be revitalized or retired. While this transformation is taking place, organizations must ride over hard-coded innovation speed bumps like legacy system complexity, outdated technology and tools, talent gaps, fragmented systems and data, issues in knowledge management, attrition, and more.
We’re also seeing a magnifying glass on growing technical debt related to system quality – based on decisions that may have been made years or even decades ago.
Fortunately, we are entering a phase of modernization and innovation in quality engineering. There are some no-regrets bold steps that all the applications leaders can (and should) take today to improve transparency, expand automation, build QE community, de-risk digital innovation, and accelerate impact.
QE Transparency is our new engineering reality
During the pandemic, millions of us came to rely on food delivery services like DoorDash and Uber Eats. The services helped keep us fed when we couldn’t leave the house, and that was great. We also collectively became more accustomed to having extreme visibility into a business process – in this case food ordering, preparation, and distribution.
The digital solutions kept us informed about the status of the food we ordered with real-time analytics, geo-locators, smart communications, and more – providing the confidence that our grub would arrive on our door steps before anyone became hangry.
Now, we want that level of transparency in every aspect of our lives, including digital innovation.
Businesses expect engineering services companies to provide this DoorDash experience for software engineering. In this space, quality engineering – with transparency into every aspect of the process – gives technology leaders confidence in the software development and modernization processes.
Automation plus manual testing gets the best from machines and talented engineers
Industries such as banking, insurance, health care, and life sciences have complex IT landscapes with hundreds to thousands of applications requiring complex integration. These environments can – and must – fully leverage modern tools for automated testing. But there is still work for humans to work on the analysis, preparation, integration validation, end-to-end processing, and insight for critical ‘go/no-go’ reports and decisions.
Testing innovations are evolving at a breakneck pace to support SAFe Agile and DevSecOps. Continuous build is being widely adopted with improved focus on code quality and unit testing with build and deployment automation. Continuous tests for sanity, in-sprint, and regression tests are part of the DevSecOps approach. Low code test automation technologies are gaining momentum, pushing test automation even in end-to-end and user acceptance tests phases. Even as these automation and process improvements make testing more efficient, they don’t suddenly replace smart humans. Our new machines will continue to do more to improve productivity, but moving to complete, hands-off automation is a long way off.
It takes a village to engineer with quality
In our digital economy age, innovation requires better communication and improved transparency to ensure business and technical outcomes are met. The glue that holds this entire process together is modern quality engineering, and it’s time to recognize this new truth.
Reliable systems require collective ownership to embed quality across the system engineering life cycle and to proactively prevent the defects. Quality can never be an after-thought. It must be built up in every step of system engineering – scoping, requirements gathering, system analysis and design, implementation, testing, and deployment.
An enterprise-level quality engineering strategy will enable programs to find and fix defects earlier in the SLDC and certify the systems for the business functionality, performance, reliability, availability, and security.
QE is not just “an IT-centric activity.” In addition to assuring system reliability, the modern QE process must amplify business involvement through the entire lifecycle so that KPI attainment, customer support, system security, and the customer experience are consistently met.
Expect software to test other software
Today, we witness an industry bubbling with innovation. Amazing platforms are available to deliver transparency and QE automation with self-healing capabilities. IT leaders should demand radical transparency of the engineering lifecycle.
Our QE approach with Ascendion AVA (A.AVA), accelerates software engineering processes and improves overall quality and transparency. A.AVA is our flagship platform, powered by AI/ML and automation, to improve platform engineering, data engineering, experience engineering, and quality engineering.
For QE, A.AVA helps engineering teams monitor and measure status and quality of user stories, sprint velocity, defect density, code quality, build quality, mean time to change, mean time to repair, and more. Teams use this platform for continuously improving the work products with instant feedback from the platform. Clients gain deeper level insights from real time engineering KPIs so small issues don’t turn into big problems.