Style guide

The following rules are recommended when using AADL for modeling a system. These are more modeling guidelines and are not mandatory. However, they are recommended in case you want to use a consistency naming rules and also want to share your models with other AADL users that might be used to them.

AADL entityRulesExamples
All
  • Separate words with specific case. For example, do not write Foo_Bar but FooBar
  • Try to provide hints about the functional operation of the entity
process pr_receive_http_request
Files
  • Name of the contained AADL public package with the :: being replace by -
Example: package foo::bar is stored as foo-bar.aadl
Component type
  • Start with the kind of components
  • Provide a hint about the function/operation
process pr_receive_http_request
Connections
  • conn_[COMPONENT_SOURCE]_[COMPONENT_DESTINATION]
  • If you have several connections between two components, try to dissociate it with a suffix related to the context such as:
    conn_[COMPONENT_SOURCE]_[COMPONENT_DESTINATION]_to_sensor
conn_source_dst : port source.dout -> dest.din
Indentation Blocks should be indenteded in a consistent manner, using either spaces or tab
process myprocess
features
   f1 : in event port;
   f2 : out event port;
properties
   Property_Name => Property_Value;
end myprocess;
Features
  • Prefix by the direction
  • Try to provide information related to the context
process chronometer
features
   in_minute_elapsed : in event port; 
end chronometer;