欢迎来到天天文库
浏览记录
ID:21735979
大小:107.00 KB
页数:17页
时间:2018-10-24
《软件复用标准》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、软件复用标准简介摘要实践证明,软件复用可以有效地提高软件的质量和生产率,它包括开发可复用软件构件和基于可复用构件的开发两个生命周期。在这两个生命周期中,采用一个适当的标准以识别和开发可复用软件将大大促进软件复用的实践。为此,NATO(北大西洋公约组织)制定了一整套软件复用的指导性标准,以帮助NATO及其参与国和承包商的项目管理部门进行有效的软件复用。这套标准包括《可复用软件构件开发指南》、《可复用软件构件库管理指南》和《软件复用过程指南》三个文档,分别从软件生命周期的各个阶段对软件复用进行了指导和帮助。关键词:NATO
2、,软件复用,可复用构件开发,构件库管理,复用过程一、前言1.背景与目的自从McIlroy在1968年的NATO软件工程会议上正式提出软件复用的概念以来,软件复用已有了近三十年的发展历程,复用的对象也从早期的代码复用扩展到对软件开发过程中一切有价值的信息的复用,包括需求、需求规约、设计、源代码、测试计划和测试案例等。近三十年的实践证明,软件复用可以有效地提高软件的质量和生产率,是解决当前“软件危机”的一条比较现实可行的途径。软件复用包括开发可复用软件构件和基于可复用构件的开发两个生命周期。在这两个生命周期中,采用一个适当
3、的标准以识别和开发可复用软件将大大促进软件复用的实践。为此,NATO(北大西洋公约组织)制定了一整套软件复用的指导性标准,以帮助NATO及其参与国和承包商的项目管理部门进行有效的软件复用。这套标准包括《可复用软件构件开发指南》、《可复用软件构件库管理指南》和《软件复用过程指南》三个文档,分别从软件生命周期的各个阶段对软件复用进行指导,以便最大限度地减少复用代价和增加复用收益。青鸟工程是国家“九五”重点科技攻关项目,其中研究的主要内容之一便是软件复用和软件构件技术。为了吸收和利用国外软件复用的最新研究成果,我们对国际上相
4、关研究和实践工作进行了深入分析,以期能拓宽思路,取长补短,使我们的工作能和国际主流接轨。本文便是对NATO软件复用标准的总结和介绍,希望能为国内相关工作的进展和相关的软件从业人员起到一个借鉴和参考的作用。2.本文的组织本文的第二章介绍了NATO标准中出现的一些复用的基本概念,以便使读者能对NATO的软件复用框架有一个大致的了解。第三章是NATO的可复用构件开发标准,它的目的是为创建具有最大复用潜力的软件产品提供指导。第四章是NATO的可复用软件构件库管理标准,目的是为建立和管理NATO控制的软件资源复用库提供指导。第五
5、章是NATO的软件复用过程标准,目的是为有意使用NATO复用库中的可复用软件构件进行复用实践的软件项目提供指导。第六章是对这三个标准的总结。二、复用的基本概念软件复用可以有效地节省软件开发成本,提高软件质量。本章介绍了在本文后面用到的复用的基本术语和概念,并解释了制定这套标准的实际目的,为读者理解软件复用的收益和挑战提供了一个参考性的框架。1.有关的术语定义下面是这套标准中使用的关键术语的简要定义:复用(Reuse)—在一个新的语境(context)中(同一系统的其它地方或另一个系统中)使用已有的软件构件。可复用性(R
6、eusability)—软件构件可以被复用的程度或范围(extent)。遵循一个适当的设计和编码标准将增强构件的可复用性。可复用软件构件(RSC)—可以被复用的软件实体;它可以是设计、代码或软件开发过程的其它产品。RSCs有时称为“软件资产”(softwareassets)。复用者(Reuser)—复用RSC的个人或组织。可移植性(Portability)—原来在一台计算机和操作系统上开发的软件构件可以在另一台计算机和(或)操作系统上使用的程度。若构件可移植性好,则它的复用潜力就大。领域(Domain)—指一类相关的软
7、件应用。领域有时可划分为“垂直的”(vertical)和“水平的”(horizontal)。“垂直的”领域包括某个应用范围内的所有开发层次(如MIS领域),而“水平的”领域则指一种特定类型的、不限于某类应用的软件过程(如对堆栈的操作)。一般来说,构件在同一个领域中复用的潜力较大。领域分析(Domainanalysis)—对一个选定的领域进行分析以标识出其中通用的结构和功能,目的是提高复用的潜力。构件库(Library)—可复用软件构件的集合,包括向用户提供构件时所需的过程和功能。检索系统(Retrievalsystem
8、)—支持可复用软件构件分类和检索的自动化工具。软件生命周期(Softwarelifecycle)—软件系统在开发和配置时所经历的一系列阶段。尽管不同项目在具体阶段上会有差别,但通常都会包括下列阶段:需求分析、设计、编码、测试和维护。2.复用的优越性软件复用可以提高软件生产率并减少开发代价,还可以提高软件系统的质量。具体来说,可以归
此文档下载收益归作者所有