actifsource

Like us


facebook.com/actifsource

Follow us

actifsource on blogger.com
Swiss Made Software

Inhouse Training

Model Driven Software Development for Embedded Systems. more...

News  RSS-Feed abonnieren

actifsource V5.2.1 4/27/12

- 8 Bug Fixes more...


actifsource V5.2.0 4/24/12

- 3 Features - 4 Changes - 10 Bug Fixes more...


Language Workbench Challenge 2012 2/13/12

Actifsource submission for Language Workbench Challenge 2012. more...


Domain Diagram Type 1/11/12

Learn how to customize domain diagrams to your specific need using a diagram type. more...


Diagram with Graphviz 12/20/11

Learn how to use the GraphvizBuildTask to generate diagrams from generated DOT files using Graphviz. more...


Feature Realization 11/21/11

Do you miss a specific feature? Do not hesitate to contact us. We will offer you a fixed price for the realization. more...


Eclipse Community Award 3/1/11

actifsource has been named one of the finalist for the Best Modeling Tool in the Eclipse Community Awards. more...


Actifsource Promo Video 2/21/11

New actifsource promo video on youtube. more...

CIP Models

With CIP models you define the behaviour of embedded system by means of graphical models of cooperating extended state machines. CIP models are constructed with CIP Tool® which generates executable software components.

Systems

A CIP model is composed of a set of concurrent clusters, each consisting of a number of synchronously cooperating state machines called processes. All processes can communicate with each other and with the environment by means of asynchronous channels.

_web_20060318032919im_http_www_ciptool_ch_method_img_cipmodels_cnet.gif

When a CIP model is partitioned into implementation units, the entering and leaving channels of such a unit define the interface model for the generated CIP components.

Clusters

Processes interact within a cluster by means of synchronous event multicast. The interaction connections among processes are defined in a graphical interaction net editor.


_web_20060318032919im_http_www_ciptool_ch_method_img_cipmodels_inet.gif

A cluster is always activated by a channel message leading to a state transition of the receiving process. By means of an emitted pulse, the process thus activated can activate further cluster processes which can in turn activate other processes by pulses. The instantaneous chain reaction resulting from pulse transmission can not be interrupted and defines a complex state transition of the entire cluster. Activated processes can also write messages to their output channels.

Processes

The behaviour of a process is specified by one or several alternative modes, each edited graphically as a state transition diagram. Transition boxes are labelled by input and output symbols.
(first line: input message or input pulse, second line: output pulse, third line: output message)

_web_20060318032919im_http_www_ciptool_ch_method_img_cipmodels_proc.gif

For algorithmic concerns state machines can be extended by variables, operations and conditions defined as C-language constructs. From the high level modelling point of view these constructs represent primitives which add computational power to the executable pure models. This stays in contrast to semi-formal approaches like SA or UML where high-level models have to be rendered executable by programming.
Allocated operations and timer settings are hidden in the graphical model (indicated by an O or T in the small info field of a transition box).