blob: 88a7c039607f00763c3484bd4a3ab879debc3549 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=iso-8859-1" http-equiv="content-type">
<title>User Manual</title>
<link title="esf-styles" href="../css/style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="banner"> <img src="../images/help_banner.jpg" alt="Help banner"> </div>
<div id="content">
<h1 class="unnumbered">User Manual</h1>
<h2 class="unnumbered">Content</h2>
<ul>
<li><a href="#proj">Create ESF Project</a></li>
<li><a href="#arch">System Architecture</a>
<ul>
<li><a href="#remarks">Remarks</a></li>
<li><a href="#archImport">Import an Existing Architecture to an ESF Project</a></li>
<li><a href="#archCreate">Create a New Architecture inside an ESF Project</a></li>
<li><a href="#archESFView">The ESF Architecture Diagram</a></li>
</ul>
</li>
</ul>
</div>
<div id="proj">
<h1>Create an ESF Project</h1>
<p>Click "New > Project..." either from the "Project Explorer" or the "File" menu.</p>
<p>From the "New Project" dialog, select "Papyrus Project" and click "Next >".</p>
<p>Choose "Eclipse Safety Framework" as architecture context.</p>
<img src="./images/Fig_1_1_ESFNewProject.png" alt="Create Papyrus Project" height="500px">
<p>Name the project as "RecoverySystemESF" and the model file as "recoverySystemESF", then click "Next >".</p>
<p>Select the initial diagrams of your model.</p>
<img src="./images/Fig_1_2_ESFSelectDiagrams.png" alt="Select diagrams" height="450px">
<p>The ESF project will be created and opened in the Papyrus perspective.</p>
<img src="./images/Fig_1_3_ESFProjectCreated.png" alt="ESF Project Created" height="400px">
</div>
<div id="arch">
<h1>System Architecture</h1>
<div id="remarks">
<h2>Remarks</h2>
<p>In UML the Port element does not have direction. But for certains safety analyses, this information is mandatory. For this reason, before to import an architecture model (see below) or apply the "ESFArchitectureConcepts Annotation" (see more below), it is recommended follow this instruction:</p>
<p>For each port, go to the "Properties View" and click on "Comments" tab. In "Owned comments" add a comments: "in", "input", "out" or "output".</p>
<img src="./images/Fig_2_0a_SetPortDirectionByComment.png" alt="Set Port Direction By Comment" height="350px">
<p>If you cant not modify the architecture model, you can modify the "Direction" attribute of SPort (stereotype applied on a port). For each port applied by SPort, go to the "Properties View", click on "ESFArchitectureConcepts" tab and set the "Direction" attribute: "IN" or "OUT". "INOUT" is a default value.</p>
<img src="./images/Fig_2_0b_SetSPortDirection.png" alt="Set SPort Direction" height="300px">
<div>
<div id="archImport">
<h2>Import an Existing Architecture to an ESF Project</h2>
<p>Firstly, import the existing system architecture project to the workspace. Click the "File" or "New > Project..." either from the "Project Explorer".</p>
<img src="./images/Fig_2_1_ImportArchitectureToWorkspace.png" alt="Import System Architecture" height="250px">
<p>The system architecture project (RecoverySystem) will be imported and opened in the workspace.</p>
<img src="./images/Fig_2_2_ImportedArchitectureToWorkspace.png" alt="ImportedArchitecture">
<p>Then double click on the ESF model, right click on the root element in model explorer and click "ESF Import Model > Import UML Model...".</p>
<img src="./images/Fig_2_3_ImportUMLModelMenu.png" alt="Imported UML Model Menu" height="125px">
<p>Select the uml model to import and click "OK".</p>
<img src="./images/Fig_2_4_SelectUMLModel.png" alt="Select the UML Model" height="200px">
<p>Select the uml model element to import and click "OK".</p>
<img src="./images/Fig_2_5_SelectElementsToImport.png" alt="Select the Elements to Import" height="200px">
<p>Lastly, if a dialog box display asking for enabling writing or not, click "OK".</p>
<img src="./images/Fig_2_6_EnableWrite.png" alt="EnableWrite" height="150px">
<p>Imported system architecture appears inside the root element of the ESF model.</p>
<p><b>Note that for the imported copy of the original system architecture model, another model file (in this case, recoverySystem_1479374458104.di) in the system architecture project (RecoverySystem) is created also.</b></p>
<img src="./images/Fig_2_7_ArchitectureImportedToESF.png" alt="ArchitectureImportedToESF" height="400px">
</div>
<div id="archCreate">
<h2>Create a New Architecture inside an ESF Project</h2>
<p>A new UML system architecture can be created inside an ESF project thanks to Papyrus.</p>
<p>Right click on the root element and then click "New Child > Model".</p>
<img src="./images/Fig_2_8_CreateArchitectureModel.png" alt="Create Architecture Model" height="400px">
<p>Rename the created model as "RSArchitecture".</p>
<img src="./images/Fig_2_9_RenameArchitectureModel.png" alt="Rename Architecture Model" height="100px">
<p>Continue creating the other elements inside the model until finishing the system architecture.</p>
<img src="./images/Fig_2_10_FinishedArchitectureModel.png" alt="Finished Architecture Model" height="300px">
<p>Right click on the "RSArchitecture" model element and then click "Apply ESFArchitectureConcepts Annotation".</p>
<img src="./images/Fig_2_11_AnnotationMenu.png" alt="Annotation Menu" height="150px">
<p>ESFArchitectureConcepts annotations will be applied and the editor will be updated.</p>
<img src="./images/Fig_2_12_AnnotatedArchitectureModel.png" alt="Annotated Architecture Model" height="300px">
</div>
<div id="archESFView">
<h2>The ESF Architecture Diagram</h2>
<p>ESF offers a diagram named "ESF Architecture Diagram" (EAD). This diagram is a specialization of "Structure Composite Diagram" from UML. With EAD, you can create the elements with the "ESF Architecture Concepts" stereotypes applied.</p>
<p>For creating a new EAD, right click on a "SBlock" element and then click "Create ESF Architecture Diagram".</p>
<img src="./images/Fig_2_13_CreateESFArchitectureDiagram.png" alt="Create ESF Architecture Diagram" height="175px">
<p>The EAD offers a palette with the elements of ESF Architecture Concepts.</p>
<img src="./images/Fig_2_14_PaletteOfESFArchitectureDiagram.png" alt="Palette of ESF Architecture Diagram" height="175px">
<p><b>Note:</b>When a SPart is added a dialog is opened for setting a type to SPart. By the dialog, there are two ways to define a type: the first, it is to create a new SBlock element; the second, it is to select a SBlock element present in the model.</p>
<img src="./images/Fig_2_15_SPartTypeDialog.png" alt="SPart Type Dialog" height="250px">
<p>Example of Recovery System with ESF Architecture Diagram:</p>
<img src="./images/Fig_2_16_RecoverySystemESFArchitectureDiagram.png" alt="Recovery System with ESF Architecture Diagram" height="400px">
<p><b>Note:</b>When the EAD is created, some existent elements of SBlock don't be displayed. They should be drag and drop in the EAD.</p>
</div>
</div>
</html>