软件设计师——软件工程(五)

📑前言

本文主要是【软件工程】——软件设计师——软件工程的文章,如果有什么需要改进的地方还请大佬指出⛺️

🎬作者简介:大家好,我是听风与他🥇
☁️博客首页:CSDN主页听风与他
🌄每日一句:狠狠沉淀,顶峰相见

目录

    • 📑前言
    • 26.最适宜采用的软件过程模型为( )
    • 27..能力成熟度模型集成(CMMI)是若干过程模型的综合和改进。
    • 28.质量子特性不包括( )
    • 29.模块化设计
    • 30.两个子系统之间的耦合类型为( )耦合。
    • 📑文章末尾

26.最适宜采用的软件过程模型为( )

  • 26.某企业拟开发一个企业信息管理系统,系统功能与多个部门的业务相关。现希望该系统能够尽快投入使用,系统功能可以在使用过程中不断改善。则最适宜采用的软件过程模型为( )。

    • (A) 瀑布模型
    • (B) 原型模型
    • © 演化(迭代)模型
    • (D) 螺旋模型

    答案与解析

    • 试题难度:一般
    • 知识点:软件工程>开发模型
    • 试题答案:[[‘C’]]
    • 试题解析:本题要求尽快投入使用,并可以在使用过程中不断完善,对于原型模型和演化(迭代)模型,演化模型更合适,原型模型更适用于需求不明确时用以获取需求。

27…能力成熟度模型集成(CMMI)是若干过程模型的综合和改进。

27.能力成熟度模型集成(CMMI)是若干过程模型的综合和改进。连续式模型和阶段式模型是CMMI提供的两种表示方法,而连续式模型包括6个过程域能力等级,其中( )使用量化(统计学)手段改变和优化过程域,以应对客户要求的改变和持续改进计划中的过程域的功效。

  • (A) CL2(已管理的)
  • (B) CL3(已定义级的)
  • © CL4(定量管理的)
  • (D) CL5(优化的)

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>软件过程改进
  • 试题答案:[[‘D’]]
  • 试题解析:《软件设计师教程(第5版)》P247页:
    CL0(未完成的):过程域未执行或未得到CL1中定义的所有目标。
    CL1(已执行的):其共性目标是过程将可标识的输入工作产品转换成可标识的输出工作产品,以实现支持过程域的特定目标。
    CL2(已管理的):其共性目标是集中于已管理的过程的制度化。根据组织级政策规定过程的运作将使用哪个过程,项目遵循已文档化的计划和过程描述,所有正在工作的人都有权使用足够的资源,所有工作任务和工作产品都被监控、控制、和评审。
    CL3(已定义级的):其共性目标集中于已定义的过程的制度化。过程是按照组织的裁剪指南从组织的标准过程中裁剪得到的,还必须收集过程资产和过程的度量,并用于将来对过程的改进。
    CL4(定量管理的):其共性目标集中于可定量管理的过程的制度化。使用测量和质量保证来控制和改进过程域,建立和使用关于质量和过程执行的质量目标作为管理准则。
    CL5(优化的):使用量化(统计学)手段改变和优化过程域,以满足客户的改变和持续改进计划中的过程域的功效。

28.质量子特性不包括( )

28.在ISO/IEC 9126软件质量模型中,可靠性质量特性是指在规定的一段时间内和规定的条件下,软件维持在其性能水平有关的能力,其质量子特性不包括( )。

  • (A) 安全性
  • (B) 成熟性
  • © 容错性
  • (D) 易恢复性

答案与解析

  • 试题难度:一般

  • 知识点:软件工程>软件质量特性

  • 试题答案:[[‘A’]]

  • 试题解析:可靠性质量属性包括:成熟性、容错性和易恢复性。

    img

29.模块化设计

