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

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yoyo勰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值