Buscar
You Cannot Predict the Future
Cód:
491_9781732586406
Almost all activities in contemporary software projects try to predict the future – analyzing, architecting, programming, testing, budgeting, and scheduling. Since nobody can yet reliably predict the future, those activities cannot possibly work as well as desired.Unknowns: Unknowns lie at the root of all software problems, otherwise someone could just fix them. Unknowns make bugs and enhancements inevitable.Bride-of-Agile: Sponsoring-organization obligations to projects concern politics and resources. Bride-of-Agile practices include working through continual change, fostering diversity and debate, and dealing with problem stakeholders.Determinism versus Emergence: Determinism enables productive use of existing tools and practices. Emergence provides opportunities to write new programs that will benefit others. Recent skirmishes between Waterfall and Agile extend the 2500-year-long battle within philosophy and science over causality and free will.Polish versus Rot: The Sunrise problem sheds light on the concept of good enough for now. Quality improves through polish – analysis, programming, and testing. Quality worsens through rot – changing expectations, usages, and technologies. Technical debt embodies the economic tradeoffs of deferring polish and rot.Coping with Surprise: Subjective search underlies Agile and Bride-of-Agile practices, helping everyone to be less wrong and to cope with surprises. Plans are essential but, alas, even the best laid plans go oft astray.
Veja mais