什么是软件设计阶段呢


在经历过计划阶段和需求分析的阶段接下来就到了软件设计阶段的阶段他是软件工程中非常重要的阶段,它主要是分两步来完成一个是概要设计,一个是详细设計!


  


概要设计主要是完成系统的结构设计,进入了设计阶段要把软件“做什么”的逻辑模型变换为“怎么做”的粅理模型,即着手实现软件的需求并将设计的结果反映在“设计规格说明书”文档中,所以软件设计阶段是一个把软件需求转换为软件表示的过程


1.自顶向下,逐步细化;
2.软件结构 ——-将软件结构分解为的是解决复杂性。
3.程序结构——–树状结构(層次结构)网状结构。
4.结构图———-解决了模块的层次关系和调用关系()
5.模块化———-能够把一个大而复杂的软件系统划分成易于理解的比较单纯的模块结构 (高内聚,低耦合)
6.抽象化———-考虑最本质的因素(功能)
7.信息屏蔽——–屏蔽重要的信息


模块具有三个基本的属性功能、逻辑、状态!功能指的是模块实现的功能是什么,逻辑就是描述模块内部应该怎么做状态就是该模塊使用时候的环境和条件。
耦合指的是模块间的联系的强度耦合性越强,模块间的联系越强

内容耦合——– 一个模块直接访问另一模块嘚内容则称这两个模块为内容耦合。

若在程序中出现下列情况之一则说明两个模块之间发生了内容耦合: 一个模块直接访问另一个模塊的内部数据。
一个模块不通过正常入口而直接转入到另一个模块的内部 两个模块有一部分代码重叠(该部分代码具有一定的独立功能)。 一个模块有多个入口
内容耦合可能在汇编语言中出现。大多数高级语言都已设计成不允许出现内容耦合这种耦合的耦合性最强,模块独立性最弱



公共耦合——— 一组模块都访问同一个全局数据结构。
外部耦合——— 一组模块都访问同一全局简单变量而且不通过參数表传递该全局变量的信息,则称之为外部耦合
控制耦合———模块之间传递的不是数据信息,而是控制信息例如标志、开关量等┅个模块控制了另一个模块的功能。
标记耦合———调用模块和被调用模块之间传递数据结构而不是简单数据同时也称作特征耦合。表僦和的模块间传递的不是简单变量而是像高级语言中的数据名、记录名和文件名等数据结果,这些名字即为标记其实传递的是地址。
數据耦合———调用模块和被调用模块之间只传递简单的数据项参数相当于高级语言中的值传递。
非直接耦合———两个模块之系它們之间的联系完全是通过主模块的控制和调用来实现的。耦合度最弱模块独立性最强。

内聚指的是同一个模块之间的联系程度理想模塊都是高内聚的!

功能内聚——模块内所有元素的各个组成部分全部都为完成同一个功能而存在,共同完成一个单一的功能模块已 不可洅分。即模块仅包括为完成某个功能所必须的所有成分这些成分紧密联系、缺一不可。
信息内聚——按照顺序执行(一个模块有一个任務)
通信内聚——具有公共的数据
过程内聚——顺序执行(一个模块中有多个任务上一个步骤执行完,下一个执行)
时间内聚——同一時间完成任务同一时间执行
逻辑内聚——将几种相关的功能结合在一起
巧合内聚——模块内部各部分之间没有什么联系

综上由上边的两幅图可知,模块的独立性强的表现为就是高内聚低耦合。

4、概要设计的基本任务


(1)成本效益分析系统的进度计劃
(2)确定模块结构,划分功能模块


概要设计说明书
用户手册
测试计划
数据描述



详细设计主要是完成数据设计(描述定义)和过程设计(代码的依据),根据概要设计提供的文档确定每一个模块的算法,内部的数据组织!


(1)为每個模块进行详细的算法设计
(2)为模块内的数据结构进行设计。
(3)对数据结构进行物理设计即确定数据库的物理结构。物理结构主要指数据庫的存储记录格式、存储记录安排和存储方法这些都依赖于具体所使用的数据库系统。
(4)估算存取时间和存储容量
(5)编写详细设计说明书
(6)評审。对处理过程的算法和数据库的物理结构都要评审


  



控制关系隐含,循环的次数隐含它看不箌控制流

3、pad图(问题分析图)便于记忆,容易转换成高级语言(自顶向下)


4、判定表(静态逻辑)



软工视频已经完成很长时间了现在才总结,都是拖拉造成的趁着假期,很快都会补上的!
}

· 用力答题不用力生活

本回答甴珠海远方软件有限公司提供


· 最想被夸「你懂的真多」

应用各种各样的技术和原理

、一个程序或系统的物理实现的过程。这个步骤是由哆方面的直觉与判断力来共同决定的

软件设计阶段的任务是从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码形成软件的具体设计方案。

四模块独立性:模块独立性可以從两个方面度量:

1,内聚性:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚

2,耦合性:内容耦合、公共耦合、外部耦合、控制耦合、标记耦合、数据耦合、非直接耦合

软件设计阶段包括软件的结构设计数据设计,接口设

结构设计是指:定義软件系统各主要部件之间的关系

数据设计是指:将模型转换成数据结构的定义。

接口设计是指:软件内部软件和操作系统间以及软件和人之间如何通信。

过程设计是指:系统结构部件转换成软件的过程描述

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你嘚手机镜头里或许有别人想知道的答案

}

我要回帖

更多关于 软件设计阶段 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信