SAN FRANCISCO -- Software project management suffers from confusion over project goals, developers working without supervision, and even from developers being miscast as engineers, said panelists during a keynote session at the VSLive show here on Wednesday.
Two software industry veterans, Alan Brown, director of the Rational Development Accelerator Initiative at Rational Software, and Alan Cooper, considered the father of the Visual Basic programming language, pondered issues pertaining to software project management. Cooper said programmers have been inappropriately called engineers. "I think engineering's kind of a title inflation and most people who deal with software are not engineers," said Cooper.
"The act of constructing software is, in fact, not an engineering process," Cooper said. "Engineering to me is problem-solving, which is very different from solution implementations, which is what programmers [do]." Title inflation is endemic to the industry, he said. "Web designers are called programmers, programmers are called engineers, and engineers are called architects, and architects don't seem to ever get called," Cooper exclaimed.
Good programmers are given engineering tasks, with attendant responsibilities in problem-solving, he said. There also is the issue of developers being unsupervised, without guidance, according to Cooper. "In the world of software, building software is essentially unsupervised," he said. Developers can end up "hatching [their] own catastrophe. What's missing from the process is not users, although users are certainly left out. What's missing is somebody who is skilled and trained and talented in the ability to interpret what users' needs are." Software, said Cooper, is dominated by people who like to create things as opposed to those who like to serve other people.
Brown said component-based development, to enable reuse of software in different projects, can assist in improving productivity. Cooperation amongst developers also is helpful. Brown recalled a project he observed that was being undertaken by the Federal Aviation Administration and how the effort always remained in flux.
"It turned out it was in flux for very obvious reasons: Whenever they brought in air traffic controllers to see a prototype, they all disagreed on what it should look like," Brown said.
Brown claims there are two extremes in project management: One is when a project depends on individuals each providing input, and the other is when there is consistency and predictability across project teams and a consistent life cycle is followed.
Cooper recalled an organization where developers feared business trips by the CEO, because the executive would then demand changes to the company's user interface. The developers, he said, "dreaded when the CEO goes on business trips because it always turned out that the UI was redesigned by whoever was sitting next to the CEO on the airplane."
Cooper pointed to a relationship between managers and programmers that affects time estimates. "There's this adversarial relationship, arguing and trying to come to some common ground, and what happens is there's not a lot of truth and honesty in the estimations," said Cooper.
According to Brown, success depends on personnel, tools, and processes. "Being successful is a matter of choosing the right people, but they have to be supported by choosing the right processes and tools," he said. Brown stressed the criticality of software projects. He said that after hearing of the first and second space shuttle disasters, he wondered if software caused the problem. "The cost of software failure is so high these days," he said.
Cooper agued that the best project is not always the one that comes first."Remember that best to market always trumps first to market. Google was released after Alta Vista, Apple was released after DOS," and Safeway.com came after Webvan, said Cooper, reciting a list of other examples as well.
But Brown retorted, "You believe all those were best? It had nothing to do with marketing?"
"I don't think for a minute that shallow marketing success is not a success," Cooper replied. "But my belief is that quality endures."