Download PDF of this issue.
Welcome to the second issue of De Programmatica Ipsum, dedicated to the subject of Quality. In this edition, our first guest contributor, Ioana Porcarasu, explores the pursuit of quality from waterfall to devops and beyond; Graham tries to understand just what software quality is, and in this issue's subscriber-only article, Adrian outlines his foolproof process for building a high-quality team.
I started my journey into software engineering as an Automation in Test Engineer, around 7 years ago, and at that stage I had no idea what a complex concept quality was. During Computer Science university courses, we kept learning basics of programming languages, OOP, logic, maths, but barely close to nothing about what it involved into a product lifecycle. How do you get from one idea into an entire product available to customers, with a whole system on its back to monitor and track the users behaviour, to learn from their journeys and add improvements to it? And where is quality standing in these workflows?
What, to you, is quality software? I'm sure that I will get different responses from different people. Quality is not absolute, and what you consider high-quality may be irrelevant to somebody else. Your view of high quality may even be a sign of poor quality to another reviewer. Let's take a look at some aspects of software quality.
Back in 2005 I had an interview for a job in a software consulting company in the French-speaking part of Switzerland. The interview in itself was dreadful; the hiring manager was certainly more interested in the “gaps” in my résumé than anything else. But one thing drew my attention, and made the interview nevertheless memorable; this person boasted that their company was one of the few “certified CMMI level 2” in Switzerland, and that they were in the process of preparing for the “level 3” certification.