软件工程-综合题.doc
文本预览下载声明
平时作业和2010两张卷子里的综合题
作业2:类图、对象模型、用例图
类图(使用对象模型描述类对象所具有的属性,以及公司类对象提供的服务)
依赖,聚合
依赖:①《include》包含依赖:源包含目的②《extend》扩展依赖:源是目的的扩展。
聚合:共享,整体消失后部分仍然存在。
复合:部分与整体的关系,整体消失后部分也消失。
关联,复合
关联、继承(泛化)
关联、依赖
对象图 书p81
①对象名:类名 ②属性=属性值③对象间的链可以使类之间关联的实例
对象模型
对象模型的描述工具:对象图。
0,1:表示有0个或1个。
1+:表示多个
不写:表示有且仅有一个。
用例图(参与者,用例,调用关系)
画图步骤:(a)(b)(c)(d)
作业3:Jackson系统方法(用jackson图可以表示数据结构、程序结构)
参考:jackson作业
试用Jackson方法编写一程序,要求能依次完成下列工作:
——统计起始卡以前的卡片张数,存入A;
——打印起始卡的内容;
——统计起始卡以后出现的K1卡和K3卡总批数,存入B;
——统计起始卡以后出现的K1卡的张数,存入C;
——统计起始卡以后出现的K3卡的批数,存入D;
——打印终了卡的内容;
——打印A,B,C,D 4个统计值。
第一步:画出数据结构图
第二步:画程序结构图(基于数据结构图画)
第三步:写出程序的过程性表示(伪码)
打开卡片文件;
读卡片;
A:=0;
处理前置部分iteruntil出现K1卡;
处理非K1卡seq
A:=A+1
读卡片;
处理非K1卡end;
处理前置部分end;
打印起始卡;
B:=0;C:=0;D:=0;
读卡片;
处理批部分iteruntil出现K2卡;
处理批seq
统计总批数; {B:=B+1}
处理批类select是K1卡
处理K1批iterwhile出现K1卡;
处理K1卡seq
C:=C+1;
读卡片;
处理K1卡end;
处理K1批end;
处理批类or是K3卡
处理K3批seq;
D:=D+1;
处理批体iterwhile出现K3卡;
读卡片;
处理批体end;
处理K3批end;
处理批类end;
处理批end;
处理批部分end;
打印终止卡;
打印A,B,C,D;
关闭卡片文件;
卡片分析程序end;
作业4:画出数据流图(DFD)。
数据流图(DFD图):顶层(0层),功能分解(1层),功能进一步分解(2层)
作业5:数据流图(DFD)转换为 软件结构图(SC)。
数据流程图(DFD)的基本图形元素(4种):外部实体、加工、数据流、数据存储。
结构图(SC)的主要成分(4个):模块、模块的调用关系和接口、模块间的信息传递(数据信息、控制信息)、重复(循环)调用和选择调用的符号。
交换流型结构图:逻辑输入C、C变换成D,逻辑输出D(还有物理输入A,物理输出E)
事务流型结构图;数据接收通路、得到结果的调度(若干有选择关系的平行事务,)、输出结果。
举例:
变换流型结构图
举例1:
举例2:
DFD(功能计算机标准分和计算录取分数线有联系,可知不是事务型流)
变换流型SC
事务流型结构图(调度是选择关系)
事务流型SC
作业7:程序流程图,N-S图,PAD图,结构化程序流程图,控制流图(计算McCabe复杂性度量)
下面是两个程序流程图,试分别用N-S图和PAD表示之,并计算它们的McCabe复杂性度量。
STARTFAQBFPSTART
START
F
A
Q
B
F
P
START
ENDT
END
T
AFB
A
F
B
FP
F
P
TENDQ
T
END
Q
TT
T
T
(1.1)程序流程图
程序的控制流图:
如果判断中的条件表达式是由一个或多个逻辑运算符(or, and, ...)连接的复合条件表达式,则需改为一系列只有单个条件的嵌套的判断。
a和b同时取假到d;a真即到c,b真即到c,a假且b真即到c。
a和b同时取真到c;a假即到d,b假
显示全部