Alistair Cockburn©Humans and Technology, Inc., 1998-2002 Slide 1 The World of Agile Software Development (or, “Creating a fair playing field in 30 minutes”)

Slides:



Advertisements
Similar presentations
What Is Agile Development & What does it Imply?
Advertisements

PROC-1 3. Software Process. PROC-2 What’s a process? Set of activities in creating software It involves creativity –hard to automate –Requires human judgment.
Scrum (software development)
Agile development By Sam Chamberlain. First a bit of history..
Agile Requirements Methods CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute October 26, 2004.
Agile Software Development Matt Rice November 27, 2006.
An Application for Education Dave Dalsveen CSM.  In terms of software development, from the need to integrate change into the software project development.
Agile Methods.
Agile Software Development
A Case for Agile Development
Agile Principles Suradet Jitprapaikulsarn 1. What is Agility? Effective (rapid and adaptive) response to change Effective communication among all stakeholders.
The Agile Alliance By Mark Rucker. The Agile Alliance What is the Agile Alliance? History of the Agile Alliance What is the Agile Alliance today? The.
An Agile View of Process
Introduction to Agile Methodologies and Concepts Roy Osherove Principal, Team Agile Blog : ISerializable.com.
Introduction to Agile.
Software engineering Process models Pavel Agejkin.
An Overview of Agile L e a d i n g C h a n g e T h r o u g h C o l l a b o r a t i o n.
Agile Development Methods: Philosophy and Practice
Elephants in the Agile Room. Reflections on 10 Years of Agility Todd Little Sr. Development Manager Landmark Graphics.
The New (Agile) Methodology
Agile Programming Principles.
Agile Web Development C. Daniel Chase University of Colorado at Boulder.
Developed by Reneta Barneva, SUNY Fredonia Agile Development.
Chapter 4 Agile Development
An introduction for PMPs
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
Scrum Thomas Ferris Nicolaisen Common sense?
"The thinking it took to get us into this mess is not the same thinking that is going to get us out of it."
AgileCamp Presents: Agile 101. Good luck in your presentation! This slide deck has been shared by AgileCamp Kit under the Creative Commons Attribution.
By Saravanan Bala. General Report 31 % of Software projects are cancelled 75 % of the software projects are considered failures by the people who initiated.
Richard HundhausenKen Schwaber Accentient Corporation Scrum.org SESSION CODE: DPR205.
Phil O'Connell Penn State Abington IST 261 (Fall 2015) Application Development Design Studio I Agile Scrum Phil O'Connell
Software Creation Communication Agile Principles applied to software projects.
1 The Manifesto for Agile Software Development “We are uncovering better ways of developing software by doing it and helping others do it. Through this.
K.Ingram 1 Sept 2007 Agile Software Development. K.Ingram 2 Sept 2007 Contents Agile Software Development: 1.What is it? 2.Agile’s Values, Principles,
AGILE COTS Václav Pergl We are uncovering better ways of developing software by doing it and helping others do it. Through this work.
ISECON 2003 San Diego, California Integrating Agile Methodologies into the Project Capstone Christopher G. Jones, CPA/PhD Utah Valley State College
- Discussion of Chapter 1 in Martin and Martin.  We are uncovering better ways of developing software by doing it and helping others do it. Through this.
Copyright © , RoleModel Software, Inc. The Continuous Refinement of Extreme Programming Ken Auer RoleModel Software, Inc.
Alistair Cockburn©Humans and Technology, Inc., Slide 1 Foundations of Agile Development: Cooperative Games of Invention and Communication in.
Alistair Cockburn©Humans and Technology, Inc., Slide 1 Alistair Cockburn Humans and Technology Salt Lake City, UT
©Alistair Cockburn The 2005 “Declaration of InterDependence” Alistair Cockburn
© 2010 Alistair Cockburn The New Methodology isn't a Methodology Dr. Alistair Cockburn.
©Alistair Cockburn 2010 What Makes Agile Work: The New Software Engineering Getting Past “Wimpy” Agile Dr. Alistair Cockburn
By: Isuru Abeysekera AGILE DEVELOPMENT. WHAT IS AGILE DEVELOPMENT? Broad term used to describe several methods for a development process Introduced in.
Industrial Software Development Process Bashar Ahmad RISC Software GmbH.
Alistair Cockburn©Humans and Technology, Inc., Slide 1 Alistair Cockburn Humans and Technology Salt Lake City, UT
Alistair Cockburn©Humans and Technology, Inc., Slide 1 The Current Conversation in Agile Software Development April-2004
Introduction to Software Engineering
Forget about Agile for a second!
Manifesto for Agile Software Development
The low hanging fruit is gone!
PMP vs. Scrum Master Compatible or Incompatible? Presented by:
Agile MDA Stephen J. Mellor
The Current Conversation in Agile Software Development Aug-2002
Agile Software Development The Cooperative Game
Teaching Agile Methods CSEE&T 2017, Savannah, Georgia
Agile Development Methods: Philosophy and Practice
Agile Development Methods: Philosophy and Practice
Introduction to Software Engineering
Agile Development Methods: Philosophy and Practice
Agile Software Development Paradigms
Agile Development Agile Development Damian Gordon Damian Gordon.
Projects, Assignments, and other Assessments
Chapter 5: New and Emerging Process Methodologies
Agile Development Methods: Philosophy and Practice
Agile Development Methods: Philosophy and Practice
Agile Project Management and Scrum
Presentation transcript:

