✓ Improved C code generation
✓ Efficient C++ code generation
✓ Debugging on the model level (UML)
✓ User code synchronization
✓ Requirements Tracing
- The automated code generation creates detailed documentation at the same time.
- Existing solutions must not be converted, since a clean integration of model-based and classic development exists.
- Compliance with norms is simplified, since only the Code Generator must be adapted.
- Since the source code is delivered at the same time, necessary adjustments are easily possible and no dependency on solutions providers is generated.
You need neither comprehensive settings nor configuration parameters…and also no frameworks. Decisions on the model level can be followed in the generated code in a transparent manner, easy to read and well-structured. Project-specific requirements for code generation are easily implemented through the provided source code. Thus, the implemented requirements can be easily realized in code. Furthermore, the generated code can be integrated into existing software projects with no difficulty. You can thereby unify the advantages of model-based as well as traditional development in an efficient and low-cost way.
LieberLieber UML Debugger
With the UML Debugger, included in Embedded Engineer, LieberLieber has solved a problem which has influenced several generations of code-generation tools. Whereby development has always taken place on the UML model level, debugging was then carried out in C or C ++. With the UML Debugger, debugging is now carried out directly on the model level, which represents a great step in the development of model-based development. The UML Debugger consists of a separate project browser along with diagram and source-code views. Immediately after transferring the generated code to the hardware, the UML Debugger allows you to debug the code directly in the model. The debugger automatically handles the synchronization of the model with the source code and allows the developer to run and follow progress on two levels simultaneously. Depending on the target platform, Embedded Engineer works with different source code debuggers, such as Green Hills, iSYSTEM, PLS orVisual Studio.
LieberLieber is of the opinion that it is neither sensible nor efficient to create an entire application over again merely to realize a continuous model-based approach. Rather, existing code (e.g. a state machine as an integral part of the model) is to be re-used, while other parts of the software can be developed by utilizing the advantages of UML. The “User Code Synchronization” feature, newly-integrated in LieberLieber Embedded Engineer, provides a powerful way to synchronize the new, handwritten code with the model. The tool clearly marks areas in the source code that can be safely edited by the developer at any time.
Requirements in Enterprise Architect linked to classes and operations are documented by Embedded Engineer in the source code under classes and methods. This enables a link to be established between requirements and the source code.
For more information, contact us.