0

I'm working for a large telco and our department has recently moved to an "enterprise agile" model of working (all very exciting!) We've ran specific agile-friendly projects in the past, but are now trying to deliver our whole program using Agile principles. Most of our work is systems integration and configuration based, there is very little software development we run in-house.

I'm now trying to deliver features from our lifecyle program and trying to encourage the team to write customer value focused stories, but how do you do that when the feature requires a large amount of technical foundation work, to deliver a very locked slice of user functionality? (3rd party software already defines what the user can and cannot do)

As an example, we have a feature to deliver existing Customer Reports via a new reporting solution. No new functionality will be delivered - at least as part of the inital release. We have identifed a set of standard reports we will build for our users. These are our customer value stories. But to deliver one story we need to deploy and configure new hosts, a new business objects database, new data collection points, a new data aggregation and extraction layer and export current customer data into the solution and validate \ adjust presentation - before we can build and deliver the actual report.

The delivery of the new Customer Queue report is our EPIC story, how should we capture all the technical foundation work that is required to deliver this? Can the staging of a host and build of a database be written as a user story or just as a tech tasks. If it is written as a non-estimated task, we will run approx 4-5 iterations before we can deliver a single user story. Even if trying to deliver a minimum slice of capability this story is for a large scale customer with large data volumes and there is a lot of tech effort required to deliver the first value story/

I've searched on this excellent site, on the web and in books such as Mike Cohn's and advise seems to be predominately software development based. I've love to get some answers on this that i can apply to large enterprise wise engineering projects. As the Agile movement grows and expands away for its soft dev roots this must be a growing problem for teams out there?

Jonathan Leffler
  • 730,956
  • 141
  • 904
  • 1,278

1 Answers1

1

I think perhaps you're approaching this wrong. A large deliverable would go against against agile philosophies - ie You need to be able to respond to customer requirement changes rapidly.

For example the implementation of the new technology that allows the new reports to be defined. If the customer has signed off on this then it goes without saying that this should be delivered up front with a bare minuscule amount of reports.

On the other hand if the customer has not signed off on this then your agile delivery at this point would probably be sample reports and proofs that you can deliver the things that the customer wants, on your own infrastructure, until you have buy in.

To me agile means being able to change direction - and your approach doesn't lend it self to that I think because your user stories are too focussed on the later deliverables.

Preet Sangha
  • 64,563
  • 18
  • 145
  • 216
  • Thanks for the response. This is a lifecycle project so the new solution has to be delivered- 1. to support new media channels customers may want integrated in their reporting and 2. support for old solution is end of life. Our first release is to ensure our customers can get their existing reports delivered in the new system before we can add others. To deliver this first report requires extensive foundation work before we can deliver the actual customer value. This is our challenge. – user1550488 Jul 25 '12 at 06:24
  • @user1550488 - In which case I really think you need your first deliverables to be some of their reports infrastructure locally. A big question is why do you need to replicate existing technology. Is is viable for them to exist side by side? – Preet Sangha Jul 25 '12 at 20:56