阅读《MANAGING THE DEVELOPMENT OF LARGE SOFTWARE SYSTEMS》和《No Silver Bullet: Essence and Accidents of Software Engineering》的感想

      团队项目开发也进行了两周了,多少有些感想了,对于找“银弹”这个问题,还是计较赞同《No Silver Bullet: Essence and Accidents of Software Engineering》里的看法的,软件项目的复杂度增加真不是线性增加的,在我所在的团队里,是做网站的搜索部分和上传下载部分,比如我开始分配任务给各个组员的时候,每个任务都是很小的一部分,估计一天两天就能搞定的,但因为是分开几个小组一起做一个大的问答网站,各个小组都会随着自己的需求更改接口,或对别的小组提出别的要求,这样就面临了《No Silver Bullet: Essence and Accidents of Software Engineering》里说到的那些问题了,复杂性(complexity),软件整合(conformity)可变性(changeability)和不可见性(invisibility)

       当需求一改,大多是伤经动骨的事,我们小组之前的理解是当用户点击搜索时就给用户返回搜索结果,最后蛋疼的发现UI组设计的主页面对我们搜索组的要求提出了更高的要求,不仅要给资源分成问答对、文档和视频(最开始的设计),还得展示资源属类别(即所描述的内容)进行分类,这一下给我们小组增加了不少的工作量,这个代码不可用前面最开始设计时的代码,又得重新设计这两个分类的方法,找出共同的地方。

      对于《MANAGING THE DEVELOPMENT OF LARGE SOFTWARE SYSTEMS》文章里的看法,我们现在还没有完全走完整个软件项目的全部流程,所以理解不是很完全,但是“瀑布模型”前面几个阶段还是有些体会的,从分析阶段到代码阶段,这两个阶段我们小组似乎没有完全走遍所有流程,分析阶段时间也比较短,就是各组员在一起讨论了一下,然后我设计了下接口,然后就把任务分配给各个组员了,大家开始编码。。。

      编码开始后,各个组员都会有反应接口要作出一些改动的要求,也许这就是分析阶段没有做好工作的原因吧,现在就祈祷后面测试阶段不要有什么大bug,所以现在吸取教训,把测试前的每一个环节做好。

你可能感兴趣的:(software)