SEAILGMar 16, 2023

Dataflow graphs as complete causal graphs

Cambridge
arXiv:2303.09552v111 citationsh-index: 169
Originality Synthesis-oriented
AI Analysis

This addresses the problem of growing intellectual debt for software developers by enabling better causal understanding at scale, though it is incremental in applying existing causal modeling concepts to a specific programming paradigm.

The paper tackles the difficulty of tracking causal relationships in software systems by proposing flow-based programming (FBP) as an alternative, showing that dataflow graphs can serve as structural causal models to improve tasks like fault localization and business analysis.

Component-based development is one of the core principles behind modern software engineering practices. Understanding of causal relationships between components of a software system can yield significant benefits to developers. Yet modern software design approaches make it difficult to track and discover such relationships at system scale, which leads to growing intellectual debt. In this paper we consider an alternative approach to software design, flow-based programming (FBP), and draw the attention of the community to the connection between dataflow graphs produced by FBP and structural causal models. With expository examples we show how this connection can be leveraged to improve day-to-day tasks in software projects, including fault localisation, business analysis and experimentation.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes