How to Use the BLESS Plug-in to OSATE Brian R Larson Kansas State University brl@k-state.edu September 29, 2014 Architecture-Centric Virtual Integration Workshop MoDELS Conference Universitat Politecnica de Valencia Brian R Larson BLESS Tutorial September 29, 2014 1 / 14
What is BLESS? Behavior Language for Embedded Systems with Software Annex Sublanguage(s) for AADL Assertion Behavior Interface Specification Language; BLESS::Assertion properties or Assertion annex libraries BLESS State-Machine for thread/system/device annex subclauses subbless Event- and time-free behavior for subprogram annex subclauses Brian R Larson BLESS Tutorial September 29, 2014 2 / 14
Why not BA? BLESS was created concurrently with standardization of the Behavior Modeling annex (BA) standard to AADL. BLESS does (almost) everything BA does, but has completely formal semantics 1 to support proof that behavior meets specification. BLESS (LRM) is being submitted to the AADL committee for standardization. 1 Others have formalized some of BA, but it s not part of the standard, and seems to be mostly mapping of BA into their tool Brian R Larson BLESS Tutorial September 29, 2014 3 / 14
Install OSATE Install OSATE Install OSATE from https://wiki.sei.cmu.edu/aadl/index.php/osate_2; choose Stable version Click the latest version (currently 2.0.8), then products Choose Linux, Mac OS, or Windows Download, unzip, and put it somewhere you can find it (i.e. Applications folder for Mac OS) Launch osate inside the folder (i.e. double-click for Mac OS) 2 Choose a Workspace 2 Depending on your security preferences, you may need to right-click it the first time to launch. Brian R Larson BLESS Tutorial September 29, 2014 4 / 14
Install ANTLR Get ANTLR Help Install New Software; Click Add Button Enter ANTLR as name and http://antlrv3ide.sourceforge.net/updates as location. Wait until projects are found (you do not need to actually install) then Cancel Help Install New Software; Click Add Button again Enter Indigo as name and http://download.eclipse.org/releases/indigo as location. Wait until projects are found (you do not need to actually install) then Cancel Brian R Larson BLESS Tutorial September 29, 2014 5 / 14
Install BLESS Get BLESS Plugin Browse to website http://bless.santoslab.org Click Downloads tab Click The BLESS plug-in for OSATE (includes the Hybrid Annex) Download should start Brian R Larson BLESS Tutorial September 29, 2014 6 / 14
Install BLESS Get Example Projects Click Zip of even more examples Download should start Unzip if not done automatically Brian R Larson BLESS Tutorial September 29, 2014 7 / 14
Install BLESS Install BLESS Plugin Help Install New Software; Click Add Button again Enter BLESS for name Click local button Select BLESS Plugin File Click Next 3 Accept license agreements Click Next again 4 Click Yes when it asks to restart. OSATE relaunches, and you re good to go! 3 May get Install Remediation Page. That s okay. 4 May get Security Warning". Click OK. Brian R Larson BLESS Tutorial September 29, 2014 8 / 14
Install import Import Projects Into Workspace File Import General Existing Projects Into Workspace Select root directory Click Browse... button Choose downloaded example project folder (BLESS-AADL Projects) Select "Copy projects into workspace option Click Finish Brian R Larson BLESS Tutorial September 29, 2014 9 / 14
Documentation Get BLESS LRM and Syntax Card Select Documentation tab on bless.santoslab.org website Click on underlined links Brian R Larson BLESS Tutorial September 29, 2014 10 / 14
Run Run Proof Engine ice-device and physical have some properties and data components used by other projects, but no BLESS behaviors Close all projects but the one you want to try, either Project Close Project, or right-click Close Project (may be able to Close Unrelated Projects ) Click Praying Hands icon Enable BLESS hot keys (optional) Brian R Larson BLESS Tutorial September 29, 2014 11 / 14
Run Project Open Project Folder AADL source is in aadl packages and aadl propertysets Proof scripts are in proof scripts folder May invoke subscripts in subscripts folder (right-click Properties will show where the project is) Brian R Larson BLESS Tutorial September 29, 2014 12 / 14
Run Prove Start Proving Select BLESS step script A file chooser window opens Choose script file in your project Keep stepping to see what happens (load may take several seconds) Select BLESS run script to run whole script (may take a minute) derivations and Theorems" windows open; proof written to console and dump.txt file Brian R Larson BLESS Tutorial September 29, 2014 13 / 14
Questions? Questions? Did it work for you? Brian R Larson BLESS Tutorial September 29, 2014 14 / 14