By Barnaby Golden, 19 May, 2014

When we talk about non-functional requirements we often focus on performance and response times. But there are many other types of non-functional requirements and their obscurity can lead to them being missed.

Here are some non-functional requirements that can get forgotten:

By Barnaby Golden, 26 January, 2014

Although not a hard-and-fast rule, I see the tiers of an agile organisation being the following:

  1. Strategic tier
  2. Product tier
  3. Development tier

Strategic tier

The strategic tier is responsible for deciding the long-term goals, such as:

By Barnaby Golden, 27 December, 2013

Agile drives frequent releases and frequent releases drive automated testing. You can't just switch on test automation though, there is a lot of investment in time and energy required and the payoff is usually in the medium to long term.

By Barnaby Golden, 19 June, 2013

With the basic application in place it is now time to focus on testing. First up we add a Cucumber acceptance test. It is a good idea to keep your acceptance tests separate from your unit tests, so I tend to run them in the integration-test phase of Maven. To do this use the failsafe plugin, adding something like this to your pom:

By Barnaby Golden, 30 December, 2012

Nothing else in Scrum generates more confusion than story points. So what are they and just as importantly, what are they not? Here is my definition:

Story points represent the relative difficulty in completing development tasks that produce business value

By Barnaby Golden, 13 December, 2012

...there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we do not know. But there are also unknown unknowns -- the ones we don't know we don't know.

- Donald Rumsfeld US Secretary of Defense

By Barnaby Golden, 1 October, 2012

When working on a complicated product it can be tempting to focus on individual components rather than on end-user functionality. For example, a team might decide to build out an authentication component first before adding a user interface (UI).

The disadvantages of this approach include:

By Barnaby Golden, 23 September, 2012

Car manufacturing in the 1970's was a mostly manual process and quality wasn't great. Then the Japanese brought in automation and sophisticated quality checks.

The investment necessary for these improvements was substantial and risky. The up-front spend was increased but manufacturing unit costs fell and the reputation for reliability rapidly drove up market share.