1st Edition

The Laws of Software Process A New Model for the Production and Management of Software

By Phillip G. Armour Copyright 2004
    270 Pages 90 B/W Illustrations
    by Auerbach Publications

    Within one generation, software has become one of the principal sources of wealth in the world. The development and use of software has grown faster than for any artifact in the history of the world. Probably no topic or subject in history has accelerated in its rate of practice as software has. Software development now needs to mature into a disciplined activity to overcome the difficulties that have traditionally plagued it. Software developers, engineers, and project managers need a reference that describes the evolution of software: where it has been, and where it is going.

    The Laws of Software Process: A New Model for the Production and Management of Software reveals a novel and compelling structure for development that redefines the very nature and purpose of software. The author explains how, in the modern "knowledge economy," software systems are not "products" in the classical sense, but is the modern medium for the conveyance of information. Literally, software is the currency of the knowledge basis of wealth in today's society.

    From this definition flows a new assessment of the basics of software development: the purpose of methods and processes; a comparison of programming languages; and an analysis of quality management, cost estimation, and project management and completion. The groundbreaking perspective outlined in this book serves as an expert guide for successful planning and execution of development projects.

    The Nature of Software and The Laws of Software Process
    A Brief History of Knowledge
    The Characteristics of Knowledge Storage Media
    The Nature of Software Development
    The Laws of Software Process and the Five Orders of Ignorance
    The Laws of Software Process
    The First Law of Software Process
    The Corollary to the First Law of Software Process
    The Reflexive Creation of Systems and Processes
    The Lemma of Eternal Lateness
    The Second Law of Software Process
    The Rule of Process Bifurcation
    The Dual Hypotheses of Knowledge Discovery
    Armour's Observation on Software Process
    The Third Law of Software Process (also known as the Footwear Manufacturer's Minor Dependent's Law)
    The Twin Goals of Optimal Termination

    The Purpose of Process
    Types of Teams
    Software Teams are All Types at the Same Time
    A Range of Unknowns, A Range of Processes
    Inventing Processes
    The Purpose of Process
    The Problems of Process

    The Meaning of Methodology
    The Maturity of Testing

    The Logic of Life Cycles
    Words Force Sequence
    Shooting Down Zeppelins
    Shooting Down Jet Planes
    The True Lifecycle
    A More Complex Generalized Model

    Of Methods and Models and Minds
    Models of Convention
    Models of Numbers
    Counting
    Chunking
    The Physical Nature of Models
    The Logical Nature of Models
    Map Onto Problem and/or Solution Space
    Methods and Models
    Minds

    The Advent of Agile
    It's Always Been Agile
    The Problems of "Big" Process
    Agile Methods
    Extreme Programming (XP)
    Code Science
    Crystal Methods
    Scrum
    Dynamic Systems Development Method (DSDM)
    Feature-Driven Development (FDD)
    Lean Development
    Adaptive Software Development (ASD)
    Why Agile? Why Now?

    Agile and the Orders of Ignorance
    Agile and the Orders of Ignorance
    Subdividing the Orders of Ignorance
    Agile and Zeroth Order Ignorance
    Agile and First Order Ignorance
    Agile and Second Order Ignorance
    Agile and Third Order Ignorance
    Agile and the Fourth Order of Ignorance

    The Future of Software Development
    The Execution of Knowledge
    The Demise of "Software Engineering"
    Software Development as an Educational Activity
    The Project

    Appendix A The Five Knowledge Storage Media
    Knowledge
    A Brief History of Knowledge Storage
    The Characteristics of the Knowledge Storage Media
    Building on Knowledge
    Brains, Books and Software

    Appendix B The Five Orders of Ignorance
    A Walk in the Woods
    A Path Less Traveled
    Tracks
    Prototyping
    The Expectation of Product
    Kinds of Knowledge
    The Five Orders of Ignorance
    The Five Orders of Ignorance in Systems Development
    The 3OI Cycle
    The Inability to Measure Knowledge

    Biography

    Phillip G. Armour (Corvus International, Chicago, Illinois, USA)

    "This book nicely consolidates and expands on the material in Phillip Armour's columns…This is a thought-provoking book that…has ideas about how to approach process design and implementation that could be useful in most situations."
    Scott Duncan, Software Quality Press