小话ALM

很久没空来写个帖子。


最近都在研究ALM,这个被HP,IBM,微软等已经实现了的东西。


客官们肯定纳闷,ALM到底是什么?那么就小谈下呗。


先说说ALM用来干啥的:

1.从ALM的字面意思来讲,就是“程序生命周期管理”。XXXX管理,是否很耳熟?想起来需求管理、缺陷管理等工具没?jira?嘿,你上道了。从“xx管理”的角度,那就是一个track system,像jira这类的。那么他track的是什么?咱继续看,“Application Lifecycle Management”,它的本身就给了我们答案,track的是Application 的LifeCycle。那么这里又有问题了,什么是程序的LifeCycle?LifeCycle这个最早是出现在“软件工程”内,标志性的东西就是“瀑布模型”。它的定义大家都明白。这里的lifecycle指的不是项目整体的开发模型。而是颗粒化(国内叫法)或者敏捷开发模型(国外叫法)里面的变更集(指的是feature,changes,fix等等)从它被定义到最终产品发布上线的过程。


那么从名字上的解读,已经有眉目了,ALM就是用来追踪监控变更集生命周期状态的一个辅助软件系统。


2.从管理角度讲,ALM能干什么?它需要提供一些管理层需要的信息,比如平均每个变更集的whole throughput time,每个项目的变更集完成进度等等。


3.从开发者角度讲,ALM需要干什么?减少开发者的工作,让他们专注的写代码,修改缺陷,其他的不要他们care。


4.从测试人员角度讲,ALM需要干什么?得到稳定的能够进行深度测试的产品版本,让测试人员的bug能被追踪,督促开发人员修改缺陷。并且自动化测试。


5.从配置管理角度,ALM需要干什么?能够进行自动化的做包,自动部署,自动发布,持续集成。


6.从产品运维角度,ALM需要干什么?能够简单的操作就能让产品包运行起来。


7.从人力资源角度,ALM能提供什么?减少加班,解放人员到创新性的工作中。


8.一些笔者还未想到的ALM也能做,比如横跨N个项目,组织级的配置管理?


总结下,ALM的基本组成应该是这样的:



  • 拥有一个track system来跟踪变更集,跟踪变更集的需求-》设计-》实现-》做包-》测试-》发布的整个过程。谁在什么时候做的什么事,代码谁开发的,谁review的等等功能。
  • 拥有一个中央数据库来存储整个生命周期内的有用数据,并可以加工成信息。
  • 拥有持续集成、持续发布的一个自动化平台来完成从做包-》测试-》发布的过程。
  • 拥有一个版本控制的工具来提供最基础的版本管理。


最后呢,各位看客,这东西,你想拥有么?





  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值