
BIP (Behavior, Interaction, Priority) is a general framework encompassing rigorous design. It uses the BIP language and an associated toolset supporting the design flow. The BIP language is a notation which allows building complex systems by coordinating the behavior of a set of atomic components. Behavior is described as a Petri net extended with data and functions described in C.
The description of coordination between components is layered. The first layer describes the interactions between components. The second layer describes dynamic priorities between the interactions and is used to express scheduling policies. The combination of interactions and priorities characterizes the overall architecture of a component. It confers BIP strong expressiveness that cannot be matched by other languages.
BIP has clean operational semantics that describes the behavior of a composite component as the composition of the behaviors of its atomic components. This allows a direct relation between the underlying semantic model (transition systems) and its implementation.
BIP supports a rigorous design flow characterized by the following:
The BIP design flow is supported by a toolset including translators from various programming modes into BIP, source-to-source transformers as well as a compiler for generating code executable by a dedicated engine.
Read the documentation on the BIP tools to learn how to download and use BIP.
NEW VERSIONS of the BIP tools are AVAILABLE!
R&D on BIP is organized into 5 main activities:
BIP is being used in the following industrial projects: ASCENS, COMBEST, PRO3D, SMECY, ACROSS, MARAE, GOAC, MIND, CHAPI.
You can find below some non trivial case studies with BIP:
Logged in visitors: 237 ; visits: 206343