04软件设计工程(钱乐版).ppt
《04软件设计工程(钱乐版).ppt》由会员分享,可在线阅读,更多相关《04软件设计工程(钱乐版).ppt(84页珍藏版)》请在第壹文秘上搜索。
1、1设计工程设计工程2内容摘要内容摘要软件设计工程概述软件设计工程概述软件设计准则软件设计准则 软件体系结构设计软件体系结构设计部件级设计技术部件级设计技术 设计规约与设计评审设计规约与设计评审3 正如任何工程项目一样,在生产之前要做正如任何工程项目一样,在生产之前要做设计,软件编码前,也必须先进行软件设计。设计,软件编码前,也必须先进行软件设计。 软件设计是软件开发的关键步骤,直接影软件设计是软件开发的关键步骤,直接影响软件质量。响软件质量。 软件需求分析解决软件需求分析解决“做什么做什么”的问题,软的问题,软件设计过程则解决件设计过程则解决“怎么做怎么做”的问题的问题4.1 4.1 软件设计
2、工程概述软件设计工程概述4软件设计是把软件需求变换成软件表示的过程,它主要包含软件设计是把软件需求变换成软件表示的过程,它主要包含两个阶段:两个阶段:软件体系结构设计软件体系结构设计阶段和阶段和部件级设计部件级设计; 有称为有称为总体设计总体设计和和详细设计详细设计两个两个阶段。阶段。 其其工作流程工作流程可用下图表示:可用下图表示: 总体总体设计设计需求需求 说明书说明书复审复审体系体系 结构结构数据数据/ /类结构类结构修修 改改详细详细设计设计可接受可接受部件过程描述部件过程描述复审复审修修 改改设计说设计说 明书明书1 1、设计阶段结束要交付的文档是设计说明书,根据设计方法的不同,、设
3、计阶段结束要交付的文档是设计说明书,根据设计方法的不同,有不同的设计文档。有不同的设计文档。2 2、每个设计步骤完成后,都应进行复审。、每个设计步骤完成后,都应进行复审。 常用的设计方法有:常用的设计方法有: SD法、法、Jackson法、法、OOD法、层次式输入法、层次式输入-处理处理-输出法输出法(又称又称HIPO法法)、 Parnas法、法、 Warnier法等。法等。软件设计阶段软件设计阶段5设计任务:使用一种设计方法设计任务:使用一种设计方法,将分析阶段获得的需求说将分析阶段获得的需求说明的软件分析模型中通过数据、功能和行为模型所展示明的软件分析模型中通过数据、功能和行为模型所展示的
4、软件需求的信息传送给设计阶段,完成系统的数据的软件需求的信息传送给设计阶段,完成系统的数据/类类设计、体系结构设计、接口设计、部件级设计设计、体系结构设计、接口设计、部件级设计 最后得到最后得到软件设计说明书。软件设计说明书。过程设计过程设计结构设计结构设计数据设计数据设计界面设计界面设计软件设计软件设计1. 1.软件设计阶段的任务软件设计阶段的任务6软件设计的目标就是构造一个高内聚低耦合的软件设计模型。软件设计的目标就是构造一个高内聚低耦合的软件设计模型。提高可靠性;提高可维护性;提高可理解性;提高效率。提高可靠性;提高可维护性;提高可理解性;提高效率。衡量该目标的准则衡量该目标的准则1、软
5、件实体有明显的层次结构,利于软件元素间控制。、软件实体有明显的层次结构,利于软件元素间控制。2、软件实体应该是模块化的,模块具有独立功能。、软件实体应该是模块化的,模块具有独立功能。3、软件实体与环境的界面清晰。、软件实体与环境的界面清晰。4、设计规格说明清晰、简洁、完整和无二义性。、设计规格说明清晰、简洁、完整和无二义性。软件软件高可靠高可靠性性高可维高可维护性护性高可理高可理解性解性高效率高效率软件设计的目标2.2.软件设计的目标软件设计的目标73.3.软件设计的过程软件设计的过程一选取合理的系统体系结构二推荐最佳方案、技术选型三划分模块,确定软件结构 四数据结构和算法设计五设计用户界面六
6、编写文档七审查和复查8一、选取合理的系统体系结构软件体系结构确定了系统的组织结构和拓扑结构,软件体系结构确定了系统的组织结构和拓扑结构,显示了系统需求和构成系统的元素之间的对应关系,显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。提供了一些设计决策的基本原理。体系结构设计是软件设计的第一个阶段,该阶段体系结构设计是软件设计的第一个阶段,该阶段侧重于系统宏观结构的设计,而不关心模块的内部算侧重于系统宏观结构的设计,而不关心模块的内部算法。法。常见的软件体系结构常见的软件体系结构单主机结构单主机结构C/SC/S(Client/ServerClient/Server)结构
7、)结构B/SB/S(Browser/ServerBrowser/Server)结构)结构3. 3. 软件设计的过程软件设计的过程9一、选取合理的系统体系结构选取体系选取体系 针对以下问题考虑针对以下问题考虑:是单机还是客户机是单机还是客户机/服务器系统服务器系统是应用开发还是低层开发是应用开发还是低层开发(是否有单片机是否有单片机)客户机最大点数客户机最大点数是否提供给第三方接口是否提供给第三方接口网络网络(数据通信数据通信)连接方式连接方式胖客户机还是瘦客户机胖客户机还是瘦客户机数据文件的保存方式数据文件的保存方式(文本、本地数据库、大型文本、本地数据库、大型数据库数据库)3. 3. 软件设
8、计的过程软件设计的过程10二、 推荐最佳方案、技术选型技术选型,明确以下信息:技术选型,明确以下信息:主要硬件环境操作系统应用系统内的各种服务器软件开发语言及开发工具CASE软件3. 3. 软件设计的过程软件设计的过程三、划分模块,确定软件结构 开发方法不同,确定软件结构的方法也不同。例如开发方法不同,确定软件结构的方法也不同。例如SDSD法,是从分层法,是从分层的的DFDDFD图导出初始的结构图,再对初始的结构图进行改进,获得最终的图导出初始的结构图,再对初始的结构图进行改进,获得最终的结构图。结构图。 一般包括确定系统的软件结构,分解模块一般包括确定系统的软件结构,分解模块 ,确定系统的模
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 04 软件设计 工程 钱乐版
