Software Development Notes

Notes from nearly 30 years of software development

  • Home

Software Quality

  • Home
  • Software Quality

Quality People

October 17, 2018December 17, 2018 Stephen R. PalmerSoftware Development, Software Quality

Ultimately, high quality software comes from high quality people. There is only so much you can do with environment, process, tools, and coaching. For example, take soccer … Try replacing all the players from my favourite English Premier League (EPL) team, Manchester United, at the start of a season, with…

Eight Tips for writing a good definition of ‘done’

September 17, 2018November 14, 2018 Stephen R. PalmerScrum, Software Development, Software Quality

After scouring the internet, looking at what my teams have come up with, and discussing with colleagues, I ended up with the following eight tips for writing a definition of ‘done’ (DoD): 1. Write it as a team. Consider the points of view of all the disciplines, competencies and skill…

Aristotle on Code Ownership

August 27, 2018November 14, 2018 Stephen R. PalmerSoftware Development, Software Quality

For those that enjoy a little Ancient Greek philosophy, Paul Meany introduces Aristotle’s views on the ownership of private property in Aristotles defence of private property This reminds me of the discussions on code ownership in the early days of agile; discussions that are regularly resurrected by each new generation of…

Software Design Reviews – what are you reviewing?

July 28, 2018October 12, 2018 Stephen R. PalmerSoftware Quality

Software design review time. The selected reviewers have been handed a document that they have diligently read. They then meet to go over any comments  … but what are they actually reviewing? Are they reviewing the design described in the document or are they reviewing the document itself? With the availability…

Covering tackles and end-to-end testing

June 15, 2018December 17, 2018 Stephen R. PalmerSoftware Quality

The scrum process is named after a method of restarting play in the game of rugby. As anyone that has participated in a rugby scrum will tell you, the analogy is not a particularly good one. For example, very few daily stand-ups I have attended involved wedging your head between another two team mates’ backsides.…

Defect Management in Scrum

April 27, 2018May 30, 2018 Stephen R. PalmerScrum, Software Quality

Eventually, everyone who has done some basic Scrum training asks the question, “How do you handle the fixing of bugs? Where does this fit in the process?” As usual the answer is, “It depends.” Sometimes, it depends on the teams precise circumstances but more often it depends on the number…

Prefer data-driven automated tests

March 23, 2018October 12, 2018 Stephen R. PalmerSoftware Quality

When designing an automated test at any level, it is worth considering if you can make that test more data-driven. Rather than hard-coding the input values and expected results into the test logic, separate them out. The Spock framework has some elegant support built in for data-driven tests,  … … but you…

In automated tests, mock out non-intrinsic dependencies whenever possible

February 12, 2018November 14, 2018 Stephen R. PalmerSoftware Quality

Unless you are writing a full, end-to-end integration test, mock out any significant calls to other services or classes where the implementation is assumed to be correct for the purposes of your test. Ideally, use dependency injection (e.g. Spring framework) to make it easy to switch from mocks to the real…

Write automated tests at the lowest level possible

January 12, 2018October 12, 2018 Stephen R. PalmerSoftware Quality

Identify the boundaries of actual code that you are trying to test. Is it all in one method, one class, a small set of classes, behind one Java service class or facade class, behind one web service, or is it scattered throughout the product? If you can write the test…

Play the Quality Game

December 16, 2017October 12, 2018 Stephen R. PalmerSoftware Quality

Looking for something different to do with your team in a sprint retrospective or as an ice-breaker or warm-up exercise at the beginning of a planning, story writing or other whole-team activity? Running through this simple quality game can kick start good discussions and trigger useful process improvement ideas. How…

Posts navigation

1 2 Next

“No amount of process over-specification will make up for bad people. Far better: Staff your project with good people, do whatever it takes to keep them happy, and use simple, well-bounded processes to guide them along the way.”

— Coad, LeFebvre, De Luca, Java Modeling in Color with UML,1999

Recent Posts

  • Quality People
  • Eight Tips for writing a good definition of ‘done’
  • Aristotle on Code Ownership
  • Software Design Reviews – what are you reviewing?
  • Covering tackles and end-to-end testing

Categories

  • Old Stuff
  • Scrum
  • Software Development
  • Software Quality
  • Uncategorized

A Practical Guide to Feature-Driven Development

Copyright © All rights reserved.
Business Kit by ProDesigns