250 likes | 265 Views
Discover the essence of Agile development through craft, flow management, and cooperative games. Learn how to make impactful decisions, acquire knowledge efficiently, and optimize team dynamics for successful software projects. Join the agile revolution now!
E N D
What Makes Agile Work: The New Software EngineeringGetting Past “Wimpy” Agile Dr. Alistair Cockburn http://Alistair.Cockburn.us
The Agile Manifesto invites wimpy-ness • "… Individuals and interactions over processes & tools…" • (Yayy!! I don't have to follow those stupid processes any more!) • "… Working software over comprehensive documentation…" • (W00t!! Dump the documentation! I LOVE this agile stuff!) • "… Customer collaboration over contract negotiations…" • (I'm done when I'm done and I never have to say when!) • "… Responding to change over following a plan…" • (No plans! No project managers! No architects! ) • Where do I sign up?
Inventing People ... Communicating Solving a problem Creating a solution Expressing ideasin a language Deciding … they don’t understand which keeps changing … they don’t understand which keeps changing … they don’t understand which keeps changing To an interpreter unforgiving of error Making decisions every decision has economic consequences and resources are limited.
Craft • Flow Management • Cooperative Game • Self-Awareness (Personalities) • Knowledge Acquisition origami courtesy of Gery Derbier
People learn skills in 3 stages • Shu: Learna technique • Ha: Collecttechniques • Ri: Invent / blendtechniques
Craft teaches us to pay attention to our skillsand to the medium • Major crafts: • 1 Deciding what to build • 2 Managing (people and projects) • 3 Modeling • 4 Designing the external view • 5 Large-scale design (architecting) • 6 Fine-scale design (programming) • 7 Validating the work
The International Consortium for Agile is establishing a learning roadmap for each specialty.
Product Line Management King-of-the-hill wrestling IT Systems Poker Tennis Rock-Climbing Business Theater Chess Exploration Journalism Software Development Games have positions, moves, strategies Career Management Organization Survival Infinite Jazz music Open-ended Finite goal-directed Cooperative Competitive
Communicating Inventing Deciding • Three moves: • Two conflicting subgoals: • Deliverthis system • Set up for the next game • The situations (almost) never repeat!
Project Classification Scale: Criticality Life L6 L20 L40 L100 X X Essential moneys E6 E20 E40 E100 X Discretionary moneys X X D6 D20 D40 D100 Comfort C6 C20 C40 C100 1 - 6 - 20 - 40 - 100 Number of people coordinated Adapt to your situation
2 people atwhiteboard (Courtesy of Thoughtworks, inc.) (No Question-Answer) Face-to-face is the most effective - Try Video 2 people on phone Communication Effectiveness Videotape (Question-and-Answer) 2 peopleon chat Paper Richness of communication channel
People issues determine a project’s speed • Can they easily detect something needs attention? • (Good at Looking Around) • Will they care enough to do something about it? • (Pride-in-work; Amicability) • Can they effectively pass along the information? • (Proximity;face-to-face)
I wish they’d decidewhat stylethey want! I wish they’d think a bit more carefullybefore coding! I wish they’d decideon the UI designalready! I wish they’d decide what functions they want! Design = manufacturing if Inventory = Decisions! A decision UI Designers Every line of code is a decision Users &Sponsors Programmers BusinessAnalysts Testers
Convert jams to continuous flow. UI Designers UI Designers Users &Sponsors Users &Sponsors Testers Testers Programmers Programmers BusinessAnalysts BusinessAnalysts Reduce decisions in motion & balancethe flow
cost Knowledge comes atthe “moment of truth”: final integration. Delivers nearly no knowledge (or risk reduction) Big-Bang Design is a late-learning strategy Growth of knowledge with big-bang integration time
Development sequence indifferent (with respectto knowledge) cost Delivers knowledge (risk reduction) We can pay to learn early in the project Growth of knowledge with early, continuous integration Applies to both business ("lean startups") & technical design time
Develop for business value once risks are down Business value growing Knowledge growing(risk reduction) cost Reduce risks: - Business - Social - Technical - Cost / Schedule time
Trim to deliver on-time (or early) Delay to get more or better Payoff = Trim-the-Tail: Deliver by valueordate
Designing in Teams • Craft Professionsskills in a medium • Cooperative Gamecommunication teamwork strategies • Flow Managementunvalidated decisions= inventory,lean processes • Self-Awareness (Personalities)the people, strategies, techniques actually used • Knowledge Acquisitionpay-to-learntrim-the-tail origami courtesy of Gery Derbier