I’ve had little involvement with development teams recently (which I’d like to suggest is the reason for the lack of posts but then, I have to be honest…), the involvement I have had though has been with two projects, one of which was already in flight and for one reason or another, was faltering somewhat and therefore going through a re-estimating process, the other in the early stages of initiation, which as per our process requires some documents to be created and an associated sets of estimates to be produced for the business to sign off on the spend.
In each of the cases above I sat in on a number of meetings to try and aid the team come to an understanding of the work that was remaining / involved. I understand that any project will have budgetary constraints and inevitably a time constraint too, be it an arbitrary delivery date or not, I still find it frustrating though that we’re not asking up front the question of ourselves, “what’s the smallest amount we can do to add value?”. I’ve not come to a conclusion on this as yet as to why, perhaps it’s because of our process, perhaps it’s because we’re an internally chargeable resource and that as such we’re incentivised to drum up as much business for ourselves as possible, perhaps its just a cultural thing?
Either way, I think we’re doing a disservice to our customers (which are in actual fact just members of our own company and therefore ultimately this affects profit margins, a point well made by this blog post.) by not pushing back. If you look at principles like YAGNI used by developers, perhaps we should consider how we could apply this with the requirements that we see from our customers. Equally though by attempting to deliver everything in an allotted time we’re not giving ourselves an opportunity to deliver quality which leads to higher cost of support and change in the long run.
I’ve been advocating a switch to new methods of software delivery for some time now and I still stand by that, maybe though the real change to be made is company wide starting with a process of education (informed by us), perhaps the change isn’t about Waterfall vs. Agile, perhaps it’s more about us engaging with our customers more to discuss how we can work better for them by them working better for us and for this to happen continually to ensure that we aren’t just a cost on their balance sheet that has to be justified, that in fact we’re adding value that is apparent for all to see.