论文部分内容阅读
软件开发是一种艺术、工艺、科学和工程。人们在设想、确定以及创建软件时,身边的环境不断在变更。敏捷是为了在动荡的业务环境中获益而创造变革和响应变革的能力。本论文主要分析了敏捷软件开发观点,敏捷宣言的基本内容,及其中包含的十二个原则。
极限编程是最著名的敏捷软件开发方法。随着通信技术的不断进步,新的信息可以随时随地进行传递,很多商业项目在进行期间,需求仍在不断变化,极限编程便是针对快速改变的软件需求而产生的。文中分析了极限编程的观点,其中的变量,准则,原则,基本工作和十二个实践。
传统方法强调的是严密的计划和文档驱动的瀑布式周期,他们侧重于计划和架构,计划驱动开发关注的是软件的质量和过程的可预见性,计划驱动开发最佳范例是能力成熟度模型。两种表面上有不同观点的方法在争夺着软件开发的主导权。文中对敏捷软件开发与计划驱动开发就特征、擅长领域和关键要素等进行了比较。
作为极限编程的重点,单元测试已经成为整个开发过程中很重要的一部分。本文对极限编程中的测试驱动开发进行了分析,描述了测试驱动开发的执行步骤,测试驱动开发是一个迭代过程,所有新的代码都要先有其单元测试,在相对稳定中增加功能,保证软件的开发在控制之下。文中最后给出了测试驱动开发的形式化描述,并例举了测试驱动开发的应用实例。