29.以下关于模块化设计的叙述中,不正确的是( )。

  • (A) 尽量考虑高内聚、低耦合,保持模块的相对独立性
  • (B) 模块的控制范围在其作用范围内
  • © 模块的规模适中
  • (D) 模块的宽度、深度、扇入和扇出适中

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>模块设计原则
  • 试题答案:[[‘B’]]
  • 试题解析:模块化设计要求高内聚、低耦合。
    在结构化设计中,系统由多个逻辑上相对独立的模块组成,在模块划分时需要遵循如下原则:
    (1)模块的大小要适中。系统分解时需要考虑模块的规模,过大的模块可能导致系统分解不充分,其内部可能包括不同类型的功能,需要进一步划分,尽量使得各个模块的功能单一;过小的模块将导致系统的复杂度增加,模块之间的调用过于频繁,反而降低了模块的独立性。一般来说,一个模块的大小使其实现代码在1~2页纸之内,或者其实现代码行数在50~200行之间,这种规模的模块易于实现和维护。
    (2)模块的扇入和扇出要合理。一个模块的扇出是指该模块直接调用的下级模块的个数;扇出大表示模块的复杂度高,需要控制和协调过多的下级模块。扇出过大一般是因为缺乏中间层次,应该适当增加中间层次的控制模块;扇出太小时可以把下级模块进一步分解成若干个子功能模块,或者合并到它的上级模块中去。一个模块的扇入是指直接调用该模块的上级模块的个数;扇入大表示模块的复用程度高。设计良好的软件结构通常顶层扇出比较大,中间扇出较少,底层模块则有大扇入。一般来说,系统的平均扇入和扇出系数为3或4,不应该超过7,否则会增大出错的概率。
    (3)深度和宽度适当。深度表示软件结构中模块的层数,如果层数过多,则应考虑是否有些模块设计过于简单,看能否适当合并。宽度是软件结构中同一个层次上的模块总数的最大值,一般说来,宽度越大系统越复杂,对宽度影响最大的因素是模块的扇出。在系统设计时,需要权衡系统的深度和宽度,尽量降低系统的复杂性,减少实施过程的难度,提高开发和维护的效率。
    模块的扇入指模块直接上级模块的个数。模块的直属下级模块个数即为模块的扇出。

30.两个子系统之间的耦合类型为( )耦合。

30.某企业管理信息系统中,采购子系统根据材料价格、数量等信息计算采购的金额,并给财务子系统传递采购金额、收款方和采购日期等信息,则这两个子系统之间的耦合类型为( )耦合。

  • (A) 数据
  • (B) 标记
  • © 控制
  • (D) 外部

答案与解析

  • 试题难度:一般
  • 知识点:软件工程>耦合性
  • 试题答案:[[‘B’]]
  • 试题解析:非直接耦合:两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的。
    数据耦合:一个模块访问另一个模块时,彼此之间是通过简单数据参数 (不是控制参数、公共数据结构或外部变量) 来交换输入、输出信息的。
    标记耦合 :一组模块通过参数表传递记录信息,就是标记耦合。这个记录是某一数据结构的子结构,而不是简单变量。其实传递的是这个数据结构的地址;
    控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。
    外部耦合:一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。
    公共耦合:若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。
    内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合
    (1)一个模块直接访问另一个模块的内部数据;
    (2) 一个模块不通过正常入口转到另一模块内部;
    (3)两个模块有一部分程序代码重叠(只可能出现在汇编语言中);
    (4)一个模块有多个入口。
    根据本题题干描述,采购子系统“给财务子系统传递采购金额、收款方和采购日期等信息”,传递时应将这些数据包装在数据结构中,因此二者之间是标记耦合。

📑文章末尾

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/423397.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解读 EventBridge Transform:数据转换和处理的灵活能力

作者:木则 阿里云 EventBridge 提供了强大而灵活的事件总线服务,它可以连接应用程序、阿里云云服务和阿里云 Serverless 服务来快速构建 EDA(Event-driven Architectures)事件驱动架构,驱动应用与应用,应用…

Prometheus插件安装kafka_exporter

