As we trek along in the Human Machine Interface (HMI) – driving, texting, reading, recording – we inform our electronic environment, enabling it to grow smarter as it records our thought paths and virtual lives. We allow this thinking machine to sort, separate, sequence, map, aggregate, and otherwise contextualize our digital footprints with billions of others’ data points. Thus we all inform the architecture of tomorrow’s civilization.
But we don’t just wander through this digital wonderland. The software architects among us, and their agile development teams of “non-techies” are shaping our internet-enabled universe, creating and managing change, and answering concrete needs. As publishers, we design and build content management systems, accessible online resources and classrooms, and storefronts employing business models that serve global markets of the one and the many. We work from inside the collective machine, applying principles of agile software development as we gather user stories, assess needs, identify requirements, design solutions, code, test, deploy, and then start the whole process again in a recursive, heuristic and self-aware loop. Incremental progress demonstrated by collectively designed, functioning software – that is our measure of success.
Agile methodology accommodates change evolving at an exponential pace. In fact, it is the embodiment of living change. Agile development is customer-centric. Agile is teams-based (small, fleet teams), multidisciplinary in nature, and transparent in process. Self-correcting. Empowered to fail, and to succeed. Agile works in brief sprints; this process has the discipline and sustaining power to build epics. Agile delivers in beautiful increments, kind of like self-aware mollusks building a virtual Nautilus Shell from the inside out. Codifying that perfect Fibonacci sequence – quite a goal for the paragon of animals!