When you think of “Software Quality Engineering” - what comes to your mind? Typically, one’s mind gets clouded with words like automation, continuous testing, automated quality gates, CI/CD, observability, SonarQube, DORA metrics, SRE, and so on.
While all these things that appear to the mind are important, is organizational investment in tooling and tech enough to deliver quality software?
Have a look at some famous quotes by Jerry Weinberg.
- Quality is value to some person. And value means what they are willing to sacrifice or pay to achieve it.
- No matter what they tell you at first, it is always a people problem.
- No matter how chaotic it sounds, everyone is only trying to help.
Problems with the quality of the software typically mean the software is in trouble. Weinberg’s three quotes mentioned above give us some idea of why software gets in trouble. And also, a way to think about minimizing those troubles. Engineering solutions for software quality are just a tiny part of the big scheme of things when it comes to delivering quality software.
To minimize the problems around software quality, it is important to understand what quality really means in the software-building context. To build software products and deliver them on time without compromising on quality, it is important to understand the notions of quality and the relationship between them. At the same time, it is also important to understand how to bring all the decisions about quality into the consciousness of everyone involved in software building.
This hands-on practical training is designed around “
Quality Conscious Software Delivery” - an award-winning framework developed by Lalit Bhamare (EuroSTAR Best Paper 2022 award) which emphasizes the importance of software testing as a cognitive and social activity.
Lalit believes that investing in testing education for the whole team, socializing testing craft in the team, and using that learning to foster the quality mindset, enabling people and processes to support quality work at every stage is the way to go forward.
In this highly interactive two-day workshop, participants will learn the four stages of the QCSD framework i.e. Enable, Engage, Execute and Evaluate for quality-conscious software delivery.
Participants will learn how to step up their game and enable the whole team testing to support whole team quality -- through the exercises, discussions, and experiments -- and succeed with it. Lalit will share his experiments around succeeding with QCSD, the challenges he faced and how did he overcome them.
Join Lalit and sail with him in what he calls an “intellectual voyage”.
Participants will learn below topics with practical hands-on in the workshop:- Understanding quality in the context of software delivery
- Understanding through exercises, why problems around quality happen
- Interactional expertise for effective communication and social skills as a tester
- How to set up and run "QX - Quality Experience Session" by collaborating with Design/UX teams
- How to set up and run "Testability Sessions" by collaborating with Programmers and Architects
- How to set up and run "Product Coverage Sessions" by collaborating with POs, Programmers, and cross-functional teams
- How to establish "Quality Criteria" on team/business unit/org level
- How to create a context-driven automation strategy for your project
- How to use exploratory testing, automated checks, and DevOps capabilities to create "continuous discovery and continuous feedback" loops
Key takeaways:
Takeaway 1 How to "Enable" - people and project for quality (mindset, skills, critical thinking, and culture)
Takeaway 2 How to "Engage" people - for quality through pairing, collaboration, risk storming, continuous testing, etc.
Takeaway 3 How to "Execute" and "Evaluate"- for quality with clean and testable code, improving testability, skilled testing with an effective strategy, automating checks, continuous discovery, and continuous feedback through monitoring and
alerts etc.
Intended audience: whole team