试题详情
简答题软件复杂性有哪几类?软件复杂性度量模型应遵循哪些基本原则?
  • K.Magel从六个方面描述软件复杂性:
    ①理解程序的难度;
    ②改错及维护程序的难度;
    ③向他人解释程序的难度;
    ④按指定方法修改程序的难度;
    ⑤根据设计文档编写程序的工作量;
    ⑥执行程序时需要资源的程度。
    软件复杂性度量模型应遵循的基本原则:
    ⑴软件复杂性与程序大小的关系不是线性的;
    ⑵控制结构复杂的程序较复杂;
    ⑶数据结构复杂的程序较复杂;
    ⑷转向语句使用不当的程序较复杂;
    ⑸循环结构比选择结构复杂,选择结构又比顺序结构复杂;
    ⑹语句、数据、子程序和模块在程序中的次序对软件复杂性都有影响;
    ⑺全程变量、非局部变量较多时程序较复杂;
    ⑻参数按地址传递比按值传递更复杂;
    ⑼函数副作用比显式参数传递更难以琢磨;
    ⑽具有不同作用的变量共用一个名字时较难理解;
    ⑾模块间或过程间联系密切的程序较复杂;
    ⑿嵌套深度越深程序越复杂。
    最典型的两种程序复杂性度量的方法中,McCabe环路复杂性度量就是针对基本原则(2)制定的度量模型;Halstead软件科学则是针对程序中操作符和操作数的出现频度而制定的度量模型。
  • 关注下方微信公众号,在线模考后查看

热门试题