PLoP

PLoP® Conference Proceedings
25th CONFERENCE ON PATTERN LANGUAGES OF PROGRAMS

October 24 - 26, 2018, Portland, Oregon

Proceedings

Download the PLoP2018 Frontmatter (PDF)

PLoP 2018 is in cooperation with ACM.

The Pattern Languages of Programs (PLoP®) conference is a premier event for pattern authors and pattern enthusiasts to gather, discuss and learn more 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 Pattern Languages of Programs (PLoP) ’18 October 24-26, 2018, Portland, Oregon. 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.

ISBN: 978-1-941652-06-0

Made in the USA

Welcome to PLoP 2018

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, PLoP was held in Portland, Oregon in the historic White Stag Building in conjunction with the PUARL conference. There are other xPLoP conferences such as AsianPLoP EuroPLoP, SugarloafPLoP, and VikingPLoP which are held in the other continents. The conference is not traditional—the main event is a set of Writers’ Workshops where pattern papers are reviewed by fellow authors, led by expert workshop leaders. All the participants had lots of opportunities to learn about patterns, pattern languages, pattern writing, and the quest for human-centered software creation in the panoply of PLoP activities: Writers’ Workshops, Focus Groups, BoF sessions, BootCamp, Games, shared meals and chit-chat.

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

This year we did not have any invited talks as those were provided through our cooperation with the PUARL conference. Instead, we had a session of five-minute lightning talks presented by the PLoP attendees. There were also six focus groups / workshops where participants actively explored ideas, learning from peer discussions and activities. The focus group / workshops at PLoP 2018 were: "Writing Systemically Effective Patterns" by Helene Finidori, "Patterns: Taking Us to the Next Level” by Mary Lynn Manns, Joseph Yoder, Richard Gabriel "Representing Generative Wholeness with Pattern Language", by David Ing, "Pattern Language meets VR: Virtual experience and dialogue with patterns for living well with dementia" by Tomoki Kaneko, Tadamichi Shimogawara, Kazuki Toba, Yuka Banno, Takashi Iba, the "Style Writing Workshop: Creating a Style Language for family lifestyle", by Kazuki Toba, Shuichiro Ando, Rioha Kuroda, Tomoki Kaneko, Aimi Burgoyne, and Takashi Iba, "A Pattern Language Canvas for Real Time Innovation”, by Wolfgang Stark.And last but not least, we have the Games, a well-established and very important activity at PLoP, guided by Christian Kohls. The games help us to break the ice, exercise our bodies and minds, collaborate better, and reinforce our community of trust.

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

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

Kyle Brown, PLoP 2018 Chair

PLoP 2018 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 2018 was held in Portland, Oregon from October 24 - 26, 2018.

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 in the "writers' workshop" style, as described in Richard Gabriel's book. Before the conference, authors interact with a "shepherd" who helps them improve their paper to make it as ready for PLoP as possible. A program committee reviews the papers for final acceptance after they have gone through the shepherding process. The writers workshops provide more feedback, and so authors revise their paper again after PLoP. The papers here are the version produced by authors after PLoP, 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 2018 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

Group A
led by Mary Lynn Manns

"Hybrid Collaboration Patterns"

by Christian Köppe, Alex Young Pedersen, Rikke Toft Norgard, Paul Salvador Inventado

"The Pattern Language of Incremental Grading"

by Christian Köppe, Mary Lynn Manns, Rody Middelkoop

"Design Patterns for Pattern Illustrating"

by Konomi Munkata, Rio Nitta, Kotomi Nozaki, Chiaki Sano, Takashi Iba

"Supporting Life with Reading: 9 Patterns from A Pattern Language for Creative Reading"

by Rio Nitta, Waturu Murakami, Yasushi Watanabe, Takashi Iba

Group B
led by Hugo Sereno Ferreira

"Overview of A Pattern Language for Engineering Software for the Cloud"

by Tiago Boldt Sousa, Hugo Sereno Ferreira, Filipe Figueiredo Correia

"A Catalogue of Exception Handling Patterns to support Java Development"

by Roberta Coelho

"The Secure Container Manager Pattern"

by Madiha H. Syed, Eduardo B. Fernandez

"Investigating the Applicability of Architectural Patterns in Big Data Systems"

by Bruno Sena, Lina Garces, Ana Paula Allian, Elisa Yumi Nakagawa

"Patterns of Software Development with Containers"

by Kyle Brown, Christopher Hay

Group C
led by Mary Tedeschi

"Supporting the Practice of Pattern Language Using Instagram"

by Arisa Kamada, Rioja Kuroda, Takashi Iba

"Style Language for Family Lifestyle"

by Ryohei Suzuki, Kazuki Toba, Nobuko Yoshida, Seiko Miyakawa, Takashi Iba

"Style Language: Creating Words for Sharing Diverse Ways of Doing"

by Takashi Iba, Kazuki Toba, Kotomi Nozaki, Misaki Yamakage, Sakie Namiki

"Towards a Pattern Language for Smart Personal Assistants"

by Robin Knote

"Ethical Decision Making Patterns"

by Mary Tedeschi

Group D
led by Helene Finidori

"Even more Patterns for the Magic Backlog"

by Rebecca Wirfs-Brock

"Configuring patterns and pattern languages for systemic design"

by Helene Finidori

"Design Patterns to the rescue: guided model-based reuse for automotive solutions"

by Maged Khalil

"Traces, tracks, trails, and paths: An Exploration of How We Might Approach Software Design"

by Rebecca Wirfs-Brock

Writing Group and Fishbowl Papers
led by Richard Gabriel

"Patterns for Well-being in Life: Supporting Life design based on 4 factors of happiness"

by Karin Iwata

"Pattern language for successful cloud native transformation"

by Pini Reznik

"Life with Reading in the Creative Society: Approaches with using a Pattern Language for Creative Reading"

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 2018 a complete success.

Conference Organization Committees

Program Chair Kyle Brown
IBM Corporation, USA
Conference Chair Joe Yoder
The Refactory, Inc., USA
Publicity Filipe Figueiredo Correia
University of Porto, Portugal
Bootcamp Rebecca Wirfs-Brock
Wirfs-Brock Associates, USA
Joseph Yoder
The Refactory Inc., USA
Games Christian Kohls
TH Köln, Germany
Director of Local Operations Rebecca Wirfs-Brock
Wirfs-Brock Associates, USA
Submission System Michael Weiss
Carleton University, CA

Program Committee

  • Steve Berczuk
  • Joseph Yoder
  • Rebecca Wirfs-Brock
  • Mary Lynn Manns
  • Taichi Isaku
  • Michael Weiss
  • Yuma Akado
  • Schezerade Benzerga
  • Takashi Iba
  • Michael Mehaffy
  • Yu Chin Cheng
  • Michael Mehaffy
  • Douglas Schmidt
  • Eduardo Guerra

Shepherds

  • Joseph Bergin
  • Jenny Quillien
  • Matt Griscom
  • Tiago Sousa
  • Joseph Yoder
  • Hans Wegener
  • Stefan Sobernig
  • Ankica Barisic
  • Bob Hanmer
  • Jason Yip
  • Christian Köppe
  • Michael Weiss
  • G Priyalakshmi
  • Y C Cheng
  • Neil Harrison
  • Sumit Kalra
  • Lise Hvatum
  • Yuma Akado
  • Eduardo Guerra
  • Kyle Brown
  • Eduardo Fernandez
  • Michael John
  • Steve Berczuk
  • Harshavardhan Kadiyala
  • David Kane