Inputs and outputs in the process specification language

Inputs and outputs are ubiquitous in flow modeling, including popular programming languages. This paper examines how inputs and outputs can be formalized in the Process Specification Language (PSL) to reduce ambiguity and increase expressiveness compared to conventional flow modeling representations. Inputs and outputs are shown to be early design stage notions independent of existing PSL concepts, preconditions and postconditions in particular. The paper defines axioms for input and output, and constraints on existing PSL concepts. Some of these relate early and late stage design, while others provide for multiple views of inputs and outputs. It also identifies which aspects of input are metatheoretic and consequently outside the scope of PSL.