下载地址 https://github.com/danielqsj/kafka_exporter/releases 解压 tar -zxvf kafka_exporter-1.7.0.linux-amd64.tar.gzmv kafka_exporter-1.7.0.linux-amd64 kafka_exporter服务配置 cd /usr/lib/systemd/systemvi kafka_exporter.service内容如下 [Unit] Descript…

Go语言学习笔记:基础语法和类型

Go语言学习笔记:基础语法和类型 目录 Go语言学习笔记:基础语法和类型学习路线前言变量声明常量数据类型布尔型(Boolean)整型(Integer)浮点型(Floating point)复数型(Comp…

42 漏洞发现-操作系统之漏洞探针类型利用修复

目录 系统漏洞发现意义?漏洞类型危害情况?如何做好未卜先知?相关名词解释:漏洞扫描工具演示-Goby,Nmap,Nessus(操作)漏洞类型区分讲解-权限提升,远程执行等(思路)漏洞利用框架演示-Metasploit,Searchsploit等(操作)漏洞修复方案讲解说明-补丁,防护软件…

Android.mk和Android.bp的区别和转换详解

Android.mk和Android.bp的区别和转换详解 文章目录 Android.mk和Android.bp的区别和转换详解一、前言二、Android.mk和Android.bp的联系三、Android.mk和Android.bp的区别1、语法:2、灵活性:3、版本兼容性:4、向后兼容性:5、编译区…

深度学习(5)---自注意力机制

文章目录 1. 输入与输出2. Self-attention2.1 介绍2.2 运作过程2.3 矩阵相乘理解运作过程 3. 位置编码4. Truncated Self-attention4.1 概述4.2 和CNN对比4.3 和RNN对比 1. 输入与输出 1. 一般情况下在简单模型中我们输入一个向量,输出结果可能是一个数值或者一个类…

基于springboot+vue新能源汽车充电管理系统

摘要 新能源汽车充电管理系统是基于Spring Boot和Vue.js技术栈构建的一款先进而高效的系统,旨在满足不断增长的新能源汽车市场对充电服务的需求。该系统通过整合前后端技术,实现了用户注册、充电桩管理、充电订单管理等核心功能,为用户提供便…

【linux基础】linux root用户密码忘记解决方式

方式一:进入单用户模式 1.开启虚拟机的时候,按下“e”健进入用户引导界面 2.再按下“e”,进入内核的编辑 3.找到kernel开头的选项,再次按下“e” 4. 输入 5. 按下“b”,启动 6. 启动后,输入passwd&#xf…

ubuntu使用docker compose一键部署项目

1、将前面手动部署的容器和镜像全部删除 docker rmi hmall (hmall镜像名) docker rmi image_id rmi 是删除多个 rm是删除一个 2、执行命令 docker compose up -d http://192.168.79.129:18080/search.html 访问安装成功! 该ip是虚拟机ubuntu的ip 3、docker-compos…

Docker 配置 Gitea + Drone 搭建 CI/CD 平台

Docker 配置 Gitea Drone 搭建 CI/CD 平台 配置 Gitea 服务器来管理项目版本 本文的IP地址是为了方便理解随便打的,不要乱点 首先使用 docker 搭建 Gitea 服务器,用于管理代码版本,数据库选择mysql Gitea 服务器的 docker-compose.yml 配…

赛氪受邀参加安徽省翻译协会2023年年会

安徽省翻译协会于近日在合肥成功举办2023年年会暨学术研讨会。本次会议旨在服务党和国家工作大局,广泛汇聚翻译界力量,推动翻译行业高质量发展,同时总结一年来我省翻译界成果,谋划明年工作。 安徽省翻译协会2023年年会暨学术研讨会…

MySQL JSON数据类型

在日常开发中,我们经常会在 MySQL 中使用 JSON 字段,比如很多表中都有 extra 字段,用来记录一些特殊字段,通过这种方式不需要更改表结构,使用相对灵活。 目前对于 JSON 字段的实践各个项目不尽相同,MySQL 表…