5.9.结构化开发方法-系统分析与设计概述

系统分析与设计概念

选择题1分左右

结构化开发方法:结构化方法由结构化分析、结构化设计、结构化程序设计构成,它是一种面向数据流(数据的流向)的开发方法。

  • 结构化分析是用数据流图DFD来建立系统的功能模型。
  • 结构化设计是用软件结构图来建立系统的物理模型,实现系统的概要设计。
  • 结构化程序设计使用3种基本控制结构构造程序。if...else,while循环,do{}while使用中文的形式类似伪代码的形式来构建程序,案例分析会考

系统分析:是一种问题求解技术,它将一个系统分解成各个组成部分,目的是研究各个部分如何工作、交互,以实现其系统目标。

目的和任务:系统分析的主要任务是对现行系统进一步详细调查,将调查中所得到的文档资料集中,对组织内部整体管理状况和信息处理过程进行分析,为系统开发提供所需的资料,并提交系统方案说明书(系统分析报告)。

系统开发的目的:是将现有系统的物理模型转换为目标系统的物理模型。(书本原话,但是个人觉得有问题,有可能一开始就没有系统。应该是构建目标系统的物理模型)

系统分析阶段的主要工作分为以下几步。

  • 对当前系统进行详细调查,收集数据。
  • 建立当前系统的逻辑模型。
  • 对现状进行分析,提出改进意见和新系统应达到的目标。
  • 建立新系统的逻辑模型。
  • 编写系统方案说明书。

系统设计基本原理

系统设计基本原理:

-抽象:把现实中的业务抽象到信息系统中

  • 模块化:可组合、分解和更换的单元
  • 信息隐蔽:将每个程序的成分隐蔽或封装在一个单一的设计模块中
  • 模块独立:每个模块完成一个相对独立的特定子功能,且与其他模块之间的联系简单

模块的设计要求独立性高,就必须高内聚,低耦合

  • 内聚是指一个模块内部功能之间的相关性
  • 耦合是指多个模块之间的联系

内聚

考点需要记

内聚程度从低到高如下表所示:

内聚分类 定义 记忆
偶然内聚 一个模块内的各处理元素之间没有任何联系 无直接关系
逻辑内聚 模块内执行若干个逻辑上相似的功能,通过参数确定该模块完成哪一个功能 逻辑相似、参数决定
时间内聚 把需要同时执行的动作组合在一起形成的模块。 同时执行
过程内聚 一个模块完成多个任务,这些任务必须按指定的过程程序执行 指定的过程顺序
通信内聚 模块内的所有处理元素都在同一个任务 相通数据结构、相通输入输出
顺序内聚 一个模块中各个处理元素都密切相关同一功能且必须顺序执行,前一个功能元素的输出就是下一个功能元素的输入 顺序执行、输入为输出
功能内聚 最强的内聚,模块内的所有单元共同作用完成一个功能,缺一不可 共同作用、缺一不可

耦合

考点需要记

耦合程度从低到高如下表所示:

耦合分类 定义 记忆
无直接耦合 两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,不传递任何信息。 无直接关系
数据耦合 两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。 传递数据值调用
标记耦合 两个模块之间传递的是数据结构 传递数据结构
控制耦合 一个模块调用另一个模块时,传递的是控制变量 软件外部环境
外部耦合 模块间通过软件之外的环境联合(如I/O将模块耦合到特定的设备、格式、通信协议上) 软件外部环境
公共耦合 通过一个公共数据环境相互作用的那些模块间的耦合 外部公共数据
内容耦合 当一个模块直接使用另一个模块的内部数据。或通过非正常入口转入另一个模块内部时 模块内部关联

练习题

例:模块A、B和C都包含相同的5个语句,这些语句之间没有联系为了避免重复把这5个语句抽取出来组成一个模块D,则模块D的内聚类型为()内聚。

A.功能

B.通信

C.逻辑

D.巧合

答案D

巧合内聚就是偶然内聚

例:如下图所示,模块八和模块B都访问相同的全局变量和数据结构,则这两个模块之间的耦合类型为()耦合。

A.公共

B.控制

C.标记

D数据

答案C

【2022年】若模块A和模块B通过外部变量来交换输入、输出信息,则这两个模块的耦合类型是(31)耦合。

A.数据

B.标记

C.控制

D.公共

答案D

【2023年】若模块A通过控制参数来传递信息给模块B,从而确定执行模块B中的哪部分语句。则这两个模块的耦合类型是()耦合

A.数据

B.标记

C.控制

D.公共

答案C

相关推荐
学习菌子14 小时前
第11章:【系统架构设计师】项目管理
系统架构·项目管理·软考高级·软考·软考系统架构设计师
June bug3 天前
【软考中级·软件评测师】下午题·面向对象测试之架构考点全析:分层、分布式、微内核与事件驱动
经验分享·分布式·职场和发展·架构·学习方法·测试·软考
红衣女妖仙1 个月前
系统架构设计综合知识与案例分析
系统架构·软考高级·软考·架构设计·高级
谷新龙0011 个月前
软考-系统架构设计师-第七章 软件工程基础知识
系统架构·软件工程·软考·系统架构设计师
wuhen_n1 个月前
系统架构设计师(一):计算机系统基础知识
软考·系统架构师·计算机系统基础知识
bobshui1 个月前
2025上半年软考高级系统架构设计师经验分享
经验分享·系统架构·软考
谷新龙0011 个月前
软考-系统架构设计师-第十章 系统质量属性和架构评估
架构·系统架构·软考·系统架构设计师
谷新龙0011 个月前
软考-系统架构设计师-第十五章 信息系统架构设计理论与实践
系统架构·软考·系统架构设计师
谷新龙0011 个月前
软考-系统架构设计师-第一章 架构设计基础
软考·系统架构设计师·系统架构设计师考试32小时通关
houliabc1 个月前
【2025年软考中级】第二章2.2 程序设计语言的基本成分
笔记·学习·证书·软考