kent_mcdonald-300x375Meet Arthur, a middle manager in the agent-support department of a medium-sized insurance company in a medium-sized city in the middle of the United States. Arthur is the Product Owner for Phoenix, a project to replace the current hodgepodge of outdated applications, Excel spreadsheets, and rogue Access databases that the members of his department charitably call a commissions system with a single new system.

Following an initial, rather disconcerting introduction to agile from the delivery team, Arthur started working with Bob.  Bob is coaching the delivery team to help them use agile more effectively. One of the things Bob picked up right away is that Arthur needed to get comfortable with this new way of working. Once that happened, Arthur became a bit more engaged with the team.

It was time to prioritize the team’s backlog and figure out what should be included in the first release. Members of the delivery team wondered how they could make that work since they were implementing a purchased system and not developing new functionality. Bob reminded them that they were able to come up with a backlog of stories even though they were implementing a purchased system so it shouldn’t be too difficult to figure out what order to build the stories in.

Bob indicated that the typical way to prioritize in agile projects was to first organize the stories based on value, then to consider feasibility.

“Ok”, Bob said, “I may have lost you there.  Let’s try it a different way.  Let’s say we have five stories:” He wrote a few words on five sticky notes and stuck them up on a white board:

  • Edit Agent
  • Maintain Agent Sales Information
  • Calculate Commission Payment
  • Define Commission Plan
  • Pay Agent

Bob then looked at Arthur, “Arthur, which of these is most important to you?”

Arthur pondered for a second then said “They are all important.  I want them all!”

“Yes, I get that,” said Bob with one of those ingratiating smiles that seemed to say I figured you were going to say that. “But if you had to choose just one of these, which one would it be?”

Arthur looked at the list again. Frowned.  Looked at the members of the delivery team. They all shrugged. Looked back at Bob first quizzically, then with a hint of irritation at that ingratiating smile. Finally Arthur looked back at the whiteboard. “I guess, Pay Agent would be the most important, but it wouldn’t do me much good to just do that. I mean I can cut a check for an agent now. I’d hate to think we spent all of this money on a system so that we could do the same thing we’re already able to do.” (Arthur at some times could be very sensible)

“Ok, good” said Bob, “now put the rest of them in order from most valuable to least valuable.”

“Well, “Arthur said tapping his chin with the sharpie marker that he carried around with him all the time now. “I suppose I’d put them in this order.” He stopped tapping his chin, quickly glancing down to make sure the cap was still on the pen. Then he got up to the white board and rearranged the sticky notes:

  • Pay Agent
  • Calculate Commission Payment
  • Define Commission Plan
  • Edit Agent
  • Maintain Agent Sales Information

“All right” Bob said looking at the newly ordered sticky notes with a raised eyebrow.  “Can you tell us why you put them in the order you did?”

“I really want them all, and don’t see why I have to chose since they all exist in HACTAR.” started Arthur.

The new commission system, HACTAR (no one was really quite sure what it stood for, if anything) was a commercial off the shelf (COTS) software that was built specifically for commission departments and provided capabilities to adjust different commission plans, calculate commissions based on those plans and a wide variety of corporate information, and generate a payment to those receiving commissions. While all of those features existed, they each took a little bit of time to implement because they often required data from another system, and the features required a bit of configuration.  Luckily the team and Arthur decided early on that they did not need to customize any of HACTAR’s code, but that they would need to worry about HACTAR’s overall impact to the other systems in the organization.

“But If I had to put them into some kind of order, I chose this one because Paying Agents is the reason our department exists. I put Calculate Commission Payment next because that is the biggest source of our errors, so it would be good to get that resolved, then I put Define Commission Plan because that’s one of the main reasons we’re getting the system, to be able to make up new commission plans on the fly.”

“I put Edit Agent and Maintain Agent Sales Information last because I wasn’t sure what they were.”

Rob – a delivery team member who seemed to incessantly complain about how it always rained – pointed out that he remembered Maintain Agent Sales Information as being the ability to change the sales information they imported to help calculate commissions.  The Edit Agent was to change information about the agent.  He thought it made sense to leave it last, because generally speaking they would want to edit the agent information in the source system so it didn’t have to be updated twice.  Then Colin, very cheerfully reminded him that they didn’t keep bank account information for agents anywhere else currently, and they may need to change that information in HACTAR to make sure transfers were going to the right place

“Oh yeah, that’s right.  Thanks guys,” said Arthur.

Bob then looked at Rob, Colin, and the rest of the delivery team, “Arthur has indicated his order with respect to Value. Now looking at the list from a perspective of feasibility would you change the order?  In other words, would it be helpful to deliver a user story sooner, even if it is prioritized lower, because it helps ease the implementation of future user stories?”

Rob and Colin chatted back and forth for a couple of minutes and with a couple of other members of the delivery team.  Finally Rob got up and moved the sticky notes around a little bit.

  • Define Commission Plan
  • Calculate Commission Payment
  • Pay Agent
  • Edit Agent
  • Maintain Agent Sales Information

“Thanks Rob. Why did you change the order?” Bob asked

“Well, as I understand it, we can’t calculate the commission payment without knowing the commission plan so it seems like Define commission plan should come first.  Not to mention that we can’t Pay Agents without knowing how much to pay them.” Rob said staring out the window at the steady fall of large rain drops coming down.

Colin chimed in at that point, “Plus, defining commission plans and calculating the plans are a couple of reasons that we got HACTAR, so it probably makes sense to figure out if those work sooner rather than later.”

Bob nodded at Colin, smiling, this guy got it, plus he was always so cheery. “Good observation Colin.  Arthur, are you ok with these changes in order?”

Arthur considered for a minute.  The sharpie was hitting his chin again. “Yes, I think so.”

The team then turned their attention to the backlog as a whole.  The items that Bob has posted were actually five fairly high level user stories (the team referred to these as features) that each had several smaller, related user stories to them.  Arthur and the delivery team found that if Arthur could indicate the order in which he wanted the features, the team generally was better positioned to figure out what order to deliver the stories associated with those features.  This happens quite often in system replacement projects.  The product owner will identify what key features need to be delivered when, and leaves it up to the team to figure out what order to deliver the various aspects of the feature.  In this case, that consisted primarily of configuration changes and interfaces with various other systems needed to calculate and pay the commissions.

Arthur and the delivery team agreed that the first release should include:

  • Define Commission Plan
  • Calculate Commission Payment
  • Pay Agent

But only for a very straightforward Commission Plan. Arthur had resigned himself to having to run HACTAR in parallel with his existing “system” for a while. The group decided this was the best way to verify that HACTAR would help them realize their objectives without having to fully configure all of HACTAR and setup all the interfaces.

Arthur was still a little skeptical, but he liked how this approach to prioritizing allowed him and the team to focus on a specific piece of the project and helped to confirm that HACTAR was going to help him improve the Commission Process a lot sooner than having to wait for the entire project to finish.

For more with Arthur, catch up with him as he gets started developing his new COTS project’s objectives (Part 1), assumptions (Part 2) and parity (Part 3).

About Kent McDonald

Kent J. McDonald is a B2T Training Senior Instructor and stives in uncovering better ways of delivering value by doing it and helping others do it. His more than 15 years of experience include work in business analysis, strategic planning, project management, and product development in a variety of industries including financial services, health insurance, performance marketing, human services, nonprofit, and automotive. He is a certified Scaled Agile Framework Program Consultant (SPC) and active in the business analysis and agile software development communities helping people share stories about what does and does not work. He shares those stories at beyondrequirements.com in addition to presenting at and helping organize several local and international conferences.

Pin It on Pinterest

Share This