  This paper proposes the use of notebooks for the design documentation and
tool interaction in the rigorous design of embedded systems. Conventionally, a
notebook is a sequence of cells alternating between (textual) code and prose to
form a document that is meant to be read from top to bottom, in the spirit of
literate programming. We extend the use of notebooks to embedded systems
specified by pCharts. The charts are visually edited in cells inline. Other
cells can contain statements that generate code and analyze the charts
qualitatively and quantitatively; in addition, notebook cells can contain other
instructions to build the product from the generated code. This allows a
notebook to be replayed to re-analyze the design and re-build the product, like
a script, but also allows the notebook to be used for presentations, as for
this paper, and for the inspection of the design. The interaction with the
notebook is done through a web browser that connects to a local or remote
server, thus allowing a computationally intensive analysis to run remotely if
needed. The pState notebooks are implemented as an extension to Jupyter. The
underlying software architecture is described and the issue of proper placement
of transition labels in charts embedded in notebooks is discussed.
