• 论敏捷开发的优缺点


    踏入软件开发行列时间不算短了,也使用过很多项目管理软件和方法,但是在使用过程中多多少少都会遇到一些问题吧,同行们或多或少也会有相应的体验。近期试用了一下华为最新推出的项目管理工具-华为软件开发云,接触了敏捷开发,产生一些想法。以下是使用体验,仅供同行们参考。

    一、敏捷开发技术的几个特点和优势:

    1.个体和交互胜过过程和工具

    2.可以工作的软件胜过面面俱到的文档

    3.客户合作胜过合同谈判

    4.响应变化胜过遵循计划

    二、敏捷开发技术的12个原则:

    1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。

    2.即使到了开发的后期,也欢迎改变需求。

    3.经常性地交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间间隔越短越好。

    4.在整个项目开发期间,业务人员和开发人员必须天天都在一起工作。

    5.围绕被激励起来的个人来构建项目。

    6.在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈。

    7.工作的软件是首要的进度度量标准。

    8.敏捷过程提倡可持续的开发速度。

    9.不断地关注优秀的技能和好的设计会增强敏捷能力。

    10.简单使未完成的工作最大化。

    11.最好的构架、需求和设计出自于自组织的团队。

    12.每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整。

    三、敏捷开发技术的适用范围

    1.项目团队的人数不能太多

    2.项目经常发生变更

    3.高风险的项目实施

    4.开发人员可以参与决策

    根据以上三点,大体可以总结出:

    优势:

    敏捷确实是项目进入实质开发迭代阶段,用户很快可以看到一个基线架构版的产品。敏捷注重市场快速反应能力,也即具体应对能力,客户前期满意度高。

    劣势:

    但敏捷注重人员的沟通,忽略文档的重要性,若项目人员流动大太,又给维护带来不少难度,特别项目存在新手比较多时,老员工比较累。

    需要项目中存在经验较强的人,要不大项目中容易遇到瓶颈问题。

    结合华为软件开发云,他们提供了两种项目创建方法:Scrum和Scrum精简,可以结合自己的不同习惯,选择合适自己团队的方法,这点还是不错的。

     

    同时,华为软件开发云,在文档和百科管理上,也增加了自己的特色,有效避免传统敏捷开发的劣势。大家不妨试用一下,后续有什么建议和想法,欢迎一起探讨。

  • 相关阅读:
    STL::next_permutation();
    P2626 斐波那契数列(升级版)
    P1029 最大公约数和最小公倍数问题
    P1075 质因数分解
    4.7生日当天测
    cin,scanf,gets,getline,cin.getline对于字符串的输入
    两个互质的数不能凑出来的数证明
    简单的全排列问题(给初学者)
    紫书 例题 10-22 UVa 1640(数位统计)
    紫书 例题 10-21 UVa 11971(连续概率)
  • 原文地址:https://www.cnblogs.com/xieyulin/p/7056134.html
Copyright © 2020-2023  润新知