Automatic generation of user interfaces from data structure specifications and object-oriented application models
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.
- Alt, J., Casais, E., Schiefer, B., Sirdeshpande, S., Theobald, D. (1994) The OBST Tutorial. FZI.049.2. Forschungszentrum Informatik (FZI), Karlsruhe, Germany
- 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.
- Casais, E., Ranft, M., Schiefer, B., Theobald, D., Zimmer, W. (1992) OBST — An Overview. FZI.039.1. Forschungszentrum Informatik (FZI), Karlsruhe, Germany
- Debugging a Program. Sparc Works documentation. SunPro, October 1992
- Deux, O. (1991) The O2 System. Communications of the ACM 34: pp. 34-48 CrossRef
- Dewan, P., Solomon, M. (1987) “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 22: pp. 150-159 CrossRef
- Dewan, P., Solomon, M. (1990) An Approach to Support Automatic Generation of User Interfaces. ACM TOPLAS 12: pp. 566-609 CrossRef
- Dewan, P. (1990) Object-Oriented Editor Generation. Journal of Object-Oriented Programming 3: pp. 35-49
- Dewan, P. (1991) An Inheritance Model for Supporting Flexible Displays of Data Structures. Software — Practice and Experience 21: pp. 719-738
- 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
- Fritzson, P., Viklund, L., Herber, J., Fritzson, D. (1995) High-level Mathematical Modeling and Programming. IEEE Software July: pp. 77-86 CrossRef
- Fritzson, P., Wismüller, R., Hansen, O., Sala, J., Skov, P. (1996) A Parallel Debugger with Support for Distributed Arrays, Multiple Executables and Dynamic Processes. LNCS 1061. Linköping University, Linköping, Sweden
- Lambs, C., Landis, G., Orenstein, J., Weinreb, D. (1991) The ObjectStore Database System. Communications of the ACM 34: pp. 50-63 CrossRef
- 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].
- Wolfram, S. (1991) Mathematica — A System for Doing Mathematics by Computer. Addison-Wesley, Reading, Mass.
- Viklund, L., Fritzson, P. (1995) ObjectMath: An Object-Oriented Language for Symbolic and Numeric Processing in Scientific Computing. Scientific Programming 4: pp. 229-250
- 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
- Automatic generation of user interfaces from data structure specifications and object-oriented application models
- Book Title
- ECOOP ’96 — Object-Oriented Programming
- Book Subtitle
- 10th European Conference Linz, Austria, July 8–12, 1996 Proceedings
- pp 114-141
- Print ISBN
- Online ISBN
- Series Title
- Lecture Notes in Computer Science
- Series Volume
- Series ISSN
- Springer Berlin Heidelberg
- Copyright Holder
- Additional Links
- Industry Sectors
- eBook Packages
To view the rest of this content please follow the download PDF link above.