软件工程_总体设计.ppt

软件工程_总体设计.ppt

ID:55667392

大小:820.00 KB

页数:80页

时间:2020-05-23

软件工程_总体设计.ppt_第1页
软件工程_总体设计.ppt_第2页
软件工程_总体设计.ppt_第3页
软件工程_总体设计.ppt_第4页
软件工程_总体设计.ppt_第5页
资源描述:

《软件工程_总体设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、第二部分、开发阶段系统设计总体设计体系结构设计模块设计详细设计用户界面设计数据结构与算法设计系统实现编码和单元测试综合测试体系结构就如同人的骨架。如果某个家伙的骨架是猴子,那么无论怎样喂养和美容,他始终都是猴子,不会成为人。模块就如同人的器官,具有特定的功能。人体中最出色的模块设计之一是手,手只有几种动作,却能做无限多的事情。人体中最糟糕的模块设计之一是嘴巴,嘴巴将最有价值但毫无相干的几种功能如吃饭、说话混为一体,使之无法并行处理,真乃人类之不幸。用户界面就如同人的外表,最容易让人一见钟情或一见恶心。象人类追求心灵美和外表美那样

2、,软件系统也追求(内在的)功能强大和(外表的)界面友好。但随着生活节奏的加快,人们已少有兴趣去品味深藏不露的内在美。如果把Unix系统比作是健壮的汉子和妇人,那么Windows系统就象妩媚的小白脸和狐狸精。想不到Windows系统竟然能兴风作浪,占去大半市场。数据结构与算法就如同人的血脉和神经,它让器官具有生命并能发挥功能。数据结构与算法分布在体系结构和模块中,它将协调系统的各个功能。人的耳朵和嘴巴虽然是相对独立的器官,但如果耳朵失聪了,嘴巴就只能发出“啊”“呜”的声音,等于丧失了说话的功能,可人们却又能用手势代替说话。人体的数

3、据结构与算法设计真是十分神奇并且十分可笑。1第5章总体设计本章主要内容:软件设计的概念与原则;总体设计的步骤和方法;面向数据流的设计方法;总体设计的文档与评审。本章重点:总体设计的步骤和方法;面向数据流的设计方法本章难点:软件设计的原则,内聚和耦合,系统结构图。2第五章总体设计5.1设计过程5.2设计原理5.3启发规则5.4描绘软件结构的图形工具5.5面向数据流的设计方法总体设计的基本目的总体设计的基本目的就是回答“概括地说,系统应该如何实现?”这个问题。总体设计又称为概要设计或初步设计。总体设计阶段的任务通过这个阶段的工作将划

4、分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等,但是每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计。总体设计阶段的另一项重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。总体设计的意义在详细设计之前进行总体设计可以站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统。把对象当作一个黑盒子,不需要知道里面是怎么处理的。45.1总体设计的过

5、程总体设计过程通常由两个主要阶段组成:系统设计:确定系统的具体实现方案。结构设计:确定软件结构。9个步骤:设想供选择的方案选取合理的方案推荐最佳方案功能分解设计软件结构设计数据库制定测试计划书写文档审查和复审55.1.1设想供选择的方案在总体设计阶段分析员应该考虑各种可能的实现方案,并且力求从中选出最佳方案。需求分析阶段得出的数据流图是总体设计的极好的出发点。数据流图中的某些处理可以逻辑地归并在一个自动化边界内作为一组,另一些处理可以放在另一个自动化边界内作为另一组。这些自动化边界通常意味着某种实现策略。设想把数据流图中的处理分

6、组的各种可能的方法,抛弃在技术上行不通的分组方法(例如,组内不同处理的执行时间不相容),余下的分组方法代表可能的实现策略,并且可以启示供选择的物理系统。在总体设计的该步骤中分析员仅仅一个边界一个边界地设想并且列出供选择的方案,并不评价这些方案。5.1总体设计的过程675.1.2选取若干个合理的方案至少选取低成本、中等成本和高成本三种方案。每种方案准备四份资料:系统流程图;组成系统的物理元素清单;成本/效益分析;实现这个系统的进度计划。5.1总体设计的过程85.1.3推荐最佳方案分析员应该综合分析对比各种合理方案的利弊,推荐一个最

7、佳的方案,并且为推荐的方案制定详细的实现计划。在使用部门的负责人接受了分析员所推荐的方案之后,将进入总体设计过程的下一个重要阶段——结构设计。5.1总体设计的过程95.1.4功能分解程序(特别是复杂的大型程序)的设计,通常分为两个阶段完成:结构设计:结构设计是总体设计阶段的任务。结构设计确定程序由哪些模块组成,以及这些模块之间的关系。过程设计:过程设计是详细设计阶段的任务。过程设计确定每个模块的处理过程。为确定软件结构,首先需要从实现角度把复杂的功能进一步分解。一般说来,经过分解之后应该使每个功能对大多数程序员而言都是明显易懂的

8、。功能分解导致数据流图的进一步细化,同时还应该用IPO图或其他适当的工具简要描述细化后每个处理的算法5.1总体设计的过程105.1.5设计软件结构通常程序中的一个模块完成一个适当的子功能。应该把模块组织成良好的层次系统,顶层模块调用它的下层模块以实现程序的完整功

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。