资料介绍
软件产品家族是具有共同特性的一系列软件系统,例如电信公司的各种计费系统、手机应用软件,像这样一些具有共同特性的一组软件系统的开发,如果没有系统重用的方法,采取传统的“一次开发一个系统”的方法,将使系统的成本和开发周期大大增加。
软件复用被认为是解决软件危机、实现软件产业工业化生产方式的有效途径。软件产品家族方法即应用软件复用的相关原理和技术,把整个产品家族作为同一问题空间来看待的软件开发方法。研究和实践表明,通过应用软件复用技术,软件产品家族方法极大地节省了软件产品的开发成本和时间[1],因此软件产品家族方法也被认为是一种提高软件开发效率和控制软件复杂性的有效措施。
本文采用面向特征的领域分析方法,选取高校设备预定管理产品家族作为研究实例,阐述了对软件产品家族领域分析的方法,实现了需求的复用。
1相关概念
1.1领域工程
领域是一组具有相似或相近软件需求的应用系统所覆盖的功能区域[2]。领域的概念规定了领域工程的研究范围,即在构造一个特定领域内的系统或者系统的某些部分时,以可重用方面的形式收集、组织并保存过去的经验的活动,以及在构造新系统时,提供一种充分的方法来重用这些资源。
领域工程过程实施与开发单个应用系统的软件工程过程(应用工程)不同,需依据一定的领域工程方法进行。较有影响的领域分析方法有:面向特征的领域分析方法FODA(Feature-Oriented Domain Analysis)、组织领域分析模型方法ODM(Organization Domain Modeling)及领域分析和设计过程(DADP)等[3]。面向特征的领域分析方法为领域分析定义了具体的过程和阶段,与其他方法相比具有较强的操作性。以下3个基本阶段刻画了FODA过程[3]:场景分析,定义进行分析的领域的区域(或边界);领域建模,提供一个对用软件表达的领域的问题空间的描述;构架建模,创造一个可以将解决方案实施到领域中具体问题的软件体系结构。
1.2 产品家族
产品家族是指一类共享体系结构属性、特征、代码、构件、中间件或者需求的软件产品。作为特殊的领域,产品家族主要强调产品所在家族的共性,并不限于特定的软件企业。共性是产品家族存在的基础,而家族内单个产品间的区别则属于变化性。因此,对软件产品家族进行领域分析,需要描述出家族内产品的共性和变化性。FODA方法用特征来对需求进行模块化组织,用特征和特征之间的关系来对整个产品领域进行建模。
1.3 特征和特征模型
特征的定义在领域工程中并不完全相同,一个比较完整的定义为:从需求规约的组织结构角度来看,特征提供了一种对需求的分割和组织方式,即以特征作为需求空间内的一阶实体,系统具有的特征及其相互关系构成了系统的需求空间[4]。
领域特征模型是面向特征的领域需求规约模型,通过记录领域具有的一组相对稳定的特征以及特征之间的关系反映整个领域的软件需求。它分为共性和变化性特征,其中共性特征表达领域内各成员系统的共有部分,变化性特征描述领域内部分成员系统的共有或特有部分。
2 面向特征的软件产品家族建模方法
本文在对高校设备预定管理产品家族进行领域建模时,以FODA为基础,把特征和特征模型的概念引入到领域分析模型中,用于表现领域需求,同时采用用例模型描述家族中的成员系统的变化性。
面向特征的产品家族领域分析的主要目标是获得领域分析模型以描述家族中产品的共性和变化性需求,包括场景模型、领域面向对象分析模型和特征模型3部分。其主要活动及过程如图1所示。
2.1领域场景分析
场景分析的目的是通过领域分析人员与用户、领域专家交互,分析已有的一组软件产品,给出一个软件产品家族范围的定义,确定软件系统族包括哪些应用。场景分析包括以下3个过程:定义领域的范围、确定与软件家族交互的操作者、建立领域字典。如果是第一次开发家族内的成员系统,没有可重用的软件产品家族需求,则需要由需求工程师和领域专家从历史、当前和未来的系统需求中确定系统家族的功能需求和质量需求。
2.2领域面向对象分析模型
在产品家族中,不同的应用系统由于其针对的商业目标或用户群不同,使得用户与系统之间的交互存在差异性。在为软件产品家族创建用例模型时,需要对现存系统的用例模型进行整合,将各用例模型中的公共部分抽取出来,作为用例模型中的共性部分;对于家族内单个产品具有的功能,进行分类筛选,作为用例模型的变化性部分,在单个用例图中加以描述。之后要对整个用例模型进行一致性、冗余性检查,最终得到包含共性和变化性需求的软件产品家族用例模型。
2.3特征模型
领域分析阶段特征模型主要根据领域用例模型而来的,领域用例模型描述的是领域的功能性需求,因而特征模型主要是由功能性特征组成。而一个功能在执行过程中表现出的行为特点,既可能是产品家族中所有系统的共性,也可能只是单个系统才具有的独特之处。
3应用实例
本文选取高校设备预定管理这一类共享软件需求的软件家族作为研究案例,应用面向特征的软件产品家族建模方法。
3.1领域范围
在高校教学中,大都或多或少地存在着教学设备和教学资源紧缺的问题。为了合理地利用现有教学资源,提高教学效率和教学资源的利用率,许多高校使用设备预定管理软件进行教学设备的预定和分配。这些系统具有相似的功能,即实现设备的预定/预约,方便用户或设备使用人员,实现设备使用的自动分配,因此可以定义为高校设备预定管理产品家族。这里的设备包括高校教学中使用的教学仪器、设备,以及教室、会议室、学术报告厅等教学资源。
3.2与软件家族交互的操作者
硬件方面包括数据传输局域网、服务器和客户端计算机。
软件方面包括Windows XP、SQL Server 2005、Microsoft.Net Framework 2.0。
系统使用者包括设备管理人员和设备使用人员。
软件复用被认为是解决软件危机、实现软件产业工业化生产方式的有效途径。软件产品家族方法即应用软件复用的相关原理和技术,把整个产品家族作为同一问题空间来看待的软件开发方法。研究和实践表明,通过应用软件复用技术,软件产品家族方法极大地节省了软件产品的开发成本和时间[1],因此软件产品家族方法也被认为是一种提高软件开发效率和控制软件复杂性的有效措施。
本文采用面向特征的领域分析方法,选取高校设备预定管理产品家族作为研究实例,阐述了对软件产品家族领域分析的方法,实现了需求的复用。
1相关概念
1.1领域工程
领域是一组具有相似或相近软件需求的应用系统所覆盖的功能区域[2]。领域的概念规定了领域工程的研究范围,即在构造一个特定领域内的系统或者系统的某些部分时,以可重用方面的形式收集、组织并保存过去的经验的活动,以及在构造新系统时,提供一种充分的方法来重用这些资源。
领域工程过程实施与开发单个应用系统的软件工程过程(应用工程)不同,需依据一定的领域工程方法进行。较有影响的领域分析方法有:面向特征的领域分析方法FODA(Feature-Oriented Domain Analysis)、组织领域分析模型方法ODM(Organization Domain Modeling)及领域分析和设计过程(DADP)等[3]。面向特征的领域分析方法为领域分析定义了具体的过程和阶段,与其他方法相比具有较强的操作性。以下3个基本阶段刻画了FODA过程[3]:场景分析,定义进行分析的领域的区域(或边界);领域建模,提供一个对用软件表达的领域的问题空间的描述;构架建模,创造一个可以将解决方案实施到领域中具体问题的软件体系结构。
1.2 产品家族
产品家族是指一类共享体系结构属性、特征、代码、构件、中间件或者需求的软件产品。作为特殊的领域,产品家族主要强调产品所在家族的共性,并不限于特定的软件企业。共性是产品家族存在的基础,而家族内单个产品间的区别则属于变化性。因此,对软件产品家族进行领域分析,需要描述出家族内产品的共性和变化性。FODA方法用特征来对需求进行模块化组织,用特征和特征之间的关系来对整个产品领域进行建模。
1.3 特征和特征模型
特征的定义在领域工程中并不完全相同,一个比较完整的定义为:从需求规约的组织结构角度来看,特征提供了一种对需求的分割和组织方式,即以特征作为需求空间内的一阶实体,系统具有的特征及其相互关系构成了系统的需求空间[4]。
领域特征模型是面向特征的领域需求规约模型,通过记录领域具有的一组相对稳定的特征以及特征之间的关系反映整个领域的软件需求。它分为共性和变化性特征,其中共性特征表达领域内各成员系统的共有部分,变化性特征描述领域内部分成员系统的共有或特有部分。
2 面向特征的软件产品家族建模方法
本文在对高校设备预定管理产品家族进行领域建模时,以FODA为基础,把特征和特征模型的概念引入到领域分析模型中,用于表现领域需求,同时采用用例模型描述家族中的成员系统的变化性。
面向特征的产品家族领域分析的主要目标是获得领域分析模型以描述家族中产品的共性和变化性需求,包括场景模型、领域面向对象分析模型和特征模型3部分。其主要活动及过程如图1所示。
2.1领域场景分析
场景分析的目的是通过领域分析人员与用户、领域专家交互,分析已有的一组软件产品,给出一个软件产品家族范围的定义,确定软件系统族包括哪些应用。场景分析包括以下3个过程:定义领域的范围、确定与软件家族交互的操作者、建立领域字典。如果是第一次开发家族内的成员系统,没有可重用的软件产品家族需求,则需要由需求工程师和领域专家从历史、当前和未来的系统需求中确定系统家族的功能需求和质量需求。
2.2领域面向对象分析模型
在产品家族中,不同的应用系统由于其针对的商业目标或用户群不同,使得用户与系统之间的交互存在差异性。在为软件产品家族创建用例模型时,需要对现存系统的用例模型进行整合,将各用例模型中的公共部分抽取出来,作为用例模型中的共性部分;对于家族内单个产品具有的功能,进行分类筛选,作为用例模型的变化性部分,在单个用例图中加以描述。之后要对整个用例模型进行一致性、冗余性检查,最终得到包含共性和变化性需求的软件产品家族用例模型。
2.3特征模型
领域分析阶段特征模型主要根据领域用例模型而来的,领域用例模型描述的是领域的功能性需求,因而特征模型主要是由功能性特征组成。而一个功能在执行过程中表现出的行为特点,既可能是产品家族中所有系统的共性,也可能只是单个系统才具有的独特之处。
3应用实例
本文选取高校设备预定管理这一类共享软件需求的软件家族作为研究案例,应用面向特征的软件产品家族建模方法。
3.1领域范围
在高校教学中,大都或多或少地存在着教学设备和教学资源紧缺的问题。为了合理地利用现有教学资源,提高教学效率和教学资源的利用率,许多高校使用设备预定管理软件进行教学设备的预定和分配。这些系统具有相似的功能,即实现设备的预定/预约,方便用户或设备使用人员,实现设备使用的自动分配,因此可以定义为高校设备预定管理产品家族。这里的设备包括高校教学中使用的教学仪器、设备,以及教室、会议室、学术报告厅等教学资源。
3.2与软件家族交互的操作者
硬件方面包括数据传输局域网、服务器和客户端计算机。
软件方面包括Windows XP、SQL Server 2005、Microsoft.Net Framework 2.0。
系统使用者包括设备管理人员和设备使用人员。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- TI Bluetooth®Mesh软件产品简介
- CC2340低功耗蓝牙软件产品简报
- ELLAB ValSuite® 软件产品目录
- 基于轻量级CNN等的恶意软件家族分类模型 20次下载
- 过程系统建模与仿真.pdf 0次下载
- 基于FLUX10.4软件的电机建模教程.pdf 13次下载
- 自适应软件动态过程时间特性建模 0次下载
- 基于ICONIX的嵌入式软件设计 0次下载
- 全球领先的自动化软件产品及应用案例 9次下载
- 综合航电领域元建模技术研究 0次下载
- 软件过程建模方法研究
- 优化模型与LINDO/LINGO优化软件
- 基于PSO和SVM的发酵过程建模与优化控制
- 软件可靠性建模研究
- 基于领域建模的数控系统代码生成技术
- 知识分享 | 轻松实现优质建模 78次阅读
- simulink常用模块有哪些 simulink模块执行顺序 2658次阅读
- 生产线仿真建模过程和优化方法 2010次阅读
- 软件建模原则包括哪些内容 1248次阅读
- 软件过程定义是什么 软件过程的要素包括哪些 1040次阅读
- CFD建模与仿真 4448次阅读
- Ansys Zemax光学设计软件产品概述 1370次阅读
- 形式化建模(一) 1198次阅读
- 如何利用工具模板快速对TSV阵列进行建模 1663次阅读
- 多学科仿真集成与优化设计软件产品介绍 2741次阅读
- 详谈黑盒测试用例设计 2797次阅读
- 最流行的uml建模工具有哪些 2.7w次阅读
- 大型软件的功能测试流程及性能测试流程 1.3w次阅读
- 灯泡建模小技巧 7647次阅读
- 什么是软件测试环境_软件测试环境有哪几种_做软件测试要用到什么工具 4.8w次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多