按照重要活动是否跨越相似性较小少的多个应用领域,软件重用可区别为横向和纵向重用。横向重用(horizontalreuse)是指重用不同应用领域中的软件元素,例如数据结构、分类算法、人机界面构件等。标准函数库是一种典型的、原始的横向重用机制。纵向重用是指在一类具有较多公共性的应用领域之间进行软部件重用。因为在两个截然不同的应用领域之间实施软件重用的潜力不大,所以纵向重用才广受瞩目,并成为软件重用技术的真正所在。不难理解纵向重用活动的主要关键点即是域分析;根据应用领域的特征及相似性预测软部件的可重用性。一旦根据域确认了软部件的重用价值,机可进行软部件的开发并对具有重用价值的软部件进行一般化,以便它们能够适应新的类似的应用领域。然后,软部件及其文档即可进入软部件库,成为可供后续开发项目使用的可重用资源。这些部件构成软部件构造活动。显然,它是一个软部件不断积累、不断完善的渐进过程。随着软部件的不断丰富,软部件库的规模会不断扩大,因此,库的组织结构将直接影响软部件的检索效应,特别是当检索手段并不局限于标准函数库所采用的简单名字匹配方法时。可供侯选的软部件从库中别检索出来以后,用户还必须理解其功能及行为,以判别它是否真正适用于当前项目。必要时可考虑对某个与期望的功能/行为匹配程度最佳的软部件进行稍许修改,甚至可以将修改后的软部件加进软部件以替代原有软部件。当然,这要求修改后的软部件比原有软部件具有更高的重用价值。上述软件重用方法的图示见下图。 |
相关推荐
软件体系结构在软件重用中有着特殊的意义。反射机制在代码重用方面取得了成功,但还没有用于软件体系结构及其组成元素的重用。提出了一种支持软件体系结构设计时重用的反射机制,概述了基于反射机制的软件体系结构...
C++代码设计与重用是关于如何编写高效可重用代码的重要话题,它对于提高软件开发效率和软件质量具有重要意义。本书《C++代码设计与重用》由Martin D. Carroll和Margaret A. Ellis合著,是一本深受业界推崇的技术书籍...
### 软件工程与软件过程控制 #### 第一章:软件工程概述 **软件工程定义:** 软件工程是一门研究如何以系统化、规范化、可度量的方法开发和维护软件的学科。它旨在提高软件开发的质量、效率和可靠性。 **软件工程...
软件重用通常指的是将软件开发过程中的一些成果,如成功的设计经验、技术或知识,以设计模式的形式抽象化,并在类似环境和条件下重新应用这些模式。通过这种方式,可以减少重复劳动,缩短开发周期,提高开发效率,并...
17.1.2 软件重用的过程与意义 软件重用的过程包括软部件的开发、一般化、入库以及检索和评估。通过域分析确定软部件的重用价值,然后进行开发和一般化处理,使其适应新应用领域。软部件库的管理和检索机制对于重用...
在C++编程中,代码设计与重用是核心概念,它们对提高软件质量和开发效率具有重要意义。首先,代码设计是指规划和构建程序结构的过程,它涉及类的设计、模块划分、接口定义等。良好的代码设计应遵循单一职责原则(SRP...
**定义**: 软件重用(Software Reuse)是指将已经存在的软件元素不经修改或者稍加修改后重复应用于新的软件系统中的一种方法。它是提高软件开发效率、降低成本、确保软件质量的重要手段之一。 **分类**: - **知识...
"关于面向软件测试过程的知识管理方法的研究与实现" 本文旨在研究和实现面向软件测试过程的知识管理方法,以提高软件测试组织的整体测试水平。为了解决软件测试过程中的知识管理问题,本文首先提出了软件测试领域...
软件重用是降低开发成本和提高效率的关键,它涉及在不同项目中重复使用相同的或相似的软件元素。软件体系结构不仅描述了系统的组织结构和拓扑结构,还揭示了需求与构成系统元素之间的对应关系,为设计决策提供了基础...
- **目标**:提升软件的可靠性、可维护性和可重用性等,以提高软件开发的效率和质量。 - **特点**: - 规范性:采用标准化的流程和方法。 - 工程性:将软件开发视为一个工程项目来管理。 - 实践性:重视实践...
从整体来看,该平台的设计与实现具有较高的实用价值和应用前景,它不仅解决了仿真资源重用度低和仿真执行效率低的问题,而且为仿真技术的发展提供了新的思路和工具,对工程仿真领域具有重要意义。
基于设计重用的机构计算机辅助设计(CAD)研究,涉及如何在计算机辅助设计领域内实现设计过程的优化与创新。本研究在现有CAD技术基础上,针对机构设计的需求,提出了一系列与设计重用相关的模型、策略和关键技术。 ...
度量类型包括样本过程度量和样本产品度量,分别关注过程和产品的属性,如开发时间、测试数量、系统规模、模块重用率等。 软件度量的目的是为了评估、评价和预测,例如通过缺陷密度来衡量软件质量,通过成本效益分析...
总之,面向软件测试过程的知识管理方法的研究与实现对于提升软件测试行业的专业水平和创新能力具有重要意义。通过有效的知识管理,可以积累和传承组织智慧,降低风险,提高软件产品的质量和可靠性。
【计算思维和软件工程中的方法论意义】 计算思维与软件工程是信息技术领域的核心概念,它们在解决问题和构建软件系统时起着至关重要的作用。关注点分离(Separation of Concerns, SoC)作为一项基本的方法论原则,...
"软件工程标准化和软件文档" 软件工程标准化是指在软件开发和维护过程中,遵守一定的规则、...软件工程标准化和软件文档是软件开发和维护过程中的重要组成部分,对于提高软件的质量、可靠性和可维护性具有重要的意义。
软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程,包括代码重用、设计重用、需求重用和软件体系结构重用等。 软件体系结构是早期设计决策的体现,代表了系统的公共的高层次的抽象。...