这样的的生产方式和传统的制造企业是极其类似,而且如果这种模式发展下去,肯定会越来越照搬传统制造企业的模式,因为都是需要追求流程的标准化,这样才能够保证生产和规模化和有序化。 在传统的项目驱动型的软件企业里面工作过的软件开发人员一定印象深刻: 开会,沟通,评审,确认。 文档,文档,文档…… 集中式的闭门大生产。 闭关开发出符合文档的产品。 为何要这么严格的评审流程,为何要如此多的开会和文档?其实上面提到的那些行为都只是操作手段而不是目的,真正目的在于为了防止以下情况的发生: 避免甲乙双方纠纷
从提出需求,到最后完整当初约定的功能软件,周期较长,往往存在相当多的不确定风险,对软件项目的参与者进行协议上的约束,所以需要和甲方进行沟通和文字记录,同时开发人员 减少沟通成本
因为周期长,开发人员众多,减少沟通成本,必须要尽量多的文档。 这些都是建立在一种信息不对称,信息流通不顺畅的年代所产生的开发过程。后面将提到一种新的软件生产思路。 3.2.2 敏捷开发 这是在互联网兴起之前的年代的一种软件生产思路。 主要开发流程如下 确定本阶段最重要的线路目标。 需求分析设计和开发。仅必要的文档,一个短周期。 持续集成和持续自动化测试并发布上线。 主要的特点如下: 产品的的新功能发布周期要求极短。 对需求的实现及客户确认周期很短。 每个短周期都有可交付的并在线上运行的版本。 一个好的产品可以永远做下去。 所做的内容往往具有很强的继承性的传承性。 因为互联网的存在,绝大多数的问题都可以在开发场所消化解决掉。 因为持续在线发布,可以时刻让实践去检验产品,直接随时和一线需求保持连接。 这种开发模式的最大特点是:快!
迭代速度快。
新功能发布并呈现在客户面前快。
问题的发现快。
问题的解决速度快。 如果方向不对,项目死掉的速度也快。
这其实是优点,如果是坑,及时能够暴露出来也是好事 3.3 个人经历及感悟 前面提到的两种公司和两种模式,目前在中国都存在相当大的市场。从个人的角度来说,更看好自主产品型的公司及开发模式。 本人第一次创业经历,就是长达两年的时间开发一个大型软件系统,最后都没有成功交付而胎死腹中。这次惨痛的经验教训,让我从此以后对外包型的创业模式深感恐惧和抵触心理。第一次创业里面做的项目,很累很累,很用心很用心,同时结局也很惨很惨。 第一次创业失败之后,又加入了现在的这个创业团队。是一种完全的互联网经营和生产模式,完全是一种久旱甘霖的畅快感。作为开发团队的一员,你的代码时刻都在生产服务器上运行着,每天开发的功能都在线上发挥着作用,你敲下的每一个字符都发挥着它的作用,而且为后面的开发在铺路。 4 软件测试的变革 (责任编辑:晨鸿) |