Write a Blog >>
ISSTA 2021
Sun 11 - Sat 17 July 2021 Online
co-located with ECOOP and ISSTA 2021
Mon 12 Jul 2021 15:30 - 16:00 at COP - COP

In software engineering, programs are ideally partitioned into independently maintainable and understandable modules. However, as a system grows, its architecture might lose the capability to modularly accommodate new concepts. While refactoring is expensive and the language might not provide appropriate primary language constructs to express certain cross-cutting concerns, programmers are still able to explain and delineate convoluted concepts through secondary means: code comments, documentation, or communicating tacit knowledge.

Secondary constructs are easy to change and provide high flexibility in communicating cross-cutting concerns and other concepts among programmers, but have no reified representation that can be explored and maintained through tools.

In this exploratory work, we discuss novel ways to express a wide range of concepts, including cross-cutting concerns, patterns, and lifecycle artifacts independently of the dominant decomposition imposed by an existing architecture. Our concepts are first-class objects inside the programming environment that retain the capability to change as easily as code comments. We explore new tools that allow programmers to view and change their software from the different perspective of individual concepts.

Our designs are geared towards facilitating multiple secondary perspectives on a system to co-exist alongside the original architecture, hence making it easier to explore, understand, and explain complex contexts and narratives not expressible in traditional modularity constructs.

First-class Concepts: Reifying Architectural Knowledge Beyond the Dominant Decomposition (2021-cop-first-class-concepts-mattis (1).pdf)1.13MiB

Mon 12 Jul

Displayed time zone: Brussels, Copenhagen, Madrid, Paris change

13:00 - 17:00
COPCOP at COP
13:00
30m
Talk
[Invited Talk] Application of Context-Oriented Programming Paradigm to Automobile Driving Assistance System
COP
Kenji Hisazumi Kyushu University, Tsuneo Nakanishi
File Attached
13:30
30m
Talk
[Regular Paper] Resolving Synchronization Conflicts in Role-based Multimodel-Synchronization Environments
COP
Sebastian Ebert Technische Universität Dresden, Tim Kluge TU Dresden, Germany, Sebastian Götz Technische Universität Dresden
DOI File Attached
14:00
30m
Talk
[Invited Talk] A Method for Context-Oriented Management of ROS2-FPGA Module Reconfiguration
COP
Takeshi Ohkawa Tokai University
File Attached
14:30
15m
Talk
[Student Talk] A Language to Safely Exploit Multi-Version Modules at the Expression-level
COP
Yudai Tanabe Tokyo Institute of Technology
File Attached
14:45
15m
Talk
[Student Talk] Object-Oriented Programming with Versions
COP
File Attached
15:00
30m
Talk
[Invited Talk] Aspect-Oriented Modeling Mechanism for Ultra-Flexible Software Architecture
COP
Natsuko Noda Shibaura Institute of Technology
File Attached
15:30
30m
Talk
[Regular Paper] First-class Concepts: Reifying Architectural Knowledge Beyond the Dominant Decomposition
COP
Toni Mattis Hasso Plattner Institute, University of Potsdam, Tom Beckmann Hasso Plattner Institute, Patrick Rein Hasso Plattner Institute, Robert Hirschfeld Hasso Plattner Institute (HPI), University of Potsdam, Germany
DOI File Attached
16:00
30m
Talk
[Invited Talk] Generating Adaptations in Context-Oriented Programming using Reinforcement Learning Options
COP
Nicolás Cardozo Universidad de los Andes
Pre-print Media Attached
16:30
30m
Talk
[Regular Paper] Towards a Framework for Analyzing Context-Oriented Programming Languages
COP
Achiya Elyasaf Ben-Gurion University of the Negev, Arnon Sturm Ben-Gurion University of the Negev
DOI File Attached