Alistair Cockburn©Humans and Technology, Inc., Slide 1 The World of Agile Software Development (or, “Creating a fair playing field in 30 minutes”) Alistair Cockburn

©Humans and Technology, Inc., Slide 2 What agile is and what it isn’t Context: What is ‘methodology’ Reality check: The methodology-ecosystem interplay History: How did “agile” arise Reality check: Methodology attitudes are “would-be” Is / Isn’t: Misconstruing the message

Alistair Cockburn©Humans and Technology, Inc., Slide 3 Components of a methodology Team Values Processes Techniques Tools Skills Roles Standards QualityTeams Products MilestonesActivities Regression tests Object model Project plan Use cases Microsoft Project 3month increments UML / OMT C++ Microsoft Project STP Envy/Developer Modeling Java programming JAD facilitation Personality Project manager Documenter Designer Tester Planning Testing MBWA Use cases CRC cards

Alistair Cockburn©Humans and Technology, Inc., Slide 4 Scope of a methodology envisioningproposalsalessetuprequirementsdesign & codetestdeploytrainalter Project Lifecycle designer/programmer writer tester reuse point UI expert lead designer business expert expert user project manager project sponsor trainer secretary contractor night watchman janitor Roles Activities rest and recreation project development timesheets technical education vacations and basic business

Alistair Cockburn©Humans and Technology, Inc., Slide 5 Aspects of a methodology Notation Tools People, Organization, Culture Factory Control System Products

Alistair Cockburn©Humans and Technology, Inc., Slide 6 Reality check 1: methodology-ecosystem interplay What is the “Ecosystem” of a project Actual project details (“environment”) Actual staff expertise (“species”) Flights of stairs people must climb (“cliffs”) Specific dominant / mild people (“predators”) Office layout (“terrain”) etc. When each changes, the ecosystem rearranges itself.

Alistair Cockburn©Humans and Technology, Inc., Slide 7 People are stuffed full of personality. The methodology changes to fit the people. Team Values Process Techniques Tools Skills Roles Standards Quality Teams Products People MilestonesActivities Regression tests Object model Project plan Use cases Microsoft Project 3month increments UML / OMT C++ Microsoft Project STP Envy/Developer Modeling Java programming JAD facilitation Personality Project manager Documenter Designer Tester MBWA Use cases CRC cards Jim Peter Jenny Annika

Alistair Cockburn©Humans and Technology, Inc., Slide 8 Jenny (Pete) Marketplace Programmers Bill Mary Example of methodology restructuring: Rearrange job sets around personality groupings Marketing group Business analysts

Alistair Cockburn©Humans and Technology, Inc., Slide 9 Different projects need different methodologies (Each project is a separate game) Number of people involved Criticality (defects cause loss of...) Comfort (C) Essential money (E) Life (L) +20%... Prioritized for Legal Liability ,000 C6C20C40C100C200C500C1000 D6D20D40D100D200D500D1000 E6E20E40E100E200E500E1000 L6L20L40L100L200L500L1000 Prioritized for Productivity & Tolerance Discretionary money (D)

