版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第四章 软件设计,1,第4章 软件设计,软件设计的任务、目标与文档 软件设计原理与优化准则 软件的结构设计 数据库设计概论,第四章 软件设计,2,本章导读:,软件设计是软件开发的核心。是在需求分析和设计的基础上进行的。 本章论述软件设计的任务及目标、软件设计的概念、原理和设计准则、软件设计常用的方法以及多层结构设计技术、设计文档和管理文档编写的参考指南、数据库设计方法,数据模型设计案例分析。,第四章 软件设计,3,软件设计是后续开发步骤及软件维护工作的基础。如果没有设计,只能建立一个不稳定的系统结构,为什么要进行软件设计?,第四章 软件设计,4,概要设计说明书 详细设计说明书,软件设计,软件设
2、计做什么?,简单地说,软件设计就是根据需求分析的“做什么(What to do?)”,确定系统应该“怎么做”(How to do?)。,需求规格说明书,第四章 软件设计,5,工程管理角度:,概要设计:将软件需求转化为软件的系统结构,形成概要设计规格书。 详细设计:过程设计和界面设计。形成详细设计规格书。,第四章 软件设计,6,工程技术角度:,数据设计:包括数据结构、文件和数据库的设计。 结构设计:选择合理的体系结构,对系统进行分解和划分。 过程设计:通过对结构表示进行细化,得到软件详细的界面、数据结构和程序算法。,第四章 软件设计,7,开发阶段的工作流 软件设计的任务 软件设计的目标 软件设计
3、的文档,一、软件设计的任务、目标与文档,第四章 软件设计,8,1、开发阶段的工作流,第四章 软件设计,9,设计阶段选用合适的设计方法进行系统结构、数据结构、界面表示和实现过程的设计。,结构设计:定义软件组成及各主要成分之间的关系,构造软件系统的整体框架; 数据设计:完成数据结构的定义; 过程设计:对系统框架、数据结构和界面表示进行细化,对各结构成分所实现的功能,用很接近程序的软件表示形式进行过程性描述。 编码设计:将过程描述转换为某种程序设计语言的源代码。 软件测试:即对设计结果进行验证,得到完整有效地软件系统。,第四章 软件设计,10,2、软件设计的具体任务,制定规范 结构设计 处理方式设计
4、 数据结构及数据库设计 可靠性设计(质量设计) 编写软件设计文档 设计审查和复审 详细设计,第四章 软件设计,11, 制定规范,制定在设计时应该共同遵守的标准,以便协调组内各成员的工作。,确定设计目标和最合适的设计方法。 规定编码的信息形式和接口规约。 确定命名规范。 确定构件重用策略。 面向模块(部件或构件)进行设计。 规定设计文档的规范。 规定代码编写规范。 概要设计方法; 详细设计和编程方法。,第四章 软件设计,12, 结构设计,将系统按功能划分成模块的层次结构 确定每个模块的功能、与需求相对应 确定模块间的调用关系 确定模块间的接口 评估模块划分的质量,基于功能层次结构建立系统。,第四
5、章 软件设计,13,处理方式设计,确定算法,评估算法的性能 确定模块间的控制方式 周转时间 响应时间 吞吐量 精度 确定外部信号的接收发送形式,第四章 软件设计,14, 数据结构及数据库设计,第四章 软件设计,15,确定I/O文件的数据结构 确定算法所必需的逻辑数据结构 确定对逻辑数据结构所操作的程序模块 限制和确定各个数据设计的影响范围 确定接口数据其详细的数据结构和使用规则,目的:保证数据完整性和安全性。, 数据结构的设计:,第四章 软件设计,16,目的:确定数据库的模式、子模式。,概念结构设计:可以用E-R模型表示,也可以用3NF关系群表示 逻辑结构设计:是将概念模型转换成DBMS支持的
6、数据模型。 物理结构设计:设计数据模式的一些物理细节,选定存储结构和存取方法 ,以获得数据库的最佳存取效率。, 数据库设计:,第四章 软件设计,17,防卫性设计:在软件设计中就插入自动检错,报错和纠错的功能 一致性设计: 在并发处理过程中使用封锁和解除封锁机制保持数据不被破坏 冗余性设计:, 数据的保护性设计,第四章 软件设计,18,在软件开发的一开始就应确定软件可靠性和其它质量指标,考虑相应措施,确保所做的设计具有良好的质量特性,使软件易于修改和易于维护。,(5)可靠性设计(质量设计),第四章 软件设计,19,概要设计规格说明书 数据库设计规格说明书 详细设计规格说明书 用户使用手册 测试计
7、划与测试标准,(6)编写软件设计文档,第四章 软件设计,20,可追溯性:需求复盖确认 接口:内部接口与外部接口定义的确认。 风险:确认技术条件、预算范围。 实用性:确认对于需求的实用性。 技术清晰度:确认代码的可实现性 可维护性:确认可维护性 质量:确认质量特征 各种选择方案:选择方案的标准 限制:评估限制的现实性,与需求的一致性 其它具体问题:对文档、可测试性、设计过程等进行评估,(7) 设计审查和复审,第四章 软件设计,21,(8) 详细设计,确定软件各模块内的算法和数据结构。 选定某种过程的表达形式来描述各种算法。 进行详细设计的评审,在详细设计过程中,需要完成的工作是:,第四章 软件设
8、计,22,节省开发费用、 降低资源消耗、 缩短开发时间、 能够赢得较高的生产效率、 较高的可靠性、 可维护性的方案。,3、软件设计的目标,软件设计的最终目标:取得最佳方案,第四章 软件设计,23,功能、性能都符合指定的要求; 软件是可维护的,可方便地进行修改 ; 除了代码,还有一套配置齐全的文档。,开发的软件满足以下特点:,第四章 软件设计,24,4、软件设计文档,概要设计规格书 详细设计规格书 数据库设计规格书 用户操作手册 测试计划与标准,软件设计文档格式与内容,按照CMM的要求,规范化处理。,软件设计规格书,第四章 软件设计,25,概要设计说明书要点,导言 软件体系结构和系统结构设计 模块(部件)功能分配 数据结构设计 接口设计 检查列表,详细请见P482,第四章 软件设计,26,详细设计说明书要点,主要设计思想与方法 模块实现过程设计 接口实现过程设计 主要算法和数据结构说明 界面设计 检查列表,详细请见P483,第四章 软件设计,27,管理文档,概要设计说明书评审记录表 详细设计说明书评审记录表,第四章 软件设计,28,突出设计书评审中不符合项的跟踪记录。 不符合项主要是在系统功能、性能、接口的设计上存
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年北医三院放射科影像诊断医师招聘备考题库及参考答案详解一套
- 2026年陕西电子信息职业技术学院单招综合素质考试题库带答案详解(新)
- 2026年陕西航天职工大学单招职业技能考试题库含答案详解(预热题)
- 2025年石家庄精英全托学校公开招聘84名教师及工作人员备考题库及答案详解一套
- 大庆市2023黑龙江大庆市残疾人联合会所属事业单位招聘5人笔试历年参考题库典型考点附带答案详解
- 2026年黄河水利职业技术学院单招职业适应性考试题库附参考答案详解(培优)
- 2026年陕西财经职业技术学院单招职业倾向性测试题库含答案详解(达标题)
- 2025年佛山市顺德区均安社区卫生服务中心招聘编外B超医生备考题库及参考答案详解一套
- 2026年闽江师范高等专科学校单招综合素质考试题库附参考答案详解(完整版)
- 2026年陕西省渭南市单招职业倾向性考试题库附参考答案详解(综合题)
- 外研版中考英语复习课件
- GB/T 41498-2022纤维增强塑料复合材料用剪切框测定面内剪切应力/剪切应变响应和剪切模量的试验方法
- GB/T 28733-2012固体生物质燃料全水分测定方法
- FZ/T 08001-2021羊毛絮片服装
- 博弈策略的生活解读 课件
- PSP问题分析与解决能力训练课件
- 灌注桩低应变法参数表
- 浦发银行个人信用报告异议申请表
- 综合实践六年级下册和灯做朋友-完整版课件
- 主题班会-315诚信教育课件
- 数字化仿真概述课件
评论
0/150
提交评论