<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5697110185156025739</id><updated>2012-02-16T16:05:17.367+01:00</updated><category term='Safety'/><category term='Real-time'/><category term='Modeling'/><category term='Eclipse'/><title type='text'>From Time to Time</title><subtitle type='html'>Some technical experiments on tooling real-time system engineerings.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://modeldrivenblog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://modeldrivenblog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Fred</name><uri>http://www.blogger.com/profile/00352547986940414343</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/-l-VOazcB5aA/TgETz9f1CxI/AAAAAAAAABs/INIMXeUtkPE/s220/fred.jpeg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5697110185156025739.post-1512230521746592195</id><published>2011-12-09T14:51:00.001+01:00</published><updated>2011-12-28T09:39:00.557+01:00</updated><title type='text'>Performing Safety Analyses and System Designs conjointly : a viewpoint matter !</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div style="text-align: justify;"&gt;During the last &lt;a href="http://www.csdm2011.csdm.fr/"&gt;CSDM 2011&lt;/a&gt; conference, I have presented our work made in the &lt;a href="http://www.imofis.org/"&gt;IMOFIS&lt;/a&gt; project.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;IMOFIS was an R&amp;amp;D project with Renault, Alstom Transport, Systerel, UTC, CEA-List and Obeo to develop an environment that assists safety engineers to analyse and verify their systems. This project ended on October 25 2011.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;In this project, we have developed a metamodel and a tool, named &lt;a href="http://marketplace.obeonetwork.com/module/risk-analysis#description"&gt;Alea ToolKit&lt;/a&gt;, to capture both parts of the system designs and parts of the safety analyses needed to build a critical systems.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;For example, one system studied in this project is the &lt;a href="http://cdn.streamlike.com/player/getEmbedFive?med_id=86bbb85818e97289&amp;amp;width=610&amp;amp;height=458"&gt;Communication Based Train Control&lt;/a&gt;&amp;nbsp; (CBTC). To build such systems, typical process is dual : on one side the system engineering and in other side the safety engineering. The first one leads to build a safe system. The second leads to verify that the system is build in safety. Between this two engineerings, the exchanges are models, documents and mainly requirements. System have to manage requirements (refine, satisfy, derive it). Safety has to tag requirements as safety ones.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;img border="0" height="301" src="http://4.bp.blogspot.com/-Vr4pmajyEvs/TuIYeW6wQzI/AAAAAAAAAEc/CV4vwSbNv1k/s320/S%25C3%25A9lection_335.png" style="margin-left: auto; margin-right: auto;" width="320" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Typical system engineering process&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;One key problematic in such process is to be able to synchronize system and safety world. One subset of needs is :&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;the adaptability, i.e to provide a tool and methodology usable for several projects and even several domains such as railway and automotive ones.&amp;nbsp; &lt;/li&gt;&lt;li&gt;the interoperability, i.e. to be able to reference system modeling elements to describe the safety analyses, &lt;/li&gt;&lt;li&gt;the consistency, i.e. to provide facilities in order to manage several safety modeling levels (Preliminary Hazard Analysis, Fault Tree, FMEA). We want to help user to manage the consistency among thus abstraction levels, &lt;/li&gt;&lt;li&gt;the traceability, i.e. to be able to compute links among engineerings and to use those links for navigation.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Vr4pmajyEvs/TuIYeW6wQzI/AAAAAAAAAEc/CV4vwSbNv1k/s1600/S%25C3%25A9lection_335.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-R8esP3zomvg/TuIb1MNiZgI/AAAAAAAAAEk/rTXQPaXjJbM/s1600/S%25C3%25A9lection_336.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="138" src="http://4.bp.blogspot.com/-R8esP3zomvg/TuIb1MNiZgI/AAAAAAAAAEk/rTXQPaXjJbM/s320/S%25C3%25A9lection_336.png" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;A set of needs explored in IMOFIS&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Hence,to fulfill those needs, we have explored the use of a viewpoint based approach with Obeo Designer. The key idea is to capitalize concepts in a generic/general safety metamodel and to provide different views to specialize the use of this generic metamodel for a specific concerns : a specific abstraction level or a specific domain. This metamodel is build on the the Eclipse Modeling Framework in order to achieve the interoperability with other system metamodels (SysML in our case). The views are implemented in a viewpoint based-engine : Obeo Designer. The resulting modeling framework is the &lt;a href="http://marketplace.obeonetwork.com/module/risk-analysis#description"&gt;Applied metamodeL for safEty Analyses ToolKit&lt;/a&gt;. &lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-TPeftnIE1qs/TvrMHlXBN3I/AAAAAAAAAG4/UZt5gHkhj_w/s1600/S%25C3%25A9lection_352.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="280" src="http://1.bp.blogspot.com/-TPeftnIE1qs/TvrMHlXBN3I/AAAAAAAAAG4/UZt5gHkhj_w/s400/S%25C3%25A9lection_352.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: 0px; margin-right: auto; text-align: left;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;To illustrate such a tool, let's illustrate on the CBTC&amp;nbsp; example. Firstly, we check the correct viewpoints.&lt;/div&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-RKV5zjibm2U/TuhyufNhl2I/AAAAAAAAAGE/xa3GbnCy39g/s1600/viewpoints.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="255" src="http://1.bp.blogspot.com/-RKV5zjibm2U/TuhyufNhl2I/AAAAAAAAAGE/xa3GbnCy39g/s400/viewpoints.PNG" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;In a viewpoint based-approach, user choose the viewpoint to load.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;Then, let's take a look to the system design from the SysML viewpoint.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-MMCjlhrA6GU/TuIu6hTe41I/AAAAAAAAAFM/Rj2B9nfgWEE/s1600/sysml.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-MMCjlhrA6GU/TuIu6hTe41I/AAAAAAAAAFM/Rj2B9nfgWEE/s640/sysml.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/-RKrPG372Csc/TuaHJ91ai8I/AAAAAAAAAFk/cAZ4ysNxVkM/s1600/ibd_sysml.PNG" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="265" src="http://2.bp.blogspot.com/-RKrPG372Csc/TuaHJ91ai8I/AAAAAAAAAFk/cAZ4ysNxVkM/s640/ibd_sysml.PNG" width="640" /&gt;&lt;/a&gt; &lt;br /&gt;&lt;div style="text-align: justify;"&gt;From SysML, user can navigate to the safety analyses. For example, the F2 function is used in two safety analyses : a cause analysis (Fault tree analysis) and an accident case analysis (Preliminary Hazard Analysis).&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-6GwIIDNHGAo/TuaHOekPHSI/AAAAAAAAAFs/Yko5mry-pq4/s1600/traceability.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="256" src="http://4.bp.blogspot.com/-6GwIIDNHGAo/TuaHOekPHSI/AAAAAAAAAFs/Yko5mry-pq4/s640/traceability.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In fact, the safety engineer described the accident case from the SysML model : i.e. he references the SysML CTBC Block and the F2 function from the SysML model. Hence, the safety engineer interoperate with the system design in order to build his analysis.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-6l_DOX-zCMs/TuIuym-mPcI/AAAAAAAAAE8/bcEkF36fJyE/s1600/pha_real.PNG" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="166" src="http://4.bp.blogspot.com/-6l_DOX-zCMs/TuIuym-mPcI/AAAAAAAAAE8/bcEkF36fJyE/s640/pha_real.PNG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;From the Alea ToolKit point of view, this scenario is "just" a graphical view on a global enhanced fault tree. The viewpoint tool manage the consistency between this event sequence view and the cause analysis view represented as a fault tree. The following picture is the projection of the previous scenario from a fault tree point of view.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&amp;nbsp;&lt;a href="http://4.bp.blogspot.com/-J1QE6NmF-nI/TuIuzuaZv1I/AAAAAAAAAFE/CGyt3n1KYgo/s1600/pha_tree.PNG" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://4.bp.blogspot.com/-J1QE6NmF-nI/TuIuzuaZv1I/AAAAAAAAAFE/CGyt3n1KYgo/s400/pha_tree.PNG" width="348" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;The viewpoint manage also the traceability links between the views. For example, the traceability companion allow to navigate among the safety views. From a second accident case for the excessive speed hazard, user can navigate to the previous scenario.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-1Yfbbqi1e-k/TuaHQsXLQhI/AAAAAAAAAF0/6yY1Fh4cYBU/s1600/traceabilitySafety.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/-ENZJdFlzUi8/TuaHd3BRmJI/AAAAAAAAAF8/LeoV54C_tE8/s1600/screenshot_156.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="215" src="http://1.bp.blogspot.com/-ENZJdFlzUi8/TuaHd3BRmJI/AAAAAAAAAF8/LeoV54C_tE8/s400/screenshot_156.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Hence, viewpoint based approach allow to provide an integrated modeling framework gathering Safety and System concerns. It improves information search, communication (before many documents were parsed) and coherency among safety/system analyses. This approach is not a new set of methods for safety analyses. It doesn't take into account all the safety activities but PHA, SHA and FMEA modeling at the system level.&amp;nbsp; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Next steps are bridges : a safety viewpoint is not only graphical representations, but this is also a set of filters and information synchronizations for specific concerns. Hence my next work is to enhance those graphical viewpoints in order to connect business tools such as my AltaRica editor. This is another R&amp;amp;D story ! &lt;/div&gt;&lt;br /&gt;If you want more information, a complete presentation of this work is available &lt;a href="http://prezi.com/s5op0nbygtp1/performing-safety-analyses-and-sysml-designs-conjointly-a-viewpoint-matter/"&gt;here&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5697110185156025739-1512230521746592195?l=modeldrivenblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://modeldrivenblog.blogspot.com/feeds/1512230521746592195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://modeldrivenblog.blogspot.com/2011/12/performing-safety-analyses-and-system.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/1512230521746592195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/1512230521746592195'/><link rel='alternate' type='text/html' href='http://modeldrivenblog.blogspot.com/2011/12/performing-safety-analyses-and-system.html' title='Performing Safety Analyses and System Designs conjointly : a viewpoint matter !'/><author><name>Fred</name><uri>http://www.blogger.com/profile/00352547986940414343</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/-l-VOazcB5aA/TgETz9f1CxI/AAAAAAAAABs/INIMXeUtkPE/s220/fred.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Vr4pmajyEvs/TuIYeW6wQzI/AAAAAAAAAEc/CV4vwSbNv1k/s72-c/S%25C3%25A9lection_335.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5697110185156025739.post-5217452206951370547</id><published>2011-06-27T00:19:00.003+02:00</published><updated>2011-06-27T09:28:05.763+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Safety'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Modeling'/><title type='text'>An AltaRica textual editor in Eclipse</title><content type='html'>&lt;style type="text/css"&gt; &lt;!--  @page { margin: 2cm }  P { margin-bottom: 0.21cm }  A:link { so-language: zxx } --&gt; &lt;/style&gt;  &lt;br /&gt;&lt;div style="text-align: justify;"&gt;Since more than one year, I have heard about the &lt;a href="http://altarica.labri.fr/"&gt;AltaRica&lt;/a&gt; language provided by the &lt;a href="http://www.labri.fr/"&gt;LaBRI&lt;/a&gt;. AltaRica is a language designed to model both functional and dysfunctional behaviors of critical systems. AltaRica provides a syntax and a set of model-checkers like &lt;a href="http://altarica.labri.fr/forge/projects/4/wiki"&gt;ARC&lt;/a&gt; that allows to analyze the set of reachable configurations of a concurrent system from an initial state for example. This language has a formal semantic and seems quite easy to learn and to use !&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;However, I haven't found a free plug and play editor for a beginner (as me) with auto-completion and error detection. I have thus implemented, during my spare time, a textual AltaRica Eclipse-based editor in a first version.&lt;/div&gt;&lt;br /&gt;My motivation are :&lt;br /&gt;&lt;ul&gt;&lt;li&gt;to learn the langage&amp;nbsp;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;to be able to use this langage with the &lt;a href="http://www.eclipse.org/emf/"&gt;Eclipse Modeling Framework&lt;/a&gt;. In fact, if I succeed, the AltaRica model and all other models used during my critical systems developments (SysML, UML, EventB, Requirements, traceability) will be managed by the same common modelling framework. It will thus facilitate the interroperability !&amp;nbsp;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;to learn the Eclipse-Based &lt;a href="http://www.eclipse.org/Xtext/"&gt;xText&lt;/a&gt; technology for which you can describe the AltaRica grammar and generate the Eclipse-integrated textual editor.&lt;/li&gt;&lt;/ul&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-MlF3SLOnxxE/TgEdR2IaSfI/AAAAAAAAACI/XLWVh9BVWBc/s1600/S%25C3%25A9lection_231.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/-MlF3SLOnxxE/TgEdR2IaSfI/AAAAAAAAACI/XLWVh9BVWBc/s400/S%25C3%25A9lection_231.png" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;An extract from the xText AltaRica grammar&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;style type="text/css"&gt; &lt;!--  @page { margin: 2cm }  P { margin-bottom: 0.21cm } --&gt; &lt;/style&gt;  &lt;br /&gt;&lt;div style="margin-bottom: 0cm; text-align: justify;"&gt;After several hours, I succeed in providing my first AltaRica editor with auto completion and error detection. For sample, I can edit the counter example delivered with ARC and compile this sample.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-OTryzGMi4I4/TgEe8qfQ9cI/AAAAAAAAACM/5S2imusSmYs/s1600/S%25C3%25A9lection_232.png" style="margin-left: auto; margin-right: auto;" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;A simple counter from 0 to 10. The counter can be incremented by&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; one unit using inc event or by two units using inc2 event.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-IfZVQZe_GyU/TgEhHFlFMjI/AAAAAAAAACU/aRKV74znkJ0/s1600/S%25C3%25A9lection_234.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-IfZVQZe_GyU/TgEhHFlFMjI/AAAAAAAAACU/aRKV74znkJ0/s1600/S%25C3%25A9lection_234.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Syntax error detection&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-mjybNVkMDUI/TgEhICC8iBI/AAAAAAAAACY/MVc-oJPxdw8/s1600/S%25C3%25A9lection_235.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-mjybNVkMDUI/TgEhICC8iBI/AAAAAAAAACY/MVc-oJPxdw8/s1600/S%25C3%25A9lection_235.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Completion proposals&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-xgNuKn13oak/TgEfgc0V76I/AAAAAAAAACQ/xfQpcdrTFmc/s1600/S%25C3%25A9lection_233.png" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-xgNuKn13oak/TgEfgc0V76I/AAAAAAAAACQ/xfQpcdrTFmc/s1600/S%25C3%25A9lection_233.png" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;The ARC compilation results when asking all the path to get count &amp;gt;=3&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;style type="text/css"&gt; &lt;!--  @page { margin: 2cm }  P { margin-bottom: 0.21cm } --&gt; &lt;/style&gt;  &lt;br /&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;style type="text/css"&gt; &lt;!--  @page { margin: 2cm }  P { margin-bottom: 0.21cm } --&gt; &lt;/style&gt;  &lt;/div&gt;&lt;div align="JUSTIFY" style="margin-bottom: 0cm;"&gt;The ARC console is not yet integrated in Eclipse because I don't know if someone else could be interested either in using or in contributing to this editor. Please, feel free to contact me if you are interesting !  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5697110185156025739-5217452206951370547?l=modeldrivenblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://modeldrivenblog.blogspot.com/feeds/5217452206951370547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://modeldrivenblog.blogspot.com/2011/06/altarica-textual-editor-in-eclipse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/5217452206951370547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/5217452206951370547'/><link rel='alternate' type='text/html' href='http://modeldrivenblog.blogspot.com/2011/06/altarica-textual-editor-in-eclipse.html' title='An AltaRica textual editor in Eclipse'/><author><name>Fred</name><uri>http://www.blogger.com/profile/00352547986940414343</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/-l-VOazcB5aA/TgETz9f1CxI/AAAAAAAAABs/INIMXeUtkPE/s220/fred.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-MlF3SLOnxxE/TgEdR2IaSfI/AAAAAAAAACI/XLWVh9BVWBc/s72-c/S%25C3%25A9lection_231.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5697110185156025739.post-7025483833018025175</id><published>2011-01-13T16:41:00.002+01:00</published><updated>2011-12-27T22:19:33.909+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Safety'/><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><category scheme='http://www.blogger.com/atom/ns#' term='Modeling'/><title type='text'>MDE in action for safety analysis modelling</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Since two years, I am working for the&lt;a href="http://www.imofis.org/"&gt; IMOFIS R&amp;amp;D project&lt;/a&gt;. The last year, we have developed a graphical modeler for safety concerns. This modeler is based on the &lt;a href="http://en50126.blogspot.com/"&gt;EN 50126&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/ISO_26262"&gt;ISO 26262&lt;/a&gt; norms.&lt;br /&gt;&lt;br /&gt;The key idea of this work is to provide a graphical safety viewpoint  for system engineering. The system is design with the &lt;a href="http://www.sysml-france.fr/"&gt;SysML&lt;/a&gt; language. Safety engineers describe their analysis with the safety viewpoint.           &lt;style type="text/css"&gt;p { margin-bottom: 0.21cm; }&lt;/style&gt;  &lt;br /&gt;&lt;div align="JUSTIFY" style="background: none repeat scroll 0% 0% transparent; border: medium none; font-family: inherit; margin-bottom: 0cm; margin-top: 0.4cm; padding: 0cm;"&gt;&lt;span style="font-size: small;"&gt;The result is pretty cool ! In the next figure I described that the SysML “F2” operation of the SysML Block “CBTC” (C&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-style: normal;"&gt;&lt;span style="font-weight: normal;"&gt;ommunication Based Train Control)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: x-small;"&gt; &lt;span style="font-family: inherit; font-size: small;"&gt;is referenced by a barrier to prevent a derailment (the accident) in case of an excessive speed (the hazard).&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://www.obeonetwork.org/images/ObeoNetwork/safety/safety_preventive_palliative.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="283" src="http://dl.dropbox.com/u/22228046/Marketplace/risk-analysis/safety_preventive_palliative.png" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;In this work, we use several model-driven technologies to build our software :&lt;br /&gt;&lt;ol&gt;&lt;li&gt;The &lt;a href="http://www.eclipse.org/modeling/emf/"&gt;Eclipse Modeling Framework&lt;/a&gt; to describe the safety metamodel&lt;/li&gt;&lt;li&gt;The &lt;a href="http://www.eclipse.org/modeling/emft/?project=eef"&gt;Extended Editing Framework&lt;/a&gt; to generate both property views and wizards&lt;/li&gt;&lt;li&gt;The &lt;a href="http://obeo.fr/pages/obeo-designer/en"&gt;Obeo Designer viewpoint-based studio&lt;/a&gt; to create graphical views&amp;nbsp; without any manual code&lt;/li&gt;&lt;li&gt;The &lt;a href="http://gforge.enseeiht.fr/docman/view.php/.../TPC_GenDoc2_v1.1.0_tutorial.pdf"&gt;GenDoc2 Topcased&lt;/a&gt; technology to generate documentations. This technology is based on the &lt;a href="http://www.eclipse.org/acceleo/"&gt;Acceleo&lt;/a&gt; model-driven code generation.&lt;/li&gt;&lt;/ol&gt;I will present this work on the Topcased Day conference in february !&amp;nbsp; In the meantime, you can look for screenshots, &lt;a href="http://www.obeonetwork.org/images/ObeoNetwork/safety/tutoriel_obeo_demo_decembre.swf"&gt;videos&lt;/a&gt; and publications on the &lt;a href="http://www.obeonetwork.org/overview/system-engineering-repository/riskanalysis"&gt;Obeo network&lt;/a&gt; !&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-QnRxdg12Ehw/Tvo2VXGlSWI/AAAAAAAAAGs/KUUesoXsfmo/s1600/screenshot_081.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="234" src="http://3.bp.blogspot.com/-QnRxdg12Ehw/Tvo2VXGlSWI/AAAAAAAAAGs/KUUesoXsfmo/s320/screenshot_081.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5697110185156025739-7025483833018025175?l=modeldrivenblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://modeldrivenblog.blogspot.com/feeds/7025483833018025175/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://modeldrivenblog.blogspot.com/2011/01/mde-in-action-for-safety-analysis.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/7025483833018025175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/7025483833018025175'/><link rel='alternate' type='text/html' href='http://modeldrivenblog.blogspot.com/2011/01/mde-in-action-for-safety-analysis.html' title='MDE in action for safety analysis modelling'/><author><name>Fred</name><uri>http://www.blogger.com/profile/00352547986940414343</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/-l-VOazcB5aA/TgETz9f1CxI/AAAAAAAAABs/INIMXeUtkPE/s220/fred.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-QnRxdg12Ehw/Tvo2VXGlSWI/AAAAAAAAAGs/KUUesoXsfmo/s72-c/screenshot_081.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5697110185156025739.post-1721836087583189061</id><published>2010-12-15T08:55:00.001+01:00</published><updated>2011-06-27T00:27:50.462+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Real-time'/><category scheme='http://www.blogger.com/atom/ns#' term='Modeling'/><title type='text'>RT-Simex R&amp;D project presented to the FSE conference</title><content type='html'>Last month, &lt;br /&gt;&lt;br /&gt;Julien, from the INRIA Aoste team, has   presented the RT-Simex project to the FSE conference   (http://fse18.cse.wustl.edu/). The slides are available here : &lt;a class="moz-txt-link-freetext" href="http://www.slideshare.net/fthomasfr/fsertsimex"&gt;http://www.slideshare.net/fthomasfr/fsertsimex.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5697110185156025739-1721836087583189061?l=modeldrivenblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://modeldrivenblog.blogspot.com/feeds/1721836087583189061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://modeldrivenblog.blogspot.com/2010/12/rt-simex-r-project-presented-to-fse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/1721836087583189061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5697110185156025739/posts/default/1721836087583189061'/><link rel='alternate' type='text/html' href='http://modeldrivenblog.blogspot.com/2010/12/rt-simex-r-project-presented-to-fse.html' title='RT-Simex R&amp;D project presented to the FSE conference'/><author><name>Fred</name><uri>http://www.blogger.com/profile/00352547986940414343</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/-l-VOazcB5aA/TgETz9f1CxI/AAAAAAAAABs/INIMXeUtkPE/s220/fred.jpeg'/></author><thr:total>0</thr:total></entry></feed>
