[软考中级]软件设计师-结构化开发

两分左右

耦合

耦合是模块之间的相对独立性(互相连接的紧密程度)的度量。耦合取决于各个模块之间接口的复杂程度,调用的方式以及通过接口的信息类型等

无直接耦合

指两个模块之间没有直接的关系,分别从属于两个不同模块的控制与调用,之间不传递任何信息

数据耦合

指两个模块直接有调用关系,传递的是简单的数据值

标记耦合

指两个模块之间传递的是数据结构

控制耦合

指一个模块调用另一个模块时,传递的是控制变量,被调用模块通过该控制变量的值有选择的执行模块内的某一功能

外部耦合

模块间通过软件之外的环境连接

公告耦合

指通过一个公共数据环境相互作用的那些模块间的耦合

内容耦合

当一个模块直接使用另一个模块的内部数据,或通过非正常入口转入另一个模块内部时,称为内容耦合

内聚

偶然内聚

(巧合内聚)指一个模块内的各处理元素之间没有任何联系

逻辑内聚

指模块内执行若干个逻辑上相似的功能,通过参数确定该模块完成哪一个功能

时间内聚

把需要同时执行的动作组合在一起形成的模块称为时间内聚

过程内聚

指一个模块完成多个任务,这些任务必须按指定的过程执行

通信内聚

指模块内的所有处理元素都在同一个数据结构上操作,或者各处理使用响应的输入数据或者产生相同的输出数据

顺序内聚

指一个模块中的各个处理元素都密切相关于同一功能并且必须顺序执行,前一功能元素的输出就是下一功能元素的输入

功能内聚

这是最强的内聚,指模块内的所有元素共同作用完成一个功能,缺一不可

设计原则

为保证总体结构设计顺利完成,应遵循以下原则

  1. 分解-协调原则:
  2. 自顶而相下原则
  3. 信息隐蔽、抽象的原则
  4. 一致性原则
  5. 明确性原则:每个模块必须功能明确、接口明确,消除多重功能和无用接口
  6. 模块之间的耦合尽可能小,内聚尽可能高
  7. 模块的扇入系数和删除系数要合理,一个模块直接调用其他模块的个数称为扇出系数,被其他模块直接调用的个数称为扇入系数,通常是3或4,一般不应超过7
  8. 模块的规模适当
  9. 模块的作用范围应该在其控制范围之内

系统文档

作用

  1. 用户与系统分析人员在系统规划和系统分析阶段通过文档进行沟通,这里主要包括可行性研究报告、总体规划报告、系统开发合同和系统方案说明书等
  2. 系统开发人员与项目管理人员通过文档在项目期内进行沟通,这里主要有系统开发计划,系统开发月报以及系统开发总结报告等项目管理文件
  3. 系统测试人员与系统开发人员通过文档就行沟通,系统方案说明书、系统开发合同、系统设计说明书和测试计划
  4. 系统开发人员与用户在系统运行期间进行沟通,用户手册和操作指南
  5. 系统开发人员与系统维护人员通过翁当镜像沟通,系统设计说明火速和系统开发总结报告
  6. 用户与维修人员在运行维护期间进行沟通,

数据流图

缩写为DFD

基本图形元素

直角矩形为外部实体(E),圆角矩形或圈为加工(P),双杠为数据存储(D),箭头为数据流

数据字典

数据流图描述了系统的分解,但没有对图中各成分进行说明,数据字典就是为数据流图中的每个数据流、文件、加工、以及组成数据流或文件的数据项做出说明

数据字典有以下四类条目:数据流、数据项、数据存储和基本加工,外部实体不在字典中

数据流条目:数据流条目给出了DFD中数据流的定义,通常列出该数据流的各组成数据项

数据存储条目:数据存储条目是对数据存储的定义

数据项条目:数据项条目是不可再分解的数据单位

基本加工条目:加工条目是用来说明DFD中基本加工的处理逻辑的

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL索引优化,设计原则 及 trace 详解(思维导图)

MySQL版本:8.0.33 MySQL联合索引使用总结:

Java 实现遍历一个文件夹,文件夹有100万数据,获取到修改时间在2天之内的数据

目录 1 需求2 实现1(第一种方法)2 实现2 (推荐使用这个,快)3 实现3(推荐) 1 需求 现在有一个文件夹,里面会一直存数据,动态的存数据,之后可能会达到100万&am…

李航老师《统计学习方法》第五章阅读笔记

决策树(decision tree)是一种基本的分类与回归方法。本章主要讨论用于分类的决策树。决策树模型呈树形结构,在分类问题中,表示基于特征对实例进行分类的过程。 以下是关于分类决策树的一些基本概念和特点: 树形结构&am…

linux 和 windows的換行符不兼容問題

linux 和 windows的換行符: 1.vim 模式下,執行命令: :set ffunix idea中設置code style

【C++进阶(六)】STL大法--栈和队列深度剖析优先级队列适配器原理

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 栈和队列 1. 前言2. 栈和队列的接口函数熟悉3. …

