Microsoft Case Study


Before adopting something, especially a new development process, Microsoft forms a task force or focus group to do some research. Following are some results of a case study done by some project managers at Microsoft in 2003. This is just one case study of the extreme programming practices to see if it would be viable for Microsoft to adopt, so take it for what it is worth. After studying a couple of companies that have used the extreme programming methods to ship a couple of products (whose names must be withheld for confidentiality reasons), this is what the task force came up with for recommendations:

  • Overall opinion on extreme programming methods success was mixed.

  • Positives in using the extreme programming methods as described by Beck:

    • Able to quickly respond to business needs.

    • Test-driven design was mandated company-wide because of successful results.

    • Continuous integration testing was very valuable.

    • Simplicity noticeable when a request came in the middle of the development and was easily implemented in two weeks. The revenue generated from the change would pay for the entire development effort.

    • Trust with management increased because of openness.

  • Negatives in using the extreme programming methods as described by Beck:

    • Did not see a noticeable quality improvement possibly because of the lack of unit tests.

    • Difficult to address "plumbing" and future releases.

  • Barriers that were there:

    • Overall, there was little resistance.

    • Alignment with business drivers was critical.

    • Management resistance to pair programming.

    • Onsite customer was not practical.

The primary barrier was the name extreme. Agile development was a better term.

  • General observations:

    • XP can revolutionize the ability to respond to changes in the business climate.

    • XP increases software development predictability.

    • Value can be derived from partial implementation, but...

    • The whole is greater than the sum of the parts.

  • Final observation:

    • XP depends on solid programming frameworks and mature technologies.

In general, extreme programming is believed to be useful for small- to medium-sized teams with fewer than 12 persons. It seems that if the development group is large or greater than 20 30 people, the quality of the code will suffer unless you have "extremely" good tools and processes that monitor all the extreme programming methods and you adopt all or none. The general consensus is that extreme programming is good for some projects and not so good for others. It depends on the project you are working on and the culture your developers live in, so choose wisely.



The Build Master(c) Microsoft's Software Configuration Management Best Practices
The Build Master: Microsofts Software Configuration Management Best Practices
ISBN: 0321332059
EAN: 2147483647
Year: 2006
Pages: 186

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net