版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程
第三章软件设计授课老师:清华大学计算机系殷人昆yinrk432@
passwordqhdxjsjx1精选ppt软件设计的概念软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,即软件设计是确定系统的物理模型。从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。2精选ppt将分析模型转换为设计数据字典数据流图实体关系图状态转换图加工规格说明控制规格说明数据对象描述过程设计接口设计体系结构设计数据设计3精选ppt概要设计将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式。详细设计确立每个模块的实现算法和局部数据结构,用适当方法表示算法和数据结构的细节。4精选ppt数据设计将实体–关系图中描述的对象和关系,以及数据字典中描述的详细数据内容转化为数据结构的定义。体系结构设计定义软件系统各主要成份之间的关系。接口设计根据数据流图定义软件内部各成份之间、软件与其它协同系统之间及软件与用户之间的交互机制。过程设计则是把结构成份转换成软件的过程性描述。5精选ppt衡量设计的技术原则:设计出来的结构应是分层结构。设计应当模块化。设计应当包含数据抽象和过程抽象。设计应当建立具有具有独立功能的模块。设计应当建立能够降低模块与外部环境之间复杂连接的接口。设计应能根据软件需求信息,建立可驱动可复用的方法。衡量设计的原则6精选ppt模块独立性用两个准则度量模块独立性,即模块间的耦合和模块的内聚。内聚性:内聚是一个模块内部各个元素彼此结合的紧密程度的度量。耦合性:耦合是模块间互相连接的紧密程度的度量,它取决于各个模块之间接口的复杂度、调用方式以及哪些信息通过接口。7精选ppt非直接
数据标记控制外部公共内容耦合耦合耦合耦合耦合耦合耦合耦合性模块独立性模块间的耦合8精选ppt模块内聚巧合逻辑时间过程通信信息功能内聚内聚内聚内聚内聚内聚内聚内聚性模块独立性9精选ppt结构化设计方法
基本概念
结构化设计(structureddesign,SD)是一种面向数据流的设计方法,它可以与SA方法衔接。结构化设计的基本思想是将系统设计成由相对独立、功能单一的模块组成的结构。
10精选ppt信息流的类型
在需求分析阶段,面向数据流的SA方法产生数据流图DFD。在系统设计阶段,面向数据流的SD方法将DFD转换成程序结构图。信息流的定义:DFD中从系统的输入数据流到系统的输出数据流的一连串连续变换。DFD信息流的分类:变换流与事务流。
11精选ppt变换流
工作原理
信息沿着输入通路进入系统,同时将信息的外部形式转换成内部表示,然后通过变换中心(也称主加工)处理,再沿着输出通路转换成外部形式离开系统。具有这种特性的信息流称为变换流。组成变换流型DFD可以分成:输入+变换(主加工)+输出
12精选ppt事务流
工作原理 信息沿着输入通路到达一个事务中心,事务中心根据输入信息(即事务)的类型在若干个动作序列(称为活动流)中选择一个来执行,这种信息流称为事务流。特征 事务流有明显的事务中心,各活动流以事务中心为起点呈辐射状流出。
13精选ppt变换分析
变换分析是从变换流型的DFD导出系统结构图步骤确定输入流和输出流,孤立出变换中心;第一级分解:设计模块结构的顶层和第一层;第二级分解:设计中、下层模块。14精选ppt1)确定输入流和输出流,
孤立出变换中心变换分析的第一步辅助加工主加工辅助加工逻辑输入变换中心物理输入逻辑输出物理输出输入流输出流15精选ppt2)第一级分解:
设计模块结构的顶层和第一层变换流型DFD可映射成下图所示的系统结构图:顶层模块:其功能就是整个系统的功能;输入控制模块:接收所有的输入数据;变换控制模块:实现输入到输出的变换;输出控制模块:产生所有的输出数据。顶层模块输出控制变换控制输入控制变换分析的第一级分解16精选ppt3)第二级分解:设计中、下层模块输入控制模块的分解:从变换中心的边界开始,沿着每条输入通路,把输入通路上的每个加工映射成输入控制模块的一个低层模块。输出控制模块的分解:从变换中心的边界开始,沿着每条输出通路,把输出通路上的每个加工映射成输出控制模块的一个低层模块。变换控制模块的分解:变换控制模块通常没有通用的分解方法,应根据DFD中变换部分的实际情况进行设计。17精选ppt事务分析事务分析是从事务流型DFD导出系统结构图。步骤:确定事务中心和每条活动流的流特性将事务流型DFD映射成高层的系统结构进一步分解
18精选ppt1)确定事务中心和每条活动流的流特性
右图为事务流型DFD的一般形式。事务中心(图中的T):
位于活动流的起点, 活动流从该点成辐射状流出。活动流:是信息流,可以是变换流也可以是另一事务流。事务流型的DFD的组成:输入流+事务中心+若干条活动流
T输入流事务流活动流19精选ppt右图为事务流型DFD的高层结构形式。
顶层模块:其功能就是整个系统的功能。
接收模块:接收输入数据,对应输入流。
发送模块:调度模块, 控制下层的所有活动模块。
活动流模块:对应活动流, 是该活动流映射成的 结构图中的顶层模块。2)将事务流型DFD映射成高层系统结构顶层模块接收发送活动流1活动流2活动流n…事务流型DFD的高层系统结构20精选ppt3)进一步分解接收模块:类同于变换分析中输入控制模块的分解。活动流模块:根据其流特性(变换流或事务流)进一步采用变换分析或事务分析进行分解。
21精选pptSD方法的设计步骤复查并细化数据流图;确定DFD的信息流类型(变换流或事务流);根据流类型分别实施变换分析或事务分析;根据系统设计的原则对系统结构图进行优化。22精选ppt系统结构图的基本符号模块调用数据控制信息转接符号系统结构图的基本符号选择(判断)重复23精选ppt模块调用示例(a)调用(b)判断调用(c)循环调用24精选ppt数据:模块之间传送的数据用带空心圆的箭头表示,并在旁边标上数据名。控制信息:控制信息与数据的主要区别是前者只反映数据的某种状态。模块间的数据传递AB(a)xyz查职工简历读人事文件(b)职工号简历数据无此职工25精选ppt变换型系统结构26精选ppt事务型系统结构27精选ppt混合系统结构28精选ppt变换设计是软件系统结构设计的主要方法。一般,一个大型的软件系统是变换型结构和事务型结构的混合结构。所以,我们通常利用以变换设计为主,事务设计为辅的方式进行软件结构设计。29精选ppt模块功能完善化
一个完整的模块应当有以下几部分:执行规定的功能部分;出错处理的部分;函数在完成数据加工或结束时,应当给它的调用者返回一个状态码。消除重复功能,改善软件结构模块的作用范围应在控制范围之内改进系统结构的启发式原则30精选ppt尽可能减少高扇出结构。避免或减少使用病态联接。直接病态联接公共数据域病态联接通信模块病态联接模块的大小要适中。设计功能可预测的模块31精选ppt系统总体结构设计根据系统分析的要求和组织的实际情况,对新系统的总体结构形式和可利用的资源进行大致设计,这是一种宏观、总体上的设计和规划。系统总体设计的主要内容:系统结构设计原则子系统划分系统模块结构设计数据存储设计32精选ppt子系统划分划分原则子系统要具有相对独立性子系统之间数据的依赖性尽量小子系统划分的结果应使数据冗余较小子系统的设置应考虑今后管理发展的需要子系统的划分应便于系统分阶段实现子系统的划分应考虑到各类资源的充分利用33精选ppt子系统结构设计子系统结构设计的任务:确定划分后的子系统模块结构,并画出模块结构图。子系统结构设计考虑以下几个问题:每个子系统如何划分成多个模块。如何确定子系统之间、模块之间传送的数据及其调用关系。如何评价并改进模块结构的质量。如何从数据流图导出模块结构图。34精选ppt系统模块结构设计模块:组成系统的基本单位,系统中任何一个处理功能都可以看成是一个模块。特点:可以组合、分解和更换。分类标准:根据模块功能具体化程度划分分类:逻辑模块和物理模块逻辑模块:在系统逻辑模型中定义的处理功能。物理模块:即逻辑模块的具体化,可以是35精选ppt
一个计算机程序、子程序或若干条程序语句,也可以是人工过程的某项具体工作。模块的四要素:输入和输出:模块的输入来源和输出去向都是同一个调用者,即一个模块从调用者那里取得输入,进行加工后再把输出返回给调用者。处理功能:模块把输入转换成输出所作工作。36精选ppt内部数据:仅供该模块本身引用的数据。程序代码:用来实现模块功能的程序。模块特性外部特性:反映了模块的外貌,即前两个要素,结构化设计考虑外部特性。内部特性:即后两个要素,其具体实现在系统实施阶段完成。37精选ppt数据存储设计
数据结构组织和数据库或文件设计:根据数据的不同用途、使用要求、统计渠道、安全保密性等,来决定数据的整体组织形式、表或文件的形式,以及决定数据的结构、类别、载体、组织方式、保密级别等。任务:建立数据的整体关系结构、数据资源分布确定数据的安全保密性:一般有4种不同方式(只读、只写、删除、修改)。38精选ppt在过程设计阶段,要决定各个模块的实现算法,并精确地表达这些算法。对每个模块规定的功能以及算法的设计,给出适当的算法描述:图形工具:程序流程图,N-S,PAD,HIPO表格工具:判定表语言工具:PDL,HIPO过程设计(详细设计)39精选ppt1)程序流程图ABABPA1P=1A2=2An=nTSPFFSPT顺序型选择型先判断重复型后判断重复型多分支选择型40精选ppt2)N-S图ABPFTABPFTAwhile-doPAdo-whilePAP=1=2…=nA1A2…An顺序型选择型(1)选择型(2)先判断重复型后判断重复型多分支选择型41精选ppt3)问题分析图(PAD)S1SA1A2AnPPP=1=2=nwhile
PSSS1S2S2untilP选择型顺序型多分支选择型先判断重复型后判断重复型42精选ppt4)PDL(ProgramDesignLanguage)PDL是一种用于描述功能模块的算法设计和加工细节的语言。称为设计程序用语言。它是一种伪码。伪码的语法规则分为“外语法”和“内语法”。PDL具有严格的关键字外语法,用于定义控制结构和数据结构,同时它的表示实际操作和条件的内语法可使用自然语言的词汇。43精选ppt示例:拼词检查程序PROCEDUREspellcheckBEGIN
--*splitdocumentintosinglewords
LOOPgetnextword
addwordtowordlistinsortorder
EXITWHENallwordsprocessed
ENDLOOP
--*lookupwordsindictionary
LOOPgetwordfromwordlist44精选ppt
IFwordnotindictionaryTHEN
--*displaywordsnotindictionary
displaywordpromptonuserterminal
IFuserresponsesayswordOKTHEN
addwordtogoodwordlist
ELSE
addwordtobadwordlis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 莆田学院《外科学总论》2025-2026学年期末试卷
- 河道流量监测设备安装方案
- 河道工程材料选择技术方案
- 福州职业技术学院《互联网与社会》2025-2026学年期末试卷
- 江西农业大学《大学语文与写作教程》2025-2026学年期末试卷
- 骨科病人引流管护理
- 2025年无损检测资格证考试热像检测案例分析试题试卷
- 2026年县乡教师选调考试《教育学》通关练习题库包附参考答案详解(培优b卷)
- 2026年医学影像技术专业技师考试单套试卷(含实践技能操作)
- 2026年一级建筑师考试(建筑方案设计)真题单套试卷
- 部编版小学道法三年级下册第4课《致敬劳动者》第2课时教学设计
- 矿管股内部管理制度汇编
- 机关内部安全工作制度
- (2026年)临床护理文书书写规范
- 2026年吉林铁道职业技术学院单招职业倾向性考试题库附答案详解(完整版)
- 2025年辽宁省考公安岗面试题库及答案
- 2026年春季人教PEP版四年级下册英语Unit 1 Class rules 教案(共6课时)
- 2026及未来5年中国黄柏行业市场研究分析及前景战略研判报告
- 《安全工程专业实验》课件全套 第1-8章 实验室安全-安全检测实验
- 社会组织业务培训课件
- 印刷企安全教育培训制度
评论
0/150
提交评论