Michael Kutz
By far not the only person at REWE digital concerned with quality
Köln, Germany
Actions
I've been working in professional software development for more than 14 years now. I love to write working software, and I hate fixing bugs. Hence, I developed a strong focus on test automation, continuous delivery/deployment and agile principles.
Later I came to the insight that the most sustainable way of fixing code is, to optimize those who code. For that reason I dug deeper into psychological safety, cognitive biases and ways to spread knowledge within software producing organizations.
Since 2014 I work at REWE digital as a software engineer and internal coach for quality assurance and testing. As such my main objective is to support our development teams in QA and test automation to empower them to write awesome bug-free software fast.
Links
Area of Expertise
Topics
How (Not) to Measure Quality
As software developers, my team and I were repeatedly in the situation of fighting for more quality and less feature pressure. In doing so, we often achieved concessions, but often the time we were given was insufficient and the result correspondingly unsatisfactory. If I am honest, we ourselves were not in a position to say exactly how bad the quality actually was.
Moreover, I have noticed time and again that developers, users and managers of software have fundamentally different priorities when it comes to quality. Developers often think about internal aspects like code quality and maintainability, users think about external features like bugs and usability, and managers need predictability and efficiency in the development process.
Of course, there are various metrics that try to measure the quality(s) of software, but these often only refer to very small sub-aspects and have more or less harmful side-effects.
In my talk I would like to point out the side effects of quality measurements and show a method for finding metrics that work better. I will point out weaknesses of single classical quality metrics and suggest better suited alternatives. In the end, this results in a network in which each metric is justified by a clear goal and a concrete question and in which weaknesses are mutually balanced.
Untangle Your Spaghetti Test Code
In many teams we worked in, test code was treated much less carefully than production code. It was expected to just work. Mindless copy and paste of setup code from one test case to another was never seen problematic, duplications widely accepted, and things were named randomly.
This always leads to problems: gaps in assertions become pretty non-obvious; consolidating long running test suites becomes a cumbersome task; magic numbers need to be changed all across the suite, when they become outdated. Problems like these ("tangles") affect the overall maintainability of our overall code base.
Over the years I identified several good practices ("untangles") to prevent these problems and keep test code maintainable. Some borrowed from general good code quality standards, some specific for test code.
In this talk, I am going to briefly discuss the properties of good test code. Then I’ll present a bunch of good practices and show them applied to an example (in Java). In the end, you should be able to identify tangled code and apply the
Fantastic Biases & Where to Find Them in SoftwareDevelopment
Why did all our test cases fail because of this simple bug? Nobody tried that out before? How did five people agree to implement this terrible feature? Why are our estimates always so far off?
There are many possible answers to those questions and none of them will be the whole truth. However, certain common cognitive biases might play a main role in all of the events leading to those questions. We all have them.
They help us to think faster, but they also make us less rational than we think we are. They hinder our best judgement! In this talk I'll demonstrate some of the most severe biases, explain their background, point out how they typically influence our professional decisions, and suggest some strategies to mitigate their effect.
Being able to recognize and overcome biases in us and others is a long, challenging road for anyone - you won’t be able to do that journey with this talk alone, but you’ll certainly take your first step!
Michael Kutz
By far not the only person at REWE digital concerned with quality
Köln, Germany
Links
Actions
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top