We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byTriston Burrus
Modified about 1 year ago
© Alistair Cockburn, 2002 Slide 1 What Is Agile Development & What does it Imply? Alistair Cockburn
© Alistair Cockburn, 2002 Slide 2 Talk structure What agile is (isn’t), and what it implies What is ‘agile’, how did it get there? Methodology theory meets project details Getting / Misconstruing the message
© Alistair Cockburn, 2002 Slide 3 ‘Agile’ got there by winning the development races in the turbulent 1990s. 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. Trial runs of current agile methodologies, RADDSDM XP Crystal Scrum Adaptive
© Alistair Cockburn, 2002 Slide 4 Agile software development is about valuing “maneuverability” and “efficiency” Differing tactics fit differing focuses of attention: ? predictability ? repeatability ? cost ? agility Agile methods make greater use of: + Individuals and interactions + Working software + Customer collaboration + Responding to change Within ‘agility,’ different tactics fit different situations (“Agile” is not just a retitling of Extreme Programming !)
© Alistair Cockburn, 2002 Slide 5 Software development is making ideas concrete in an economic context. People inventing / communicating, Solving a problem Creating a solution Using limited languages Where every choice has economic consequences, and resources are limited Which they don’t fully understand & keeps changing under them
© Alistair Cockburn, 2002 Slide 6 A resource-limited cooperative game of invention and communication Primary Goal Deliver this software Secondary Goal Set up for the next game Elements of the Game: People, Cooperation, Invention, Communication (p.s. The game never repeats !!) Infinite Organization Survival Career Management Competitive Cooperative Finite w/ no fixed end Jazz music King-of-the-hill wrestling Finite & goal-directed Tennis Poker Rock-Climbing Games Software Development
© Alistair Cockburn, 2002 Slide 7 Key topics in the cooperative game 1. Different tactics for different projects 2. People’s Personalities, Motivation, Goal Alignment 3. Talent & Skill (fewer better people) 4. Communication (developers - developers - users) 5. Energy Management (minimal requirements/design) 6. Reflecting on what works / doesn’t work 7. Quality in work (good, simple designs) 8. Good Tools (configuration management, testing) 9. Tacit knowledge, verbal communication 10. Frequent Delivery (incremental development)
© Alistair Cockburn, 2002 Slide 8 The players in the game are “People,” Highly spontaneous, active devices Weak on:Strong on: Consistency Communicating Discipline Looking around Following instructionsCopy / modify-ing Motivated by: Pride in work Pride in contributing Pride in accomplishment
© Alistair Cockburn, 2002 Slide 9 People communicate most effectively interactively, face-to-face. Richness of communication channel Communication Effectiveness 2 people at whiteboard 2 people on phone 2 people on Videotape Paper Photo courtesy of Evant corp.
© Alistair Cockburn, 2002 Slide 10 Process Techniques Tools Skills Roles Standards Quality Teams 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 MBWA Use cases CRC cards Methodology meets Project details: (a) Methodology = theory of a project Methodology Values
© Alistair Cockburn, 2002 Slide 11 Ecosystem Methodology Process Techniques Tools Skills Roles Standards Quality Teams Products People MilestonesActivities Personality Jenny Jim Peter Annika “Ecosystem” = the actual project details. (b) People are stuffed full of personality Project manager Documenter Designer Tester Values
© Alistair Cockburn, 2002 Slide 12 Methodology and Ecosystem are always in interplay When each changes, the ecosystem rearranges itself. Ecosystem: Project details (“environment”) Staff expertise (“species”) Specific dominant / mild people (“predators”) Flights of stairs people must climb (“cliffs”) Office layout (“terrain”) Amicability between the individuals
© Alistair Cockburn, 2002 Slide 13 Jenny (Pete) MarketplaceProgrammers Bill Mary Projects get restructured around ecosystem details Marketing group Business analysts
© Alistair Cockburn, 2002 Slide 14 Misconstruing the message: 1. Agile is hacking. Hackers “Avoid planning” “Spend all their time coding” “Talk to each other when they are stuck [only]” “Management caves in out of fear” Agilists Plan regularly Test according to project priorities, recheck results with users often. Talk to each other and customers as a matter of practice Expect management to provide priorities, to participate jointly in making project adjustments. (Hacker interpretations are available & inevitable.)
© Alistair Cockburn, 2002 Slide 15 Misconstruing the message 2. 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, 2002 Slide 16 Getting the message: 1. Agile techniques are “cheating”. ·Hire good people; ·Seat them close together to help each other out; ·... 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 the heart of agile software development a good idea
© Alistair Cockburn, 2002 Slide 17 Getting the message: 2. Agile won’t work for all projects. Right. Not every project team - values agility - can set up the needed trust and communication (p.s. Business isn’t fair).
© Alistair Cockburn, 2002 Slide 18 Alistair Cockburn
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 1 Foundations of Agile Development: Cooperative Games of Invention and Communication in.
© 2010 Alistair Cockburn Designing in Teams Dr. Alistair Cockburn
©Alistair Cockburn 2010 What Makes Agile Work: The New Software Engineering Getting Past “Wimpy” Agile Dr. Alistair Cockburn
Slide 1 ©Alistair Cockburn 2008 Alistair Cockburn Effective Software Development in the 21st Century: The New Face Of Software.
©Alistair Cockburn Slide 1 Alistair Cockburn The Crystal Family of Methodologies for Software Development.
© 2010 Alistair Cockburn The New Methodology isn't a Methodology Dr. Alistair Cockburn.
Slide 1 ©Alistair Cockburn 2009 Project Management as Pharma: Sometimes the opposite of a good strategy is a better strategy Dr. Alistair Cockburn Humans.
Agile Software Development کاری از : مهدی هوشان استاد راهنما : استاد آدابی.
©Alistair Cockburn 2013 Disciplined Learning: The successor to risk reduction Disciplined Learning: The successor to risk reduction Dr. Alistair Cockburn.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
Chapter: 3 Agile Development. Agile Software Development Agile software development is an iterative and incremental (evolutionary) approach to software.
Agile development By Sam Chamberlain. First a bit of history..
Colin Weaver The Eleven Essential Behaviours of Successful Agile Project Teams.
©Alistair Cockburn 2009 “I Come to Bury Agile, Not to Praise It” Effective Software Development in the 21st Century Alistair Cockburn
1 11/21/2015 ã 2007, Spencer Rugaber Agile Manifesto February, 2001 XP, SCRUM, DSDM, Adaptive Software Development,
1 Chapter 4 Agile Development Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
Agile Programming Principles. What’s wrong with software today? Software development is risky and difficult to manage Customers are often dissatisfied.
Agile Gintarė Bernotaitytė © Agenda Introduction What is Agile Methodology? When Use Agile? Agile Manifesto Agile Methods Scrum Feature-Driven Development.
Introduction to Agile. Objectives High level overview o Agile o Scrum Take Home Message o Gain enough of an understanding of Agile and Scrum to see how.
Alistair Cockburn©Humans and Technology, Inc., Slide 1 The Current Conversation in Agile Software Development April-2004
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
Agile Software Development. The Crystal Methodologies. The roles needing to separate people. The policy standards. Crystal Clear. XP and Crystal Clear.
Agile Web Development C. Daniel Chase University of Colorado at Boulder.
Agile Development In 2001, a group called the “Agile Alliance” signed a “manifesto” that stated: Individuals and Interactions over processes and tools.
1 Graphical User Interface Design CIS*2450 Advanced Computing Techniques.
Agile Introduction Emerson Murphy-Hill. Agile Manifesto/Alliance XP, SCRUM, DSDM, Adaptive Software Development, Crystal, FDD February 2001 (Snowbird,
Developed by Reneta Barneva, SUNY Fredonia Agile Development.
Agile Software Development Agile Characterized by quickness, lightness, and ease of movement; nimble.
Copyright © , RoleModel Software, Inc. The Continuous Refinement of Extreme Programming Ken Auer RoleModel Software, Inc.
Software engineering Process models Pavel Agejkin.
Agile Methodology Paul Mohrbacher. Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through.
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.
- 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.
Project Workflow. How do you do it? -Discussion-
AGILE DEVELOPMENT OUTLINES : 1. QUICK LOOK OF AGILE DEVELOPMENT 2. AGILITY 3. AGILITY PROCESS 4. PLAN DRIVEN AND AGILE DEVELOPMENT 5. EXTREME PROGRAMMING.
Polycom Unified Collaboration for IBM Lotus Sametime and IBM Lotus Notes January 2010.
CS1: Classic Software Life Cycle “Waterfall” method: 1.Requirements/Analysis Determine the problem to be solved – client-centered 2.Specification.
Agile Architecture? Paul Lund 24 th Nov Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it.
Agile Modeling Theory. 2 Agile Modeling (AM) AM is a chaordic, practices-based process for modeling and documentation AM is a collection of practices.
Chapter 4 An Agile View of Process Software Engineering: A Practitioner’s Approach 6 th Edition Roger S. Pressman.
By: Isuru Abeysekera AGILE DEVELOPMENT. WHAT IS AGILE DEVELOPMENT? Broad term used to describe several methods for a development process Introduced in.
What is an Agile Methodology?. Delivers nearly no knowledge (or risk reduction) Knowledge comes at the “moment of truth”: final integration. Waterfall.
Agile Methods 1. Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have.
1 Agile Methodology & Programming Ric Holt July 2009.
AGILE COTS Václav Pergl We are uncovering better ways of developing software by doing it and helping others do it. Through this work.
Module 2: What is Agile? Why use it? TLO: Given a DoD program involved in software development, the student will recognize situations where applying agile.
© 2017 SlidePlayer.com Inc. All rights reserved.