Alistair Cockburn©Humans and Technology, Inc., Slide 10 The “correct” mix of planning vs. reacting depends on the individual project’s risk exposure. from “Get Ready for Agile Methods – With Care” (Barry Boehm, IEEE Computer, January 2001)

Alistair Cockburn©Humans and Technology, Inc., Slide 11 History: How did “agile” arise “Agile” techniques were in use since the beginning. Agile (mobility-based) techniques did not show competitive advantage in the 1970s / 1980s, but did during the 1990s and do now. 1994: trials of semi-formal agile methodologies RADDSDM XP Crystal Scrum Adaptive

Alistair Cockburn©Humans and Technology, Inc., Slide 12 Agile Software Development Manifesto - a declaration of values “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: :Individuals and interactions over Processes and Tools. :Working software over Comprehensive documentation. :Customer collaboration over Contract negotiation. :Responding to change over Following a plan. That is, while there is value in the items on the right, we value the items on the left more.” (Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert Martin, Stephen J. Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas )

Alistair Cockburn©Humans and Technology, Inc., Slide 13 Reality check: Methodologies are only attitudes, a centering of the attention. Declarations of core values declare an “attitude” An attitude can not promise success in the future, it can only be spoken successfully in the past tense. it is only a wish to be... A would-be agile process A would-be predictable process A would-be repeatable process A would-be inexpensive process

Alistair Cockburn©Humans and Technology, Inc., Slide 14 The Agile attitude focuses on: 1. Talent & Skill(fewer better people) 2. Proximity(developers - developers - users) 3. Communication (morale, daily standup) 4. Just-in-time requirements and design 5. Frequent Delivery(incremental development) 6. Reflection 7. Less paper, more tacit / verbal communication 8. Tools 9. Quality in work 10. Different strategies for different projects

Alistair Cockburn©Humans and Technology, Inc., Slide 15 Is / Isn’t: Misconstruing the message 1. Agile SD is cheating 2. Agile SD requires the best developers 3. Agile SD is hacking 4. Agile SD won’t work for all projects

Alistair Cockburn©Humans and Technology, Inc., Slide Agile techniques are “cheating”. ·Hire good people; ·Seat them close together to help each other out; ·Get them close to the customers and users; ·Arrange for rapid feedback on decisions; ·Let them find fast ways to document their work; ·Cut out the bureaucracy. This is: cheating stacking the deck a good idea the heart of agile software development

Alistair Cockburn©Humans and Technology, Inc., Slide Agile only works with the best developers. Every project needs at least one experienced and competent lead person. (Critical Success Factor) Each experienced and competent person on the team permits the presence of 4-5 “average” or learning people. With that skill mix, agile techniques have been shown to work many times.

Alistair Cockburn©Humans and Technology, Inc., Slide 18 Faulty logic in action:“Agile processes require a few Competent and Experienced (C&E) people.” Proposition (T): To use agile, I need a few C&E people. Inverse (F):If I am not using an Agile process, I don’t need any C&E people on my project..? Logical Flaw: If I don’t have any C&E people, I can (... “suffer”...) Conclusion: With a few C&E people, I can use almost any process... without them, no process will work.) Contrapositive (T): Without a few C&E people, I can’t use agile processes.

Alistair Cockburn©Humans and Technology, Inc., Slide Agile is hacking. (Hacker interpretations are available & inevitable.) Hackers: “...spend all their time coding” Agilists:...test according to project priorities, recheck results with users often. Hackers: “...talk to each other when they are stuck” Agilists:...talk to each other and customers as a matter of practice. Hackers: “...avoid planning” Agilists:...plan regularly Hackers: “...management caves in out of fear” Agilists:...expect management to provide priorities, & participate jointly project adjustments.

Alistair Cockburn©Humans and Technology, Inc., Slide Agile won’t work for all projects. Right. (Business isn’t fair). Agile is an attitude prioritizing: Project evaluation based on delivered code Rapid feedback People as a value center Creativity in overcoming obstacles Not every team... values the Agile value set.... can set up the needed trust and communication