Agile Software Development: The Cooperative Game (2nd Edition)
You need to Register an InfoQ account or Login or login to post comments. But there's so much more behind being registered. Your message is awaiting moderation.
Syllabus for SSE 675
Thank you for participating in the discussion. Is your profile up-to-date? Please take a moment to review and update. Book Excerpt: Agile Software Development, 2nd ed. Like Print Bookmarks. Oct 30, 2 min read by Alistair Cockburn. This second edition profits from five more years of practice and research, expanding the author's ideas even further, into the domains of business and engineering projects.
But the basics have not changed: In the InfoQ exclusive excerpt from Chapter 1 , Cockburn is once again encouraging us to think about software development as a "cooperative game of invention and communication. Originally constructed to explain software development, it struck a chord with business people, who rightly saw that business is also predominantly a cooperative and competitive! The creation of software is somewhat difficult to define, a bit of a conundrum, as Cockburn himself observes in the beginning of this chapter It is paradoxical, because it is not the case, and at the same time it is very much the case, that software development is: Mathematical, as C.
Hoare has often said Engineering, as Bertrand Meyer has often said A craft, as many programmers say A mystical act of creation, as some programmers claim Its creation is sensitive to tools; its quality is independent of tools.
- Navigation menu;
- Doubts & Certainties in the Practice of Psychotherapy.
- Non-Representational Theory: Space, Politics, Affect (International Library of Sociology).
- A Victor Hugo Encyclopedia.
- Get A Copy;
- Book Excerpt: Agile Software Development, 2nd ed.!
- Agile Software Development by Alistair Cockburn?
Some software qualifies as beautiful, some as junk. It is a meeting of opposites and of multiple sets of opposites. This book is written for the more experienced audience. The book does not contain procedures to follow to develop software; in fact, core to the book is the concept that every technique has limitations. Therefore, it is impossible to name one best and correct way to develop software. Ideally, the book helps you reach that understanding and then leads you to constructive ideas about how to deal with this real-world situation.
If you are an intermediate practitioner who has experience with software-development projects, and if you are now looking for the boundaries for the rules you have learned, you will find the following topics most helpful:. Being an intermediate practitioner, you will recognize that you must add your own judgement when applying these ideas. If you are an advanced practitioner, you already know that all recommendations vary in applicability. You may be looking for words to help you express that. You will find those words where the following topics are presented:. A few topics should be new even to advanced software developers: the vocabulary for describing methodologies and the technique for just-in-time methodology tuning.
If you enjoy abstract material, read the book from beginning to end, watching the play of abstract topics to see the resolution of the impossible questions through the course of the book. If you want concrete materials in your hands as quickly as possible, you may want to skip over the early chapters on the first read and start with Chapter 4, "Methodologies. Dip into the introduction and the chapters about individuals and teams to fill in the gaps.
People who sponsor software development can get from this book an understanding of how various organizational, behavioral, and funding structures affect the rate at which they receive value from their development teams. Project sponsors may pay less attention to the details of methodology construction than people who are directly involved in the projects.
They should still understand the consequences of certain sorts of methodology decisions. Team leads and project managers can see how seating, teaming, and individuality affect their project's outcome.
Tell us what you think
They can also learn what sorts of interventions are more likely to have better or worse consequences. They will need to understand the construction and consequences of their methodology and how to evolve their methodology—making it as light as possible, but still sufficient. Process and methodology designers can examine and argue with my choice of terms and principles for methodology design. The ensuing discussions should prove useful for the field.
Software developers should come to know this material simply as part of being in the profession. In the normal progression from newcomers to leaders, they will have to notice what works and doesn't work on their projects. They will also have to learn how to adjust their environment to become more effective.
Agile Software Development: The Cooperative Game by Alistair Cockburn (Paperback, 2006)
The book is designed to set up two nearly impossible questions at the beginning and derive answers for those questions by the end of the book:. To achieve that design, I wrote the book a bit in the "whodunit" style of a mystery. I start with the broadest and most philosophical discussions: "What is communication? The discussion moves through still fairly abstract topics such as "What are the characteristics of a human? Eventually, it gets into more concrete territory with "What are the elements and principles of methodologies?
Agile Software Development as Cooperative Game | Agile Software Development | Engineering
Finally, the discussion gets to the most concrete matter: "What does a light, sufficient, self-evolving methodology look like? The two appendixes contain supporting material. The first contains the "Agile Software Development Manifesto," signed by 17 very experienced software developers and methodologists. The second appendix contains extracts from three pieces of writing that are not as widely read as they should be.
I include them because they are core to the topics described in the book.
- Agile Software Development: The Cooperative Game, 2nd Edition.
- Organic Syntheses An annual publication of satisfactory methods.
- Alistair Cockburn!
The ideas in this book are based on 25 years of development experience and 10 years of investigating projects directly. I looked rather helplessly at the conflicting "methodology" books at the time. My boss, Kathy Ulisse, and I decided that I should debrief project teams to better understand how they really worked.
What an eye-opener! The words they used had almost no overlap with the words in the books. The interviews keep being so valuable that I still visit projects with sufficiently interesting success stories to find out what they encountered, learned, and recommend. The crucial question I ask before the interview is, "And would you like to work the same way again? The reason for writing this book now is that the words and distinctions finally are correlating with descriptions of project life and project results.
They are proving more valuable for diagnosis and intervention than any of the tools that I used previously. The ideas in this book have been through dozens of development teams, eight methodology designs, and a number of successful projects on which I participated. When a group of us met in February to discuss our differences and similarities, we found we had a surprising number of things in common. We are still formulating the principles that we share and are finding many other people who could have been at that meeting if they had known about it or if their schedules had permitted their presence.
Core to agile software development is the use of light-but-sufficient rules of project behavior and the use of human- and communication-oriented rules. Agility implies maneuverability, a characteristic that is more important now than ever. Deploying software to the Web has intensified software competition further than before. Staying in business involves not only getting software out and reducing defects but tracking continually moving user and marketplace demands.
Winning in business increasingly involves winning at the software-development game. Winning at the game depends on understanding the game being played. It is not about improving efficiency, cutting costs, or battening down the business hatches to ride out fearsome competitive 'storms. Among the people concerned with agility in software development over the last decade, Jim Highsmith and I found so much in common that we joined efforts to bring to press an Agile Software Development Series based around relatively light, effective, human-powered software-development techniques.
You can find more about Crystal, Adaptive, and other agile methodologies on the Web. Specific sites and topics are included in the References at the back. A starter set includes these sites:. In Agile Software Development, legendary software expert Alistair Cockburn reviews the advantages and disadvantages of lightweight methods, synthesizing the field's key lessons into a simplified approach that allows developers to focus on building quality software rapidly, cost-effectively, and without burnout.
Ideal for managers seeking to transcend yesterday's failed approaches, the agile movement views software development as a cooperative game.