软件工程 · 网络空间安全研究院

第 1 学时 课后练习

共 5 题(单选 3 题、判断 2 题) | 范围 P1–P57

一、单项选择题

01
布鲁克斯在《没有银弹》中指出软件的本质困难有四个,以下哪一项不属于这四个困难?
答案 D。课件 P14:四个本质困难是复杂性、一致性、可变性、不可见性。可移植性是 ISO 9126 中的一项质量特性(P54),不属于布鲁克斯说的四个本质困难。
02
工程化有四条基本思想:分而治之、折中、复用,以及( )。
答案 C。课件 P31–P34:四条基本思想是分而治之、折中、复用、适应变化。折中本身就说明不追求所有目标同时最优,一次交付也与软件持续演化的事实相反。
03
以下哪一项属于非功能性需求?
答案 C。课件 P41:前三项说的都是系统“做什么”,属于功能性需求;只有响应时间是“做得多好”,属于性能指标,也就是非功能性需求。

二、判断题(正确选 T,错误选 F)

04
软件不会像硬件那样磨损,但会因不断修改而逐渐退化。
答案 T。课件 P17:软件没有物理磨损,但每次修改都可能引入新问题,补丁摞补丁,结构失序。退化的实质是知识丢失,写代码的人走了,注释和测试也没留下。
05
复用成熟的软件构件时,只要接口能对上,就不必再验证它当初成立的前提。
答案 F。课件 P33:复用的前提是接口稳定并且假设一致。阿丽亚娜 5 号就是代码复用了、假设没复用,37 秒后自毁。复用之前要问:这段代码在什么前提下成立,我的场景满足吗。

答案速查(教师用)

1 D 2 C 3 C 4 T 5 F

在地址后加 #key 可显示本栏;学生版打印时不出现。