MetaEdit+ automates Tetra terminal development
EADS is a frontrunner in TETRA technology, currently offering a range of modern end-to-end radio communications solutions that incorporate the latest TETRA technology, mobile data applications and related systems integration and support services.
Software plays an ever-increasing role in the success of these products on the market. A major component of the TETRA terminal software is the User Interface (UI) Applications: a complex and demanding domain, which must continuously evolve to meet customer requirements. Therefore, terminal UI engineering receives special attention, with most software developers focusing on this area.
Initially, the development of both protocol and UI software of the TETRA terminals was carried out using SDL, a telecom-dedicated development language dating back to the 1970's. Soon however, as the complexity of the software increased, EADS found itself in need of a better development approach and a tool. As Chief Engineer Antti Raunio from EADS TETRA UI developers puts it: "It would be practically impossible to implement the current software with SDL. The code is much larger and more complex and SDL simply would not scale up to meet these challenges".
After careful evaluations, EADS chose MetaEdit+ as the development environment for TETRA terminals, due to its unique set of features: flexibility, support for UI terminals architecture, full executable code generation and documentation capabilities, as well as its ease of use. "The advantage of using MetaEdit+ is that we can create and use our own in-house modeling language. The modeling language is thus more flexible and we can modify it to fit our needs", says Raunio. "This capability, along with the possibility for integrating with existing code, made MetaEdit+ an attractive choice for the TETRA terminal development team", summarizes Chief Engineer Antti Raunio.
The main benefits of MetaEdit+, as seen by EADS TETRA Terminals, include the following:
- Faster development: When compared to use of SDL, MetaEdit+ has clearly boosted development speeds due to its capabilities for supporting extensive reuse and managing variation within the terminal product family. According to developers, it would be impossible to apply SDL for today's complex domain and large amount of design specifications.
- Quality of code improved: "the quality of the generated code is clearly better, simply because the modeling language was designed to fit our terminal architecture. This rules out errors, eliminating them already in the design stage. If applications were coded by hand there would be a lot of errors and the range of error types would be wider", says Chief Engineer Antti Raunio.
- Easier development as complexity is hidden: Even new developers with less coding experience can effectively develop features using MetaEdit+, since it supports the rules of the EADS handset domain, guiding model-based design work and preventing developers from creating erroneous designs.
- Documentation always up-to-date: As documentation and code are both generated from the same models, EADS's design, code and documentation are now always up-to-date and in sync. The quality of design documentation was also improved as MetaEdit+ generates it in accordance with corporate documentation standards. As the information in models is expressed in domain terms, the documentation is easily understandable and supports reviews.
- Developers require less support from experts: According to EADS TETRA terminals, once the domain-specific modeling language is implemented, expert support is practically not needed, The expert's knowledge has been embedded in the tool, so developers no longer need to solve the problem of mapping domain ideas into quality code by themselves, time after time!
MetaEdit+ has played an important role in fulfilling EADS's ambition to become a leader in the TETRA terminal market, by providing a robust and reliable development environment that enables EADS to introduce new members to its TETRA terminal family in record time.
"Domain expertise and tool support is not needed when everything works fine, and that has been the case with MetaEdit+. MetaEdit+ is a stable and robust product", summarizes Raunio. For a developer experienced in the domain, designing and implementing a Domain-Specific Modeling language using MetaEdit+ is not a time-consuming process. After a few man-weeks from the expert, all other developers can develop like experts too!