Abstract
Applications in scientific computing operate with data of complex structure and graphical tools for data editing, browsing and visualization are necessary.
Most approaches to generating user interfaces provide some interactive layout facility together with a specialized language for describing user interaction. Realistic automated generation approaches are largely lacking, especially for applications in the area of scientific computing.
This paper presents two approaches to automatically generating user interfaces (that include forms, pull-down menus and pop-up windows) from specifications.
The first is a semi-automatic approach, that uses information from object-oriented mathematical models, together with a set of predefined elementary types and manually supplied layout and grouping information. This system is currently in industrial use. A disadvantage is that some manual changes need to be made after each update of the model.
Within the second approach we have designed a tool, PDGen (Persistence and Display Generator) that automatically creates a graphical user interface and persistence routines from the declarations of data structures used in the application (e.g., C++ class declarations). This largely eliminates the manual update problem. The attributes of the generated graphical user interface can be altered.
Now structuring and grouping information is automatically extracted from the object-oriented mathematical model and transferred to PDGen. This is one of very few existing practical systems for automatically generating user interfaces from type declarations and related object-oriented structure information.
Preview
Unable to display preview. Download preview PDF.
References
J. Alt, E. Casais, B. Schiefer, S. Sirdeshpande, D. Theobald. The OBST Tutorial, Forschungszentrum Informatik (FZI), Karlsruhe, Germany, FZI.049.2, 15nd December, 1994
A. Björnerstedt, S. Britts, “AVANCE: An Object Management System”, SIGPLAN Notices, vol. 23, pp. 206–221. Nov. 1988. In Proceedings of the OOPSLA'88 Conference, San Diego, CA, 25–30 September 1988.
E. Casais, M. Ranft, B. Schiefer, D. Theobald, W. Zimmer. OBST — An Overview, Forschungszentrum Informatik (FZI), Karlsruhe, Germany, FZI.039.1, June 1992
Debugging a Program. Sparc Works documentation. SunPro, October 1992
O. Deux et al., “The O2 System”, Communications of the ACM, vol. 34, pp.34–48, Oct. 1991
P.Dewan, M.Solomon. “Dost: An Environment to Support Automatic Generation of User Interfaces”. In Proceeding of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, SIGPLAN Notices Vol. 22, No. 1, January 1987, pp. 150–159.
P. Dewan, M. Solomon. “An Approach to Support Automatic Generation of User Interfaces”. ACM TOPLAS, Vol. 12, No. 4, pp. 566–609 (October 1990)
P. Dewan. “Object-Oriented Editor Generation”. Journal of Object-Oriented Programming, vol. 3, 2 (July/Aug 1990), pp. 35–49
P. Dewan. “An Inheritance Model for Supporting Flexible Displays of Data Structures”. Software — Practice and Experience, vol. 21(7), 719–738 (July 1991)
P. Dewan. A Tour of the Suite User Interface Software. Included in [Suite91]
V. Engelson. An Approach to Automatic Construction of Graphical User Interfaces for Applications in Scientific Computing. Linköping Studies in Science and Technology. Licentiate thesis No 545. Department of Computer and Information Science, Linköping University, 1996.
P. Fritzson, V. Engelson, L.Viklund. “Variant Handling, Inheritance and Composition in the ObjectMath Computer Algebra Environment”. In Proc. Of DISCO'93 — Conference On Design and Implementation of Symbolic Computation Systems, LNCS 722, Sept. 1993
P. Fritzson, L. Viklund, J. Herber and D. Fritzson. “High-level Mathematical Modeling and Programming”. IEEE Software, July 1995, pp. 77–86.
P. Fritzson, R. Wismüller, Olav Hansen, Jonas Sala, Peter Skov. “A Parallel Debugger with Support for Distributed Arrays, Multiple Executables and Dynamic Processes”. In Proceedings of International Conference on Compiler Construction, Linköping University, Linköping, Sweden, 22–26 April, 1996, LNCS 1061, Springer Verlag.
Ch. Lambs, G. Landis, J. Orenstein, D. Weinreb, “The ObjectStore Database System”, Communications of the ACM, vol. 34, pp. 50–63, Oct. 1991
OBST, a persistent object management system. Available as ftp://ftp.ask.uni-ketrlsruhe.de/pub/education/computer-science/OBST, see also http://www.fzi.de/divisions/dbs/projects/OBST.html
John K. Ousterhout. Tcl and the Tk Toolkit. Addison-Wesley, 1994
F.N.Paulisch, S. Manke, W.F.Tichy. “Persistence for Arbitrary C++ Data Structures”. In Proc. of Int. Workshop on Computer Architectures to Support Security and Persistence of Information, Bremen, FRG, May 1990, pp. 378–391.
V. Engelson. The PDGen tool. Information available as http://www.ida.liu.se/~vaden/pdgen.
PGen, a persistence facility. This software is available as ftp://ftp.ira.uka.de/systems/general.
W.F.Tichy, J.Heilig, F.N.Paulisch. “A Generative and Generic Approach to Persistence”. C++ report, January 1994. Also included in [PGen94].
S. Wolfram, Mathematica — A System for Doing Mathematics by Computer (second edition), Addison-Wesley, Reading, Mass., 1991.
L. Viklund and P. Fritzson, “ObjectMath: An Object-Oriented Language for Symbolic and Numeric Processing in Scientific Computing”, Scientific Programming, Vol. 4, pp. 229–250, 1995.
SUITE, user interface software. This software is available as ftp://ftp.cs.unc.edu/pub/users/dewan/suite. Some information available as http://www.cs.unc.edu/~dewan/
SUN Microsystems Inc. Network Programming Guide (Ch. 5,6), 1990
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Engelson, V., Fritzson, D., Fritzson, P. (1996). Automatic generation of user interfaces from data structure specifications and object-oriented application models. In: Cointe, P. (eds) ECOOP ’96 — Object-Oriented Programming. ECOOP 1996. Lecture Notes in Computer Science, vol 1098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053059
Download citation
DOI: https://doi.org/10.1007/BFb0053059
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61439-5
Online ISBN: 978-3-540-68570-8
eBook Packages: Springer Book Archive