- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
軟件工程期末复习集
详细设计
详细设计就是要在总体设计阶段成果的基础上,考虑如何实现定义的软件系统,直到对系统中的每个模块给出足够详细的过程描述。
结构化程序设计技术是进行详细设计的逻辑基础。它采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。
结构化程序设计的三种基本控制结构是顺序、选择、循环。
详细设计的工具有程序流程图、盒图、PAD图、判定表、判定树和PDL语言等。
程序复杂性度量
程序复杂性主要指模块内程序的复杂性。它直接关联到软件开发费用的多少、开发周期的长短和软件内部潜伏错误的多少等。
代码行度量法
度量程序的复杂性,最简单的方法就是统计程序的源代码行数。该方法的基本考虑是统计一个程序模块的源代码行数目,并以源代码行数作为程序复杂性的度量。
Lipow及其他研究者得出一个结论:对于少于100个语句的小程序,源代码行数与出错率是线性相关的。随着程序的增大,出错率以非线性方式增长。
McCabe度量法
McCabe度量法是一种基于程序控制流的复杂性度量方法。McCabe定义的程序复杂性度量值又称环路复杂性,它是基于程序图中环路的个数。
如果把程序流程图中每个处理符号都退化成一个结点,原来联结不同处理符号的流线变成连接不同结点的有向弧,这样得到的有向图就叫做程序图。
计算有向图G的环路复杂性的公式:
其中,V(G)是有向图G中的环路个数,m是图G中有向弧个数,n是图G中结点个数。
详细设计说明书
引言
总体设计。软件结构
程序描述。逐个模块描述其功能、性能、输入、输出、算法等
例题
软件详细设计工具可分为3类,即图形工具、设计语言和表格工具。图形工具中,(A)简单而应用广泛。(B)表示法中,每个处理过程用一个盒子表示,盒子可以嵌套。(C)可以纵横延伸,图形的空间效果好。
(D)是一种设计和描述程序的语言,它是一种面向(E)的语言。
供选答案:
A-C:①NS图 ②流程图 ③HIPO图 ④PAD图
D:①C ②PDL ③PROLOG ④Pascal
E:①人 ②机器 ③数据结构 ④对象
答案:A.② B.① C.④ D.② E.①
[2001年统考]下面是两个程序流程图,试分别用N-S图和PAD图表示之,并计算它们的McCabe复杂性度量。
答案:
PAD图略
McCabe复杂性度量都为3。(7-6+2)
下图是使用BASIC语言编写的一个打印A、B、C三数中最小者的程序流程图。其中出现了6个GOTO语句,1个向前,5个向后,程序可读性很差。
if (AB) goto 120;
if (BC) goto 110;
print C;
goto 140;
print B;
goto 140;
if (AC) goto 130;
goto 100;
print A;
140
试利用基本控制结构,将程序中的GOTO语句消去。
使用if-then-else结构化构造,则上述程序段可改成如下形式:
if (AB and AC) then
print A
else if (A=B and Bc) then
print B
else
print C
编码
所谓编码就是把软件设计的结果翻译成计算机可以“理解”的形式—用某种程序设计语言书写的程序。
按照软件工程的方法论,程序的质量基本上由设计的质量决定。但是,编码使用的语言,特别是写程序的风格和途径也对程序质量有相当大的影响。
程序设计语言的分类、选择
大量实践表明,高级程序设计语言较汇编语言有很多优点。
程序设计风格包括四个方面:
源程序文档化、数据说明、语句结构和输入/输出方法
例题
从下列叙述中选出5条符合程序设计风格指导原则的叙述。
①嵌套的重数应加以限制
②尽量多使用临时变量
③不滥用语言特色
④不用可以省略的括号
⑤使用有意义的变量名
⑥应尽可能把程序编得短些
⑦把常见的局部优化工作留给编译程序去做
⑧注解越少越好
⑨程序的格式应有助于读者理解程序
⑩应尽可能多用GOTO语句
答案:①、③、⑤、⑦、⑨是正确的
从下列关于模块化程序设计的叙述中选出5条正确的叙述。
①程序设计比较方便,但比较难以维护
②便于由多个人分工编制大型程序
③软件的功能便于扩充
④程序易于理解,也便于排错
⑤在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数
⑥模块之间的接口叫做数据文件
⑦只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响别的模块
⑧模块间的单向调用关系叫做模块的层次结构
⑨模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下
答案:②、③、④、⑦、⑧是正确的
测试
软件测试的目的就是软件投入生产性运行之前,尽可能多地发现软件中的错误。目前软件测试仍然是保证
文档评论(0)