{"title":"Pattern-oriented approaches for design-based research in collaborative research projects: a knowledge maturing perspective","authors":"Christine Kunzmann, Andreas P. Schmidt, J. Pirker","doi":"10.1145/3011784.3011805","DOIUrl":"https://doi.org/10.1145/3011784.3011805","url":null,"abstract":"Design-based research has become increasingly popular in collaborative cross-disciplinary research projects. Based on the experience in several European research projects, this research methodology allows for more agile research approaches. However, it is still a challenge to turn design experiences into a sound body of evidence that can be transferred to future design problems. In this paper, we want to describe an approach to collaborative research projects that extends design-based research with the use of design patterns. We particularly focus on how emergent knowledge can be captured as proto-patterns, how the knowledge develops along the research process, and how such projects can be geared towards pattern outcomes. Towards that end, we present a pattern maturing process describing phases of pattern development that is based on knowledge maturing phase model.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"90 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":"116940135","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}
Andreas Daniel Sinnhofer, F. J. Oppermann, Klaus Potzmader, Clemens Orthacker, C. Steger, Christian Kreiner
{"title":"Patterns to establish a secure communication channel","authors":"Andreas Daniel Sinnhofer, F. J. Oppermann, Klaus Potzmader, Clemens Orthacker, C. Steger, Christian Kreiner","doi":"10.1145/3011784.3011797","DOIUrl":"https://doi.org/10.1145/3011784.3011797","url":null,"abstract":"Nowadays, cyber-physical systems (CPS) are omnipresent in our daily lives and are increasingly used to process confidential data. While the variety of portable devices we use excessively at home and at work is steadily increasing, their security vulnerabilities are often not noticed by the user. Therefore, portable devices such as wearables are becoming more and more interesting for adversaries. Additionally, the increasing functionalities like internet capabilities, cameras, microphones, GPS trackers and other senor devices make them an interesting target for hacking. Furthermore, such CPS devices are often deployed in unsupervised and untrusted environments raising the question about privacy and security to a crucial topic. Thus, a robust and secure software design is required for the implementation of cryptographic communication protocols and encryption algorithms. In our opinion, Software-Patterns have proven to be an efficient way to support the development of such systems. Therefore, we will present patterns for solving the issue of Man-in-the-middle attacks. The presented patterns provide generic guidance on how to establish secure communication channels based on symmetric and / or asymmetric cryptography. Further, a selection graph is presented which helps to find the appropriate pattern in a specific context.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"6 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":"123326742","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":"Patterns for identification of trust concerns and specification of trustworthiness requirements","authors":"N. Mohammadi, M. Heisel","doi":"10.1145/3011784.3011819","DOIUrl":"https://doi.org/10.1145/3011784.3011819","url":null,"abstract":"Software systems enable performing today's complex business processes. Considering trustworthiness requirements in accordance to trust concerns of the end-users during the development of software systems is a critical issue. Particularly challenging are the cross-disciplinary factors that affect trust of the end-users. Furthermore, expertise in domain and requirements analysis are also required. The problem is even more complex considering current advances in technologies like cloud computing, because of the high distribution, huge amounts of data flows, and a large number of involved participants. It is essential for building a trustworthy software system to elicit and analyze trustworthiness requirements. Documenting these trustworthiness requirements along the other requirements that can achieve the construction of a trustworthy system requires eliciting and documenting the trustworthiness-related domain knowledge. Using goal and business process models, gained domain knowledge can be refined into functional or non-functional requirements for software development which contribute to the trustworthiness of the system under development. Our pattern-based approach helps to systematically refine and document the functional as well as non-functional requirements that satisfy the identified trustworthiness goals. In this paper, we develop patterns to aid the documentation of trustworthiness requirements. The provided patterns are used during the requirement engineering phase to support the requirements engineer in documenting trustworthiness requirements by using linguistic templates. Using our patterns, end-users are also supported in expressing their requirements (trust concern identification pattern) and understanding which problems exist and how the problems are addressed (trustworthiness requirement pattern). These patterns yield insights into the relevant trustworthiness requirements that address the corresponding trust concerns. The application of the introduced patterns helps the requirements engineer during the trustworthiness requirement documentation in an unambiguous, understandable, traceable and verifiable way. We illustrate the patterns by applying it on an application example from an ambient assisted living domain.","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":"116754085","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}
Lukas Reinfurt, Uwe Breitenbücher, Michael Falkenthal, F. Leymann, A. Riegg
{"title":"Internet of things patterns","authors":"Lukas Reinfurt, Uwe Breitenbücher, Michael Falkenthal, F. Leymann, A. Riegg","doi":"10.1145/3011784.3011789","DOIUrl":"https://doi.org/10.1145/3011784.3011789","url":null,"abstract":"The development of the Internet of Things is gaining more and more momentum. Due to its widespread applicability, many different solutions have been created in all kinds of areas and contexts. These include solutions for building automation, industrial manufacturing, logistics and mobility, healthcare, or public utilities, for private consumers, businesses, or government. These solutions often have to deal with similar problems, for example, constrained devices, intermittent connectivity, technological heterogeneity, or privacy and security concerns. But the diversity makes it hard to grasp the underlying principles, to compare different solutions, and to design an appropriate custom implementation in the Internet of Things space. We investigated a large number of production-ready Internet of Things offerings to extract recurring proven solution principles into Patterns, of which five are presented in this paper. These Patterns address several problems. Device Gateway shows how to connect devices to a network that do not support the network's technology. Device Shadow explains how to interact with currently offline devices. With a Rules Engine, you can create simple processing rules without programming. Device Wakeup Trigger allows you to get a disconnected device to reconnect to a network when needed. Remote Lock and Wipe can secure devices and their data in case of loss.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"20 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":"126687367","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":"Process patterns for requirement consistency analysis","authors":"Padmalata V. Nistala, K. Nori, S. Natarajan","doi":"10.1145/3011784.3011809","DOIUrl":"https://doi.org/10.1145/3011784.3011809","url":null,"abstract":"In the requirement space, patterns are gaining prominence to capture the requirement knowledge for reuse and help identify requirements. The quality of requirement specification is critical for effective understanding and implementation of requirements. This paper presents a set of process patterns that use the concept of compositional traceability to analyze how well the requirement specifications or user stories have been formulated and to identify inconsistencies among its encompassing elements. We present two patterns that have been successfully applied and found useful to carry out consistency analysis on requirements and detect inconsistencies in requirements: Requirements coverage analysis and Requirements traceability analysis. These patterns can be applied to projects during requirements phase for review and analysis of stated requirements. The paper describes the patterns, discusses its implementation and results from a project case study.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"88 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":"121665289","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}
Alberto Allué, Antonio López, J. C. Ciria, E. Domínguez, A. Francés, M. Zapata
{"title":"The task-oriented occurrence pattern","authors":"Alberto Allué, Antonio López, J. C. Ciria, E. Domínguez, A. Francés, M. Zapata","doi":"10.1145/3011784.3011790","DOIUrl":"https://doi.org/10.1145/3011784.3011790","url":null,"abstract":"Good performance is pivotal to the achievement of individual and organisational goals. Consequently, the problem of accurately assessing performance is of the utmost importance. We claim that such an assessment should not rely only on the mere knowledge of theoretical capacities and capabilities: it must be supported by the observation of the actual behaviour. In this paper we propose a pattern, namely the Task-Oriented Occurrence Pattern, that models the tasks an individual/organisation is able to do, as well as its dynamics as it conducts them. Such dynamics is modelled as a succession of occurrences, which represent the transitions overcome while performing a task. Our pattern supports performance monitoring and assessment by tracking the behaviour over time and enabling the computation of performance indicators.","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":"132744819","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":"Video assessment patterns: designing video player for integrated assessment","authors":"Niels Seidel","doi":"10.1145/3011784.3011820","DOIUrl":"https://doi.org/10.1145/3011784.3011820","url":null,"abstract":"Video-based learning plays an important role in many blended and distance learning courses. The same is true for assessment as a key element in individual and collaborative learning scenarios. In this paper we discuss nine patterns on how to integrate assessment into video learning environments. Thus, we aim to provide solutions that go beyond the receptive and passive usage of instructional video material. The presented patterns describe common solutions of recurring problems at the intersection of user interface design and the instructional design regarding video-based learning.","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":"129830050","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 pattern collection for knowledge processing system architecture","authors":"Stefan Nadschläger, J. Küng","doi":"10.1145/3011784.3011796","DOIUrl":"https://doi.org/10.1145/3011784.3011796","url":null,"abstract":"Many architecture and design patterns exist for enterprise software development. Nowadays interest of knowledge processing systems has been heightened, as these technologies can provide a valuable benefit for a company (e.g., supporting decision making). Nevertheless, the algorithms and technologies used in this domain can be complex and difficult to implement. Some parts can even outreach standard software development. This paper tries to identify similarities to enterprise systems and present a selection of existing design patterns that can be used to solve knowledge processing difficulties. The aim is to provide a pattern collection to allow also software designers and developers not familiar with knowledge processing principles, to easily design, implement and integrate such systems.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"92 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":"128974360","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":"Design patterns for helping students to learn to represent math problems in online learning systems","authors":"P. Inventado, P. Scupelli","doi":"10.1145/3011784.3011816","DOIUrl":"https://doi.org/10.1145/3011784.3011816","url":null,"abstract":"Online learning systems have been gaining popularity, but are not without their challenges. For example, enrollment in MOOCs has slowed down, which is attributed to the lack of sustainability. The success of online learning systems is heavily influenced by how they were designed. For example, results from a recent study showed that the incorporation of learning activities to instruction increased learning gains as much as six times. Although there are many design patterns that may be applied in the design of learning activities, they usually operate at a higher level. There is a need for design patterns that address problems in implementing learning activities in online learning systems. Specifically, the goal of the four design patterns presented is to help students learn to represent math problems. The patterns presented in this paper are part of a pattern language for creating math problems and corresponding learning support in online learning systems.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"32 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":"128874416","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 pattern language for RESTful conversations","authors":"C. Pautasso, Ana Ivanchikj, Silvia Schreier","doi":"10.1145/3011784.3011788","DOIUrl":"https://doi.org/10.1145/3011784.3011788","url":null,"abstract":"As a good user interface design is important for the success of an app, so is a good API for the success of a Web service. Within the RESTful Web services community there is a need for a systematic approach in knowledge sharing, for which patterns are particularly suitable. Using a RESTful service to achieve a certain goal often requires multiple client-server interactions, i.e., to have a conversation. While patterns of such RESTful conversations can be uncovered from existing APIs' usage scenarios, or the service engineering literature, they have never been gathered in a pattern language, nor properly visualized with a Domain Specific Modeling Language (DSML). These patterns provide valuable input for API designers, as well as API consumers, by establishing a common vocabulary to describe recurring conversations. To do so, this paper uses RESTalk, a DSML, to model the basic RESTful conversation patterns structured around the life cycle of a resource (create, discover, read, edit, delete, protect) by showing the corresponding sequences of HTTP request-response interactions. We show how the resulting pattern language can be applied to individual resources, or also collections of resources.","PeriodicalId":211580,"journal":{"name":"Proceedings of the 21st European Conference on Pattern Languages of Programs","volume":"447 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":"127609210","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}