Project

General

Profile

TK2 and AF3 Plugins Description

TK2

The fortiss tooling kernel version 2 (TK2) comprises the following plugins:

Plugin Description Responsibility
Primary Secondary
tooling.common Base imports and common utilities. AD SB
tooling.graphicsGL GL-based common infrastructure. FH JE
tooling.kernel The kernel infrastructure implementation. SB JE
tooling.base Base implementations shared by modeling tools. SB JE
spiderchart.ui Base implementation for spider charts. JE SB

AF3

The following plugins are currently integrated into the AF3 Phoenix product:

Plugin Description Responsibility
Primary Secondary
com.microsoft.z3 Microsoft Z3 libraries, Java bindings and utilities JE MV
eu.fbk.af3.tools.diagram Possibly removed ? ?
af3.allocation Deployments between hierarchical platforms layers (logical, task, partition, HW platform architecture) SB AD
af3.component Component language with code behavior specifications. AB FH
af3.cosimulation TM JE
af3.exploration AD JE
af3.exploration.smt MV JE
af3.expression Expression and action language (functional and imperative). FH AB
af3.generator.common Common code for Java and C code generation. FH AB
af3.mira Requirements modeling and analysis. refactoring 09.12.
af3.mode Mode automata for component behavior specification. FH TC
af3.msc Message sequence charts. -- --
af3.ocra OCRA-based verification. -- --
af3.operatorpanel Operator panel specifications. FH TC
af3.partition Vendor-independent partition architecture model SB AD
af3.platform Platform modeling framework and Generic Platform model SB FH
af3.platform.hierarchic Generic hierarchical platform. SB AD
af3.project Project collecting all design specifications. FH AB
af3.rcp.application AutoFOCUS 3 application. AD FH
af3.rcp.help AutoFOCUS 3 online help. SB JE
af3.refinement Modeling of abstract to concrete model refinements. -- --
af3.safety Modeling of safety properties AD JE
af3.safetycases Specification of safety cases. CC SB?
af3.schedule Modeling resource and system schedules SB JE
af3.specification Modeling of verification specifications. -- --
af3.state State automata for component behavior specification. FH TM
af3.task Vendor-independent task architecture model JE SB
af3.testing Base implementation of testing models and various generation methods. -- --
af3.timing Modeling of temporal requirements and properties AD TM
af3.tools Common code for external tool integrations. -- --
pragmatictransformation -- -- --

Plugins which are planned to be added in 2.17

Plugin Description Responsibility
Primary Secondary
org.fortiss.variability AB ?
org.fortiss.af3.variability AB ?
org.fortiss.af3.variability.ui AB ?
org.fortiss.af3.variability.featuremodel AB ?
org.fortiss.af3.variability.featuremodel.ui AB ?
org.fortiss.af3.exploration.alg MOEA DSE AD ?

Additional Plugins

The following plugins are currently not integrated into the AF3 Phoenix product.

Plugin Description Responsibility
Primary Secondary
af3.exploration.alg AD ?
af3.obcsa SZ? ?
af3.reuse AB
af3.security VN
af3.sim.behavior (To be merged with cosimulation)
af3.variability AB SA
conti JE
variability AB SA

AF3 Plugins Conventions

Naming conventions

We distinguish consistently between plugins concerning the AF3 modeling language and its user interface implementation.
The naming convention is

org.fortiss.af3.the_plugin

for the language (meta-model, semantic functionality), and
org.fortiss.af3.the_plugin.ui

for the presentation and user interaction implementation.

Top-level Packages

The modeling language plugins will adhere to the following list of top-level packages.

model: The EMF meta-model classes. This package is usually found in generated-src folder.
annotations: Implementation related to the annotation framework.
compose: Implementations of compositors.
constraint: Implementations of constraints.
generator: Implementations of generators (if the language supports that). Target language identifier is usually the next level of package names, e.g. generator.java.
prototypes: Implementation of prototypes.
simulator: Implementations of a simulator backend (if the language supports that).
utils: Utility classes and methods. Classes in this package only contain static implementations.

The user interface plugins will adhere to the following list of top-level elements.

editor: Implementations of editors.
editpart: Implementations of graphical editors' parts.
handler: Implementations of model element handlers.
properties: Implementations of property sections.
simulator: Implementations of a simulator front-end (if the language supports that).
utils: Utility classes and methods. Classes in this package only contain static implementations.