软件工程基础第4章_第1页
软件工程基础第4章_第2页
软件工程基础第4章_第3页
软件工程基础第4章_第4页
软件工程基础第4章_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《软件工程基础》陆惠恩主编1本章介绍概要设计阶段的步骤、方法和图形工具。主要内容为:概要设计步骤软件结构设计基本原理软件结构设计的图形工具:HIPO图和结构图概要设计方法代码设计的原则、方法数据输入、输出设计数据库设计文档数据安全设计概要设计说明书与复审本章重点:模块和模块化软件结构设计《软件工程基础》陆惠恩主编24.1概要设计步骤

概要设计的基本任务1.

审查可行性研究报告和需求分析规格说明书。2.

确定模块结构、数据文件结构、系统接口设计和测试方案策略。3.

编写概要设计说明书、用户手册和测试计划。4.

复审。概要设计的基本步骤:进行软件结构设计、数据文件设计、系统接口设计、测试方案设计、复审。《软件工程基础》陆惠恩主编34.1.1软件结构设计1.设计供选择的方案2.推荐最佳实现方案3.设计软件结构4.1.2数据结构及数据库设计数据结构设计数据库设计4.1.3系统接口设计系统接口包括内部接口、外部接口和用户接口。数据流图和控制情况是接口设计的基础。4.1.4设计测试方案在概要设计阶段,测试方案主要根据系统功能来设计,称为黑盒法测试。《软件工程基础》陆惠恩主编44.2软件设计的基本原理

4.2.1模块与信息隐蔽(1)模块模块(module)是能够单独命名,能独立地完成一定功能,由边界元素限定的程序元素的序列。模块的基本属性:名称、接口、功能、逻辑、状态。(2)信息隐蔽指在设计和确定模块时,使一个模块内包含的信息,对于不需要这些信息的其他模块来说,是不能访问的。《软件工程基础》陆惠恩主编54.2.2模块化模块化(Modularization)是把系统分割成能完成独立功能的模块。1.模块化可产生的效果2.模块分割方法(1)抽象与详细化(2)根据功能来划分模块

①横向分割

②纵向分割③先确定中心控制模块,由控制模块指示从属模块,逐次进行分解。《软件工程基础》陆惠恩主编64.2.3模块的耦合和内聚

1.模块的耦合软件结构中模块之间互相依赖的程度用耦合来度量。数据耦合控制耦合公共环境耦合内容耦合总之,应:在尽量使用数据耦合,少用控制耦合。用参数传递信息,不采用内容耦合,尽量控制公共环境耦合。《软件工程基础》陆惠恩主编72.模块的内聚

一个模块内各个元素彼此结合的紧密程度用内聚来度量。(1)偶然内聚(2)逻辑内聚(3)时间内聚

(4)通信内聚

(5)顺序内聚

(6)功能内聚内聚按紧密程度从低到高排列:偶然内聚、逻辑内聚、时间内聚、通信内聚、功能内聚。《软件工程基础》陆惠恩主编84.2.4软件结构设计优化准则1.提高模块独立性2.模块接口的准则模块的接口要简单、清晰,含义明确,便于理解,易于实现、测试与维护。3.模块的作用范围应在控制范围之内4.模块的深度、宽度、扇出和扇入应适当5.模块的大小应适中《软件工程基础》陆惠恩主编94.3软件结构设计的图形工具

4.3.1层次图(或HIPO图)《软件工程基础》陆惠恩主编104.3.2结构图

1.结构图的符号(1)方框代表模块,框内注明模块的名字和主要功能。(2)方框之间的大箭头或直线表示模块的调用关系。(3)带注释的小箭头表示模块调用时传递的信息及其传递方向。尾部加空心圆的小箭头表示传递数据信息。尾部加实心圆的小箭头表示传递控制信息。(4)选择结构(5)循环结构,模块H循环调用模块A,B,C,见图4.5(b)。《软件工程基础》陆惠恩主编112.结构图的绘制

