PLoP

PLoP® 2021 Conference Proceedings
28th CONFERENCE ON PATTERN LANGUAGES OF PROGRAMS

October 5–7, 2021, Virtual Online

Proceedings

Download the PLoP2021 Frontmatter (PDF)

PLoP 2021 is in cooperation with ACM.

The Pattern Languages of Programs (PLoP®) conference is the premier event for pattern authors and enthusiasts to gather, discuss, and learn about patterns and software development. PLoP® conferences are promoted and sponsored by The Hillside Group. The Hillside Group, through PLoP® and other activities, promotes the use of patterns and pattern languages to record, analyze, and improve software and its development, and supports any new practices that help achieve these goals.

Preliminary versions of these papers were workshopped at the 28th Conference on Pattern Languages of Programs (PLoP’21), October 5-7, 2021, virtual online. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission. Copyright is held by the authors.

HILLSIDE 978-1-941652-17-6

Made in the USA

Welcome to PLoP 2021

The Pattern Languages of Programs (PLoP™) conference is the premier event for pattern authors and enthusiasts to gather, discuss, and learn more about patterns, programming, software development, and more!

This year was another year impacted by COVID-19 restrictions; therefore, we made the decision to run PLoP 2021 online again. In addition to the conference, we also organized a PLoPourri—a combination of events and activities leading up to the conference days, covering different phases of the lifecycle of patterns and pattern languages. These events were held face-to-face, virtually, or in a hybrid way, depending on event, time, and location constraints.

Writers' Workshops are the primary focus of our time at PLoP. They allow authors to discuss and review each other’s papers in a very fruitful way. We had three groups of five to six papers each, selected from an initial set of submissions after a considerable period of shepherding. Three other papers were selected for a writing group and had the opportunity to evolve during PLoP with the mentoring of an experienced pattern writer.

In addition to the Writers' Workshops, we had two invited talks, one workshop, and games:

The PLoPourri events were held throughout the year. Topics included Pattern Mining (teaching attendees how to extract patterns from proven experiences), Making Agile Happen, Cloud Adoption, Fearless Change, and a workshop about Methodological, Philosophical, and Educational Study on Pattern Languages.

After the conference, the authors were strongly encouraged to further evolve their papers to accommodate suggestions for improvement gathered during the discussions at the conference. The final versions of these evolved papers are published in the ACM Digital Library as PLoP 2021 Proceedings.

We would like to thank all authors, shepherds, reviewers, members of the Program Committee, and all conference organizers for their time and collaboration. Thank you all for making PLoP 2021 possible!

Ademar Aguiar and Joseph Yoder, PLoP 2021 Chairs

PLoP 2021 Conference Description

The Pattern Languages of Programs (PLoP) conference is a venue for pattern authors to have their pattern languages reviewed by fellow authors. The purpose of PLoP is to promote the development of pattern languages, primarily about aspects of software: design and programming, testing, software architecture, user interface design, domain modeling, education, human relations, and software processes. Patterns and pattern languages for domains outside software are also welcome.

PLoP 2021 was held online from October 5–7, 2021.

We invited contributions from practitioners and researchers on the following:

  • Patterns and pattern languages
  • Critiques of patterns and pattern languages
  • Research on patterns and pattern languages
  • Case studies of the use of patterns and pattern languages

PLoP is different from other conferences. It is run as a "writers' workshop," as described in Richard Gabriel’s book, Writers’ Workshops and the Work of Making Things. Before the conference, authors interact with a shepherd who helps them improve their paper to prepare it for PLoP. After shepherding, the program committee reviews the papers for final acceptance. The writers’ workshops provide more feedback, and authors revise their papers again after PLoP. The papers here are these final, revised versions, not the ones reviewed at PLoP.

Table of Contents

The primary focus of our time at PLoP is the Writer’s Workshops where we discuss ways to improve the submitted papers. Below is the list of papers from PLoP 2021 that were revised and accepted for inclusion in the final proceedings. These paper titles reflect the final papers.

The table of contents is organized by the workshop groups and the chairs as they were presented at PLoP.

Writer's Workshops

Burgundy
led by Ademar Aguiar

"Natural & Creative Living Patterns, Part2- Patterns for Natural Living"

by Sora Hatori, Takashi Iba

"From Classroom to Online Education – An Educators Insights"

by Mary Tedeschi

"Start-up Patterns: A Pattern Language for Developing Enterprise to Create the Future"

by Yuki Iba, Takashi Iba, Yuya Ota, Kotaro Chiba

"Pattern Language Online: Qualitative-Data-Based Pattern Language Creation System"

by Yuki Kawabe, Takashi Iba

"Patterns of Patterns: A Methodological Reflection on the Future of Design Pattern Methods"

