|
|
(7 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | = Papyrus Software Designer = | + | = Page has been moved to [https://gitlab.eclipse.org/eclipse/papyrus/org.eclipse.papyrus-designer/-/wikis/home SW Designer wiki on gitlab] = |
− | | + | |
− | == What is Papyrus Software Designer? ==
| + | |
− | | + | |
− | Papyrus designer is a component (extension) of the UML Papyrus editor. It supports the software design by providing code generation from models including embedded and real-time systems as potential targets. In does this at two different levels of abstraction.
| + | |
− | | + | |
− | * Direct code generation for a specific programming language. Currently, C++ and Java are supported, C will be supported soon. The code generator also support reverse and roundtrip code generation.
| + | |
− | ** [http://wiki.eclipse.org/Java_Code_Generation Java code generation]
| + | |
− | ** [http://wiki.eclipse.org/Papyrus/Codegen/Cpp_description C++ code generation]
| + | |
− | ** Adding a New Code Generator: Apart from the aforementioned programming language, it is also possible to develop and integrate other code generators to Papyrus. To learn about how to add a new code generator to Papyrus, refer to the following [http://wiki.eclipse.org/Papyrus/Codegen/Adding_a_New_Code_Generator wikipage].
| + | |
− | | + | |
− | * Support for component-based models. In this case, the generation starts from a model that includes the definition of software components, hardware nodes and deployment information. The latter consists of a definition of the instances of components and nodes and an <em>allocation</em> between these. Code generation is done by a sequence of transformations steps. The model transformation takes care of some platform specific aspects (e.g. communication mechanisms or thread allocation), based on non-functional properties. This is complementary with the upcoming Papyrus architect that can create an allocation based on modeled analysis data such as period length or worst case execution times.
| + | |
− | | + | |
− | Papyrus Software Designer code generation
| + | |
− | | + | |
− | <center>
| + | |
− | [[Image:PapyrusQompass-methodology.png|800px]]<br/>
| + | |
− | Tool Chain overview
| + | |
− | </center>
| + | |
− | | + | |
− | <p>
| + | |
− | | + | |
− | Papyrus Software Designer is integrated into the open source UML editor [http://www.eclipse.org/papyrus Papyrus],
| + | |
− | The UML profile [http://www.omgmarte.org MARTE] is used for non-functional properties.
| + | |
− | Parts of the component model were developed in the context of the French national project [http://www.flex-eware.org Flex-eWare].
| + | |
− | | + | |
− | === Target audience ===
| + | |
− | | + | |
− | The following information assume that the reader already knows UML and the basics about component oriented design.
| + | |
− | In the sequel, you find information about the Papyrus Designer
| + | |
− | | + | |
− | == [[Papyrus/Qompass/designer/getting-started|Getting started and installation instructions]] ==
| + | |
− | == [[Papyrus/Qompass/designer/input-models|Input models for code generation]] ==
| + | |
− | == [[Papyrus/Qompass/designer/connector-container|Using dedicated interaction components and realizing cross-cutting concerns via the container]] ==
| + | |
− | == [[Papyrus/Qompass/designer/code-generation|Code generation from models]] ==
| + | |
− | == [[Papyrus/Qompass/designer/example-walkthrough|Discussion of a set of examples]] ==
| + | |
− | == [[Papyrus/Qompass/designer/reconfiguration|Use of Papyrus Designer for reconfiguration (ongoing work)]] ==
| + | |
− | | + | |
− | [[Category:Modeling]]
| + | |
− | [[Category:Papyrus]]
| + | |
− | [[Category:Papyrus-Designer]]
| + | |