Deadlines are everyday millstones for all workers. But as Information Age’s most recent roundtable debate showed, software developers have a tarnished reputation when it comes to meeting them.
One delegate, a project manager at a large public sector organisation candidly acknowledged: "I’m not from a technical background, I manage projects. But it’s always the software side, where I’m told it’s a creative process, where projects get derailed."
Managing artisan coders is clearly influenced by corporate culture and personal style. Some delegates favoured setting aside guaranteed ‘creative time’ for developers. Others simply factored in additional time to projects, knowing that original deadlines would be missed.
"Developers always take more time than they estimate," reported the software development manager at a financial services company.
For many of the delegates, a tension exists between imposing strict deadlines and allowing developers the room to innovate. The chief technology officer at a web-based business explained how innovation was critical to his business. He outlined how he nevertheless imposed strict weekly deadlines; if a project is late and misses the latest ‘build’ of the web site, it may not go live until the release schedule allows. "It’s a good, but painful, discipline," he stressed.
He also highlighted a common error in software project management: if it’s late, throw more people at it. "We never throw additional resources at a project – that’s when your problems simply mount up."
Reinventing the wheel
There is undoubtedly a strong craft element to software development, all the delegates agreed. But this elements is not always
appreciated: "I know our developers are capable of creating the most beautiful payment processing system. The problem is we built an adequate one years ago and it does a good enough job," said one delegate.
Information Age roundtable debates
This article is based on a recent Information Age lunch, sponsored by Borland, the software delivery optimisation vendor. In accordance with the ‘Chatham House’ rule, attendees at the lunch are not identified in this article.
Information Age hosts monthly lunch debates for readers to share experiences of some of their top priorities in IT today, and how they are meeting those challenges. If you are interested in attending future lunches, please email our events manager, Imogen Craig.
One facet of the programmer as artist is the tendency to write their own code, even for routines that already exist elsewhere, as one attendee noted: "We spend around 70% of our effort replicating stuff that is already out there." The desire to see greater reuse of existing software components is a major contributing factor to the drive toward service-oriented architecture (SOA). And delegates around the table universally reported that their organisation had developed or were implementing an SOA strategy.
"At the moment, we’re all focused on delivering applications," said the CTO for technical strategy at a high street bank. "In the future we will be delivering business processes by assembling application components. Alongside traditional software development skills, people with problem solving skills are going to be equally important."
The more prevalent reuse of software components will also alleviate some of the classic difficulties of software projects by balancing the pressure to meet deadlines with a more focused creative effort.
While SOA will progressively change the software development process, it will still require that process to be well managed.
Today, at least some of the delegates use workflow and increasingly sophisticated project and resource management tools to drive development programmes. But many admitted that they are still highly dependent on more rudimentary tools – wall charts, white boards and Excel spreadsheets – highlighting how, in some cases, the management of the development process needs to evolve just as much as the process itself.