Extreme Programming for Web Projects
暂无分享,去创建一个
From the Book:
Estimating the time and costs of web projects has been my obsession for over five years. Starting with wild guestimates and little success I was quickly attracted to the analysis practices of the Rational process. I spent weeks with customers doing Use Cases and Activity Diagrams trying to define the scope of the project. Still these specifications told me nothing about the work effort involved and lead to huge fights with customers over the changes the customer would ineviably want. Three years ago I went to the Software Expo in San Jose and heard Martin Fowler talking about a new set of practices called XP. I was hooked. XP let me face the facts about the futility of estimation. It taught me about the interconnectedness of price, time, scope and quality and the importance of letting the customer continuously make the trade-offs between the four. As a project manager XP changed the rules of how I engaged with customers and overnight improved my customer relationships and my bottom-line.
If estimation was my obsession then development was my curse. Every project seemed to be going fine and then stalled at 90%. It would take us 3 months to do 90% of the work and six months to do the last 10%. Once completed the sites we were building were a nightmare to maintain and I had lost many good programmers who would rather abandon ship than baby-sit a mass of unintelligible brittle code. Developing sites in iterations and using unit tests made a lot of sense but didn't translate naturally in to web development. While the pure coding server side issues melded well with XP we had client-side issues, graphical design issues and serious conflicts trying to use apractice meant for object oriented systems on the inherently non object oriented web page architecture. IF web projects were going to use XP then XP would have to change and so would the way web sites are structured and developed.
Over the last two years we have experimented with practices to get the most out of XP in a web development environment. We have extended our practices to include graphic designers, interface programmers, copywriters and the rest of the diverse team that goes into building a web site. We have developed new design patterns for the creation of web sites using XML, Cascading Style Sheets and XSLT to impose an architecture that better supports continuous integration and the separation of content, graphical design and functionality.
We highly recommend that readers of this book first look at Kent Beck's original XP book to see the origins of the XP practices described in this book and to better see where our practices differ.