Abstract
This paper proposes a new design pattern, named Scoreboard , dedicated for applications solving complex, multi-stage, non-deterministic problems. The pattern provides a computational framework for the design and implementation of systems that integrate a large number of diverse specialized modules that may vary in accuracy, solution level, and modality. The Scoreboard is an extension of Blackboard design pattern and comes under behavioral type. The pattern allows for an integration of multimodal results, employing early, and/or late fusion paradigms. Additionally, it provides a framework for the evaluation of the modules, dealing with inconsistency and low accuracy. In this paper, the Scoreboard design pattern is described with the standard meta-data model, followed by a sample implementation. This paper also provides the evaluation results based on experiments and a case study. The evaluation results confirmed the robustness, modularization, ease of integration, efficiency, and adaptability of the solutions with the Scoreboard pattern in comparison with the Blackboard pattern and “no pattern” condition. This paper provides also a case study of Scoreboard application in an integration of emotion recognition results. There are certain complex problems in modern software engineering which require multi-stage, multi-party, multi-modal solutions, and non-deterministic control strategies. Among those are natural language processing, image processing, and emotion recognition, to name just a few. The proposed Scoreboard pattern might be used in the software addressing the problems, especially in research systems that explore large solution spaces and require runtime decisions on execution order.
Highlights
Patterns have been introduced in the field of software architecture by Christopher Alexander, who documented reusable architectural solutions that provide good quality designs [1]
The affective computing application area is the one that the Scoreboard pattern originated from, when we have struggled for greater reuse and flexibility of the emotion recognition software, we realized that with time we developed a more general solution to be applied in multiple systems design
The new Scoreboard pattern apart from instances of Experts, Blackboard and Controller is extended with 3 classes: Scoreboard, Moderator as a subclass of Expert class and an Arbiter
Summary
Patterns have been introduced in the field of software architecture by Christopher Alexander, who documented reusable architectural solutions that provide good quality designs [1]. A design pattern documents a good practice in software engineering that provides a defined effect on quality attributes. A pattern has four essential elements: the pattern name that is a handle we can use, the problem that describes when to apply the pattern, the solution that describes the elements that make up the design, their relationships, responsibilities, collaborations and the consequences as well as trade-offs of applying the pattern [2]. Multiple design patterns were defined in last two decades and modern research focuses on exploring the consequences and trade-offs they imply [3]–[6]
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.