[PowerPoint presentation]


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Davis and Hersh, Descartes’ Dream , New York:Harcourt, Brace, Jovanovich, 1986 Age of Reason a reaction, in part to the travails of men like Galileo and Kepler. The latter had to defend his mother against charges of witchcraft because “anyone capable of giving birth to such a genius must have had consort with the Devil.”
  • Political pamphlet – Edgar Djikstra responding to a paper by deMillo, Lipton, and Perlis challenging formal proofs and asserting that such proofs required elaborate social processes. (1979) Similar case, Fetzer paper and formalist response. (1989)
  • Quote from Shakespeare, Midsummers Night Dream . Book = Information Ecologies by Bonnie A Nardi and Vicki L O’Day
  • John Seeley Brown and Paul Duguid
  • ADMLC differs from spiral and evolutionary (RAD) in that the latter still operate on a belief in imposed order and cause-and-effect engineering. … they do no provide the systems engineer with the metnal switch to a belief in emergent order.
  • Overlapping stages. Arrows out indicate “breakout ideas” discovered in process with the effect of changing process. No cause and effect, no defined deliverables, imprecise goals and objectives. An approach not for the timid.
  • Primitive = char, number, rule/statement Atomic = container, method, message, variable
  • Node is collection of hardware components – virtual node is their software, behaviorally defined, counterparts plus constructs like stacks queues, etc. A pared down version of a virtual machine/byte-code interpreter/thin-binary would also be included in the virtual node
  • Objects are fully instantiated or instantiated via URL for demand loading
  • Gordon Dickson’s Dorsai
  • [PowerPoint presentation]

    1. 1. People, Poetry, and Culture: Reinventing Software Development Dr. David West OTUG Distinguished Lecture Series July 2001
    2. 2. What shall we talk about? <ul><li>Past </li></ul><ul><ul><li>Some history and context </li></ul></ul><ul><ul><li>1968 </li></ul></ul><ul><li>Present </li></ul><ul><ul><li>Contemporary dialogs </li></ul></ul><ul><li>Future </li></ul><ul><ul><li>Presuppositions </li></ul></ul><ul><ul><li>Reinventing Software Development </li></ul></ul>
    3. 3. History – Plato on Calculation “ If you cannot calculate you cannot speculate on future pleasure and your life will not be that of a human, but that of an oyster or a jellyfish.” Philebus, 21
    4. 4. History - Calculation <ul><li>Algebra </li></ul><ul><ul><li>India (terminological / abbrev.), Arabia (symbolic) </li></ul></ul><ul><ul><li>Europe (particular reasoning to global reasoning) </li></ul></ul><ul><li>Calculus </li></ul><ul><ul><li>Rome (pebbles, basic operations of arithmetic) </li></ul></ul><ul><ul><li>Newton / Leibniz (differential, integral) </li></ul></ul><ul><ul><li>Vector, tensor, predicate </li></ul></ul>
    5. 5. History – Binary Arithmetic <ul><li>Leibniz – 1679 </li></ul><ul><li>W.H. Eccles & F. W. Jordan – flip-flop </li></ul><ul><li>C.E. Wynn-Williams, 1932 – thyatron tube binary electronic counting machine </li></ul><ul><li>John von Neumann – 1945 – binary representation for computers </li></ul><ul><li>(George Boole – Logic) </li></ul>
    6. 6. History - Calculators <ul><li>Abacus </li></ul><ul><li>1617 – John Napier (Napier’s Bones) </li></ul><ul><li>1623 – Wilhelm Shickard (calculating clock) </li></ul><ul><li>1642 - Blaise Pascal (the Pascaline) </li></ul><ul><li>1673 – Leibniz (four function digital) </li></ul><ul><li>1885 – Burroughs (adding and listing machine) </li></ul>
    7. 7. History – Aristotle’s Dream “ Suppose every instrument could by command or by anticipation of need execute its function on its own; suppose (like the carvings of Daedelus or the figurines of Hephaestus which, the poet says, could take on a life of their own) that spindles could weave of their own accord, and plectra strike the strings of zithers by themselves; then craftsmen would have no need of hand-work, and masters have no need of slaves .”
    8. 8. History - Automata <ul><li>Hero of Alexandria </li></ul><ul><li>Al Jazzari (sequential automata) </li></ul><ul><li>Jacques de Vaucanson, 1738, (programmable sequential automata – the Digesting Duck) </li></ul><ul><li>Henri-Louis Jaquet-Droz, 1770, (android musician) </li></ul>
    9. 9. History - computer <ul><li>Jacquard’s Loom </li></ul><ul><li>Babbage -- Lady Lovelace </li></ul><ul><li>Hollerith </li></ul><ul><li>Watson and IBM (Harvard Mark I) </li></ul><ul><li>SSEC (conditional branching, subroutines, stored program) </li></ul><ul><li>Eniac </li></ul><ul><li>Vannevar Bush, Mauchly, Eckert, von Neuman </li></ul>
    10. 10. Recap: Essential Historical Ideas <ul><li>One – Zero and place-value math </li></ul><ul><li>Two – algebraic thought </li></ul><ul><li>Three – logical thought </li></ul><ul><li>Fourth – algebraic and binary logic </li></ul><ul><li>Fifth – set theory </li></ul><ul><li>Sixth – mathematical logic (predicate calculus) </li></ul><ul><li>Seventh – Turing Machine </li></ul>
    11. 11. “The End of History” <ul><li>Amazing body of knowledge and understanding </li></ul><ul><ul><li>Of computation </li></ul></ul><ul><ul><li>Of computers </li></ul></ul><ul><ul><li>Of Automata </li></ul></ul><ul><ul><ul><li>Formally defined deterministic mechanical and electro-mechanical systems </li></ul></ul></ul><ul><li>A bad case of hubris </li></ul><ul><ul><li>Rationalists thought they had found the answer to “life, the universe, and everything.” [Ask the Dolphins.] </li></ul></ul>
    12. 12. Context - Metaphor <ul><li>Quine and the “fringes of science” </li></ul><ul><li>MacCormac </li></ul><ul><ul><li>Diaphor – poetry </li></ul></ul><ul><ul><li>Epiphor – prose </li></ul></ul><ul><ul><li>Lexical usage </li></ul></ul><ul><li>West </li></ul><ul><ul><li>Paraphor (melded concepts of Kuhn’s “paradigm” and metaphor) – between epiphor and lexical </li></ul></ul>
    13. 13. Life Cycle of Metaphors (MacCormac) <ul><li>Diaphor – poetry </li></ul><ul><ul><li>“ what if … was like …” </li></ul></ul><ul><li>Epiphor – prose </li></ul><ul><ul><li>“ an atom can be visualized as a small planetary system with electrons (planets) orbiting a central nucleus (sun), the orbits corresponding to …” </li></ul></ul><ul><li>Lexical usage </li></ul><ul><ul><li>“ Both the human brain and the electronic computer are instances of physical symbol systems, hence the brain IS a kind of computer.” </li></ul></ul>
    14. 14. Off the Beaten Track (West) <ul><li>Paraphor </li></ul><ul><ul><li>When a metaphor becomes a paradigm </li></ul></ul><ul><ul><ul><li>Kuhn’s notion of paradigm </li></ul></ul></ul><ul><ul><ul><li>Lexical use of metaphor </li></ul></ul></ul><ul><ul><li>Metaphor becomes part of cultural perspective </li></ul></ul><ul><ul><li>Values associated with paraphor become the values of the culture </li></ul></ul><ul><ul><ul><li>‘ Rational’ is good – emotional is bad </li></ul></ul></ul><ul><ul><ul><li>Control is essential – chaos is evil </li></ul></ul></ul><ul><ul><ul><li>Efficiency is a virtue – waste is a vice </li></ul></ul></ul>
    15. 15. Context: Paraphors We Knew and Loved <ul><li>Spinning our fates (drop spindle / potters wheel) </li></ul><ul><li>God The Watchmaker (clock) </li></ul><ul><li>Wind and Water (dynamics) </li></ul><ul><li>Blowing off steam (heat engine) </li></ul><ul><li>I compute, therefore I am (digital computer) </li></ul><ul><li>J. David Bolter, Turing’s Man , Chapel-Hill: UNC Press, 1984 </li></ul>
    16. 16. “We Hold These Truths …” <ul><li>Philosopher’s Stone </li></ul><ul><ul><li>Everything it touched turned to gold </li></ul></ul><ul><li>Single idea powerful enough to explain everything </li></ul><ul><li>Rational Formalism – Paraphor for modernity </li></ul>
    17. 17. Descartes’ Dream <ul><li>November 10, 1619 – crawled into a wall stove, warmed up, had a vision. </li></ul><ul><ul><li>“ Unification and illumination of the whole of science, even the whole of knowledge, by one and the same method: the method of reason.” </li></ul></ul><ul><ul><li>Mirabilis scientiae fundamenta </li></ul></ul><ul><ul><ul><li>Accept only what is clear in one’s own mind </li></ul></ul></ul><ul><ul><ul><li>Split large difficulties into smaller ones </li></ul></ul></ul><ul><ul><ul><li>Argue from simple to complex </li></ul></ul></ul><ul><ul><ul><li>Check, when done </li></ul></ul></ul>
    18. 18. Context: Leibniz’s Dream <ul><li>Characteristica universalis - universal method whereby all human problems, whether of science, law or politics, could be worked our rationally, systematically, by logical computation. </li></ul><ul><li>De arte combinatoria – “a general method in which all truths of the reason would be reduced to a kind of calculation. At the same time this would be a sort of universal language or script, but infinitely different from all those projected hitherto; for the symbols and even the words in it would direct the reason; and errors, except those of fact, would be mere mistakes in calculation.” </li></ul>
    19. 19. Context – Leibniz on Binary Math “ Omnibus ex hihil ducendis sufficit unum .” (“With one, everything can be drawn out of nothing.”) Saw binary arithmetic in the 64 Hexagrams of the I Ching (Yin / Yang). Tried to convert the Emperor of China (an avid mathematician) to Christianity via arguments that “ the Unity stood for God and the Zero for the Void, that the Supreme Being had drawn every existing thing from out of the void just as unity and zero suffice to represent every possible number.”
    20. 20. Context – Bertrand Russel “ The most astonishing feature of modern science is its return to Pythagorism .” “ … the Universe is ruled by the laws of a physical world whose properties could be expressed as abstract concepts, the numbers, themselves developed by the efforts of human thought which – once it had attained the capacity of extreme abstraction – could act on the objects of this same universe .”
    21. 21. Context – Maurice d’Ocagne on Calculation “ Calculation is important in the domain of theory as it is in matters of practice. All the material progress of our civilisation (sic) derives directly or indirectly from Science, and the progress of Science itself constantly depends on calculation. This is not only the case for the so-called ‘exact’ sciences … but also for those which were considered experimental or observational …”
    22. 22. On the Eve of a Conference <ul><li>Rational Machines, Rational Theory </li></ul><ul><li>Rational Universe </li></ul><ul><ul><li>Rule governed (classical binary logic coupled with mathematics) </li></ul></ul><ul><ul><li>Top-down centralized control (God as the master control module) </li></ul></ul><ul><ul><li>Deterministic cause and effect </li></ul></ul><ul><ul><li>Objective reality – not dependent on observer(s) </li></ul></ul><ul><li>Rational Software </li></ul><ul><li>Rational Process </li></ul>
    23. 23. 1968 – “We have seen the enemy and he is us.” (Pogo) <ul><li>NATO Conference on Software Engineering </li></ul><ul><li>Inevitable application of prevailing paraphor to software development </li></ul><ul><ul><li>Software artifacts are “machines” </li></ul></ul><ul><ul><ul><li>Deterministic, cause and effect, formally describable </li></ul></ul></ul><ul><ul><li>People are potential “machines” </li></ul></ul><ul><ul><ul><li>After installation of proper formalisms (education/training) </li></ul></ul></ul><ul><ul><ul><li>With appropriate management discipline </li></ul></ul></ul><ul><ul><li>Systems are Cartesian </li></ul></ul><ul><ul><li>Model = machine </li></ul></ul><ul><ul><ul><li>Possible to define a formal syntax and grammar capable of unambiguous description of the implemented machine. </li></ul></ul></ul>
    24. 24. Inspiration from an Architect – Christopher Alexander - I &quot;Today more and more design problems are reaching insoluble levels of complexity. … At the same time that the problems increase in quantity, complexity, and difficulty, they also change faster than before. …
    25. 25. Inspiration from an Architect – Christopher Alexander - II It is not hard to see why the introduction of mathematics into design is likely to make designers nervous. What they do not realize, however, is that modern mathematics deals at least as much with questions of order and relations as with questions of magnitude … becoming a very powerful tool indeed if it is used to explore the conceptual order and pattern which a problem presents to its designer.
    26. 26. Inspiration from an Architect – Christopher Alexander - II … logic in the widest sense, refers to something far more general. It is concerned with the form of the abstract structures, and is involved the moment we make pictures of reality and then seek to manipulate these pictures so that we may look further into the reality itself. It is the business of logic to invent purely artificial structures of elements and relations … and then, because the logic is so tightly drawn, we gain insight into the reality which was previously withheld from us.
    27. 27. Plato on Decomposition [First,] perceiving and bringing together under one Idea the scattered particulars, so that one makes clear the thing which he wishes to do... [Second,] the separation of the Idea into classes, by dividing it where the natural joints are, and not trying to break any part, after the manner of a bad carver... I love these processes of division and bringing together ... and if I think any other man is able to see things that can naturally be collected into one and divided into many, him I will follow as if he were a god. Plato
    28. 28. Diderot on Analysis and Synthesis “… bring the discoveries and organize them, so that men may be enlightened, … While it is important to disassemble, to resolve the whole into its parts, … it is also indispensable to combine, to situate, and to re-assemble these diverse, separated fragments that are collected. This creates a new “whole”, now intelligible to the inquisitive mind, … before putting them in the mind of others … according to its functional individuality and its characteristic law of action and development.”
    29. 29. Engineering - I &quot;… software development today is in a pre-engineering phase analogous in many respects to the pre-engineering phases of the now traditional engineering disciplines.&quot; &quot;We do not seem to be even trying to learn from the history of the classical engineering fields.&quot;
    30. 30. Engineering - II &quot;The essential factor which accounts for the very substantial difference between design correctness yesterday and today [in classical engineering fields] it seems clear to me, is a scientific and mathematical foundation … and the fact that practitioners apply that foundation regularly and as a matter of course in their work.&quot;
    31. 31. Engineering - III &quot;The scientific and mathematical foundations referred to above are provided by Newton's laws (for the civil and mechanical engineer) and Maxwell's laws (for electrical engineers). The comparable foundations for software engineering in the truest sense of the word engineering is provided by the work of Floyd, Hoare, Djikstra and others, but has not yet come into widespread use in practice. We are still living and working in the pre-engineering days of software development.&quot;
    32. 32. Engineering - IV <ul><li>Robert L. Barber - IEEE Annals of the History of Computing 19:4, Oct.-Dec. 1997 . </li></ul><ul><li>29 years since advent of SE and it still is not being done? </li></ul><ul><li>Why </li></ul><ul><ul><li>Doesn’t work </li></ul></ul><ul><ul><li>Isn’t worth the effort to try </li></ul></ul>
    33. 33. Engineering V – (Winograd) <ul><li>There is a given reality “out there” which we come across during software development. By analyzing facts of this reality, we obtain requirements for the software </li></ul><ul><li>The essential task of the software developer is – starting from the problem defined in that reality – to find a correct solution in the form of a program system. </li></ul><ul><li>It is possible to separate the production of software from its use. Software engineering is concerned with the production of software on the basis of fixed requirements. </li></ul>
    34. 34. Engineering V - (Winograd, cont.) <ul><li>Software production is based on models representing reality. Models should map reality correctly. </li></ul><ul><li>The whole process is largely independent of individuals. For one and the same problem, different developers should arrive at the same results. The developers should be interchangeable. </li></ul>
    35. 35. Engineering V – (Winograd, cont.) <ul><li>Communication should be restricted and regulated via fixed interfaces. The division of labor can be worked out on an ad hoc basis. Subject to technical feasibility, any desired parts of the production process can be automated. </li></ul><ul><li>The developer’s responsibility covers – only – proper construction of the product in accordance with the requirements specification. Any ethical considerations that go beyond this are quite separate from the technical aspects of the work. </li></ul>
    36. 36. Contemporary Dialogs <ul><li>The artificial intelligence of computer scientists </li></ul><ul><li>“ A political pamphlet from the middle ages.” </li></ul><ul><li>Greece vs. Rome </li></ul><ul><li>CASE and automated development </li></ul><ul><li>Object Orientation </li></ul><ul><li>eXtremely Agile methodologies </li></ul><ul><li>Information Ecologies / Communities of Practice </li></ul><ul><li>Complexity Theory </li></ul><ul><li>Humanity </li></ul>
    37. 37. The AI of Computer Scientists <ul><li>“ Over the holidays, Alan (Newell) and I created an intelligent program.” – Herbert Simon </li></ul><ul><li>“ Perceptrons can’t compute – I can mathematically prove it.” Marvin Minsky (And while I am at it I will mathematically prove that hummingbirds can’t fly. </li></ul><ul><li>Dreyfus and Dreyfus – What Computers Can’t Do </li></ul>
    38. 38. “A political pamphlet from the middle ages.” <ul><li>1979 - DeMillo, Lipton, Perlis </li></ul><ul><ul><li>Social construction of proofs </li></ul></ul><ul><li>Slide title = Djikstra’s response </li></ul><ul><li>1989 – Fetzer again challenges the efficacy of proofs and formal methods, evoking similar firestorm </li></ul><ul><li>Heuristics versus Formal Methods </li></ul><ul><li>David Parnas – “Top Down Design: how and why to fake it.” </li></ul>
    39. 39. Greece vs. Rome (Robert L. Glass) <ul><li>Greece </li></ul><ul><ul><li>Informal </li></ul></ul><ul><ul><li>Codes </li></ul></ul><ul><ul><li>Uses structured-stuff </li></ul></ul><ul><ul><li>Minimum documentation </li></ul></ul><ul><ul><li>Uses things as tools </li></ul></ul><ul><ul><li>Democratic </li></ul></ul><ul><ul><li>Empirical/inductive </li></ul></ul><ul><ul><li>Intuitive </li></ul></ul><ul><ul><li>Substance </li></ul></ul><ul><li>Rome </li></ul><ul><ul><li>Formal </li></ul></ul><ul><ul><li>Manages project </li></ul></ul><ul><ul><li>Uses Structured Stuff </li></ul></ul><ul><ul><li>Maximum documentation </li></ul></ul><ul><ul><li>Uses people as tools </li></ul></ul><ul><ul><li>Imperial </li></ul></ul><ul><ul><li>Analytical/deductive </li></ul></ul><ul><ul><li>Logical </li></ul></ul><ul><ul><li>Form </li></ul></ul>
    40. 40. Process <ul><li>Better process = better products! </li></ul><ul><li>SEI / CMM, Capers Jones, TQM </li></ul><ul><ul><li>Formal process – assumes formal systems </li></ul></ul><ul><ul><li>Empirical studies fail to show either increased quality or increased efficiency </li></ul></ul><ul><li>Robert A. Frosch (1969) </li></ul><ul><ul><li>Absence of detailed specification </li></ul></ul><ul><ul><li>Hard part first </li></ul></ul><ul><ul><li>“ Satisficing” solutions </li></ul></ul><ul><ul><li>Rapid iterations </li></ul></ul>
    41. 41. Object Orientation <ul><li>Language Wars </li></ul><ul><ul><li>Smalltalk is the only true OO language and it fails to fully implement object concepts </li></ul></ul><ul><li>Method Wars </li></ul><ul><ul><li>CRC versus RUP </li></ul></ul><ul><li>Patterns or Pattern Languages </li></ul><ul><ul><li>Inspiration from an architect </li></ul></ul><ul><ul><li>Timeless Way of Building versus A Pattern Language </li></ul></ul>
    42. 42. Inspiration from an Architect – Christopher Alexander A building or town will be alive to the extent that it is governed by the Timeless Way . To seek the Timeless Way we must first know the Quality Without a Name. To reach the Quality Without a Name we must then build a living Pattern Language as a gate. Once we have the gate, we can pass through it to the practice of the Timeless Way. And yet the Timeless Way is not complete, and will not fully generate the Quality Without a Name , until we leave the gate behind.
    43. 43. XP versus the Agile Alliance Agile says: we value individuals and interactions over processes and tools. XP says: put the individuals together and have them work this way. Agile says: we value working software over comprehensive documentation. XP says: write software the first day and every day, test the first day and every day, refactor the first day and every day. Agile says: We value customer collaboration over contract negotiation. XP says: Sit the customer down with the programmers and have them steer the project every single day. Agile says: We value responding to change over following a plan. XP says: Set up intense and rapid feedback and govern yourselves by it. The fact is, XP's real viewpoint is so radical that it can't even be properly expressed by comparing with those wimpy weightless Agile preferences.
    44. 44. Data is Dead – Information is Comatose <ul><li>J Arsac on Information (ns) </li></ul><ul><ul><li>Data is what can be stored in a DBMS </li></ul></ul><ul><ul><li>Information is the assembly and presentation of data according to formally defined rules </li></ul></ul><ul><li>Information Ecologies (Nardi and O’Day) </li></ul><ul><li>The Social Life of Information (John Seeley Brown) </li></ul>
    45. 45. J. Arsac on Information “ A piece of information is a written formula capable of imparting knowledge … I distinguish amongst the various sources and reserve the term information solely for those which I can write down. … Anything that can be measured can be written down … I refuse to give the name information to ways of acquiring knowledge that I am unable to describe explicitly.”
    46. 46. Information Ecology We define an information ecology to be a system of people, practices, values, and technologies in a particular local environment. System – dense interrelationships Diversity – essential to health & evolution Coevolution – all members adapt and create in response to change Keystone species – essential role for smooth function Locality – “local habitation and a name.”
    47. 47. Social Life of Information <ul><li>Process </li></ul><ul><ul><li>Discrete </li></ul></ul><ul><ul><li>Well-defined </li></ul></ul><ul><ul><li>Isolable </li></ul></ul><ul><ul><li>Black box </li></ul></ul><ul><ul><li>Longitudinal (sequential) </li></ul></ul><ul><ul><li>Information centric </li></ul></ul><ul><li>Practice </li></ul><ul><ul><li>Diffuse, distributed </li></ul></ul><ul><ul><li>Ill-defined </li></ul></ul><ul><ul><li>Holistic </li></ul></ul><ul><ul><li>Complex </li></ul></ul><ul><ul><li>Lateral and longitudinal </li></ul></ul><ul><ul><li>Experience / knowledge centric </li></ul></ul>
    48. 48. Software Development and Reality Construction <ul><li>Dreyfus brothers ( Merleau Ponty and Dilthey) </li></ul><ul><li>Winograd (Heidegger, Maturana and Flores) </li></ul><ul><li>Coyne (Derrida) </li></ul><ul><li>Floyd </li></ul>
    49. 49. Christiane Floyd, et. al. <ul><li>Challenge and refutation of rationalist assumptions listed by Winograd. </li></ul><ul><ul><li>No objective reality – all reality is socially constructed </li></ul></ul><ul><ul><li>Software development is a moral and social process, an exploration of a constructed reality </li></ul></ul><ul><ul><li>Artifact and use are inextricably intertwined and mutually defining. </li></ul></ul><ul><ul><li>“ The map is not the territory.” </li></ul></ul><ul><ul><li>Communication is essential – multidirectional, multi-vocal, and context specific. </li></ul></ul><ul><ul><li>Ethics and morality are essential aspects of the development tasks – not add-ons. </li></ul></ul>
    50. 50. Not Complicated. Complex! <ul><li>Formal systems are merely complicated </li></ul><ul><li>A complex adaptive system is: </li></ul><ul><ul><li>An ensemble of independent agents </li></ul></ul><ul><ul><li>Who interact to create an ecosystem </li></ul></ul><ul><ul><li>Whose interaction is defined by the exchange of information. </li></ul></ul><ul><ul><li>Whose individual actions are based on some system of internal rules </li></ul></ul><ul><ul><li>Who self-organize in nonlinear ways to produce emergent results </li></ul></ul><ul><ul><li>Who exhibit characteristics of both order and chaos </li></ul></ul><ul><ul><li>Who evolve over time. </li></ul></ul>
    51. 51. Adaptive Development Model LifeCycle - Highsmith <ul><li>Does not Manage (bounds, directs, nudges, confines) </li></ul><ul><li>Relies on emergent order not imposed order </li></ul><ul><li>Component (outcomes / products) not task based </li></ul><ul><li>Highly iterative </li></ul><ul><li>Unpredictable (“deviations guide us to the correct solution”) </li></ul>
    52. 52. Highsmith – ADMLC Graphic
    53. 53. Recap <ul><li>Software Engineering was the “last hurrah” of the Age of Reason. </li></ul><ul><li>Some good results – general dissatisfaction – complete failure in achieving objectives </li></ul><ul><li>Nothing intrinsically wrong with the foundation ideas – they are just applied to the wrong domain. </li></ul><ul><li>Long tradition of “loyal opposition” </li></ul><ul><li>Time to reinvent software development </li></ul>
    54. 54. Reinvention - Scope <ul><li>Philosophy </li></ul><ul><li>Values </li></ul><ul><li>Products </li></ul><ul><ul><li>Systems architecture / infrastructure </li></ul></ul><ul><ul><li>Components </li></ul></ul><ul><ul><li>Applications </li></ul></ul><ul><ul><li>Systems </li></ul></ul><ul><li>Process </li></ul><ul><li>Community </li></ul>
    55. 55. Philosophy <ul><li>Metaphysics </li></ul><ul><ul><li>Objective reality is overrated, and irrelevant at the level of applications and systems </li></ul></ul><ul><ul><li>Software development IS reality construction </li></ul></ul><ul><li>Complexity Science (emergence will win out) </li></ul><ul><li>Epistemology </li></ul><ul><ul><li>Context is everything, syntax is convenience </li></ul></ul><ul><ul><li>Ineffable knowledge exists and is essential </li></ul></ul>
    56. 56. Values “ Man, the measure of all things.” People First! Open source Formality, NO!! Discipline, yes.
    57. 57. Products <ul><li>Systems architecture / infrastructure </li></ul><ul><ul><li>Espalier (David Gelernter) </li></ul></ul><ul><li>Components </li></ul><ul><ul><li>Objects, primitive objects, atomic objects </li></ul></ul><ul><li>Applications </li></ul><ul><ul><li>Affordances </li></ul></ul><ul><li>Systems </li></ul><ul><ul><li>Information ecologies </li></ul></ul>
    58. 58. Infrastructure Node Virtual Node Just Add Web.
    59. 59. Objects node Objectionary
    60. 60. Process <ul><li>Explore to improve </li></ul><ul><li>Hybrid of eXtreme Programming ADMLC </li></ul>
    61. 61. Community <ul><li>Software Craft </li></ul><ul><ul><li>Raw materials (objects, infrastructure) </li></ul></ul><ul><ul><li>Hand tools </li></ul></ul><ul><ul><li>Ineffable knowledge </li></ul></ul><ul><li>Supporting Guild (The Order) </li></ul><ul><ul><li>Enculturation </li></ul></ul><ul><ul><li>Apprenticeship </li></ul></ul><ul><ul><li>Community of Practice </li></ul></ul><ul><li>Extended family </li></ul><ul><ul><li>Users, managers, ecology members </li></ul></ul>
    62. 62. Becoming <ul><li>Pilgrimage </li></ul><ul><ul><li>The Ashram </li></ul></ul><ul><li>Apprenticeship </li></ul><ul><ul><li>Lore and wisdom (reuse) </li></ul></ul><ul><li>Rites-of-Passage </li></ul><ul><ul><li>Novice, enabler, coordinator, listener </li></ul></ul><ul><li>In the World but not of It </li></ul>
    63. 63. The Business Case <ul><li>Not going to “change the world” </li></ul><ul><li>Recognized group </li></ul><ul><ul><li>Dorsai (Gordon Dickson) </li></ul></ul><ul><ul><li>Amish < The Order < Mormons </li></ul></ul><ul><li>Value </li></ul><ul><ul><li>Order of magnitude (10x) better outcomes </li></ul></ul><ul><ul><li>2x – 5x typical fees </li></ul></ul><ul><li>Assets </li></ul><ul><ul><li>Open source – everyone can have access to tangible assets </li></ul></ul><ul><ul><li>Ineffable knowledge = proprietary assets </li></ul></ul>