软件工程复习(2)

一、层次图、HIPO图

  • 层次图概念:描绘软件的·层次结构·,形成与层次方框图相同,但是表现的内容不同。层次图的一个矩形方框代表一个模块,方框的连线表示调用关系而不是层次图中的表示组成关系。如以下例子,顶层代表正文和加工系统的主控模块,他调用下层模块完成正文加工的全部功能,第二层的每一个模块控制完成正文加工的一个主要功能.

解题思路

​ 按照题干的要求画出大体结构,然后画出方框,再对对模块进行(从上往下,从左往右)的顺序进行编号

二、结构图

结构图的概念:Yourdon提出的·结构图·是进行软件结构设计的另一个有力工具。结构图和层次图类似,也是描绘软件结构的图形工具。方框之间的箭头(或直线)表示模块得调用关系。为了简单起见,可以只用直线而不用箭头表示模块之间的调用关系,还是尽量用箭头

​ 在结构图中通常还用带注释的箭头表示模块的调用过程来回传递的信息,如果希望进一步标明传递的信息是数据还是控制信息,则可以利用注释箭头尾部的形状来区分:尾部空心圆表示,传递的是数据实心圆,表示传递的是空的信息。

基本符号

  • 方框代表一个模块

  • 方框之间的直线表示模块的调用关系

  • 尾部是空心圆箭头表示传递的是数据

  • 尾部实心圆箭头表示传递的是控制信息。

三、层次图和结构图的相同点

  • 层次如何结构图并不严格表示模块的调用次序,多人习惯按调用次序从左到右画模块。
  • 层次图和结构图并不指明何时调用下层模块
  • 两者都是描绘软件结构的图形工具。
  • 层次组合结构图只表明一个模块调用哪些模块,并没有表示模块内还有有没有其他成分。

四、Jackon图

​ 1、Jackson图:Jackson方法是一种面向数据结构的设计方法,在描述程序,结构时,时长一个方框,只代表了几个语句(详细设计),方框之间一般是由表达组成关系而非调用关系,也就是说,一个方框中包括的操作仅仅有它下层框中的那些操作组成

  • 顺序结构:
  • 选择结构:
  • 循环结构:

五、程序复杂度

​ McCabe方法: ​ McCabe度量法是通过定义环路复杂度,建立程序复杂度的度量。他是基于一个程序模块的程序图中的环路的个数。

​ 计算的三种方法:

1、流图跟线性无关的区域等于环形复杂度。

2、流图G的环形复杂度V(G)=E-N+2;E是流图中边的条数,N是节点数。

3、流图中G的环形复杂度V(G)=P+1;P是流图中判定节点的数目。