Function Points and Agile Methods (I promise I won’t tell)

Posted by Robert Merrill on July 13, 2009 under Agile BA, Agile Methods, Estimation | Be the First to Comment

If you’re an IT shop considering agile methods, your existing Function Point Analysis (FPA) capability can be a a valuable asset. It freaks many agile-methods advocates out when I tell them, but I routinely follow a user story workshop with a Function Point count.

I already knew FPA when the project-contracting house I worked for went agile. I found I could count the Function Points from a couple of dozen user stories in a half day or less. (Often I discovered some missed stories in the process.) With some project history on hours per FP for the teams I supported, and some multiplication, I had a quick, factor-of-two effort estimate. Flip the factor-of-two uncertainty off of the effort and onto the scope (you know those stories are going to change, anyway), and there’s the core of an agile project proposal. We had about a 1-in-3 close rate, and less than 10% of our projects failed.

Now that I’m consulting for software-intensive businesses and their software teams, the same estimate can be used to request a team and a budget through your established governance process. Read more of this article »

Non-functional requirements template

Posted by Robert Merrill on July 2, 2009 under Business Analysis and Requirements | Be the First to Comment

From Use Cases to User Stories, I’ve always struggled with how to treat the non-functional requirements. I haven’t tried it yet, but this article by Ryan Shriver on Qualities and User Stories contains something that looks like it just might work:

Name: A unique name for the quality

Scale: “What” you’ll measure (aka the units of measure, such as seconds)

Meter: “How” you’ll measure (aka the device you’ll use to obtain measurements)

Target: The level of performance you’re aiming to achieve (how good it can be)

Constraint: The level of performance you’re trying to avoid (how bad it can be)

Benchmark: Your current level of performance. Read more of this article »