by Joseph Corneli, Alex Murphy, Raymond S. Puzio, Leo Vivier, Noorah Alhasan, Vitor Bruno, Charlotte Pierce, Charles J. Danoff

"Online Education Patterns, Part 2: Patterns for Creating a New Form of Learning"

by Sae Adachi, Sawami Shibata, Erika Inoue, Kiyoka Hayashi, Takashi Iba

Napa
led by Richard Gabriel

"Patterns for the creation and interpretation of topic models"

by Michael Weiss

"More Software Analytics Patterns: Broad-Spectrum Diagnostic and Embedded Improvements"

by Duarte Oliveira, João Fidalgo, Joelma Choma, Eduardo Guerra, Filipe Correia

"Mining Good Practices of Low-Code Software Development from Model-Driven Approaches"

by Daniel Pinho, Ademar Aguiar, Vasco Amaral

"Lazy Clone - A Pattern to Improve Performance and Maintainability of Object Cloning"

by Bruno Cartaxo, Eduardo Guerra, Victor Osório, Sérgio Soares, Paulo Borba

Douro
led by Rebecca Wirfs-Brock

"Software Engineering Patterns for Machine Learning Applications (SEP4MLA) - Part 3 - Data Processing Architectures"

by Jomphon Runpakprakun, Sien Reeve Ordonez Peralta, Hironori Washizaki, Foutse Khomh, Yann-Gaël Guéhéneuc, Nobukazu Yoshioka, Yoshiaki Fukazawa

"Secure Development Decomposition– An Argument Pattern for Structured Assurance Case Models"

by Jason Jaskolka, Brahim Hamid, Alvi Jawad, Joe Samuel

"Patterns on Designing API Endpoint Operations"

by Apitchaka Singjai, Uwe Zdun, Olaf Zimmermann, Mirko Stocker, Cesare Pautasso

"Patterns for Documenting Open Source Frameworks"

by João Santos, Filipe Figueiredo Correia

Other Workshops

A Methodological, Philosophical, and Educational Study on Pattern Languages
by Takashi Iba, led by Richard Gabriel and Joseph Yoder

Takashi Iba is writing an academic book (in Japanese) on pattern languages. Over 2021, the Iba lab has revised their method to create pattern languages and is sharing knowledge about their studies and experiences with it, on Methodological, Philosophical, and Educational studies on Pattern Languages.

"A Practical Guide on Pattern Writing for Pattern Languages of Practices"

by Takashi Iba

"Systematization of Patterns: How to Craft a Pattern Language as a Whole"

by Takashi Iba

"Contrast within a Pattern: Capturing a Gap between Problematic and Good Consequences"

by Takashi Iba

Committees

The PLoP Conference would not be a success without the volunteer help of the shepherds and program committee members. The shepherds devote hours of their time to helping authors improve their papers before the conference. The program committee members help organize the conference, handle requests, and communicate with attendees.

We would like to thank all those who helped make PLoP 2021 a complete success.

Conference Organization Committees

Program Chair Ademar Aguiar
University of Porto, Portugal
Virtualization Chairs Joseph Yoder
The Refactory, USA
Daniel Pinho
University of Porto, Portugal
Publicity Filipe Figueiredo Correia
University of Porto, Portugal
BootCamp Rebecca Wirfs-Brock
Joseph Yoder
Games Christian Kohls
TH Köln, Germany
Submission System Michael Weiss
Carleton University, Canada

Program Committee (PLoP)

  • Alfredo Goldman
  • Lise Hvatum
  • Rebecca Wirfs-Brock
  • Kyle Brown
  • Mary Lynn Manns
  • Joseph Yoder
  • Eduardo Guerra
  • Ademar Aguiar
  • Richard P. Gabriel
  • Neil Harrison
  • Chris Kohls
  • Michael Weiss
  • Christian Koppe
  • Takashi Iba
  • Filipe Correia

Shepherds

  • Alfredo Goldman
  • Lise Hvatum
  • Y. C. Cheng
  • Kyle Brown
  • Mary Lynn Manns
  • Hironori Washizaki
  • Eduardo Guerra
  • Jessie Lydia Henshaw
  • Cees Groot
  • Neil Harrison
  • Chris Kohls
  • Dionysis Athanasopoulos
  • Rebecca Wirfs-Brock
  • Joseph Yoder
  • Dave Isaacs
  • Richard P. Gabriel
  • Michael Weiss
  • Thomas Raser
  • Christian Koppe
  • Takashi Iba
  • Michael Stal
  • Filipe Correia
  • Uwe Zdun
  • Jenny Quillien
  • Michael Mehaffy
  • Eduardo Fernandez