设计和实现过程
CEC9 BAE001 VA14 BCE289 VA14 BCE282 <pi> VA16 <M> AAC002 VA18 AAC003 VA20 ... ... ... ... PK_CEC9 <pi>
概要设计(三)
接口设计
– 内部接口;
– 外部接口;
决策分析过程(1)
建立计划 在项目计划中体现决策应用时机。决策前建立决策日程安排,包括 活动的参与人、日期、日程、活动说明等。 建立评估标准 针对每项决策活动,需要建立评估标准。评估标准提供评估可选的 解决方案的准则,主要应该从方案本身的风险,实施成本,实施时 间,收效等几个方面来考虑建立,需要对评估标准的重要性划分优 先级。
培训手册 用户手册 操作手册 维护手册 在线帮助
10
目录
设计 编码实现
度量
总体流程
《软件需求说明书》 《决策分析报告》 《软件设计说明书》 《概要设计评审报告》
设计准备
概要设计
编制软件设计说明 书
概要设计评审和批 准
详细设计
详细设计评审 和批准
编码
单元测试
代码评审和批准
SP 1.1 Develop Alternative Solutions and Selection Criteria 开发备选解决 方案与选择标准 选择标准通常强调成本(如时间、人员、资金)、收益(如性能、能力、有效性) 和风险(如技术、成本、进度)。最终解决方案的选择标准,应该提供一种在成本、 收益与风险间求得平衡的方法。 SP 1.2 Select Product Component Solutions 选择产品组件解决方案 1.产品组件的选择结果与理由 2.将需求与产品组件间的关联关系文档化。 3.将选择结果、评估结果与选择理由文档化。
SP 2.2 Establish a Technical Data Package 建立技术数据包 建立并维护设计基线。
Technical Solution - Context
实现产品设计
实现设计
开发产品 支持文档
部件制作 软件编码 文档化数据 文档化流程 构建工具
编码实现过程
编码实现 单元测试 代码评审 转测试
编码实现
1、程序员依据《详细设计说明书》及《编程规 范》,进行程序单元的编制工作(包括建立相关 的构造环境)。纳入公司配置库中做版本管理。
决策分析的重要性
通过决策小组的讨论,一些重要的问题在产品开 发的初期就可以浮现出来,并在问题变成高成本 的错误之前就可以得到处理。
设计过程
决策分析
概要设计
详细设计
什么是概要设计
概要设计是指按照《软件需求说明书》,设计软 件系统的体系结构,即模块结构,定义每个模块 的主要功能和模块之间的接口,并确定软件系统 的数据体系结构。 输出:《软件设计说明书》
概要设计
主要包括三个方面的工作:
1.系统体系结构设计
2.数据体系结构设计
3.接口的设计。
概要设计(一)
系统体系结构设计
扩充软件需求阶段所提出的初步的系统体系结构。对扩 展后的体系结构进行完善,降低那些使软件难于实现、 测试、维护和重用的因素,形成高内聚、低耦合的系统 体系结构。
Technical Solution - Context
选择标准 构建/购买分析
开发设计
设计产品 或产品部 件
开发一个技 术数据包
建立产品部 件接口的解 决方案
完成构造、 购买或重用 任务
技术数据包
接口设计文档 接口规范 接口控制文档
设计方法 设计工具 设计过程
CL 3 设计接口 使用标准
评价可供选择的方案 识别已提议 的可供选择 的方案
Other PAs
制定和使 用决策分 析指南
制定 评价标准
选择 评价方法
指南
标准
已提议的可供 选择的方案
方法
选择 解决方案
评价 解决方案
14
一、决策分析(1)
决策分析与解决方案(Decision Analysis and Resolution, DAR)的目的,在于利用正 式的评估过程,依据准则评估各种已识别的备选 方案,以选择解决方案。 输出:《决策分析报告》
4) 立项论证,此活动的决策分析过程见《14004 软件产品立项管理办 法.doc》。
一、决策分析(3)
决策小组
进行方案评价,给出结论。通常是由业务、技术、市场领域的专家担任。
决策组长
负责决策分析计划和评估标准的确定,各委员间的协调沟通、组织等;通常由高层经 理或技术管理委员会担任。
概要设计( 二)
数据体系结构设计
扩展软件需求阶段所提出的初步的数据体系结构,将其 变换成实现软件所需的数据结构。
过程:业务模型-概念数据模型-物理数据模型
输出: 《数据库说明》和《数据字典定义》
CCB2 CEB2 CC45 CC46 BAE001 VA14 BAE001 VA14 BCE302 VA14 BCE076 VA16 Relationship_1 BCE156 VA14 AAC001 VA14 BCE076 <pi> VA16 <M> BCE324 <pi> VA16 <M> AAC001 VA14 BCE302 VA14 ... ... ... ... ... ... ... ... PK_CCB2 <pi> PK_CEB2 <pi> BAE001 VA14 BAE001 VA14 BCE076 VA16 BCE076 <pi> VA16 <M> AAC001 VA14 AAC001 VA14 Relationship_2 BCE324 <pi> VA16 <M> BCE250 VA20 AAC002 VA18 AAC002 VA18 ... ... ... ... ... ... ... ... PK_CC46 <pi> PK_CC45 <pi>
决策分析(2)
在下面的情况下需要使用决策分析过程: 1) 架构的选择; 2) 构造/购买/复用的权衡分析。如:开发并集成新构件(构造);购买并 集成可用的现成产品(购买);从现有IT系统或产品中引进、增强并集成构 件(复用)
3) 项目重大需求变更和关键技术方案的确定。
《软件版本发布说 明》
《详细设计说明书》 《详细设计评审报告》
《单元测试用例》 《单元测试报告》 《代码评审报告》
内部发布计划
转测试(内部发 布)
《软件版本发布说 明》
设计过程
决策分析
概要设计 详细设计
决策分析Decision Analysis and Resolution
8
SG 2 Develop the Design 开发设计 开发产品或产品组件的设计。 产品或产品组件的设计,需要提供一份完整的设计描述,记录于技术数据包(即设 计基线包含的配置项)中,它覆盖特征与参数的全部范围,包括格式、安装、功能、 接口、制作过程特征以及其他参数等。设计文件为支持相关干系人对设计的相互了 解,提供了一定的参考;并在开发过程中或产品生命周期的后续阶段,支持未来的 设计变更。 SP 2.1 Design the Product or Product Component 设计产品或产品组 件 产品设计包含两个阶段:概要设计与详细设计
1、评估并选择解决方案(概要设计),这些方案 可满足已定义的需求; 2、针对所选择的解决方案,进行详细设计 3、落实产品或产品组件的设计-编码
Technical Solution - Context
已确认的需求 可操作的方案 分析用例 DAR
选择产品部件(product component)解决方案
识别和形成可选解决方案
针对需要决策的问题,需要发现和形成多个不同的解决方案,并形 成文档。
决策分析过程(2)
确定评估方法
需要根据评估标准,针对方法。
评估可选的解决方案 根据建立的评估标准,按照确定的评估方法,对每个可选方案进行 评估。 选定解决方案 从可选方案的评估结果中选定解决方案,分别说明为什么选择和为 什么不选择的理由,以及决策风险评估,形成《决策分析报告》文 档。
如果不进行概要设计,就直接进入详细设计和编码 ,可能会出现的问题:
模块之间的接口,可能会无法匹配。 由于无可遵循的框架结构,重大的缺陷在详细和编码阶 段无法识别;
遗漏重要的接口和重要的模块;
造成大量的返工。 。。。
概要设计评审及模型使用
1.对《软件设计说明书》进行同行评审。 2.每次评审前使用“软件设计评审模型预测”进行目标预测 (若分多次软件设 计评审,最后一次的评审,利用软件设计模型预测并确定好目标后,要进行蒙特卡洛模拟。) 3.输出《评审报告》 4.评审后预测目标(是最终的质量目标)达成的概率。(本次评审若没有达成预 设的目标,要考虑进行整体目标的调整。) 5. 填写设计评审模型
目的: 设计、开发和实现满足需求的解决方案。解决方案 、设计和实现包括产品、产品部件以及产品相关过 程。
3
Technical Solution - Context
已确认的需求
选择产品部 件解决方案
开发设计
实现产品设计
替代的设计和评价标准
设计细节和文档
已交付的产品
4
Technical Solution focuses on
详细设计(二)
输入:《软件设计说明书》