《软件工程:一种实践方法》读书笔记一

发布时间 2023-11-10 23:50:33作者: wrf12

它把作为一本书按惯例该讲的历史部分形式一下就一段话带过,但是其中一个来自《人月传说》的形象的比喻深深吸引了我的眼球:“……正像一只逃亡的野兽落到泥潭中做垂死的挣扎,越是挣扎,陷得越深,最后无法逃脱灭顶的灾难。……程序设计工作正像这样一个泥潭,……一批批程序员被迫在泥潭中拼命挣扎,……谁也没有料到问题竟会陷入这样的困境……”,这让我深刻体会到开发软件的困难和艰辛,让我提前有了心理准备接受接下来的困境,以及做好准备要全力学才能突破出来。

紧接着开门直接讲这本书的框架逻辑清晰。然后就开始了软件过程,我们小组的计划本身就有这一个:了解软件工程开发的流程,并对每个环节进行一些可能的了解,学习。刚好这本书开篇就讲了工程过程的几种模型,每个模型都有详细的阐述而且还有配图加以可视化的说明。方便了我了解每种模型的优缺点或者说是特点,以应对下次例会时我们就要开始计划开发流程,大致的分配任务。

      瀑布模型:这是一种早期的软件过程,但是也是任然被广泛使用的模型,软件开发的各项活动像瀑布流水一样按照固定的逻辑顺序联接起来,每一步都是下一步的前提。

当然很容易看出这样的时间效率较低,而且没有反馈过程导致了产品必须一次成型,所以就有了修改过后的瀑布模型:增量模型,演化模型,螺旋模型。

现代的软件过程:统一软件开发过程(RUP)。他把软件开发分成了四个循环的部分:初试阶段,细化阶段,构造接单,移交阶段。每一步的目的性明确,分别是分析项目进行中的风险;详细说明产品的大多数用况,并设计出系统的构架;高效,高质量,低成本地以制造实现为中心产生一个可用的软件产品;准备将产品交给用户,需要试运行、培训、产品包装、产品展示、产品发布。四个阶段完成之后就开始心得一轮开发周期,新的循环就又开始了。

整个开发过程要以用户的实际使用情况,产品的工作情况,用户的期望变化为驱动力。由于一个软件工程是一个庞大的系统,即使用户的需求有些许的变化我们到最后是没有办法重新开始梳理我们的代码工程,所以我们的整个代码的框架就不会改变,代码的构架就自然而然的成为了中心。这也就启示了我们,在构造阶段时要多方沟通,商量出一个便于变化,易于成长发展,有远见的好的构架,这不仅省事而且有利于代码的维护,多人的交流,日后的功能拓展。就像拼接积木那样如果不留下几个接口,就装不上新的部分,想要更新就得拆开内部结构从头开始搭建,那么以前的工作就仅仅只有提供经验的作用。