【剑指Offer】7.重建二叉树

题目 给定节点数为 n 的二叉树的前序遍历和中序遍历结果,请重建出该二叉树并返回它的头结点。 例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建出如下图所示。 提示: 1.vin.length pre.length 2.pre 和 vin 均无重复…

软件测试面试经验分享,真实面试题

前言 本人普通本科计算机专业,做测试也有3年的时间了,讲下我的经历,我刚毕业就进了一个小自研薪资还不错,有10.5k(个人觉得我很优秀),在里面呆了两年,积累了一些的经验和技能&#…

Elasticsearch基础篇(二):Elasticsearch在windows和liunx上的安装部署

Elasticsearch简介 前言1. Windows环境部署Elasticsearch1.1 下载并解压Elasticsearch压缩包1.2 命令行启动elasticsearch1.3 验证是否成功启动elasticsearch1.4 关闭Elasticsearch1.5 在Windows上安装Elasticsearch作为服务 2. Liunx环境部署Elasticsearch安装 Elasticsearch …

UI自动化测试 | Jenkins配置优化

前一段时间帮助团队搭建了UI自动化环境,这里将Jenkins环境的一些配置分享给大家。 背景: 团队下半年的目标之一是实现自动化测试,这里要吐槽一下,之前开发的测试平台了,最初的目的是用来做接口自动化测试和性能测试&…

java框架-Springboot-快速入门

文章目录 组件注册条件注解属性绑定自动装配原理自定义组件yaml属性配置日志日志级别日志分组文件输出文件归档与文件切割自定义配置切换日志组合 组件注册 Configuration、SpringBootConfigurationBean、ScopeController、Service、Repository、ComponentImportComponentScan…

探索网络世界:常见应用程序详解与实战演练

网络技术已成为现代生活中不可或缺的一部分,各种网络应用也层出不穷。本文将介绍一些常见的网络应用及其使用方法,包括Ping、Tracert、Telnet、FTP、TFTP等,帮助读者更好地理解和使用这些工具。 目 录 Ping和Tracert:网络诊断的好…

brew 安装MySQL 5.7

写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自动画片《狮子王》中的“彭彭”,总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域,如今终有小成…

vue pc端/手机移动端 — 下载导出当前表格页面pdf格式

一、需求:在手机端/pc端实现一个表格页面(缴费单/体检报告单等)的导出功能,便于用户在本地浏览打印。 二、实现:之前在pc端做过预览打印的功能,使用的是print.js之类的方法让当前页面直接唤起打印机的打印预…

【项目】在线音乐播放器测试报告

目录 项目背景 项目功能 测试计划 功能测试 登录页面的测试 测试用例 测试结果 注册页面的测试 测试用例 测试结果 音乐列表页面的测试 测试用例 测试结果 出现的bug 搜索功能的bug 问题解决 删除功能的bug 问题解决 喜欢列表页面的测试 测试用例 测试结果…

计算机MSVCP90.dll怎么重新安装?MSVCP90.dll丢失的解决方法分享

在计算机使用过程中,可能会遇到 MSVCP90.dll 丢失的问题。MSVCP90.dll 是 Microsoft Visual Studio 2008 编译的程序所使用的一个动态链接库(DLL)文件。当该文件丢失或损坏时,可能会导致一些应用程序无法正常运行。本文将详细介绍…

《The Rise and Potential of Large Language Model Based Agents: A Survey》全文翻译

The Rise and Potential of Large Language Model Based Agents: A Surve - 基于 LLMs 的代理的兴起和潜力:一项调查 论文信息摘要1. 介绍2. 背景2.1 AI 代理的起源2.2 代理研究的技术趋势2.3 为什么大语言模型适合作为代理大脑的主要组件 3. 代理的诞生&#xff1a…

APP渗透测试

APP反抓包突破 抓包失败分析 工具证书未配置 app不使用HTTP/S协议 反模拟器 1.使用真机进行抓包 2.用模拟器模拟真机 3.逆向删除反模拟器代码打包重新测试 反证书 SSL证书绑定分为单向校验和双向校验,单向校验就是客户端校验服务端的证书,双向…

Jenkins 权限管理

关于Role-based Authorization Strategy 使用Jenkins自身的权限管理过于粗糙,无法对单个、一类项目做管理,我们可以使用 Role-based Authorization Strategy插件来管理项目、角色。 首先安装该插件:在Jenkins查看该插件有无安装 在Jenkins-…

机器学习 09 随机森林

三、 偏差和方差 偏差度量了学习算法的期望预测与真实结果的偏离程度, 即刻画了学习算法本身的拟合能力。 方差:离散程度, 也就是该随机变量在其期望值附近的波动程度 噪声表达了在当前任务上,任何学习算法所能达到的期望泛化误差的下界, 即刻画了学习问题本身的难…

【AI绘画】Stable Diffusion WebUI

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…