Proceedings of AsianPLoP 2020: 9th Asian Conference on Pattern Languages of Programs

ID Paper Title Paper Author(s) PDF
1 A Pattern Language for Consultation of Heritage
Inheritance for Individuals and Their Family
Ayano Hosotani
Chieko Horinoue
Yasup Hosotani
Paper Abstract
  Heritage inheritance is something everyone has to carry out as their own
problem, and smooth execution is ensured by making advance preparations such
as making a will in advance and building relationships with trusted experts.

But in reality, we often face the problem of inheritance
without preparation.And in a limited amount of time, it is difficult to
reach a heritage inheritance that the person and family can convince.

We propose a pattern language that focuses on consulting with specialists,
which can be a great help for individuals and their family to reach a
convincing inheritance.
ID Paper Title Paper Author(s) PDF
2 Misuse Patterns Derived from Threats that Take Control of Radio
Frequency Remote Controllers of Container Terminal Cranes
Virginia M. Romero
Eduardo B. Fernandez
Paper Abstract
Port Automation has been playing an increasing role with the introduction of robots, artificial intelligence and other digital tools that have
increased the speed and efficiency of the handling of goods flowing into and out of cargo ports. By digitizing and automating activities once
handled by human crane operators and cargo haulers, seaports can reduce the amount of time ships sit in port and boost port productivity by
accelerating the movement of containers between ships and other transportation means. Radio frequency (RF) remote controllers are widely
used in container terminal cranes, unfortunately these devices have become the weakest link in these safety-critical applications. RF controllers
are vulnerable to command injection, where an attacker can selectively alter their behavior by crafting arbitrary commands with consequences
ranging from theft and extortion to sabotage and injury. We present here misuse patterns that result from taking control of RF remote
controllers. These misuse patterns describe how these attacks are performed and specify appropriate countermeasures for mitigating them.
These patterns are part of our work on building a Security Reference Architecture for Cargo Ports
ID Paper Title Paper Author(s) PDF
3 Design Patterns for Blockchain-assisted Accountable Data
Dissemination between IoT Devices and Edge Server
Chun-An Lin
Chun-Feng Liao
Kung Chen
Paper Abstract
There is an increasing number of software developers that want to take advantage of blockchain technology in their projects. Among various
kinds of applications, IoT (Internet of Things) is recognized as one of the most promising domain to employ blockchain technology due to
the highly distributed nature of blockchain. Therefore, many blockchain-driven IoT services (B-IoT) have been developed in recent years.
Unfortunately, when running a blockchain, a lot of computational power and storage is used. Owning to the limitation of the power and
hardware capacity, IoT devices are usually implemented with none or only part of the functionalities of a full blockchain endpoint, resulting
in the advantages of the B-IoT not fully leveraged. With the increase in network bandwidth, advancements in hardware capability, and new
blockchain endpoint protocol for low-capacity environments, it is now feasible to locate more functions of a blockchain endpoint on an IoT
device. We present the empirical lessons of the authors from building several B-IoT systems in the last few years. We observe that there are
several design issues and design decisions to be considered. In this paper, we report two patterns related to the design disseminating
accountable data from IoT devices to the blockchain in the edge environments. To explain how these patterns work, we also introduce an
“Intelligent Refrigerated Shipping Containers” scenario.
ID Paper Title Paper Author(s) PDF
4 XDDP Patterns―A Pattern Language for eXtreme Derivative
Development Process―
Noriko Kawaguchi
Paper Abstract
The development method for adding new functions into or modifying existing software systems, known as “Derivative Development”, is
quite different from that for the development of new software systems. A development process dedicated to the Derivative Development,
named as “eXtreme Derivative Development Process (XDDP)”, has been proposed and widely applied to embedded system development in
Japan. In this paper, “XDDP Patterns” is introduced based on the XDDP practices from the viewpoint of Pattern Language. The pattern map
of XDDP Patterns is presented as “XDDP Route Map”, inspired by the railway maps of Osaka and Kobe area in Japan. This pattern map
would be used as a guide map to make XDDP practices easier. The work for this paper consists of my previous paper “Proposal of XDDP
Route Map for Disseminating XDDP” (Kawaguchi 2017) and 3 new patterns of USDM, Reverse Engineering, Code Change.
ID Paper Title Paper Author(s) PDF
5 Secure Distributed Publish/Subscribe (P/S) pattern for IoT Eduardo B. Fernandez
Nobukazu Yoshioka
Hironori Washizaki
Paper Abstract
We present here the Secure Distributed Publish/Subscribe pattern, one of the most used patterns in IoT software design. Its intent is: In an IoT
system, decouple the publishers of events from those interested in the events (subscribers). Subscription and publication are performed securely.
This pattern is derived from an earlier abstract version where the effects of the new environment have been reflected in the context, forces, and
solution. In other words, the context, forces, and solution are new, although the pattern preserves the core functions of its abstract counterpart.
ID Paper Title Paper Author(s) PDF
6 Introducing Agile Practices in Object-Oriented Programming:
Applying How To Solve It Patterns
Yu Chin Cheng
Kai Chang
Paper Abstract
We report the experience of our effort to include numerous agile practices alongside the C++ language features and object orientation in
teachingobject-orientedprogramming,thesecondprogrammingcourseintheimperative-firstparadigmofCC2001adoptedatourinstitutions.
We use long running examples that solve problems of sufficient complexity in class and build assignments as their extensions. The problem
solving heuristics How To Solve It guide the analysis, design, coding, and review activities both in instructor’s preparation and in class. In
preparing a problem, the instructor records problem decomposition as an AND-OR graph. The instructor then identifies learning opportunities
and explores how best to order the constituent subproblems for instruction. Coding is driven by tests and is performed on the only computer
in the classroom. Pair/mob programming engages all students in problem solving and coding and is supplemented by occasional instructor
demonstrations. Exit surveys taken by students of two recent course offerings show encouraging results.
ID Paper Title Paper Author(s) PDF
7 A Test Model for Design Pattern Application Nien-Lin Hsueh
Paper Abstract
In the current trend, design pattern has been widely used for improving software quality. However,
using design patterns is not easy, developers need to understand their complex structure and behavior, and
have to apply them in the correctly. Therefore, several approaches are proposed to check the violence of
pattern application in a system. We argue only static checking to patter structure is not enough, dynamic
testing to test the patterns’semantics is necessary. In this paper, we propose a test model for design
patterns. We explore the potential error point of each design pattern thoroughly, and provide a testing
guideline for each pattern application.
ID Paper Title Paper Author(s) PDF
8 Omotenashi Design Patterns Miwane Umewaka
Ryohei Suzuki
Takashi Iba
Paper Abstract
In this paper, we propose Omotenashi design patterns. Recently, with increasing tourists visiting Japan, it has become difficult to satisfy tourists who
have diverse senses of value simply based on traditional hospitality. We consider hospitality to be the very essence of service and to be adaptive to
changes in the Japanese social environment as “creative hospitality”. We formalize hospitality into design patterns. By using these patterns, it is
practical for not only customer service workers but also other people to design hospitality with their own senses of value. As a result, the design
patterns are meant for Japanese hospitality industry personnel practice and to improve their service.
ID Paper Title Paper Author(s) PDF
9 Taste Language for taste centered cooking : 14 patterns for
Japanese soup stock
Chiaki Sano
Rioja Kuroda
Yuki Kawabe
Takashi Iba
Paper Abstract
In this paper, we propose Taste Language. In the first place, the reason why Taste Language is necessary is that it is very difficult to make
taste. This is because of the fact that dishes can not be disassembled and can be accidentally completed. Anyone can make a dish by looking
at the recipe, but in order to make a good and delicious dish, it is necessary to meet the rules of making good taste. If you just follow the
recipe, this rule cannot be satisfied. Conversely, a dish that fulfills the rules of delicious tastes can be cooked with or without a recipe.
Experts learn the rules empirically and practice them. However, many people are trapped in recipes, and the rules of good taste are
invisible. Therefore, the Taste Language supports delicious flavoring rules by describing them in pattern format. Japanese Soup Stock
Patterns is introduced as an example of Taste Language. And some examples of dishes that use these patterns to think in terms of
seasoning are introduced. As a result, creative cooking can be done with or without recipes, by treating it as exploring the taste of daily
cooking.
ID Paper Title Paper Author(s) PDF
10 Patterns for HR Developing Technical Training Ayana Chandler
Kotaro Ogino
Yasuo Hosotani
Paper Abstract
When HR is in charge of developing technical training, they do not have the
technical expertise related to the content, and usually request external vendors to
create the material. However when using external vendors, the content depends on
the vendor, and is often difficult to customize the content to match your companies
situation. Also due to rapid change in technology the training must be able to flexibly
adapt to changes.
We propose pattern languages where HR involves internal engineers and uses
agile methodology to produce and continuously improve effective training material
that meets company needs.
With these patterns, the author in HR succeeded to develop 22 training courses in
DevOps training program over half a year by involving 40 engineers. This was the
program with the highest demand in the company. During that period, about 300
engineers from 32 organizations in the company participated in the DevOps training
and based on their feedback, we kept implementing improvements. As a result, the
median of NPS(Net Promoter Score) increased from 6 to 31.
ID Paper Title Paper Author(s) PDF
11 Patterns for Motivating Customers in a Pattern Language for
Affective-Science-based Marketing
Takashi Iba
Miho Masai
Yuuri Abe
Yuji Kosaka
Paper Abstract
In this paper, we present a pattern language for affective-science-based marketing, which is a collection of practical knowledge to encourage a
successful business that offers new value, proposes a deeply wonderful life, and shares the excitement with customers through products and
services in mutual respect, so that sales will naturally increase as an extension of pleasure. This practical knowledge has been nurtured in Japan
for about 20 years in a community of practice with about 1,500 companies participating. In this pattern language consisting of a total of 40
patterns, this paper will cover 10 patterns related to “Motivating Customers”: Moved to Buy, Obviously There, Interesting Invitation, Action Guide,
Discover Value, Enticingly Convey, Bridge to Buying, All-Inclusive Value, Master’s Recommendation, and Deeply Wonderful World. These consist of
patterns for LET THEM KNOW (beginner level), CONVEY VALUE (intermediate level), and GIVE THEM JOY (advanced level).
ID Paper Title Paper Author(s) PDF
12 誰もが生き生きと働ける社会を導くパターン・ランゲージ(ハタパタ)の提案
Suggestion of "Pattern Language for Work in Pluriverse".
Keiji Endo
Paper Abstract
本稿は、AsianPLoP2018「サポーターズ・パターンの提案と職業リハビリテーション・パターンの試案」及び
AsianPLoP2019「誰もが生き生きと働ける社会を導くユニバーサル・キャリアデザイン・パターン」の続編であ
る。障害者就労支援のパターン・ランゲージとして、名称を「ハタパタ」と変更したものを再提案する。これは、
障害のある本人にとって働き方を考える参考に、また、家族や職場の同僚、支援機関のスタッフなどの本人をサ
ポートする機会のある人にとってサポートのあり方を考える参考になるものを目指している。
This paper is a sequel to AsianPLoP2018 “ Suggestion of "Pattern Language for Supporters" and
tentative plan of "Vocational Rehabilitation Patterns” and AsianPLoP2019 “Universal Career Design
Pattern that Leads a Society where Everyone can Work Lively ” .We will re-suggest the pattern
language for supporting persons with disabilities who have changed the name to “ hata - pata ”
(“hata” is an abbreviation for “work”,”pata” is an abbreviation for “pattern”).We aim to
help people with disabilities think about their work styles and people such as family, colleagues at
work, and staff at support organization think about their support styles.
ID Paper Title Paper Author(s) PDF
13 Software Engineering Patterns for Machine Learning
Applications (SEP4MLA)
Hironori Washizaki
Foutse Khomh
Yann-Gaël Guéhéneuc
Paper Abstract
To grasp the landscape of software engineering patterns for machine learning (ML) applications, a systematic literature review of both
academic and gray literature is conducted to collect good and bad software-engineering practices in the form of patterns and anti-patterns for
ML applications. From the 32 scholarly documents and 48 gray documents identified, we extracted 12 ML architecture patterns, 13 ML design
patterns, and 8 ML anti-patterns. From these 33 ML patterns, we describe three major ML architecture patterns (“Data Lake”, “Distinguish
Business Logic from ML Models”, and “Microservice Architecture”) and one ML design pattern (“ML Versioning”) in the standard pattern
format so that practitioners can (re)use them in their contexts.