{"title":"Towards a pattern language for construction and maintenance of software architecture traceability links","authors":"M. Javed, S. Stevanetic, Uwe Zdun","doi":"10.1145/3011784.3011810","DOIUrl":"https://doi.org/10.1145/3011784.3011810","url":null,"abstract":"The documentation of software architecture traceability links is the foundation for many important architecture management activities, such as verification and validation, reuse evaluation and impact analysis. In practice, the construction and maintenance of traceability links is mostly manual, which is labor-intensive and error prone. Although the costs of manual traceability in terms of the time, effort and money required can be mitigated by automated construction, the completeness and correctness of traceability links tends to be negatively affected by automation in their creation and maintenance. This paper presents a pattern language for construction and maintenance of software architecture traceability links to requirements and source code. As a foundation for deriving the pattern language, we have performed systematic literature reviews, investigations of traceability links for multiple open-source software systems, and empirical studies. In particular, we studied the nature of the software architecture traceability phenomenon and its driving factors and impacts, as well as the methods that provide the means to control software architecture traceability. The derived pattern language provides support for addressing multiple decision categories for construction and maintenance of software architecture traceability links. To illustrate the patterns, their application is shown in the context of constructing and maintaining traceability links for an open source framework for mobile games.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114889761","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Knowledge profiles of employees","authors":"E. Gourova, M. Dragomirova, Kostadinka Toteva","doi":"10.1145/3011784.3011795","DOIUrl":"https://doi.org/10.1145/3011784.3011795","url":null,"abstract":"It is widely acknowledged that the knowledge and skills of individuals directly affect the ability of organisations to innovate and to provide quality end-products or services, thus, gaining competitive benefits and higher revenues [1], [2], [3]. However, it is difficult to manage knowledge as it resides in human minds. Many efforts have been made for capturing tacit knowledge of employees and making it available in knowledge management systems, however, the initial failures have resulted in applying more \"soft tools\" (e.g. creativity and group facilitation techniques) and supporting communication and knowledge sharing among employees [12], [13]. Subsequently, for finding expertise in organisations are proposed techniques for visualising knowledge sources (e.g. yellow pages, skills maps, etc.) [4], [12]. This paper extends the patterns discussed at VikingPLoP 2014 and EuroPLoP 2015 in the area of Knowledge Management Systems design. Its goal is to present a pattern related to Info-Structure design [8], and more specifically focused on knowledge profiles of employees.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"115 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124713244","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Experience paper about application of enterprise integration patterns in an industry context","authors":"Victor Sauermann","doi":"10.1145/3011784.3011787","DOIUrl":"https://doi.org/10.1145/3011784.3011787","url":null,"abstract":"Integration of applications extends existing software solutions and enables a new potential of business cases. But integration of legacy applications, originally not designed for intense combinations, is always a challenging task. In this experience paper I report on a pattern-based approach how we started to enable integration scenarios within our software portfolio. We used the patterns within the pattern language \"Enterprise Integration Patterns\" [EIP] as core of our final solution to integrate existing applications. This article describes the part of interaction between external systems and our portfolio and is therefore of interest for software architects responsible for modernizing legacy applications.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129603438","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The star pattern: representing domain concepts in a uniform way","authors":"Thomas Slotos","doi":"10.1145/3011784.3011792","DOIUrl":"https://doi.org/10.1145/3011784.3011792","url":null,"abstract":"This software architecture pattern describes how to set up an information system's architecture by using 'business components' and their 'representational connectors' that, together, form the Star pattern. The pattern allows the separation of business concerns from technology. The various representational connectors, which allow external systems to interact with a business component, are both non-invasive and loosely coupled to the business domain. These characteristics of the Star pattern support highly exchangeable interconnectivity channels. How the separation between a \"business component\" and its \"representational connectors\" can be established is described by using a linguistic view for how an information systems architecture can be structured.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115261598","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
T. Rauter, Andrea Höller, Johannes Iber, Christian Kreiner
{"title":"Static and dynamic integrity properties patterns","authors":"T. Rauter, Andrea Höller, Johannes Iber, Christian Kreiner","doi":"10.1145/3011784.3011798","DOIUrl":"https://doi.org/10.1145/3011784.3011798","url":null,"abstract":"Integrity is a crucial property in current computing systems. Due to natural or human-made (malicious and non-malicious) faults this property can be violated. Therefore, many methodologies and patterns that check or verify the integrity of systems or data have been introduced. However, integrity as a property cannot be identified directly. Existing methodologies tackle this problem by identifying other, computable, properties of the system and use a policy that describes how these properties reflect the integrity of the overall system. It is thus a critical task to select the right properties that reflect the integrity of a system in such a way that given integrity requirements are met. To ease this process, we introduce two new patterns, Static Integrity Properties and Dynamic Integrity Properties to classify the properties. Static Integrity Properties are used to ensure the integrity of a component prior it's use (e.g., the integrity of an executable binary), while Dynamic Integrity Properties are used to ensure the integrity of a component during run-time (e.g., properties that reflect the component's behavior or state transitions). Based on an exemplary embedded control system, we show typical use cases to help the system or software architect to choose the right class of integrity properties for the targeted system.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114663060","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Major variants of the SIS architecture pattern for collective intelligence systems","authors":"Angelika Musil, Jürgen Musil, S. Biffl","doi":"10.1145/3011784.3011818","DOIUrl":"https://doi.org/10.1145/3011784.3011818","url":null,"abstract":"Collective Intelligence Systems (CIS), such as social networking services, wikis, and media sharing platforms, access and harness the collective knowledge of connected people by providing a web-based environment to share, distribute, and retrieve topic-specific information in an efficient way. In order to design well-tailored CIS, software architects need a complete understanding about (1) architectural principles that all kinds of CIS have in common, and (2) system variants in the field. Thus to provide consolidated systematic knowledge of architectural commonalities and variations in the CIS domain, we present in this work five major pattern variants of CIS. We investigated a number of CIS in the field with focus on a detailed survey of existing variants among key architecture-significant principles based on previously identified basic concepts, principles, and characteristics of software architectures that all CIS have in common. The variants are identified along two dimensions with respect to the relationship between the key elements of artifacts and actor records across and within two layers of the system.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126137460","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Robin Knote, Harun Baraki, Matthias Söllner, K. Geihs, J. Leimeister
{"title":"From requirement to design patterns for ubiquitous computing applications","authors":"Robin Knote, Harun Baraki, Matthias Söllner, K. Geihs, J. Leimeister","doi":"10.1145/3011784.3011812","DOIUrl":"https://doi.org/10.1145/3011784.3011812","url":null,"abstract":"Ubiquitous Computing describes a concept where computing appears around us at any time and any location. Respective systems rely on context-sensitivity and adaptability. This means that they constantly collect data of the user and his context to adapt its functionalities to certain situations. Hence, the development of Ubiquitous Computing systems is not only a technical issue and must be considered from a privacy, legal and usability perspective, too. This indicates a need for several experts from different disciplines to participate in the development process, mentioning requirements and evaluating design alternatives. In order to capture the knowledge of these interdisciplinary teams to make it reusable for similar problems, a pattern logic can be applied. In the early phase of a development project, requirement patterns are used to describe recurring requirements for similar problems, whereas in a more advanced development phase, design patterns are deployed to find a suitable design for recurring requirements. However, existing literature does not give sufficient insights on how both concepts are related and how the process of deriving design patterns from requirements (patterns) appears in practice. In our work, we give insights on how trust-related requirements for Ubiquitous Computing applications evolve to interdisciplinary design patterns. We elaborate on a six-step process using an example requirement pattern. With this contribution, we shed light on the relation of interdisciplinary requirement and design patterns and provide experienced practitioners and scholars regarding UC application development a way for systematic and effective pattern utilization.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129780289","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A time sort filing system pattern","authors":"S. Holtel","doi":"10.1145/3011784.3011802","DOIUrl":"https://doi.org/10.1145/3011784.3011802","url":null,"abstract":"Knowledge workers share a common pain. They need paper artifacts and must store them, usually running a subject-based filing system. The Noguchi Filing System (NFS) instead offers a frequency-of-access alternative. It organizes by using and automatically optimizes itself that puts most required documents closest to hand. Every document is placed in an envelope that is dropped vertically on a shelf. The least recently used item moves to the beginning of a queue of envelopes. This procedure eliminates the need to initiate and maintain an organizing scheme of labels. Any artifact can be retrieved fast and replaced without additional cognitive effort. NFS creates a self-maintaining archive of seldom-used files (they slowly wander to the right), and present those often used together (they wait at the left end). Primary sources for NFS are only available in Japanese, secondary sources in other languages are mainly spread on the Internet. This is the first major attempt to collect definitions, explanations, and experiences, and put them together in a consistent way. All information available about NFS is arranged in a format of a single pattern. It should act as a unique source of information for any knowledge worker who wants to benefit from NFS.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130088427","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
J. Bergin, Christian Kohls, C. Köppe, Y. Mor, M. Portier, Till Schümmer, S. Warburton
{"title":"Student's choice of assessment","authors":"J. Bergin, Christian Kohls, C. Köppe, Y. Mor, M. Portier, Till Schümmer, S. Warburton","doi":"10.1145/3011784.3011808","DOIUrl":"https://doi.org/10.1145/3011784.3011808","url":null,"abstract":"Assessment, be it formative, summative or diagnostic, is at the heart of all educational endeavour yet many university teachers are not trained in assessment strategies and the underlying principles. Assessment should be fair and relevant for the targeted learning outcomes and engage the learner in a process of reflection that develops increased self-awareness. Patterns as descriptions of tested ways of action can help (university) teachers in achieving these goals, as teachers are not always trained in these specific aspects of education. In this paper we will present six patterns that take the diversity of students into account by offering choice and variety of assessment. The six patterns presented in this paper have been mined by a group of practicing educators during the first EduPLoP workshop held in March 2015 and build upon three earlier pattern sets.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124120960","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A collection of patterns for prime generation","authors":"T. Joven, J. C. Ciria","doi":"10.1145/3011784.3011799","DOIUrl":"https://doi.org/10.1145/3011784.3011799","url":null,"abstract":"The search for prime numbers is, unarguably, one of the most important problems in computational number theory. In addition to its intrinsic theoretical interest, research on the subject has been spurred by the compelling need for security in the digital world. A collection of patterns which aims at solving the problem is proposed. This paper can be used for educational purposes, allowing students to become acquainted with the Mathematics and Algorithmics regarding the search of primes, as well as with the notion and use of patterns.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-07-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131841825","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}