软件产品线基础

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

接口由组件的用户能完全弄清楚的一组假设 组成; 接口经常用合约的方式说明,合约规定了每 个服务的前置和后置条件、定义了变量,表 示组件中关于服务间交互的约束条件; 一个完整的合约应该包括供需双方的信息; 组件的接口仅提供了关于各个服务被调用时 如何响应的规格说明。 每个组件都有一定数量的外部可见属性。
对系统要做什么、系统必须如何工作、系统 要表现出的特性、系统必须具备的质量以及 系统及其开发必须满足的约束; 需求工程包括需求抽取、分析、规格说明、 确认和管理;


需求抽取:是一个发现、评审、文档化以及理解用户需求和系统约束 的过程 需求分析:是一个提炼用户需要和系统约束的过程; 需求规格说明是一个清晰而严格地文档化用户需求和系统约束的过程; 需求确认是一个保证需求完整、正确、一致和清晰的过程; 需求管理是一个对需求工程活动进行进度安排、协调以及创建文档的 过程。
商业市场是软件系统开发组件的主要来
源之一; 详细分析架构、理解组织需求、详细研 究市场、以灵活的方式开发需求、开发 用于用于评估产品和技术的方法、将产 品集成到构架中、测试产品及其配置、 持续对系统进行管理。
对旧系统的一部分进行挖掘和改进,用
于原本并不支持的系统中; 为再工程进行选项分析OAR:建立挖掘 场景、组件目录、分析候选组件、分析 挖掘组件、选择挖掘组件。
自顶向下,不断细化; 在进行应用程序功能设计之前考虑系统
的基础结构; 在分析基础结构之前考虑应用程序的功 能。
相当于构架的设计模式; 定义了一组组件类型,指定了其间相互
连接的拓扑模式,以及运行时交互作用 的语义约束; 风格不是完整的构架而是构架原型,每 个风格都有为人共知质量属性。
பைடு நூலகம்开发
一个描述核心资产如何实现的通用术语。 与以往的开发略有差异:建造、获取、购 买。
领域
是指一种专门的知识,一个领域的专业技 能或相关功能的一个集合。
软件产品实践
指系统化地运用核心资产进行装配、实例 化或生成构成软件产品的多个。其涉及战 略性的、大粒度的重用。
核心资 产开发
产品开 发
系统的一个或多个结构,一个系统包含
多个组件以及这些组件的外部可见属性 和各组件之间的关系; 外部可见属性是指其他组件使用该组件 时的假设; 如:它提供的服务、性能特征、错误处 理、共享资源的使用。
如软件工程类似,公开、清晰的约束,
实现系统要求的行为; 质量属性; 此系统是否与其他系统交互; 开发组织针对此系统的业务目标; 组件的最佳来源。

构架评估时一种产品验证形式,就像软
件测试时一种代码验证形式一样; 评估可以在设计过程的不同阶段执行; 一个系统的业务目标导致了特殊的行为 需求和质量属性目标。
构架设计师的工作是生成一个组件列表; 生产的组件可以应用在一个软件构架的
上下文中实现指定功能; 应用于核心资产的组件开发与应用于产 品的组件开发; 产品组件的来源:核心资产库、绑定内 置的变化后使用、修改调整后、重新开 发。

基本概念
产品线是什么? 产品线不是什么? 部分术语


三大基本活动
核心资产的开发 产品开发 管理


软件工程实践域

构架定义 构架评估 组件开发 COTS 需求工程 软件系统集成

软件产品线是指具有一组可管理的有着公 共特性的软件密集性系统的集合,这些系 统满足特定的市场需求或任务需求,并且 按预定义的方式从一个公共核心资产集开 发得到。
偶然的小粒度重用 利用重用的单系统开发 仅仅是基于组件开发 仅有一个可配置的构架 单个产品的发布 仅有一套技术标准


核心资产 那些构成软件产品线基础的资产。核心资 产通常包括:构架、可重用软件组件、领 域模型、需求陈述、文档和规格说明、性 能模型、进度表、预算、测试计划、测试 用例、工作计划和过程描述。
将独立的软件组件组合成一个集成的整体; 在软件工程的中间阶段; 集成受组件接口定义的限制 具体实践:




接口语言:IDL、Ada 封装:一种特殊的软件产品,作为构建用户期望的组件与被使用的已 有组件之间通信媒体; 中间件:可集成构架,采用一种特殊的软件产品作为用户结构和数据 生成器及存储器之间的媒介; 系统生成:只需为模板中变量指定实际参数,就可以生成新产品; FAST生成器:定义了潜在成员之间的共性和变化,然后设计一种小型 的专用语言来描述他们。
管理
领域工程
应用工程
核心资产开发活动的目标是建立产品 的生产能力。 核心资产开发活动的输出
1、产品线范围; 2、核心资产; 3、生产计划。
生产产品才是产品线的最终目标。
它依赖于前述的三个输出以及各个 产品的需求。 产品开发的输入
1、一个特殊产品的需求; 2、产品线范围; 3、用于构建产品的核心资产; 4、生产计划。
相关文档
最新文档