During the development and maintenance of software-intensive products or services, we depend on various assets. These assets are important to the feasibility of the project and influence the product's final quality. However, despite their central role in the software development process, little thought is yet invested into what assets eventually are, often resulting in many terms and underlying concepts being mixed and used inconsistently. A precise terminology of assets and related concepts, such as asset degradation, are crucial for setting up a new generation of cost-effective software engineering practices. In this position paper, we critically reflect upon the notion of assets in software engineering. As a starting point, we define the terminology and concepts of assets and extend the reasoning behind them. We explore assets' characteristics and discuss what asset degradation is as well as its various types and the implications that asset degradation might bring for the planning, realisation, and evolution of software-intensive products and services over time. With our work, we aspire to contribute to a more standardised definition of assets in software engineering and foster research endeavours and their practical dissemination in a common, more unified direction.
翻译:在开发和维护软件密集型产品或服务期间,我们依赖各种资产。这些资产对于项目的可行性很重要,影响产品的最终质量。然而,尽管这些资产在软件开发过程中起着中心作用,但对最终资产是什么却没有多少考虑,往往造成许多术语和基本概念的混合,而且使用不连贯。资产和相关概念的精确术语,如资产退化,对于建立新一代成本效益高的软件工程实践至关重要。在本立场文件中,我们批判地思考软件工程资产的概念。作为一个起点,我们界定了资产的术语和概念,并扩大了其背后的推理范围。我们探讨资产特征,讨论资产退化及其各种类型,以及资产退化可能给软件密集型产品和服务的规划、实现和演变带来的长期影响。通过我们的工作,我们希望能促进软件工程资产更标准化的定义,促进研究工作及其在共同、更统一的方向上的实际传播。