软件开发模式

1.从瀑布到敏捷———漫画解读软件开发模式变迁史

软件工程虽然诞生较晚,但是经过开发人员的努力发展得却非常迅速,这得益于软件工业开发和管理理念的发展,这其中就从汽车工业吸收了很多成熟的理念。所谓瀑布模型,就是说,软件开发是按照一定顺序展开的(传统线性生产流程 : Traditional,linear production flow)。就像汽车生产的流水线一样,每个部门各司其责,工作按照顺序展开,交付件单通道线性流动。总体上就分为:需求 → 设计 → 制造 → 测试四个阶段。在这个模式中客户基本没有被考虑到这个生产系统内,即需求和设计是不能被修改的。在如今,需求的改动和设计修改在某些时候是非常必要的,所以这种早期生产方式非常不好。于是就有了后面的敏捷模式:敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。在整个过程,客户会参与到整个软件开发流程中,整个开发模式从“封闭”到“透明”的过程有利有弊,最明显的弊端就是客户有时会提出一些不合理的需求为难开发人员。在现在的实际工作中的软件开发和管理模式,往往都是按照实际来确定,在不同的团队中往往会根据实际情况对流程和模式进行变化和改进。

2.有人负责,才有质量,写给在集市中迷失的一代

在如今的软件开发流程中,基本不会去使用瀑布模型,而在二十世纪九十年代,.COM热潮涌动,年轻的Web开发程序员比比皆是,但计算机编程在开发过程可不是一件简单的事,这需要天分、实践和训练。在当时有许多程序员是缺乏这些能力的,整个.COM时代总体上对IT/CS而言就是一场灾难。后面的集市模因使得Unix这艘大船正因为难堪重负而迅速沉没。当然,也有人有不同的观点,例如有人认为unix的信号就是一个满身补丁的东西,信号会中断系统调用,信号处理函数中为了防止再次被信号中断,打上了信号mask补丁,当处理了信号的进程又fork了进程,又引入了一堆系统调用来处理信号被子进程继承的问题,在引入多线程后同样引入一堆系统调用来打补丁,各种mask信号,觉得确实是开源问题,但也有人觉得今天Linux在整体OS市场上已经击败了windows, 大量各种open source软件都取得巨大的成功。web service取代software license成为重要的商业模式这个预言也获得了印证。libtool成为主宰恰是一直有人对它们负责。二进制兼容在unix商业时代就没有成功,不能怪到开源上去。但不管怎样,要有越来越多的人负责将开发流程规范化,开发出来的东西才能更有质量。

在我看来,软件工程方法论是指导软件开发项目整个生命周期的纲领性文件。软件工程方法论提供了一系列的方法以帮助软件开发项目的顺利完成。所以在学习过程中,我们也要注重一个有关软件工程方法论的学习

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值