Organizations must accelerate their transformation in an increasingly dynamic ecosystem.
Customers are more demanding, we have a few seconds to succeed in capturing their engagement.
The capacity for innovation and financial means allow players to emerge quickly, challenging existing players.
At the same time, automation and digitization are taking an increasingly strong role in IoT devices, which are more intelligent, pushing also for increased security.
These major inflection points drive the teams to experiment and deliver value faster.
The topics of agility, transversal organizations, automation, CI/CD, and by design are increasingly sought after.
Structural integration of quality must be in the various processes and value chains concerned.
This is where Quality Engineering (QE) comes into play.
What definition for Quality Engineering?
Different perspectives exist more or less inspired by traditional engineering.
For some, QE is an evolution of Quality Assurance (QA) more transversely integrated into the DevOps paradigm.
In my point of view, QE needs to go further by allowing the creation of a holistically more efficient system.
We must therefore intervene more broadly, in connection with the company’s strategy, the roadmap of digital products, their measurement of value.
Its ultimate goal is to create a self-learning organization focused on delivering customer value accelerated by technology.
My definition of Quality Engineering (QE) is as follows.
I define Quality Engineering as an Enterprise Value-Driven System leveraging Automation, Analytics and AI.Antoine Craske
I would like to highlight these main areas focused on value creation:
- Enterprise Architecture
- Organizational System
- Product Management
- Engineering System
Their acceleration through automation, analytics and AI is necessary for structural performance.
The emphasis on value-driven is important, as quality is not necessarily synonymous with value.
So let’s share each of these components.
The Value-Driven Enterprise Architecture
Where are we going? What business skills to develop? What structural changes to plan?
So many fundamental questions that enterprise architecture, not just IT, help answer.
In connection with Quality Engineering, several elements are relevant for me to share.
The transversal perspective makes it possible to analyze a system as a whole to improve our decision-making.
This step back will limit local optimizations that can be to the detriment of the overall performance of your system.
Concretely, you can, for example, avoid investing in an application whose customer relevance is no longer valid, switch investments that have become usual to new services development.
In addition, the famous maps of architectures at different levels, sometimes frightening, are useful to visualize the alignment.
Applied to a comparison of the existing and the trajectory, we can detect missing functions in the delivery of a new service and anticipate the creation of adapted applications.
The reality too often lived is to take several successive walls, followed by multiple reworks to finally realize that good upfront design would have been much more effective.
Follow the capabilities, reflecting the business skills needed to reach and execute our architectural target.
Speaking of the target, on a limited budget, on which products are you going to invest in, at what level of automation, of data processing? At the cost of what alternatives?
Enterprise architecture also provides keys for weighing and prioritizing structuring investment choices.
Its impact must be concrete, shared and actionable to be a real contribution of value, by carrying out for example:
- The animation of a transformation governance
- The sharing of guiding principles accompanied by relevant examples
- The management of architectural or organizational debt
The orientation towards value value-driven deserves a constant reminder, any activity having a natural tendency to self-optimization.
Architecture can be wrongly perceived as static. On the contrary, it is a living organism rich in interactions and developments.
The organizational system is the second cornerstone of QE.
The Value-Driven Organizational System
Have you ever felt almost invisible barriers of resistance to change?
A lack of organizational alignment gives rise to this type of resistance.
The organizational system is made up of several elements that must be aligned:
- Mission, objectives and values
- The structure and its interactions
- The intra and inter-system processes
- The actors, roles and skills
- The technologies and platforms
- The incentives and feedback loop
System-thinking is the main actor in this scene, complemented by specific market practices.
We will refer to cross-functional team models, feature-team or Team Topologies.
In more detail, we can find the communities of practice put in place, or the occasional use of external resources on demand.
The processes must be seen through their different prisms:
- Their value and expected result (ie outcome)
- Their organizational methods, for example in Scrum
- Their criticality, frequency and volume of processing
LEAN, 6-Sigma or Common Problem-Solving standards can complement the approach.
It should be noted that the skills must be taken as a whole: current and future, hard and soft ones, individual and organizational.
Developing emotional intelligence skills coupled with a problem-solving process is one example of a combination.
After the architecture and the organizational system, our iterations from Quality Engineering continue to Product Management.
The Value-Driven Product Management
It is time to be near the implementation without rushing into coding.
Product Management is to ensure the life cycle of products whose objective is to create value.
The following points illustrate the activities often in charge of a Product Owner :
- Identify the personas
- Define a vision and roadmap
- Choose the metrics
- Analyze and adapt the pricing
- Prioritize the experiments to be carried out
The QE must first ensure the presence of the Product Management really strong and embodied.
Too many organizations still rely solely on project managers, dangerous when temporary and not aligned with global objectives.
The orientation towards the creation of value for the system is its second priority.
Good measures are structuring and often result from the defined organizational system.
We can easily fall into the use of vanity metrics, which are useful for egos but unimportant in measuring value.
The last contribution of Quality Engineering will be to ensure an implementation aligned with the architecture, the organizational system and the Product Management.
The Value-Driven Engineering System
This is where we will find the components necessary to bring our system to life.
I will avoid the impractical acronym of DevTestSecOpsSre.
The important thing to remember for Quality Engineering is that the various engineering skills must be combined to achieve the iterations of our products.
Several elements are key:
- Defined, structured and measured development, delivery and operations processes
- Strong quality engineering, from the various requirements to testing techniques, supported by Quality Assurance solutions
- A development platform providing the different services to the actors (CI/CD, logging, alerting, etc.)
- Real capacity observability of different processes, applications and transactions
The Quality Assurance is found here on his prism Quality Assurance Engineering without limitation.
For example, we will find exploratory tests linked to Product Management rather than to the Engineering System.
Let’s move on to the accelerators Quality Engineering.
Analytics, automation and AI QE service
Create a system that can learn quickly iterate and requires differentiating real foundations.
The capacity of Analytics is the first retained in order to be able to observe the system, obtain insights and turn them into actions.
The measurement of Value-Stream supported by Process Mining or Statistical Process Control (SPC) are examples of techniques suitable for QE.
Analytics is necessary for measuring performance, creating value and understanding our system.
This is also what makes it possible to support the learning and prioritization of iterations.
Automation is in turn allowing us to accelerate, without necessarily having to be omnipresent.
Our target QE system must clarify the structuring automation choices to be made, whether in data collection, development, deployment or testing.
Artificial intelligence (AI) is focused on Data Science and the application of techniques such as Machine Learning or Deep Learning.
AI is indeed one of the powerful levers applicable to the various activities of our QE system.
Its value in Quality Engineering is multiple:
- Increase the value of automation
- Allow more qualitative decision-making
- Accelerate and scale system learning
Usefulness must be the first thought to be had by clarifying for which actors and which activities AI would be relevant.
Its applicability is then to be validated by the presence of data with sufficient volume, quality and usability.
Quality Engineering or Enterprise Quality Engineering?
The addition of the word Enterprise does not seem obligatory to me, the important thing is the transversal perspective.
Quality Engineering is not just to improve the function of QA Testing or activities.
Integrating quality into all of an organization’s processes requires a holistic view and approach to the system.
The complementarity of the disciplines and necessary skills raises the question of the animation of this Quality Engineering approach, which we will explore in other contents.
These different components of QE are the ingredients of the value-driven systems of today and tomorrow.