Giovanni Asproni shows how to create a software architecture with just the right amount of design that can be incrementally evolved (or changed) as the system grows and changes.
Liz Keogh discusses breaking down requirements without going into too much detail combined with complexity estimation for easy planning, dependency management, and prioritization.
Emma Langman explores the usefulness of some of the Quality tools that have been around since the 50s for gathering requirements, tackling repeat problems, or innovating more efficiently as a team.
Paul deGrandis emphasizes the importance of using specification-as-a-value, a way of unifying core.contracts, test.generative, and external systems under a single common specification in Clojure.
Jeff Gothelf explains how to create better product definitions with Design Thinking and Lean UX.
Steve Ross-Talbot discusses the what, why and how of describing things, in particular requirements, along with a set of tools serving that purpose and called Zero Deviation Lifecyle.
Robert Godfrey discusses the requirements set at AMQP’s foundation: Applicability, Reliability, Fidelity, Interoperability, Manageability, Ubiquity, explaining how AMQP was designed for the future.
Mario Cardinal explains how to use agile practices to incrementally introduce non-functional requirements into the architecture in order to reduce the complexity of the solution.
This talk gives practical tips for adopting an agile approach to planning, team interactions and risk management. When the culture shifts, teams achieve goals sooner and safety is greatly enhanced.
Successful architectures evolve over time to meet changing business requirements. Luke Hohmann presents how to collaborate with key members of your business to manage architectural changes.
Jeffries and Hendrickson derive Agile practices from the natural laws of software development. They don't just say "Be Agile!", but they explain why Agile practices make perfect sense.