1.软件开发过程开发模式变迁史 2. 写给集市中迷失的一代 3.软件工程方法论对我们软件开发多大用处

从瀑布到敏捷,漫画解读软件开发过程开发模式变迁史:

读了《从瀑布到敏捷——漫画解读软件开发模式变迁史》我大致了解了瀑布模型,敏捷开发,看板,SCRUM和精益软件开发的概念。
如果运用瀑布模型进行软件开发的话,是把一整个完整的软件交付给客户,这种模型是十分古老的模型了,现在进行软件开发一般来说是不会用到这种模型的,因为这种模型有相当多的弊端,比如,下游工作的开展严格依赖于上游交付件的完成情况,十分地浪费资源,而且在软件开发期间很难保证客户不会临时改变对产品的需求。
敏捷开发则是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。在敏捷开发中,客户会参与到软件开发的整个流程中。敏捷开发的另一个重要概念就是迭代,所谓迭代,就是不断对产品进行细微的、渐进式的改进。在敏捷开发中,生产不再是线性的,开发的同时还会进行测试工作,所有人都在同时工作。利用敏捷模式开发出的产品,相较于传统的软件交付方式,一个显著的特点是能够及时响应客户需求的变更,不断适应新的趋势。
相对于瀑布模式的井井有条,敏捷开发在灵活的同时,也带来了一定程度的混乱,这个时候就要用到看板来使得敏捷开发变得比较有秩序。
在敏捷开发领域,SCRUM是一种迭代式增量软件开发过程,它包括了一些预定义的角色和其功能:产品负责人负责维护订单;Scrum主管对整个SCRUM 过程负责,不惜一切代价,保证团队的工作时间和计划;开发团队通常会进行冲刺。
最后则是精益软件开发,精益软件开发不再像传统的软件开发一样,耗时几年才向客户交付完整的软件。取而代之的是,优先建立一个最简可用的原型产品投放市场或交付到客户手中。
以上则是我读了《从瀑布到敏捷——漫画解读软件开发模式变迁史》一文后的读后感。


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

作者说,学会计算机编程很容易,就像学会用钉子把两块木板钉在一起一样容易。可以说,这两年多来,我们花在编程上的时间真的很少,特别是相对于很多所谓的基础课来说。犹记得那些为数学分析、电路分析等“基础课”花掉大把大把时间的日子,我们当时简直不理解为什么不让我们花更多时间在代码上。可是,随着慢慢的看一些书,做一些小的项目,感觉编程真的不是太难的事。然而,这种所谓的会编程也就只是会把两块木板钉在一起,有什么意义呢,市场对这种产品有需求吗?若没有进一步的精致加工,我们和我们的代码也就只能慢慢在集市里迷失。就想我们最开始拼凑出来的爬虫,最终指定也只能毫无存在感的消失于集市中。

作者用沉睡在集市中的美轮美奂的unix大教堂做了个例子,来说明了一个现实:一坨脓包似的权宜代码,被一群盲目的根本不知IT架构为何物的所谓IT“专业人士”永无休止地复制着,粘贴着。我以为,集市,就是整个开源软件的世界,而大教堂,就是通过严谨的也呆板的整个软件构建过程写出来的伟大而漂亮的项目。作者说,这一代的coder早已迷失在集市中,他们没有见过大教堂,不懂为什么需要大教堂,更不用说去想象大教堂的样子。

其实吧,我也有一点与作者不完全相同的看法。集市中的东西虽然大部分略显粗糙,但是总会有那么一两个东西有成为大教堂的潜质。开源这种事情,其实也是群体智慧的最大化。前两天看见一篇关于“群体软件工程”的演讲,没怎么看懂,好像跟这个问题不是太一致,但是也谈到有类似的观点。既然已经存在集市这个现实了,好像也不可能完全推翻它了。怎么在集市与大教堂中间寻找一个平衡点或许是最需要解决的事情。有人负责,就会有质量。


软件工程方法论对我们经软件开发有多大用处

软件工程方法论指的是在软件开发的过程中,必须遵循的普遍行为和规则。软件工程方法论包含了3个要素:方法、工具和过程。其中,方法是完成软件开发的各项任务的技术方法;工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。它的开发方式包含面向过程方法、面向对象方法、面向元数据方法和形式化方法四种。为软件开发、评测、维护、和进一步开发提供了一系列的方法,更好地帮助软件开发项目的顺利完成。同时,软件工程方法论与软件开发方法相辅相成,使软件开发过程变得简洁和有据可循。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值