现在的位置: 首页 > 综合 > 正文

软件工程常考知识点总结

2013年10月19日 ⁄ 综合 ⁄ 共 912字 ⁄ 字号 评论关闭
一.	软件开发过程——生命周期各个阶段的基本任务
1)软件定义
(1)	问题定义
(2)	可行性研究:经济可行性研究,技术可行性研究,法律可行性研究
(3)	需求分析——系统必需完成哪些任务
2)软件开发
(1)	总体设计――概括地说,系统如何实现
(2)	详细设计
(3)	编码和单元测试
(4)	综合测试
3)软件维护
(1)	改正性维护
(2)	适应性维护
(3)	完善性维护
(4)	预防性维护

二.	瀑布模型和迭代模型的特点及区别?
瀑布: 简单的说就是先定义需求,然后构建框架,然后写代码,然后测试,最后发布一个产品。 这样,几个月过去了,
直到最后一天发布时,大家才能见到一个产品。

迭代: 迭代的方式就有所不同,假如这个产品要求6个月交货,我在第一个月就会拿出一个产品来,
当然,这个产品会很不完善,会有很多功能还没有添加进去,bug很多,还不稳定,但客户看了以后,
会提出更详细的修改意见,这样,你就知道自己距离客户的需求有多远,我回家以后,再花一个月,
在上个月所作的需求分析、框架设计、代码、测试等等的基础上,进一步改进,又拿出一个更完善的产品来,给客户看,让他们提意见。

两种方法的比较瀑布模型:假如我们对用户的需求判断的不是很准确时——这是很常见的问题,一点也不少见——你工作了几个月甚至是几年,
当你把产品拿给客户看时,客户往往会大吃一惊,这就是我要的东西吗?
     迭代模型:这样的方法很不错,但他也有自己的缺陷,那就是周期长、成本很高。在应付大项目、
高风险项目——就比如是航天飞机的控制系统时,迭代的成本比项目失败的风险成本低得多,用这种方式明显有优势。
  如果你是给自己的单位开发一个小MIS,自己也比较清楚需求,工期上也不过花上个把月的时间,用迭代就有点杀鸡用了牛刀,那还是瀑布模型更管用,即使是做得不对,顶多再花一个月重来,没什么了不起。

三   .什么是高内聚低耦合
所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。(功能内聚,内聚程度最高)
所谓低耦合是指模块与模块之间的接口,尽量的少而简单,也就是说,让每个模块,尽可能的独立完成某个特定的子功能。(内容耦合,耦合程度最高)

To Be Continue................

抱歉!评论已关闭.