电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

第五章 软件设计-2

63页
  • 卖家[上传人]:luoxia****01802
  • 文档编号:75823521
  • 上传时间:2019-02-01
  • 文档格式:PPT
  • 文档大小:25.54MB
  • / 63 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、软件工程,罗晓宾,第五章 软件设计,5.1,5.2,5.3,5.4,5.5,5.6,5.7,5.4 结构化设计方法,结构化设计概述 体系结构设计 数据设计 过程设计 人机界面设计,结构化设计方法(Structured Design),结构化设计(SD)方法是一种面向数据流的设计方法,以需求阶段产生的数据流图为基础,按一定的步骤映射成软件结构。采用自顶向下、逐步求精的设计过程,以模块为中心来解决问题。采用结构化软件工程方法开发出来的软件系统可以看成是一组函数或过程的集合。,与结构化分析(SA)衔接 适用于变换型结构和事件型结构的目标软件系统 从整个程序的结构出发,利用模块结构图表述程序模块间的关系。,结构化设计方法(Structured Design),结构化设计(SD)方法是一种面向数据流的设计方法,以需求阶段产生的数据流图为基础,按一定的步骤映射成软件结构。,与结构化分析(SA)衔接 适用于变换型结构和事件型结构的目标软件系统 从整个程序的结构出发,利用模块结构图表述程序模块间的关系。,结构化设计方法(Structured Design),结构化软件设计方法更关注于系统的功能,采用自

      2、顶向下、逐步求精的设计过程,以模块为中心来解决问题。 采用结构化软件工程方法开发出来的软件系统可以看成是一组函数或过程的集合。 结构化软件设计从系统的功能入手,按照工程标准和严格的规范将目标系统划分为若干功能模块。 结构化设计方法: 面向数据流的设计方法 面向数据结构的设计方法。,结构化设计方法概述,结构化软件设计任务:把结构化分析阶段所建立的功能模型、数据模型和行为模型转换成数据设计、体系结构设计、接口设计和过程设计,结构化设计方法概述,数据设计:将实体一关系图描述的对象和关系,以及数据字典中描述的数据内容转换为数据结构的定义 体系结构设计:定义软件系统各主要成分间的关系 接口设计:根据数据流图定义软件内部各成分之间、与其他协同系统以及软件与用户间的交互机制 过程设计:把结构成分转换成软件的过程性描述,结构化设计方法概述,SETP1:评审和细化数据流图,确定数据流图的类型(变换型?事务型?)把数据流图映射到软件模块结构,设计出模块结构的上层;基于数据流图逐步分解高层模块,设计中小层模块 SETP2:根据分析模型蝗实体-关系图和数据字典进行数据设计(数据库设计、数据文件设计) SETP

      3、3:依据分析模型加工规格说明、状态迁移图及控制规格说明进行过程设计 SETP4:接口设计:软件界面设计、与硬件接口设计、与其他软件系统接口设计,结构化软件设计的步骤:,体系结构设计,面向数据流的设计方法是常用的结构化设计方法,多在概要设计阶段使用。 它主要是指依据一定的映射规则,将需求分析阶段得到的数据描述从系统的输入端到输出端所经历的一系列变换或处理的数据流图转换为目标系统的结构描述。,在数据流图中,数据流分为变换型数据流和事务型数据流,面向数据流的设计方法:,变换是指把输入的数据处理后转变成另外的输出数据。 信息沿输入路径流入系统,在系统中经过加工处理后又离开系统,当信息流具备这种特征时就是变换流。 事务是指非数据变换的处理,它将输入的数据流分散成许多数据流,形成若干个加工,然后选择其中一个路径来执行。 比如,对于一个邮件分发中心,把收进的邮件根据地址进行分发,有的用飞机邮送,有的用汽车邮送。 信息沿输入路径流入系统,到达一个事务中心,这个事务中心根据输入数据的特征和类型在若干个动作序列中选择一个执行方式,这种情况下的数据流称为事务流,它是以事务为中心的。,数据流的类型,变换型数据

      4、流和事务型数据流的示意图分别如下图所示。,变换型数据流,事务型数据流,数据流的类型,在一个大型系统中,可能同时存在变换型数据流和事务型数据流。 对于变换型数据流,设计人员应该重点区分其输入和输出分支,通过变换分析将数据流图映射为变换结构,从而构造出目标系统的结构图。 对于事务型数据流,设计人员应该重点区分事务中心和数据接收通路,通过事务分析将数据流图映射为事务结构,数据流的类型,体系结构设计过程,体系结构设计过程,变换型映射设计方法,将具有变换数据流特点的数据流图按预先确定的模式映射成软件体系统结构,变换型映射方法步骤: 复审基本系统模型是(评估软件需求规格说明) 复审和细化软件的数据流图 确定数据流图中流的特征 区分输入流、输出流和中心变换部分,标明流的边界 进行一级“因子化”分解,设计顶层与第一层模块 进行二级“因子化”分解,设计中、下层模块 利用启发式原则改进系统的初始结构图,直到得到符合要求的系统结构图,体系结构设计过程,变换型映射设计方法,启发式原则: 模块功能完善化 消除重复功能 模块的作用应在控制范围内 尽可能减少高扇出结构 避免或减少使用病态连接 模块大小要适中 设计功

      5、能可预测的模块 软件应满足设计约束和移植性,下面以某个“学生档案管理系统”为例,对其进行面向数据流的系统设计。已知该系统的数据流图如下图所示。,体系结构设计过程,学生档案管理系统的数据流都属于变换型数据流,其数据流图中并不存在事务中心。区分数据流图中的输入流、变换流和输出流,得到该系统具有边界的数据流图,如下图所示。,体系结构设计过程,通过分析,得到学生档案管理系统的系统结构图,如下图所示。,体系结构设计过程,由于使用系统时需要对用户的身份进行验证,因此可对“统计分析数据”等模块进行进一步的细分。对初步得到的系统结构图进行优化,可以进一步得到该系统优化的系统结构图,如下图所示。,体系结构设计过程,例5.1 在教务管理系统中,教师可以査询学生的成绩单。由需求分析知,学生成绩单 管理完在成以下功能:1.根据条件查询学生倌息;2.根据指定的范围和类型査询学生成绩数据;3.对学字成绩进行排序、唯一性检查,列表缓冲;4.计算学生成绩总体情况和成绩分段分布情况;5.输出报表。针对该学生成绩单管理系统.使用变换型映射方法得到软件的结构图,体系结构设计过程,第1步:确定精化后的数据流图 第2步:由于学

      6、生成绩在输出之前,需要建立输出列表缓冲,根据成绩数据计算统计信息, 之后确定报表分页布局,是一个变换型问题。 第3步:确定输人流、输出流,如图5.24虚线所示。 第4步:对于成绩单管理,第一级映射得出的结构图如图5.25所示,每个控制模块的名字表明了被它所控制的那些模块的功能。 第5步:第二级映射的结果分别用图5.2-28描述。 第6步:对软件初始结构进行细化。,体系结构设计过程,事务型映射设计方法,将具有事务数据流特点的数据流图按预先确定的模式自顶向下,逐步分解建立软件体系统结构,事务型映射方法步骤: 复审基本系统模型是(评估软件需求规格说明) 复审和细化软件的数据流图 确定数据流图中流的特征 识别事务中心和每一条操作路上的流特征 将数据流图映射到事务型系统结构图上 “因子化”分解和细化事务结构和每一条操作路径的结构 利用启发式原则改进系统的初始结构图,直到得到符合要求的系统结构图,事务型映射设计方法,例5.2 银行储蓄系统的业务流程如下:储户写好的存款单或取款单由业务员键入系 存款则系统记录存款人姓名、地址、身份证号、存款类型、存款日期、到期日期、利率 等信息,并打印出存单给储户;

      7、如果是取款而且开户时留有密码,则系统首先核对密码, 若密码正确,或存款时未留密码,则系统计算利息并打印出利息清单给储户。请针对该银行储 统使用事务型映射方法得到软件的结构图。,事务型映射设计方法,第1步:对银行储蓄系统的数据流图进行复查并细化,得到图5,29所示的数据流图。,事务型映射设计方法,第2步:通过对图29所示的数据流图进行分析,可以看到整个系统是对存款及取款两 种不同的事务进行处理,因此具有事务特性。 第3步:确定输人流和输出流的边界,如图5.29虚线所示。 第4步:完成第一级分解,如图30所示。 第5步:完成第二级分解,对图5.30所示的输入数据、输出数据、调度模块进行分解,得到 未经细化的输入结构、输出结构和事务结构,分别如图5.31-33所示 第6步:对软件结构时行细化,数据设计,互联网时代背景下,数据是企业(组织)的血液,对企业至关重要。 数据是软件系统中的重要组成部分,数据设计的好坏影响软件系统的成败。 数据设计好的软件系统具有很强的模块独立性和较低的程序复杂性,数据设计特点: 三分技术、七分管理、十二分基础数据,数据设计:数据库设计和数据文件设计,数据设计,将系统

      8、化的方法用于数据设计,应考虑几种不同的数据组织方案,分析数据设计对软件设计的影响 要确定所有的数据结构和在每种数据结构上的操作 建立数据字典并用它来定义数据和软件的设计 低层数据设计的决策应推迟到设计过程的后期进行,用逐步细化的方法进行数据设计(需求分析时确定总体数据、概要设计时加以细化,详细设计时才规定具体的细节) 数据结构的表示只限于那些必须直接使用数据结构内数据的模块才能知道 数据结构设计成可复用的,建立一个存在各种复用的数据结构模型的构件库,以减少数据定义和设计的工作量,做好数据设计的基本原则,数据设计,数据库设计,数据库的分类与选择:关系数据库和非关系型数据库 Oracle, SQL server, Mysql, DB2, Access NoSQL(Google 的BigTable与Amazon的Dynamo。开源的 NoSQL 体系,如Facebook 的Cassandra, Apache 的Hbase),数据设计,数据库设计,数据库结构设计,数据库概念结构设计,建立E-R模型 (需求分析阶段工作),数据库逻辑结构设计,在设计数据库的逻辑结构的过程中,首先要将概念结构中的实

      9、体、属性、联系映射为数据表结构。 在关系型数据库中,数据表是数据的存储单位,数据库逻辑结构设计,实体-关系映射:将E-R模型映射到关系数据库中,实体和实体属性的映射: 一个实体对应一个关系模式,实体的属性对应关系的属性实体的码对应关系模式的候选码。 实体之间的联系和联系属性的映射:实体之间的一对一,一对多和多对多二种联系分别按下述方法实现关系的映射。 一对一联系的转换:一个1:1联系转换为一个独立的关系模式,也可与任意一端实体对应的关系模式合并 实体类型之间一个1:1联系转换为一个独立的关系模式,则与该联系相连的实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。 实体类型之间一个1:1联系与任意一端实体对应的关系模式合并。则需要在该关系模式的属性中加人另一关系模式的码和联系本身的属性。,概念结构设计,实体-关系映射:将E-R模型映射到关系数据库中,一对多联系的转换:一个1:N联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并 实体间一个1:N联系转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为新关系的属性,新关系的码为N端实体的码。 实体间一个1:1联系与N端实体对应的关系模式合并。在N端的子表中增加父表的关键字列则 多对多联系的转换:一个M:N联系必须转换为一个新关系模式,与该联系相连的各实体的码以及联系本身的属性均转为新关系的属性,而新关系的码是各实体码的组合。,形成初始的数据表后,要对其进行规范,在这里引入范式的概念。 一个好的关系模式应当不会发生插入异常、更新异常、删除异常,数据冗余尽可能少,在设计关系数据库时应该考虑上述问题。,数据库逻辑结构设计,各范式的定义如下:,数据库逻辑结构设计,显然,数据表的范式级别越高,其规范性也就越强。对于小型软件开发项目而言,所设计的逻辑模式能满足第二范式的要求即可。但是,如果项目对数据库中数据的完整性要求较高,应保证所设计的关系模式满足第三范式甚至更高范式的要求。 设计好数据表后,若数据表之间存在关联关系,那么可以采用主键、外键的方法,这是数据表之间参照完整性规则的依据。此外,为了使数据具有更高的安全性、方便对数据的组织和操作,人们还会采用数据视图的方法来进一步完善数据库的逻辑结构设计。,数据库逻辑结构设计,得到数据库的逻辑结构之后,就

      《第五章 软件设计-2》由会员luoxia****01802分享,可在线阅读,更多相关《第五章 软件设计-2》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.