Feedback: Getting Software Right the “First” Time

Jacob Orshalick

This week I’m continuing to focus on the 4 Quadrants of Development Process Maturity. In my last article we discussed stakeholders, the first pillar of high performing teams. Now we’ll discuss the next pillar, feedback.  As it’s said, “the best-laid plans of mice and men…”

Developers are closer to artists, especially craftsmen, than they are to construction workers.*  Artists work on transforming vision into reality.  Building a house or a road is something that’s well understood.  It’s been done many times before and we know from centuries of engineering what it will take.  Often, a software system is being built to do something that’s never been done with a technology that’s only existe a few years.

* The analogy only goes so far.  When you’ve seen some of the interfaces I’ve seen from developers, you understand why real artists (UX designers) should be part of your development team.

Stakeholders have a vision of what they want.  This vision may be clear in their mind; they may even successfully document it.  A developers job is to interpret this vision into code.  This is where stakeholder feedback comes in:

  • “this feature doesn’t work quite right…”
  • “this feature could be better if…”
  • “this feature makes me think we also need…”
  • “this actually didn’t turn out the way I was thinking, what about if we…”
  • “the business has changed, the feature should now do this…”

Software is malleable. Feedback is the tool developers use to mold the software into something useful. As long as we are consistently learning what the software should actually do, we can always adjust course and make sure we are building the right thing.

Feedback also comes from the development team:

  • Code reviews
  • Build failures
  • Test coverage analysis
  • Code linting
  • Code “smells”

Development feedback helps us ensure that the software we’re building is less buggy, performs better, and is easier to maintain.

So how can we continuously get the software we’re building in front of stakeholders?  Plus, we have software to build.  We don’t have time to look at each others code.  The solution is automation.  Even small development teams can reach the level of feedback described here.  Stay tuned…

Is your software development team performing at its peak? We can help! Schedule a free consultation to find out more.