【软件工程】面向过程的软件设计

前言

   视频里讲的知识点非常多,从最初的软件和软件工程介绍,开发,危机,计划,需求,然后到了软件设计阶段,面向过程的软件设计是有一系列的过程的,大体说是概要设计和详细设计,那么软件设计是设计什么的呢,没有设计行不行?

软件设计:

软件设计的目标和任务:
任务:从软件需求规格说明书,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案 ,进行数据设计、系统结构设计、过程设计,完成概要设计,和详细设计。
目标:软件需求:解决”做什么“ 软件设计:解决”怎么做“

概要设计:

也称总体设计,将软件需求转化为数据结构和软件的系统结构。
概要设计原理:
1.逐步求精(自定向下,逐步细化)
2.模块化
3.抽象化
4.信息隐蔽
5.软件结构(模块,数据结构)软件结构提高模块的独立性。
6.结构图
7.程序结构
模块
模块划分:高内聚,低耦合保持相对独立性
形成结构:顶层扇出较高,中间扇出较小,底层模块高扇入。
模块化:能够把一个大而复杂的软件系统划分成易于理解的比较单纯的模块结构
模块的独立性: 功能(模块实现什么功能) 逻辑 (模块内部怎么做)状态(模块的环境和条件) 耦合:模块和模块之间的联系情况 内聚:模块内部语句和语句都是为了完成同一个功能。
这里写图片描述
这里写图片描述
结构化设计方法

  • 首先研究、分析和审查数据流图
  • 根据数据流图解决问题,处理问题典型的类型有:变换型,和事物型。
  • 对两种不同类型进行分析处理
    在系统结构图中的模块
    这里写图片描述
    变换型,事务型结构流程图
    变换型结构由三部分组成:输入、数据加工(中心变换)和输出。在变换型结构中,信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,变换型结构的数据流图呈一种线性状态。
    事务型结构由3层组成:事务层、操作层和细节层,功能是对接收的事务按其类型选择某类事务处理,即数据沿输入通路到达一个处理,这个处理根据输人数据的类型在若干个动作序列中选出一个来执行。事务型结构的数据流图则呈束状,可有多个事务。
    这里写图片描述
    这里写图片描述

详细设计:

也称过程设计,通过对结构表示进行细化,得到软件的详细数据结构和算法。详细设计是概要设计的一个细化,如果没有设计,建立的是一个不稳定的系统结构。
表达过程规格说明工具叫做详细设计工具:图形工具,表格工具,语言工具
程序流程图
也称程序框图,基本结构是顺序型,选择型,先判定型循环,后判定循环,多情况选择型。
程序流程图符号:
这里写图片描述
N-S图
也叫盒图,与程序流不一样,看不到控制流,由五种图形表示。
这里写图片描述
问题分析图(PAD)
PAD也设置了五种基本控制结构,并允许递归使用
这里写图片描述
判定表
- 表示程序的静态逻辑
- 条件给出条件,动作给出相应动作
- 多分支改成两分支判断
PDL

  • 描述功能模块的算法设计的语言,称为设计程序用语言,伪码
  • 用于定义控制结构和数据结构,内语法灵活自由。
       软件设计经历了一系列的流程,从概要设计划分模块功能,分配软件功能需求,编写设计说明书,用户手册,测试计划,有很多细节设计,然后到过程设计,确定每一个模块的算法,算法流程图又用到了四个工具,在总体设计中又做了很多细化。

猜你喜欢

转载自blog.csdn.net/a15076159739/article/details/79676014