【例4-6】学生成绩管理系统的结构图《软件工程基础》陆惠恩主编124.4概要设计方法4.4.1结构化方法结构化方法又称面向数据流设计方法(StructuredDesign,SD)。设计步骤是先根据系统数据流图建立系统逻辑模型,再进行结构设计。1.建立系统逻辑模型(1)变换型数据流(2)事务型数据流【例4.7】学生成绩管理系统系统属于变换型数据流。【例4.8】工资管理系统属于事务型数据流。【例4.9】医疗费管理系统中事务型、变换型两种数据流同时存在

2.完成软件结构设计《软件工程基础》陆惠恩主编134.4.2面向数据结构设计方法

Jackson把数据结构(或程序结构)分为以下三种基本类型:(a)顺序(b)选择(c)循环《软件工程基础》陆惠恩主编14Jacksan图特点:

l

能对结构进行自顶向下分解,可以清晰地表示层次结构

l

结构易读、形象、直观

l

既可表示数据结构也可表示程序结构

Jackson设计方法的四个步骤:1、分析并确定输入数据和输出数据的逻辑结构;2、找出输入数据结构和输出数据结构中有对应关系的数据单元;3、从描述数据结构的Jackson图导出描述程序结构的Jackson图;4、列出所有的操作和条件,并把它们分配到程序结构图中去。

《软件工程基础》陆惠恩主编15【例4.11】用Jacksan方法对学生成绩管理系统进行结构设计。例3.2学生成绩管理系统在学生入学时输入学生基本信息。每次单科成绩是按班级内学生学号的顺序依次输入每位学生的平时成绩和考试成绩,成绩输入格式见表4.1。然后由计算机计算每位学生的单科成绩总评分。输出的学生个人成绩单格式,见表4.2;班级各科成绩汇总表格式,见表4.3。《软件工程基础》陆惠恩主编16《软件工程基础》陆惠恩主编17《软件工程基础》陆惠恩主编184.5代码设计

1.代码的定义和作用代码是为了对数据进行识别、分类、排序等操作所使用的数字、文字或符号。2.代码的性质

4.5.1代码设计原则1、标准化:国际标准、国家标准、部颁标准或习惯标准2、

惟一性

3、可扩充性4、

简单性5、

规范化6、适应性

《软件工程基础》陆惠恩主编194.5.2代码种类

1.顺序码

2.信息块码

3.归组分类码

见表4.4归组代码示例

4.助记码

5.数字式字符码

6.组合码

《软件工程基础》陆惠恩主编20表4.4归组代码示例信息代码哲学100宗教200社会科学300法律320商法325公司法3252股份公司法32524合股公司法32525《软件工程基础》陆惠恩主编214.5.3代码设计方法

基本步骤如下:1.确定编码对象2.明确编码目的3.确定代码的个数4.确定代码使用范围和使用期限5.确定代码体系和代码位数6.确定编码规则7.编写代码8.编写代码词典《软件工程基础》陆惠恩主编224.6数据输入输出设计4.6.1输入设计4.6.2输出设计《软件工程基础》陆惠恩主编234.7数据安全设计

软件系统发生的事故类型。数据安全控制方法:1.检查数据的正确性、完整性2.检查用户使用权限3.系统运行日志4.监督检查违规行为5.加密6.数据安全受破坏时的措施《软件工程基础》陆惠恩主编244.8概要设计文档与复审

4.8.1概要设计说明书4.8.2概要设计复审4.8.3数据库设计说明书《软件工程基础》陆惠恩主编25第4章小结概要设计的基本任务是确定模块结构、数据文件结构、系统接口设计和测试方案策略,编写概要设计说明书、用户手册和测试计划。概要设计要经过严格的评审。软件设计的基本原理是抽象、逐步求精、模块化、信息隐蔽。模块设计的优化准则软件结构设计的图形工具有层次图、HIPO图和结构图。传统软件工程方法在概要设计阶段常用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论