Extreme Programming Installed
Ron Jefferies, Ann Anderson, Chet Hendrickson
Addison-Wesley
Chapters 1-3:
The introductory chapters introduce us to the philosophy of extreme programming. It is broken down into three parts and each covers a different aspect they are: Customers, Programmers and Managers. Some responsibilities and attributes of being each are given and they are similar to the practices used in Agile. The authors then list the ideals of extreme programming and gives some insight to what each means in the sense of building a program. These are ideas such as how managers have the right to have a plan, change the plan, and get the most value out of every programming week. Programmer right s are ideas such as: the right to produce quality work, the right to ask for help, and the right to accept your responsibility and not have them assigned to you. The book then goes on to talk about the programming life cycle and how the relationship between the customer and the programmer works. Here we learn that while the customer wants results they need to be a part of the system to make sure they receive good, quality work and not try to set the programmer to strict deadlines and set high demands which will likely only get them poor work riddled with bugs. Finally the authors discus the importance of the role of the customer and how the customer should be there in each stage of development. They discuss ideas of how the customer is allowed to see and change each program iteration and needs to be there to answer questions in a clear and concise manner. The authors end with stories of how not having a customer present for even one simple question may slow development by nearly a week.
These chapters were not much new information for me, in many classes we have done agile and the system of extreme programming is very similar to this. Each of the roles of each person are very well defined and the authors provide good examples of when each of these is a factor and needs to be considered. I think the most interesting things were how the philosophies of this were much different than Agile, but I still got the same sense that the practices were intended to have the same overall effect. I have also talked to many companies about their view on Agile and they said some of the practices were very hard to implement and that they were only able to do so many of them. This makes me wonder if XP will be the same way and will be a good idea but not fully implementable by companies. I think however the one thing that XP does well that Agile does not cover is the importance of the customer in the entire process. It does seem like exchange of information and ideas would be much faster and easier with a customer present and they seem to be an important part of the development process.

No comments:
Post a Comment