敏捷实践--启航
敏捷软件开发在很多年前就被提了出来,这是一种主张快速交付,持续交付的软件开发方式,它再一次将软件开发的主体参与者--人推向了非常重要的位置。强调人的敏捷参与比沉重的软件过程更加重要。
这些敏捷行为表现在以下方面:
1. 我们最优先要做的是通过尽早、持续地交付有价值的软件来使客户满意。
2. 在项目的整个开发期间,业务人员和开发人员必须天天在一起工作。
3. 即使到了开发后期,也欢迎需求变化。
4. 经常性地交付可以工作的软件。
5. 可以工作的软件是主要的进度度量标准。
6. 围绕被激励起的个体来构建项目。为他们提供所需的环境和支持,并信任他们能胜任工作。
7. 最好的架构、需求和设计来自于自组织的团队。
8. 在团队内部,最有效果和最有效率的传递信息的方法是面对面地交流。
9. 敏捷过程提倡可持续的开发速度。
10. 不断地关注最优秀的技术和良好的设计能增强敏捷能力。
11. 简单是根本的。
12. 开发团队每隔一定时间,都会对如何能有效地工作进行反省,然后相应地对自己的行为进行调整。
通过以上可以看出,通过高效地敏捷协作,我们可以以最精简的方式,以最少的工作量,以最直观的工作产品给客户持续交互。
基于以上这些特点,我希望能在我的团队中成功实践敏捷思想。
由于公司目前是通过了CMMI 3,同时在往4级前进,所以在CMMI方面需要遵循的过程规范比较多。实际这也是项目组感到很有负担的地方。所以希望能在CMMI的这个大框架下能尽量使团队敏捷。
虽然CMMI定义了庞大的过程,但是它是可以根据具体的项目进行裁剪的,所以裁减将是我们在CMMI框架下实践敏捷开发过程的避免冲突的好工具。
其实我们已经开始了部分敏捷开发的实践。
1,我们的客户虽然在美国,但是他几乎是随时和我们在一起的。我们每天需要沟通的信息基本都能完全沟通到位。
2,我们的团队对技术的热情都是比较高的,这有助于增强我们的敏捷能力。
3,我们部分同事会使用Nunit 来验证自己的代码,虽然未强制使用,但是也算是实践的开端
虽然很少,但是至少为后期的全面敏捷做好了铺垫。