The core of the conference program are the writers’ workshops where the accepted papers will be discussed. Additionally, we offer an Open Space format for the accepted focus group proposals. The conference also contains many social activities to foster social networking.
14:00 – 15:00
Newcomer Info and Demo
15:00 – 15:30
Coffee
15:00 – 17:30
Registration
15:30 – 17:30
Pattern Writing Dojo
17:30 – 19:00
Name Game
19:00 – 20:00
Dinner
20:00 – 0:00
Bar, BoFs, Sauna
07:30 – 09:00
Breakfast
09:00 – 10:00
Daily Intro and Games
10:00 – 10:30
Focus Groups Intro
10:30 – 11:00
Coffee
11:00 – 12:45
Writer’s Workshop
12:45 – 13:45
Lunch
13:45 – 14:15
Games
14:15 – 15:45
Writer’s Workshop
15:45 – 16:15
Coffee
16:15 – 18:30
Focus Groups
18:30 – 19:00
Daily Summary
19:00 – 20:00
Dinner
20:00 – 22:00
Paint & Create
22:00 – 0:00
Bar, BoFs, Sauna
07:30 – 09:00
Breakfast
09:00 – 9:30
Daily Intro
09:30 – 11:00
Writer’s Workshop
11:00 – 11:15
Coffee
11:15 – 12:45
Writer’s Workshop
12:45 – 13:45
Lunch
13:45 – 14:45
Monastery Tour
14:45 – 15:15
Game
15:15 – 16:45
Focus Groups
16:30 – 17:00
Coffee
17:00 – 18:30
Focus Groups
18:30 – 19:00
Daily Summary
19:00 – 19:30
Prepare for Banquet
19:30 – 22:00
Banquet
22:00 – 0:00
Bar, BoFs, Sauna
07:30 – 09:00
Breakfast
09:00 – 9:30
Daily Intro
09:30 – 11:00
Writer’s Workshop
11:00 – 11:15
Coffee
11:15 – 12:45
Writer’s Workshop
12:45 – 13:45
Lunch
13:45 – 14:45
Hillside Meeting
14:45 – 15:45
Brewery Tour
15:30 – 16:00
Coffee
16:00 – 16:30
Open Space Pitch
16:30 – 18:00
Open Space
18:00 – 19:00
Closing Session
19:00 – 20:00
Dinner
20:00 – 0:00
Bar, BoFs, Sauna
07:30 – 11:00
Breakfast and Farewell
This is where your paper is discussed during the conference. The workshops group together the authors of up to five papers that thematically fit together. Shortly before the conference begins, we will publish the paper-to workshop assignments. If you are an author, use this page to find which workshop you are assigned to. Non-authors, please use the same page to decide which group you would like to join throughout the conference. All participants should download, print and read all the papers in their group before the conference.
Below you can find here the full list of papers accepted for the workshops. Clicking on the arrows will reveal the abstracts.
Abstract: Digital twin systems serve as powerful tools across various domains, offering insights into the behavior and performance of real-world entities through virtual replicas. This collection of patterns presents structured approaches to manage state synchronization and behavior management in digital twin systems. From the initial setup of the twin replica to efficient update mechanisms and dynamic behavior control, these patterns offer guidance for developing robust and effective digital twin systems applicable to diverse domains, including synchrotron light sources and beyond
Abstract: This paper deals with the pitfalls of satisfying a new requirement that arises for your existing API. While mentioning alternatives, the focus is on whether and how to create a new operation and how to design it. The aspects to consider are presented as the two patterns FRESH OPERATION and CLOSE RELATIVE.
Abstract: Nowadays, Microservice is a widely adopted architectural style. It splits its responsibilities into different independently deployable units, called microservice. Among the important aspects to consider when dealing with Microservices, in this work we highlight communication; in particular, we focus on the communication in dynamic and heterogeneous environments. We aim to assist practitioners with designing reusable microservices and APIs. We present patterns that address the structure of the input of an API operation, ways to enrich the messages sent in the conversation, and the implementation of the data handlers.
Abstract: Refactoring is a crucial practice in agile software development and has been widely adopted in practice at the code level. Architectural refactoring has been researched, but adoption is not nearly as widespread as code-level refactoring. This paper continues our work on refactoring remote APIs, which we introduced at EuroPLoP 2023. We present a second slice of seven API refactorings pulled from our online Interface Refactoring Catalog, many of which target API design patterns: Extract Information Holder, Inline Information Holder, Make Request Conditional, Externalize Context Representation, Extract Endpoint, Rename Operation, and Introduce Version Identifier. Besides context, problem, and step-by-step solution, we also motivate the refactorings by stakeholder concerns and identify the design smells a refactoring can address. All refactorings are validated by showing examples using concrete programming or specification languages and message exchanges. The paper concludes with an outlook to catalog evolution and other future work.
Abstract: Uncertainty, coming both from requirements and solution candidates, is present when we work with architectural decisions. A technique called ArchHypo proposes an approach based on hypothesis engineering to manage this uncertainty related to the software architecture. As a part of it, for each hypothesis is elaborated a technical plan with actions that aim to reduce the uncertainty or its impact. This paper focuses on patterns that can be used as part of this technical plan in cases where uncertainty is present in several tasks of the same type. These patterns propose as their solution to tailor the development process, introducing or changing activities, for dealing with uncertainties.
Service-based architectures have revolutionized modern soft- ware development, offering numerous benefits. However, orches- trating services in a scalable and efficient manner is still challenging, even more so for teams that first adopt such techniques. Despite the prevalence of service-based systems and ample resources on orchestration techniques, many have not been studied intensely. Orchestration best practices may not seem evident for everyone or may not be well explained, detailed, or documented to allow quick and easy usage. Therefore, practices tend not to be formalized in a standard way that ensures they are easier to spread in the industry, understood by practitioners, and applied to systems that could use them to tackle the orchestration problems they solve. To tackle this issue, this paper describes two configurational practices that serve as a stepping stone for other orchestration practices as design patterns: LABELING and RESOURCE REQUIRE- MENT AND LIMITATION. Formalizing them as design patterns provides a clear structure for practitioners to understand and reuse them in industry projects and still document in which context they should be applied and to solve what challenge. The proposed patterns are based on existing literature and tools based on industry best practices that we detail and convert into de- sign patterns. Relations to other current orchestration patterns are also covered to complement the usefulness of the patterns covered to complete them
Abstract: Modern software should be ready to release as quickly as possible – maybe within one day after making code changes. However, looking at legacy systems, quite often not so much focus was put on testing and quality assurance. That makes releasing new versions of such software tedious. Manual testing effort has to be spent and after making some code changes, it might take several weeks to release the software to the customer. This paper tells the story of how the tests and quality assurance of one such legacy software is being put into a state where it can be released with less effort and more quickly. The story tells about the best practices and patterns applied along the way.
Writing templated functions in Cuda/C++ both for the CPU and the GPU bears the problem that in general always both \host{} and \device functions are instantiated. This easily leads to silently broken code, either on the host or device side. This paper presents patterns to solve this problem.
Abstract: Software Defined Networking (SDN) represents a transformative shift in network management, where the control plane is decoupled from the data plane, leading to programmable and more efficient network behavior. While SDN offers significant advantages in terms of network flexibility and control, it also introduces new security challenges. The centralized control mechanism inherent in SDN, although advantageous for network management, presents unique vulnerabilities, making it a potential target for various cyber threats. Addressing these security concerns is crucial for the secure and reliable operation of SDN infrastructures. This article presents a pattern for a secure SDN considering its significant security threats and their countermeasures. In this pattern we use architectural modeling, which is a useful approach for visualizing and designing complex systems. We use an extended template to make this pattern more useful for designers trying to build secure SDNs.
Abstract: Security patterns can help organizations develop secure software. While it is typical to encounter isolated applications of one or more software patterns in practice, effectively responding to security threats demands a comprehensive grasp and utilization of an entire pattern language or catalog, comprising numerous intricately interconnected patterns. The composition of software patterns makes them more efficient. Solutions for establishing sequences of software patterns are often found documented in plain text through explicit pattern relationships. Extracting the strongest symmetries of relationships between software patterns from their text descriptions allows for the establishment of meaningful sequences from these patterns. In effect, we rely on design science as a methodological approach, which involves two primary activities: creating new knowledge through the design of novel or innovative artifacts and analyzing their use and/or performance with reflection and abstraction. This article presents an empirical study of establishing pattern sequences using stochastic processes. One is based on stochastic trees. The other process, based on Bayesian networks, extracts the strongest symmetric relationships between security patterns to use them to establish meaningful sequences of patterns. By employing these two processes, we can identify four envisioned sequences of patterns from the security pattern catalog. The pattern stories based around these pattern sequences demonstrate their meaningfulness. These two processes are not exclusively relevant to security patterns. We consider applying them to the patterns for engineering software for the cloud.
Abstract: Logging has long been a pillar for monitoring and troubleshooting software systems. From server and infrastructure to application-specific data, logs are an easy and quick way to collect information that may prove useful in diagnosing future issues. When systems become distributed, as is common on the cloud, logs are much harder to collect and process, but several practices can help us ensure a good logging strategy is in place. This paper introduces three design patterns for logging in cloud-native applications. Standard Logging advises using a standard format for logs across all services and teams so they are easier to process by humans and machines. Audit Logging suggests that important user actions and system changes are recorded in a data store to ensure regulatory compliance or help investigate user-reported issues. Lastly, Log Sampling is about prioritizing logs to maintain a manageable amount of storage. These patterns were mined from existing literature on logging and cloud best practices to make them simpler to communicate, more detailed and easier to understand for all practitioners.
Abstract: Over the years, sensitive data have been growing in software systems. To comply with ethical and legal requirements, the General Data Protection Regulation (GDPR) recommends using pseudonymization and anonymization techniques to ensure appropriate protection and privacy of personal data. Many anonymization techniques have been described in the literature, such as generalization or suppression, but deciding which methods to use in different contexts is not a straightforward task. Furthermore, anonymization poses two major challenges: choosing the most adequate techniques for a given context and achieving an optimal level of privacy while maintaining the utility of the data for the context within which it is meant to be used. To address these challenges, this paper describes four new design patterns: {\sc Generalization}, {\sc Hierarchical Generalization}, {\sc Suppress Outliers}, and {\sc Relocate Outliers}. The proposed patterns were based on the techniques and problems described in the literature. These patterns describe problems and present solutions to address outliers in datasets, the linkage attack, and the privacy versus utility trade-offs.
Abstract: The necessity to divide a large entity into smaller parts is eternal and seemingly universal. During the post-war period western corporations adopted a canonical model based on functional design. Yet this is not always the case. History is littered with alternatives: from Bata’a in the 1890s, through Topeka in the 1970s to Agile in the twenty first century there are reoccurring examples of different designs. This paper recasts Kazuo Inamori Amoeba Management (2013) in the pattern form and examines more opportunities for patterns elevating the ideas of self-organization from the agile movement within corporations.
Abstract: Approvals are a common part of today’s business processes. They are oftentimes required by regulations but they also serve to reduce risk in organizations. There are many ways to implement approval processes based on the addressed risk, regulations to be compliant with, required effort, and time added to business processes. This paper presents additional 11 patterns supplementing existing Approval Patterns and adding three new categories. The result is a comprehensive pattern language for approval process design, which helps process designers, process implementers and regulation bodies to better describe and design approval controls.
Abstract: This work explores “reverse engineering” organizational patterns from Distributed Machine Control System (DMCS) patterns. The authors analyzed four core DMCS patterns (Separate Real-Time, Isolate Functionalities, Variable Manager, and Notifications) utilizing the similarity between communication structures within any organization and the architectural structures in the software architecture patterns. As a result, four new corresponding organizational patterns were written. In this paper, these patterns and the outline for the ideation process are presented.
Abstract: Decisions in digitalization efforts in general and software development projects in particular are typically driven by business goals and economic values. There seems to be a lack of awareness that other types of values, such as ethical ones, should be respected in order to produce systems that do not harm human beings. However, ethical values often are highly subjective; different stakeholders have different interests and concerns. So how can we make the values of all stakeholders of a software-intensive system, and especially the negative and positive impacts of this system on those stakeholders and their values, transparent so that adequate decisions can be made and tradeoffs found? The pattern described in this paper suggests to combine domain-driven design (modeling the domain, the software design as well as its impacts and consequences) with value-based systems engineering (eliciting values and value requirements) to make ethical values first-class citizens that go through the same refinement steps as business requirements and technical quality attributes and receive the same attention during design and implementation.
Abstract: In our pattern from EuroPLoP ‘23 we’ve introduced the Community-driven Learning pattern. Since then, our experience with this pattern has become even more deep as we have been able to further evolve and iterate on it in different contexts. We’ve gained some new insights into how to better introduce and maintain the pattern into a company as well as how it can help during company transition times such as mergers and acquisitions. Also, we’ve gained insight into another example for this pattern in a different software company, doing its own flavour of Community-driven Learning. During the 2023 conference the main question we got was how we are able to introduce and establish a Community-driven Learning pattern within a company. So, given the new insights we’ve gathered, we believe it is quite valuable to shed more light on some intricacies and “secret ingredients” that make these pattern work in two Case Studies – GfK SE and EPAM.
Abstract: “Life is form, and form is the way in which life takes place,” said the art historian H. Focillon, celebrating the forms in our world. The architect C. Alexander not only reconstructed a pattern language for living architecture, but also searched for a formal language to inspire the form and style of timeless architecture. Many pattern languages use photographs and illustrations to express the essence of patterns. Patterns of business processes, which are collected for the development of a knowledge management concept “Aesthetic Business Processes”, allow people to experience beauty in everyday organizational life. As there are often no words for these aesthetic qualities, this article aims to give form to patterns of aesthetic business processes. With the help of a metaphorical concept that uses metaphors of movement, patterns of aesthetic business processes are identified in pattern mining, visualized embedded in the gestalt of their business processes and finally described. A discourse on the patterns developed that required body, culture and the individual mind to make the dynamic structure of the business process patterns visible. As metapatterns, patterns of aesthetic business processes aim to make us aware of good practices that occur in all processes of our reality, in processes in the business world, but also in nature, art, and in our own world.
Abstract: In the evolving landscape of software engineering, managing the uncertainties that impact architectural decisions is paramount for ensuring the resilience and adaptability of software systems. This paper focuses on documenting, as patterns, the foundational practices employed by a technique named ArchHypo, which uses hypothesis engineering to manage uncertainties in software architecture and enhance decision-making processes. By exploring three diverse projects that implement the ArchHypo technique, we delineate a set of patterns that systematically address the complexities of uncertainty. These patterns provide a more systematic structured framework for software architects and developers, enabling them to make uncertainties explicit and manageable, thus facilitating the identification of opportune moments for architectural commitments. The delineated patterns contribute to a structured and informed decision-making process and offer an approach to managing uncertainties tailored to agile development’s dynamic landscape.
Abstract: Software development projects are often done in small teams. For an efficient and enjoyable collaboration, it is important that all team members know and respect each other. Knowledge about the application in development is often shared informally between team members, while business and technical documentation may be limited. When a new colleague joins your team, help them connect with existing team members while also ensuring that they acquire the necessary skills to contribute effectively. To achieve this goal, plan and prepare a series of interconnected tasks for the onboarding process. These tasks are designed solely to facilitate their learning of the application and fostering connections within the team.
Abstract: This paper introduces a sequential framework for integrating Large Language Models like text based GenAI into professional development and training, articulated through three progressive educational patterns: The Primer, The Quick Wins and The Prompt Pattern Builder. Beginning with foundational knowledge, the curriculum progresses to immersive applications and culminates in advanced prompt engineering techniques. Each pattern is designed to incrementally enhance participants’ understanding and practical skills with text based GenAI, addressing initial misconceptions, fostering deep technical insights and promoting the application of text based GenAI to complex problem-solving within diverse professional contexts. Through interactive sessions, case studies and hands-on workshops, the framework aims to develop a proficient, innovative workforce capable of leveraging text based GenAI transformative potential. The paper highlights the need for a comprehensive approach to text based GenAI education, emphasizing collaboration, technical understanding and the creation of a self-sustaining learning community. The proposed patterns offer a scalable model for organizational text based GenAI integration, promising significant improvements in operational efficiency and innovation capabilities.
Abstract: The paper takes an exploratory approach to examine the use of ChatGPT for pattern mining. It proposes an eight-step collaborative process that combines human insight with AI capabilities to extract patterns from known uses. The paper offers a practical demonstration of this process by creating a pattern language for integrating Large Language Models (LLMs) with data sources and tools. LLMs such as ChatGPT are a new class of AI models that have been trained on vast amounts of text, and can create new content, including text, images, or videos. However, for their full potential to be realized, LLMs need to be integrated with external data and tools. The paper also advocates for adding affordances of the underlying components as a new element of pattern descriptions.
Abstract: The concept of patterns and pattern languages, although very common in software nowadays, was first approached by Christopher Alexander, in the area of architecture, in the book \emph{A Pattern Language}. However, it was only in 1980 that the term was adapted for software development, gaining its popularity in 1994. Despite the fact that the concept of patterns has been used in the area of software development for more than 40 years, there is still no consensus on the best method to validate a pattern language, and the existing methods are scattered in several different papers and research across the scientific community. As such, in this paper, we conduct a systematic literature review to find the existing methods in the scientific community to validate patterns and pattern languages.
Abstract: This paper discusses the application of pattern languages as tools in action research. Pattern languages serve as tools to support practice and are also methodologies for articulating and elucidating practical knowledge. This paper presents a new attempt to use pattern languages as tools in conducting action research, showcasing case studies of empowering young people attending vocational schools in Mindanao, Philippines, through pattern languages. It illustrates how pattern languages can be utilized in conducting action research based on this practice. Additionally, the paper demonstrates that new discoveries can emerge in the process of creating and utilizing pattern languages.
Abstract: In this study, the authors conducted and evaluated the effects of demonstration lessons three times in three years as part of a housing design exercise in the context of architectural professional education at a technical college in Japan. The purpose was to shed light on the effectiveness of using pattern language in assessment preparation and teaching. Before the demonstration lesson, a group of teachers drew up the pattern language and rubric for the group design task “Housing Design by Bioclimatic Design.” We compared the experimental group, which participated in workshops using the pattern language during their design exercise lessons, with the control group, which attended regular design exercise lessons. The experimental group and the control group were both shown the rubric beforehand and we found out that the experimental group scored higher in the teachers’ assessment of the students’ work, demonstrating the effectiveness of using pattern language in teaching. The questionnaire surveys also confirmed that students’ self-evaluations of their achievement of the “skills to acquire” were higher after the demonstration lessons as results of the Pattern Language Workshop.
Abstract: In the realm of digital literacy, coding workshops serve as pivotal educational tools, yet academic exploration into their effective implementation remains limited. A noticeable research gap exists, leaving unaddressed inquiries regarding the optimization of workshop structures for sustained engagement and enhanced learning outcomes. Stemming from the ”Coding Culture in Oberberg” research project, this pattern collection aims to address this research gap. The project extensively engaged in executing coding workshops within educational settings, revealing a lack of available research on conducting effective workshops. This compendium embodies practical insights and innovative strategies cultivated through hands-on experiences.
Abstract: Grading individual students who did group work is considered as a difficult and strenuous task for teachers. Fact finding and assessing it fairly often costs more time than is actually available. In this paper I present some patterns to help prevent from drowning in the grading proces.
Abstract: The essay critically examines the intricate interplay between established remote teaching patterns and the evolving dynamics of hybrid teaching, marking the shift from fully remote to a blended educational model. Drawing on Mary Tedeschi’s 2022 publication, “From Classroom to Online Education – An Educator’s Insights,” this paper reevaluates previously identified patterns within the context of the evolving complexities of teaching. A noteworthy challenge in this landscape is the management of hybrid models, where classroom and remote teaching intersect during scheduled class hours, surpassing the difficulties encountered during the initial Covid lockdown period. During the Fall 2022 and Spring 2023 semesters, Mary Tedeschi, the primary researcher, directed her attention to applying existing patterns rather than actively seeking new ones. This evaluation is grounded in narratives drawn from her teaching experiences, shedding light on the practical implications and effectiveness of these patterns in the evolving educational landscape. To establish a comprehensive framework, the paper provides precise definitions for key terms such as asynchronous, synchronous, hybrid/blended, flipped, and HyFlex. These definitions serve as a foundational pillar, ensuring a shared understanding as Ms. Tedeschi assesses the applicability of existing patterns, abstaining from actively seeking new ones. In essence, “Reflections – Remote Teaching Patterns in a Hybrid Teaching Context” not only functions as a personal narrative of Ms. Tedeschi’s experiences but also contributes profound insights to the broader discourse on the future of education. It encapsulates pivotal themes, including adaptability, resilience, and the continual pursuit of effective teaching strategies within the context of a rapidly evolving educational landscape. This paper assesses and examines the evolving educational paradigms. We include survey findings from a recent survey of 214 students in our aim to verify the patterns.
Abstract: From 2020 to 2023 we ran a research project called HybridLR, searching for good practices in the field of hybrid learning spaces. With the knowledge we got, we started a series of publications of which two have already been published. One targeted hybrid events through the combination of physical and digital infrastructure, while the other was about transforming traditional spaces for education into hybrid alternatives with high flexibility in usage. This third one now focusses on our experience with creating large Learning landscapes that provide hybridity in usage options through context-appropriate subspaces. We talk about possible subarea types, their advantages and differences, as well as how to select and enhance them for your current context.
Abstract: This paper intends to address a significant connection between the affordance and pattern language in the context of designing hybrid creative spaces. The concept of “creative affordance” is introduced as a pivotal mechanism for mediating the indirect relationship between the design patterns that contribute to the hybrid spatial construct and incurred creativity. This paper critically reviews a body of selected literature on affordances relating to the design of hybrid creative spaces. Affordance theory offers a crucial lens for understanding the dynamic interplay between humans and environments in physical and non-physical contexts. The selected works reviewed from environmental psychology, HCI, architecture and extended realities highlight the relevance and value of affordance theory to hybrid creative environments and reveal potentials leading to more effective, engaging, and intuitive design solutions. Then, by synthesizing design principles from various fields, we formulate a remixed pattern language that supports the strategic organization of spatial elements and information conducive to creative activities. Moreover, the remixed pattern language in hybrid creative spaces involves mapping design patterns to identified creative affordances. This mapping ensures that the designed space not only adheres to best practices across disciplines but also aligns with the specific creative needs and actions it aims to support. Thus, a pattern language enriched with affordance theory can guide the design of spaces that are more than functionally adequate.
Unlike other conferences, EuroPLoP focuses on improving papers instead of only presenting them. Authors will receive high quality feedback in a constructive way during the shepherding process and during the workshops at the conference. The feedback can be used to improve submitted papers for final publication.
We hope to be able to organize the conference on-site, but this is subject to change, considering any restrictions imposed by Covid-19. EuroPLoP’s registration fee is normally 1111€ and covers all activities, accommodation, and food.