Software Conflict 2.0: The Art and Science of Software Engineering by Robert L. Glass
Author:Robert L. Glass
Language: eng
Format: epub
Publisher: developer.* Books
Published: 2006-03-09T20:00:00+00:00
A New Way of Looking at Software Productivity
How can we improve software productivity by orders of magnitude?
That was a question the Department of Defense asked a few years ago. It's a question all of us in the computing profession have asked ourselves over the years, for that matter.
There tend to be two kinds of people who respond to that question. One kind, those who think they know how we can do software 10 or 100 times better, propose to do it with lots of research money and methodology breakthroughs. “Give us X thousand dollars,” these people say, “and we will show you how to do automatic code generation from problems posed by experts on cocktail napkins.”
The other kind of persons, those who think that no one knows how to do software 10 or 100 times better, wring their hands and say things like “Alas, don't throw any more money after that problem, it appears to be unsolvable.”
Like so many other polarized life situations, hardly anyone is taking a middle ground between these two extremes. Is there any combination of currently known techniques which can lead to significant improvement in software productivity? Only a few people are exploring that question, let alone tentatively offering a “yes” answer.
Of course, there are the methodology hucksters who promise those kinds of improvements from whatever they happen to be selling at the moment, usually a technique called something like “Structured Poobah.” It's been hard to discuss the matter rationally with those folks, because they're so busy selling that they haven't time to talk about the existence of any hard evidence to support their claims.
There is, however, some disquieting data on that subject. One set, visibly enough, is found on the cover of Barry Boehm's book, Software Engineering Economics. Boehm's data show that, when it comes to productivity, methodologies and languages and other technology approaches are down in the noise level of improvements.
A few years ago an article appeared in one of the professional journals which reported the results of exploring experimental research findings on the benefits of methodology improvements, such as the structured methodologies. The conclusion of the study was that no experiments existed which could shed any significant light on their benefits. That was kind of a downer!
At a more recent computing conference, researchers reported on one small experiment into one small area, the benefit of using structured versus unstructured code. In this experiment, the benefits were clear (that was the good news) but nominal (that was the bad news)—down around 5 percent.
At that rate, it would take quite a collection of methodologies to add up to an order of magnitude improvement. Looked at realistically, these data indicate that we may not get there from here that way.
But let's look at the cover of Boehm's book once again. There was one productivity factor which was head and shoulders above the rest. It was the quality of the people doing the software work. Perhaps here, in the sociology of the technology of the software field, is the answer to the DoD's question.
Download
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
The Mikado Method by Ola Ellnestam Daniel Brolund(26283)
Hello! Python by Anthony Briggs(25209)
Secrets of the JavaScript Ninja by John Resig Bear Bibeault(24436)
Kotlin in Action by Dmitry Jemerov(23528)
The Well-Grounded Java Developer by Benjamin J. Evans Martijn Verburg(22870)
Dependency Injection in .NET by Mark Seemann(22659)
OCA Java SE 8 Programmer I Certification Guide by Mala Gupta(21421)
Algorithms of the Intelligent Web by Haralambos Marmanis;Dmitry Babenko(20264)
Grails in Action by Glen Smith Peter Ledbrook(19333)
Adobe Camera Raw For Digital Photographers Only by Rob Sheppard(17049)
Sass and Compass in Action by Wynn Netherland Nathan Weizenbaum Chris Eppstein Brandon Mathis(16360)
Secrets of the JavaScript Ninja by John Resig & Bear Bibeault(14073)
Test-Driven iOS Development with Swift 4 by Dominik Hauser(12246)
Jquery UI in Action : Master the concepts Of Jquery UI: A Step By Step Approach by ANMOL GOYAL(11523)
A Developer's Guide to Building Resilient Cloud Applications with Azure by Hamida Rebai Trabelsi(10637)
Hit Refresh by Satya Nadella(9212)
The Kubernetes Operator Framework Book by Michael Dame(8574)
Exploring Deepfakes by Bryan Lyon and Matt Tora(8424)
Robo-Advisor with Python by Aki Ranin(8369)