分享

SAFe 从概念到实践 开发人员的“敏捷”之我见

 瞌睡虫_图书馆 2019-04-25

   敏捷开发并不是一个新概念,在过去十多年里,敏捷开发方法论已成为国外开发团队的主流思想。敏捷开发真正走进中国,是从5年前开始。因为敏捷方法论中提到了一些在传统软件开发方法中没有注意到的思想,这些思想是真的可以为软件开发带来颠覆性的力量,甚至可能会掀起开发领域的一场革命。所以,越来越多的开发者开始追随敏捷开发理念。到今天为止,敏捷开发在中国尚处于起步阶段,但已经有一些先行者走在了敏捷开发实践道路的前沿。

  2014年7月12日,由IT项目管理研究会主办的第三期沙龙活动如期举行。敏捷资深顾问傅庆东、神州泰岳软件架构师苏晓明、威科集团亚太区高级项目经理杨东晓出席会议,并各自分享了敏捷开发实践经验以及不同看法。



  开发人员为什么要做敏捷?

  “10个人可以做一个敏捷团队吗? ” 傅庆东首先抛出了一个问题。提到敏捷开发,可能会有一些人仍然存在疑问。比如:什么才是敏捷开发,我们为什么要做敏捷等等。


  敏捷资深顾问 傅庆东

  简单的说,敏捷开发是一种以用户的需求进化为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

  敏捷开发开发带来的价值非常明显,它可以优化业务基础架构,加强“协作力”,进而快速而持续地交付可靠软件。“传统方法是之前全天8个小时做开发,第二天看结果;采用敏捷方法,可以在20分钟内看到结果。” 傅庆东如是说。

  至于敏捷开发方法适用于多少人员的团队。傅庆东表示:传统Scrum方法仅适用于5-10人的团队,通过Scrum of Scrums的方法,可以将Scrum团队扩展到很大规模。我们可以将团队分解为多个小的子团队,每个子团队均有一名Scrum Master,听命于项目经理,每个子团队也有相对应的产品负责人。子团队成员会随着项目的进展而不断调整,但是在一个Sprint周期内,团队成员与产品负责人是可以是灵活多变的,可以根据实际环境调整。

  傅庆东具有5年以上 IT项目的敏捷培训、转型和实施的经验。是国内最早获得《大规模敏捷框架》(Scaled Agile Framework, SAFe)认证的咨询师之一(SAFe Program Consultant,SPC)。


  如何进行敏捷开发?

  而神州泰岳软件架构师苏晓明认为,了解敏捷开发,首先要了解软件开发的本质。他认为,软件开发的本质就是客观问题域到计算平台的一个映射。软件开发方法就是对需求、设计、实现和部署等各层进行方法学落地,确立开发方法模型,指导团队的软件开发过程。 所以,软件开发方法要对应软件的生命周期,并且处于动态变化中。


  神州泰岳软件架构师 苏晓明

  常见的软件开发类型包括:与全生命周期有关的瀑布模型、增量模型、迭代模型,以及与过程紧密相连的RUP(统一软件开发过程)、XP(极限编程)、Scrum(敏捷开发)模型等。其中,XP是敏捷开发方法家族中的一员。XP几乎与RUP反其道而行之 。而XP与Scrum相比,XP需要结对编程,要基于用例场景开发,更注重实际的编程实践,而Scrum更注重管理和组织实践

  神州泰岳拥有关于Scrum的丰富经验,曾经做过Ultra-Cloudup项目,主要是基于开源大数据平台HADOOP实现集群管理自动化,实现流计算拓扑可视化设计,以及HIVE的二次开发和基于HBASE的索引自动化管理。此外,还有基于HBASE的实时统计接口的开发和实现等等。当时团队开发成员有11人,所以比较适合使用敏捷开发方法来管理。

  当然,神州泰岳没有完全照搬Scrum模式,而是把Scrum进行了本地化改进。改进后的Scrum为神州泰岳带来三大好处:第一,大大节省了时间成本。为了提高工作效率,将日例会改为周例会,每日进度通过SVN交付的日报进行控制,每日遇到的问题组织小型讨论会解决。Sprint冲刺图由Sprint Master管理和控制并及时提交到SVN共享平台上。第二,让交付可共享并可重复使用。所有可以工作的软件交付和可用的方案交付都基于统一的SVN共享平台,这些可用的交付归大家集体所有,提高了组件复用率 。第三,可以成果演示。日例会忽视了成果的演示,所以周例会上每个团队成员都需要对自己的交付进行实际演示,大家对演示问题进行讨论,方便提早发现风险和问题,及时纠正和调整。另外,每周演示前需要重新同步和构建。



  移动互联时代,敏捷开发有哪些变化

  敏捷开发不仅有方法论、有实践案例。随着企业信息化深入发展,敏捷开发也在发生着新的变化。尤其在移动互联时代,敏客户非常关注数据的安全性。所以,敏捷开发要确保数据不能丢失,不被黑客窥探,要尊重客户的隐私权,让所有数据都要进行每天的灾难备份,甚至要达到产品以秒计算,客户不能访问到产品故障。


  威科集团亚太区高级项目经理 杨东晓

  这个时候的敏捷开发要如何来做?威科集团亚太区高级项目经理杨东晓认为:

  首先,对于大多数客户,产品只需部署一个生产环境(第二生产环境用于测试和备份),维护一套产品代码,客户反馈的问题可直接通过互联网重现,使软件实施和运维成本大幅降低。

  其次,要产品重视客户体验,高度强调易用性,使得产品的培训成本和服务成本都大幅降低。产品的设计成本和美工成本上升。

  其三,产品的敏捷开发周期要不断缩短,因为竞争对手之间可随时看见对方的新功能而加以仿制,产品经理要听过不断发现新的创新点转变为互联网企业生存的必要条件。可以说,产品经理把控着产品发展的命脉,必须时刻把控产品的定位,把产品发展聚焦在真正能给互联网企业带来长久利润的功能上,时刻关注产品的差异化竞争点。让用户体验和用户尖叫度成为重要的产品考核指标。

  其四,Scrum Mater必须随时评估和调整产品开发中的优先级别和风险级别,安排好开发中的关键路径,未雨绸缪。灵活调整每个迭代的开发任务。

  值得重点注意的是,移动互联网时代的敏捷实战场景设置要考虑到高度灵活性,以应对挑剔善变的用户,界面风格要具备可设置性(用户可以选择IPad风格也可以选择传统的网页风格,首页面的栏目都可以定制 )。此外,还要考虑社交化及主动参与性需求,以增加客户黏合度,主动为用户推送感兴趣的信息,追求更接近人类自然思维的设计,不用客户再去思考。

  威科曾收购一家欧洲排名第一的云财务公司Twinfield,老板每周六自己亲自跑一遍自己的产品,每双周的周一进行产品演示会,10个产品经理,50个开发和设计人员,20多个销售人员,2个系统维护人员;如果在演示的过程中,他觉得功能不行,就立刻停止。威科的敏捷周期为2周,已体验到敏捷的持续集成,产品自动构建,自动化测试,敏捷绩效等。

  可见,敏捷开发给企业带来的好处有很多。但同时,敏捷开发也带来一些争议,比如:针对敏捷开发应该放宽开发人员的自由空间,还是严格遵循军事化管理原则?在敏捷高强度下,是否会束缚开发人员的自我管理意识及创新精神?如何找到最佳敏捷实践?这些问题还有待于我们继续探索。

  关于IT项目管理研究会:



  IT项目管理研究会(英文“IT Project Management Institute”,缩写ITPMI),是由国内资深项目管理专家韩春生和IT技术专家叶刚联合多家知名企业和多位专家学者发起成立的学术性﹑全国性的非营利性社团组织。研究会接受行业主管部门的领导

  在我国社会发展、经济转型升级、实现中国梦的过程中,软件服务业扮演着重要角色。随着我国的综合实力越来越强,IT技术和管理的发展也逐渐从单纯的引入过渡到创新的阶段。为了响应政府关于鼓励民间研究组织的号召,特倡议成立了IT项目管理研究会。

  IT项目管理研究会坚持面向国内IT项目管理实践与改革,为IT项目管理实践与创新服务,集合业内专家和优秀企业的经验与智慧,研究IT项目管理知识体系,逐步探索和制定适合本国企业发展的,具有自主知识产权的项目管理知识体系,为推进IT项目管理事业而积极举办多种形式的活动,为IT项目管理爱好者及从业人员搭建一个知识共享﹑经验交流和技术探讨的平台。

  IT项目管理研究会旨在坚持开放的平台和创新的思想,引领中国IT项目管理的新潮,为软件与信息服务业管理水平的提升做贡献。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多