Abstract
Systems with artificial intelligence components, so-called AI-based systems, have gained considerable attention recently. However, many organizations have issues with achieving production readiness with such systems. As a means to improve certain software quality attributes and to address frequently occurring problems, design patterns represent proven solution blueprints. While new patterns for AI-based systems are emerging, existing patterns have also been adapted to this new context. The goal of this study is to provide an overview of design patterns for AI-based systems, both new and adapted ones. We want to collect and categorize patterns, and make them accessible for researchers and practitioners. To this end, we first performed a multivocal literature review (MLR) to collect design patterns used with AI-based systems. We then integrated the created pattern collection into a web-based pattern repository to make the patterns browsable and easy to find. As a result, we selected 51 resources (35 white and 16 gray ones), from which we extracted 70 unique patterns used for AI-based systems. Among these are 34 new patterns and 36 traditional ones that have been adapted to this context. Popular pattern categories include "architecture" (25 patterns), "deployment" (16), "implementation" (9), or "security & safety" (9). While some patterns with four or more mentions already seem established, the majority of patterns have only been mentioned once or twice (51 patterns). Our results in this emerging field can be used by researchers as a foundation for follow-up studies and by practitioners to discover relevant patterns for informing the design of AI-based systems.
Abstract (translated)
最近,具有人工智能成分的系统,也就是所谓的AI-based系统,引起了广泛关注。然而,许多组织在与此类系统实现生产准备方面遇到了问题。作为改善某些软件质量属性并解决经常出现的问题的手段,设计模式代表了已经证明的解决方案蓝图。尽管AI-based系统的新设计模式正在涌现,但现有模式也已经被适应到这个新环境中。本研究的目标是提供AI-based系统设计模式的新和适应模式的全面概述。我们希望收集和分类模式,使其为研究人员和从业者所可用。为此,我们首先进行了多项式文献综述(MLR),以收集与AI-based系统使用的设计模式。然后,我们将创建的模式集合集成到一个在线模式存储库中,以使其易于搜索。因此,我们选择了51个资源(35个白色和16个灰色),从中提取了70个用于AI-based系统的独特的设计模式。其中包括34个新的设计和36个传统的适应此环境的模式。流行的模式类别包括“建筑”(25个模式)、“部署”(16个)、“实现”(9个)或“安全和安全”(9个)。尽管一些模式已有四个或更多提及,但大多数模式只被提及一次或两次(51个模式)。在我们这个新兴领域的结果可以被用作后续研究的基线,并被用作开发人员发现相关模式以指导AI-based系统的设计和开发。
URL
https://arxiv.org/abs/2303.13173