×

结合面向对象和构件化技术的领域需求分析方法

消耗积分:1 | 格式:rar | 大小:0.4 MB | 2017-10-27

分享资料个

软件的可复用性是人们评价一个软件系统的重要指标。软件复用是提高软件生产效率与质量的一种有效途径,它可以通过软件中的可复用构件(reusable component)来实现,即通过集成已有的构件来创建新系统。以领域分析为基础的特定领域复用(Domain-Specific Reuse)是提高软件复用水平的重要途经之一。将目标集中在一个特定应用领域中实现软件复用,从构件的开发到构件的存储与管理都比较容易。本文对结合面向对象、FODA方法和构件化思想的领域分析方法进行了初步探索,提出了构件化的领域分析方法,从而为在软件开发的前期阶段实现构件化开发,更加有效地实现软件复用提供了指导。
  1 相关理论
  1.1 软件复用
  软件复用是指重复使用“为了复用目的而设计的软件”的过程。软件复用是在软件开发中避免重复劳动的解决方案,其出发点是应用系统的开发不再采用一切“从零开始”的模式,而是以已有的工作为基础,充分利用过去应用系统开发中积累的知识和经验,如:需求分析结果、设计方案、源代码、测试计划及测试案例等,从而将开发的重点集中于应用的特有构成成分。
  与软件复用相关的两个基本开发活动是面向复用的开发和基于复用的开发,前者是生产可复用构件的过程,后者是利用现有的可复用构件生产新系统的过程。它们分别对应领域工程和应用工程,处理好它们之间的关系,才能实现真正成功的软件复用。
  1.2 领域工程
  领域工程是为一组相似或相近系统的应用工程建立基本能力和必备基础的过程,它覆盖了建立可复用的软件构件的所有活动。其中“领域”是指一组具有相似或相近软件需求的应用系统所覆盖的功能区域。
  领域工程是创建可复用构件的过程,其核心思想是:应用模式领域化,问题抽象通用化,软件元素重用化,开发过程工程化。实施领域工程的过程可以分为以下三个主要的阶段:
  (1)领域分析:目标是获得领域模型。
  (2)领域设计:目标是获得DSSA(特定领域软件体系结构)。
  (3)领域实现:主要任务是依据领域模型和DSSA开发、组织可重用构件。
  需要特别指出的是,领域工程的三个基本阶段所描述的过程是一个反复的、逐渐求精的过程。在实施领域工程的每个阶段中,都可能返回到以前的步骤,对以前得到的结果进行修改和完善,再回到当前步骤,在新的基础上实施本阶段的过程。
  1.3 面向特定领域的软件开发
  与领域工程相对的是开发单个应用系统的软件工程的过程,称为应用工程。
  在应用工程中,软件开发人员的任务是针对一组特定的需求产生一组特定的设计和实现。与此相对,在领域工程中,领域工程人员的基本任务是对一个领域中的所有系统进行抽象。领域工程的各个阶段主要是对应用工程中相应阶段产品的抽象,领域工程又对本领域中新系统的开发提供支持。在CBSE思想的指导下,基于构件的应用工程实际上是构件的组装过程。构件(Component)是指应用系统中可以明确辨识的构成成分。而可复用构件是指具有相对独立的功能和可复用价值的构件。随着对软件复用理解的深入,构件的概念已不再局限于源代码构件,而是延伸到需求、系统和软件的需求规约、系统和软件的构架、文档、测试案例和数据以及其他对开发活动有用的信息。这些可复用软件构件通过领域工程获得,作为应用工程开发的基本元素。
  在开发实际的应用系统时,将领域工程与应用工程相结合,可以快速、有效地开发出用户满意的系统。两者相结合的软件开发模型如图1所示。
  结合面向对象和构件化技术的领域需求分析方法
  通过以上讨论可以看到,在面向领域的软件开发过程中,领域模型的建立是软件开发的基础。当开发同一领域的新系统时,可根据领域分析确定新应用的需求规约,以此来指导贯穿于整个开发的设计与组装。因此领域分析的成功与否,对今后的开发具有举足轻重的作用。领域分析的成功复用,可以从更抽象的层次实现软件复用。
  1.4 领域分析
  所谓领域分析(DA)就是在系统分析之前,分析、研究有关应用领域特性的活动。它是发现和记录某个领域各系统的共性和差异的过程,是系统化、形式化、有效复用的关键。通过领域分析,相似系统的公共特性将被提取,适用于该领域所有公共的、基本的对象、操作也将被标志出来,并且可通过定义模型描述它们之间的关系。领域分析的目标就是获得领域模型。领域模型(Domain Model)是领域中各系统的共同需求的描述。它描述了领域内系统需求上的共性。
  1.4.1 FODA方法与特征模型
  FODA对领域分析过程进行了完整的描述,特征概念是FODA方法的核心。所谓特征是指系统中的属性和特点,按特征在领域中的可选性及特征间的相互关系可分为三类:
  (1)强制性特征:必须被选择的特征。
  (2)可选特征:从0到n个可供选择的特征。
  (3)可替换特征:至少有一个被选择的特征。
  按特征的内容也可分为三类:
  (1)功能相关:系统所作的事情。
  (2)环境相关:系统是如何被使用的,变化点的原因。
  (3)表示相关:系统信息是如何被用户所观察的或者是如何被相关应用所获得的。
  特征模型通过使用抽象和细化的机制对领域中不同应用的所有特征进行了分类,从而提供了关于领域体系结构和可复用构件的高层视图。特征模型可作为应用开发者的地图,当应用开发者面对庞杂的Use Case模型或者其他模型时,特征模型提供了关于哪些是可选的、哪些是可合并的信息。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !