小编所收集到的相关公共基础知识考点分析之软件工程基础的资料 大家要认真阅读哦!
3.3结构化设计方法
考点13 软件设计的基本概念
1软件设计的基础
软件设计是软件工程的重要阶段,是一个把软件需求转换为软件表示的过程软件设计的重要性和地位概括为以下几点:
(l)软件开发阶段(设计、编码、测试)占软件项目开发总成本的绝大部分,是在软件开发中形成质量的关键环节;
(2)软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径;
(3)软件设计做出的决策,最终影响软件实现的成败;
(4)设计是软件工程和软件维护的基础。
从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。其中,结构设计定义软件系统各主要部件之间的关系;数据设计将分析时创建的模)MI转化为数据结构的定义;接口设计是描述软件内部、软件和协作系统之间以及软件与入之间如何通信;过程设计则是把系统结构部件转换为软件的过程性描述。
从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。
软件设计的一般过程是:软件设计是一个迭代的过程;先进行高层次的结构设计;然后进行低层次的过程设计;穿插进行数据设计和接口设计。
2软件设计的基本原理
(1)抽象。抽象是一种思维工具,就是把事物本质的共同特性提取出来而不考虑其他细节。
(2)模块化模块是指把一个待开发的软件分解成若千小的简单的部分。模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
(3)信息隐蔽。是指在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。
(4)模块独立性。是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。
模块的独立程度是评价设计好坏的重要度量标准。衡量软件的模块独立性使用耦合性和内聚性两个定性的度量标准。
内聚性是度量一个模块功能强度的一个相对指标,耦合性则用来度量模块之间的相互联系程度。
耦合可以分为下列几种,它们之间的耦合度由高到低排列:
内容耦合――若一个模块直接访问另一模块的内容,则这两个模块称为内容耦合。
公共耦合――若一组模块都访问同一全局数据结构,则称为公共耦合。
外部耦合――若一组模块都访问同一全局数据项,则称为外部耦合。
控制耦合—一若一模块明显地把开关量、名字等信息送入另一模块,控制另一模块的功能,则称为控制耦合。
标记耦合――若两个以上的模块都需要其余某一数据结构的子结构时,不使用其余全局变量的方式而全使用记录传递的方式,这样的耦合称为标记耦合。
数据耦合――若一个模块访问另一个模块,被访问模块的输入和输出都是数据项参数,则这两个模块为数据耦合。
非直接耦合――若两个模块没有直接关系,它们之间的联系完全是通过程序的控制和调用来实现的,则称这两个模块为非直接耦合,这样的荆合独立性最强。
内聚是从功能角度来衡量模块的联系,它描述的是模块内的功能联系。内聚有如下种类,它们之间的内聚度由弱到强排列。
偶然内聚—模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块为巧合强度模块。
逻辑内聚――这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的参数来确定该模块应完成哪一种功能。
时间内聚――这种模块顺序完成一类相关功能,比如初始化模块,它顺序地为变量置初值。
过程内聚――如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。
通信内聚――这种模块除了具有过程内聚的特点外,还有另外一种关系,即它的所有功能都通过使用公用数据而发生关系。
顺序内聚――如果一个模块内各个处理元素和同一个功能密切相关,而且这些处理必须顺序执行,处理元素的输出数据作为下一个处理元素的输入数据,则称为顺序内聚。
功能内聚――如果一个模块包括为完成某一具体任务所必需的所有成分,或者说模块中所有成分结合起来是为了完成一个具体的任务,此模块则为功能内聚模块。
耦合性与内聚性是模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各模块的内聚性越强,则耦合性越弱。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
3结构化设计方法
结构化设计方法的基本要求是,在详细设计阶段,为了确保模块逻辑清晰,就应该要求所有的模块只使用单入口、单出口以及顺序、选择和循环3种基本控制结构。这样.不论一个程序包含多少个模块,每个模块包含多少个基本的控制结构,整个程序仍能保持一条清晰的线索。
文字很枯燥,但内容却很丰富,小编在此祝大家都能考出让自己满意的成绩哦!
继续了解公共基础知识?点击下方链接,进入考无忧官方网站,更多精彩等你来!
小编特别推荐二级ms office可以了解一下噢! 毕竟这项科目着实相比其他科目比较容易啦!
文章推荐:
温馨提示:
想要了解更多试题请点击查看>>>计算机二级考试题库
考试想拿高分吗?更多二级ms office试题请点击查看>>>二级ms office
想知道更多关于计算机等级考试的最新资讯吗?点击进入>>>计算机等级考试