Agile Software Development
摘要
When I joined Microsoft in 1988, software development followed the industry-standard waterfall model. Teams gathered requirements and produced detailed specifications. Developers implemented them, testing followed, and the product shipped—a cycle that often took months, and sometimes years, to complete. This sequential approach worked well enough for desktop products distributed on physical media, where customers expected periodic, stable releases. Although we delivered high-quality software, the process was inherently rigid. Late change requests were costly, and by the time a product reached customers, their needs had often evolved beyond the original specifications.