软件工程总结下

转发注明出处: http://www.cnblogs.com/0zcl/p/6243590.html 

接上篇随笔: http://www.cnblogs.com/0zcl/p/6241610.html

3.需求分析

验证需求的正确性(了解下)

  • 一致性:任何一条需求不能和其他需求互相矛盾
  • 完整性:规格说明书应该包括用户需要的每一个功能 或性能
  • 现实性:用现有的硬件技术和软件技术基本上可以实现的需求,对硬件技术的进步可以做些预测。
  • 有效性:正确有效的,能解决用户面对的问题

接下来讲两个图E-R图与状态转换图(比较重要的)

实体-联系图

软件工程总结下

状态转换图

软件工程总结下

4.总体设计

做了个导图(很多概念的知识,要了解的)~~

软件工程总结下

 5.详细设计

 这里我就讲下过程设计的工具中的一个PAD图和判定表。外加一个流图。

PAD图

左图是基本符号(很简单~) 。右图是对P2的定义,好比P2函数内的"代码"。

软件工程总结下

 接下来讲判定表,判定表能简洁无歧义地描述处理规则。看下面的图:

软件工程总结下

判定表是超简单的,但是第一次刚看到可能不知道上面图表示什么意思。我简单说下,表中有9条规则,以第二条为例,若是国内乘客&坐头等舱,但该乘客不是残疾乘客且行李重量在不大于30KG,则该乘客所需行李费为(W-30)*4。其它规则类推即可~~

 流图的引入:为了进一步定量度量软件的性质(复杂度)。

  • 圆表示结点,一个圆代表一条或多条语句。
  • 流图中的箭头线称为边,代表控制流。

直接看下面的图:

软件工程总结下

能看懂的,过。那如何度量流图的环形复杂度呢?我说两种方法:

  • 环形复杂度V(G)=E-N+2,E是流图中边的条数,N是结点数。 eg:11-9+2=4
  • 环形复杂度V(G)=P+1,P是流图中判定结点的数目。  eg:3+1=4. 可知上图的V(G)=4

6.杂

软件维护:软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。

决定软件可维护性的因素:

  1. 可理解性
  2. 可测试性
  3. 可修改性
  4. 可移植性:从一种计算环境(硬件配置和操作系统)转移到另一种计算环境的难易程度。
  5. 可重用性:可重用的构件在每次重用过程中都会发现并清除一些错误,随着时间推移,这样的构件基本上是无BUG的。

文档:影响软件可维护性的决定因素

  • 用户文档:主要描述系统功能和使用方法。
  • 系统文档:描述系统设计,实现和测试等各方面的内容。

最后最后我再发三张图,方便自己整理~~

软件工程总结下

软件工程总结下

 ending~~~

相关推荐