Continued from page 72
to zero, as it were. From being essentially 16 years late, the project is suddenly well ahead of schedule.
Reverting to real solutions, I suppose that Peter G. Neumann and his ACM risk analyticals2 are redrawing the familiar conclusions from the NHS saga: overly grand plans are overly risky! Even the word grand invites disas- ter—witness Napoleon’s Grande Armée and the fate of so many grand dukes. Are there some projects that just resist decomposition but must be tackled as a whole? Neumann is aware of the pros and cons of holism in both the medical and SD (systems development) domains. 3 Some might find echoes of past Stanford Research, pre-SRI, “close encounters” with pseudoscience and the paranormal when Neumann tabulates various holistic and nonholistic philosophies. Under holistic “alternative health care (cure the causes),” he lumps together, approvingly:
“Whole-person approaches such as proactive prevention, homeopathy, acupuncture, diet, exercise, and orthomolecular rebalancing can lead to long-term sustainability, less drug use, lower overall costs.”
The nonholistic nonalternative (i.e., the maligned “traditional” approach to medicine and health care) comes out badly:
“Allopathic medicine (treat the symptoms): Suppressing symptoms (with pharmaceuticals, radiation, chemotherapy, corticosteroids) causes iatrogenic effects. Antibiotic overuse induces mutations of resistant bacteria. Long-term effects may offset short-term benefits.”
There are sound points here, lurking in a skewed dichotomy. The downside to allopathic treatment is acknowledged by traditionalists who urge many of the preventive proactions listed as holistic. Diet and exercise are hardly “alternatives,” except perhaps to the Jolt/pizza-stereotype programmers who are now busy Googling the meaning of Diet + Exercise. Yet the mention of homeopathy and orthomolecular balancing (also known as “Eat lots of organic broccoli!” 4) brings instant pause. I find “less drug use” and “treat the symptom” in opposite columns a tad problematic, given recent verdicts on the ineffectiveness of homeopathy (beyond the placebo effect), where the “causes are cured” using barely detectable, serially diluted amounts of the “drug” (nonorthodox molecules?) thought to be the cause of the symptoms.
The subject abounds with teasing paradoxes and
conflicting definitions of holistic as one moves around
the domains. When comparing holistic and nonholistic systems development, Neumann again reveals a bias, albeit a less contentious one. Holistic SD is characterized as “principled SD” in opposition to nonholistic as er, er, “unprincipled.” As defined, we cannot help but side with the holistic angels, etymologically wholesome, who make “pervasive use of requirements, specifications, composable system architectures, sound software engineering practice, design for trustworthiness, evolvability, maintainability...” All of which “...can enhance long-term sustainability and yield overall cost savings.”
They also serve the best apple pies, brush their teeth, and landscape their parents’ graves.
Heading to join Judas in inferno are the unprincipled so-called developers who scarcely deserve to have the predicate “system” whispered in nearby strings. Their “seat-of-the-pants ad-hoc constructions lead to rampant vulnerabilities, low assurance, patch-and-pray system administration, continual remediation, iatrogenic upgrades, cost overruns, development delays, system failures, project failures, wasted human resources.”
Quit stalling, Peter. What d’you really think of these unprincipled bastards?
Iatrogenesis, invoked here in both medical and SD contexts, has suffered some semantic dilution over the years. Originally meaning the side effects of healing, good or bad, it now commonly refers to the (usually unintended) harmful effects of medical treatments (in the widest possible sense). As such, it has its own vast literature and an American Iatrogenic Association doing its best to keep physicians loyal to their Hippocratic oaths.
The basic ethical dictum, “First, do no harm,” is usefully carried over by Neumann into the SD arena, where we all know the dangers of the hasty Band-Aid and its extreme manifestation, the one-line-patch. 5 Incidentally, Neumann refers to the nonholistic “patch-and-pray” debugging method, inviting the question as to which God or gods are to be besought by the unprincipled. We do know that the official Hippocratic Oath is “sworn by” Apollo (CTO), his son Asclepius (general practitioner), and Asclepius’s daughters Hygieia (rubber-gloved prevention) and Panacea (holistic healing). A divine family, each a specialist with top qualifications. In my own prayers I add the other four daughters: Iaso (long-term recuperation), Aceso (antibiotics), Aglaea (cosmetic surgery), and Meditrina (longevity/cryogenics). You can’t be too careful.
Elsewhere, I have devised suitable prayers (and sacrifices) to ensure success in diverse SD and IT projects. Suffice it to mention that Jupiter attracts special entreaties when faced with I/O problems. 6
References:
Archives