ponent systems, GU-DSL and its infrastructure pro-
vides the full functionality necessary for developing
interactive image processing pipelines. Furthermore,
the DSL supports the concept of round-trip engineer-
ing necessary for arbitrary switching between graphi-
cal and textual modeling. It specially focuses on ob-
ject oriented textual and graphical modeling in the
sense of model driven engineering. Starting with ob-
ject abstractions (from object to class to component)
up to the final system generation in the future, the full
development process can be assisted.
Besides the presented ADLs, frameworks and
concepts, many other systems exist, e.g. LabView
(Instruments, 2015) with its dataflow visual program-
ming language. But as far as we know, no language
exists which is comparable to the proposed one in the
domain of data and image processing.
6 CONCLUSION
In this paper we presented GU-DSL, a component
based textual and graphical language. GU-DSL uses
some well known design principles as classes, inter-
faces and components. These principles are adapted
and improved to fit into the domain of data and im-
age processing. We discussed all the novel fea-
tures and concepts (provider and processor inter-
faces, components, ports, component-instances and
also component- and component-instance-diagrams)
allowing the architecture definition and instantiation.
Furthermore, we have demonstrated their usage in an
image processing example.
A big advantage of the proposed work, compared
to other concepts (such as UML), is the combination
between graphical and textual modeling and the sup-
ported round-trip engineering. This means that both
kinds of modeling are always synchronized in both
directions. Starting with textual modeling does not
prevent developers from switching over to graphical
modeling and also back. So it is up to the modeler’s
and programmer’s preferences which kind of tech-
nique is used. Experienced programmers can decide
for textual programming, enjoying the full feature set
necessary for component-based engineering with the
advantage of much better guidance and support than
generic programming languages provide.
For the future, we plan to extend the graphical ed-
itors by a better and more complete toolbox (required
for graphical object creation). Also, the usability has
to be improved. Furthermore, the support of operat-
ing systems other than Windows is planned for the
language infrastructure and a code generator for C++
CBSE system has to be developed.
ACKNOWLEDGEMENTS
This work was supported by the German Research
Foundation (DFG) as part of the research training
group GRK 1564 ’Imaging New Modalities’.
REFERENCES
Allen, R. and Garlan, D. (1997). A formal basis for architec-
tural connection. ACM Trans. Softw. Eng. Methodol.,
6(3):213–249.
Efftinge, S., Eysholdt, M., Khnlein, J., Zarnekow, S., and
Contributors. (2015). Xtext 2.5 documentation.
Feiler, P. H., Lewis, B., Vestal, S., and Colbert, E. (2005).
An overview of the sae architecture analysis & design
language (aadl) standard: A basis for model-based
architecture-driven embedded systems engineering.
In Architecture Description Languages, volume 176,
pages 3–15. Springer US.
Fowler, M. (2010). Domain Specific Languages. Addison-
Wesley Professional, 1st edition.
Hoegg, T., Koehler, C., and Kolb, A. (2015). Component
based data and image processing systems - a concep-
tual and practical approach. In Software Engineering
and Service Science (ICSESS), 2015 6th IEEE Inter-
national Conference on, pages 66–69.
Instruments, N. (2015). Ni labview. Available at
http://www.ni.com/labview/.
Magee, J., Dulay, N., and Kramer, J. (1993). Structuring
parallel and distributed programs. Software Engineer-
ing Journal, 8:73–82.
Microsoft (2015). Component object model (com). Avail-
able at https://msdn.microsoft.com.
OMG (2015a). Corba. Available at http://www.corba.org/.
OMG (2015b). Corba component model. Available at
http://www.omg.org/spec/CCM.
OMG (2015c). Metaobject facility (mof). Available at
http://www.omg.org/mof/.
OMG (2015d). Ocl. Available at
http://www.omg.org/spec/OCL/.
OMG (2015e). Uml. Available at http://www.uml.org/.
OMG (2015f). Uml. Available at
http://www.omgsysml.org/.
Schlegel, C., Hassler, T., Lotz, A., and Steck, A. (2009).
Robotic software systems: From code-driven to
model-driven designs. In Advanced Robotics, 2009.
ICAR 2009. International Conference on, pages 1–8.
Schlegel, C. and Wrz, R. (1999). Interfacing different lay-
ers of a multilayer architecture for sensorimotor sys-
tems using the object-oriented framework smartsoft.
In Advanced Mobile Robots, 1999. (Eurobot ’99) 1999
Third European Workshop on, pages 195–202.
MODELSWARD 2016 - 4th International Conference on Model-Driven Engineering and Software Development
300