Pipelines: Modelling a software architecture through relations
- Ernst-Erich Doberkat
- … show all 1 hide
Purchase on Springer.com
$39.95 / €34.95 / £29.95*
Rent the article at a discountRent now
* Final gross prices may vary according to local VAT.
A pipeline is a popular architecture which connects computational components (filters) through connectors (pipes) so that computations are performed in a stream like fashion. The data are transported through the pipes between filters, gradually transforming inputs to outputs. This kind of stream processing has been made popular through UNIX pipes that serially connect independent components for performing a sequence of tasks. We show in this paper how to formalize this architecture in terms of monads, hereby including relational specifications as special cases. The system is given through a directed acyclic graph the nodes of which carry the computational structure by being labelled with morphisms from the monad, and the edges provide the data for these operations. It is shown how fundamental compositional operations like combining pipes and filters, and refining a system by replacing simple parts through more elaborate ones, are supported through this construction.
- Pipelines: Modelling a software architecture through relations
Volume 40, Issue 1 , pp 37-79
- Cover Date
- Print ISSN
- Online ISSN
- Additional Links
- Author Affiliations
- 1. Chair for Software Technology, FB 4 Informatik X, University of Dortmund, 44221, Dortmund, Germany