The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.04 - April (2013 vol.39)
pp: 487-515
John C. Grundy , Swinburne University University of Technology, Hawthorn
John Hosking , Australian National University, Canberra
Karen Na Li , SolNet Solutions Ltd, Wellington
Norhayati Mohd Ali , Universiti Putra Malaysia, Kuala Lumpur
Jun Huh , University of Auckland, Auckland
Richard Lei Li , Beefand Lamb New Zealand Ltd, Wellington
ABSTRACT
Domain-specific visual languages support high-level modeling for a wide range of application domains. However, building tools to support such languages is very challenging. We describe a set of key conceptual requirements for such tools and our approach to addressing these requirements, a set of visual language-based metatools. These support definition of metamodels, visual notations, views, modeling behaviors, design critics, and model transformations and provide a platform to realize target visual modeling tools. Extensions support collaborative work, human-centric tool interaction, and multiplatform deployment. We illustrate application of the metatoolset on tools developed with our approach. We describe tool developer and cognitive evaluations of our platform and our exemplar tools, and summarize key future research directions.
INDEX TERMS
Visualization, Unified modeling language, Software, Computational modeling, Business, Abstracts, Electronic mail, model-driven engineering, Metatool, domain-specific visual language, software tool, visual specification
CITATION
John C. Grundy, John Hosking, Karen Na Li, Norhayati Mohd Ali, Jun Huh, Richard Lei Li, "Generating Domain-Specific Visual Language Tools from Abstract Visual Specifications", IEEE Transactions on Software Engineering, vol.39, no. 4, pp. 487-515, April 2013, doi:10.1109/TSE.2012.33
REFERENCES
[1] "Eclipse Graphical Editing Framework," www.eclipse.orggef, 2012.
[2] "Eclipse Graphical Modelling Framework," http://www.eclipse. orggmf/, 2012.
[3] "IBM ILOG JViewsDiagrammer," http://www-01.ibm.com/ software/integration/ visualization/jviewsdiagrammer/, 2012.
[4] "Merlin Generator," http://www.sourceforge.net/projects merlingenerator /, 2012.
[5] "Microsoft Domain Specific Language Tools," http://code.msdn. microsoft.comvsvmsdk, 2012.
[6] "NetBeans Visual Library," http://platform.netbeans.orggraph/, 2012.
[7] "OpenLaszlo," http:/www.openlaszlo.org/, 2012.
[8] N.M. Ali et al., "End-User Oriented Critic Specification for Domain-Specific Visual Language Tools," Proc. IEEE/ACM Int'l Conf. Automated Software Eng., pp. 297-300, 2010.
[9] R. Bentley et al., "Supporting Collaborative Information Sharing with the World-Wide Web: The BSCW Shared Workspace System," Proc. Fourth Int'l World Wide Web Conf., 1995.
[10] A.F. Blackwell and T.R.G. Green, "A Cognitive Dimensions Questionnaire Optimised for Users," Proc. 12th Ann. Meeting Psychology of Programming Interest Group, 2000.
[11] S. Bottcher and S. Grope, "Automated Data Mapping for Cross Enterprise Data Integration," Proc. Int'l Conf. Enterprise Information Systems, 2003.
[12] F. Brieler and M. Minas, "A Model-Based Recognition Engine for Sketched Diagrams," J. Visual Languages and Computing, vol. 21, no. 2, pp. 81-97, 2010.
[13] J. Buchner, T. Fehnl, and T. Kuntsmann, "HotDoc a Flexible Framework for Spatial Composition," Proc. IEEE Symp. Visual Languages, pp. 92-99, 1997.
[14] M. Burnett et al., "Forms/3: A First-Order Visual Language to Explore the Boundaries of the Spreadsheet Paradigm," J. Functional Programming, vol. 11, no. 2, pp. 155-206, 2001.
[15] Y. Cai, J. Grundy, and J. Hosking, "Synthesizing Client Load Models for Performance Engineering via Web Crawling," Proc. 22nd IEEE/ACM Int'l Conf. Automated Software Eng., pp. 353-362, 2007.
[16] Q. Chen, J. Grundy, and J. Hosking, "An e-Whiteboard Application to Support Early Design-Stage Sketching of UML Diagrams," Proc. IEEE Symp. Human Centric Computing Languages and Environments, pp. 219-226, 2003.
[17] P.T. Cox et al., "Experiences with Visual Programming in a Specific Domain—Visual Language Challenge '96," Proc. IEEE Symp. Visual Languages, 1997.
[18] A. Dillon, "Usability Evaluation," Encyclopedia of Human Factors and Ergonomics, W. Karwowski, ed., Taylor and Francis, 2001.
[19] D. Draheim and G. Weber, "Modeling Submit/Response Style Systems with Form Charts and Dialogue Constraints," Proc. Workshop Human Computer Interface for Semantic Web and Web Applications, pp. 267-278, 2003.
[20] J. Ebert, R. Süttenbach, and I. Uhe, "Meta-CASE in Practice: A CASE for KOGGE," Proc. Int'l Conf. Advanced Information Systems Eng., A. Olivé and J. Pastor, ed., pp. 203-216, 1997.
[21] K. Ehrig et al., "Generation of Visual Editors as Eclipse Plug-Ins," Proc. 20th IEEE/ACM Int'l Conf. Automated Software Eng., pp. 134-143, 2005.
[22] D. Gordon et al., "A Technology for Lightweight Web-Based Visual Applications," Proc. IEEE Conf. Human-Centric Computing, pp. 28-31, 2003.
[23] T.R.G. Green and M. Petre, "Usability Analysis of Visual Programming Environments: A 'Cognitive Dimensions' Framework," J. Visual Languages and Computing, vol. 7, pp. 131-174, 1996.
[24] J. Grundy and J. Hosking, "Supporting Generic Sketching-Based Input of Diagrams in a Domain-Specific Visual Language Meta-Tool," Proc. 29th Int'l Conf. Software Eng., pp. 282-291, 2007.
[25] J. Grundy et al., "Performance Engineering of Service Compositions," Proc. Int'l Workshop Service-Oriented Software Eng., pp. 26-32, 2006.
[26] J.C. Grundy and J.G. Hosking, "ViTABaL: A Visual Language Supporting Design by Tool Abstraction," Proc. IEEE Symp. Visual Languages, pp. 53-60, 1995.
[27] J.C. Grundy and J.G. Hosking, "Serendipity: Integrated Environment Support for Process Modelling, Enactment and Work Coordination," Automated Software Eng., special issue on process technology, vol. 5, no. 1, pp. 27-60, 1998.
[28] J.C. Grundy, J.G. Hosking, and W.B. Mugridge, "Visualising Event-Based Software Systems: Issues and Experiences," Proc. Software Visualisation Workshop, 1997.
[29] J.C. Grundy et al., "Generating Domain-Specific Visual Language Editors from High-level Tool Specifications," Proc. 21st IEEE/ACM Int'l Conf. Automated Software Eng., pp. 25-36, 2006.
[30] J.C. Grundy, W.B. Mugridge, and J.G. Hosking, "Constructing Component-Based Software Engineering Environments: Issues and Experiences," J. Information and Software Technology, vol. 42, no. 2, pp. 117-128, 2000.
[31] E. Guerra, J.D. Lara, and P. Diaz, "Visual Specification of Measurements and Redesigns for Domain Specific Visual Languages," J. Visual Languages and Computing, vol. 19, no. 3, pp. 399-425, 2008.
[32] H.R. Hartson, T.S. Andre, and R.C. Williges, "Criteria for Evaluating Usability Evaluation Methods," Int'l J. Human-Computer Interaction, vol. 15, no. 1, pp. 145-181, 2003.
[33] H. Heloise and A.R. Newton, "Sketched Symbol Recognition Using Zernike Moments," Proc. 17th Int'l Conf. Pattern Recognition, 2004.
[34] R.C. Holt, A. Winter, and A. Schurr, "GXL: Toward a Standard Exchange Format," Proc. Seventh Working Conf. Reverse Eng., 2000.
[35] J. Hosking, N. Mehandjiev, and J. Grundy, "A Domain Specific Visual Language for Design and Coordination of Supply Networks," Proc. IEEE Symp. Visual Languages and Human-Centric Computing, pp. 109-112, 2008.
[36] J. Howse, P. Rodgers, and G. Stapleton, "Drawing Euler Diagrams for Information Visualization," Proc. Sixth Int'l Conf. Diagrammatic Representation and Inference, p. 4, 2010.
[37] J. Huh et al., "Integrated Data Mapping for a Software Meta-Tool," Proc. Australian Software Eng. Conf., pp. 111-120, 2009.
[38] G. Johnson, LabVIEW Graphical Programming: Practical Applications in Instrumentation and Control, second ed. McGraw-Hill School Education Group, 1997.
[39] G.E. Kaiser et al., "WWW-Based Collaboration Environments with Distributed Tool Services," World Wide Web, vol. 1, no. 1, pp. 3-25, 1998.
[40] M. Kamalrudin, J. Hosking, and J. Grundy, "Improving Requirements Quality Using Essential Use Case Interaction Patterns," Proc. 33rd Int'l Conf. Software Eng., 2011.
[41] S. Kelly, K. Lyytinen, and M. Rossi, "Meta Edit+: A Fully Configurable Multi-User and Multi-Tool CASE Environment," Proc. Int'l Conf. Advance Information Systems Eng., 1996.
[42] R. Khaled et al., "A Lightweight Web-Based Case Tool for Sequence Diagrams," Proc. SIGCHI-NZ Symp. Computer-Human Interaction, 2002.
[43] A. Khambati, J.C. Grundy, J.G. Hosking, and J. Warren, "Model-Driven Development of Mobile Personal Health Care Applications," Proc. 23rd IEEE/ACM Int'l Conf. Automated Software Eng., Sept. 2008.
[44] C.H. Kim, J.G. Hosking, and J.C. Grundy, "A Suite of Visual Languages for Statistical Survey Specification," Proc. IEEE Symp. Visual Languages and Human-Centric Computing, pp.19-26, 2005.
[45] G.E. Krasner and S.T. Pope, "A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80," J. Object-Orientated Programming, vol. 1, no. 3, pp. 26-49, 1988.
[46] J. Lara and H. Vangheluwe, "AToM3: A Tool for Multi-Formalism and Meta-Modelling," Proc. Int'l Conf. Fundamental Approaches to Software Eng., R.-D. Kutsche and H. Weber, eds., pp. 174-188, 2002.
[47] A. Ledeczi et al., "Composing Domain-Specific Design Environments," Computer, vol. 34, no. 11, pp. 44-51, Nov. 2001.
[48] T. Levendovszky et al., "A Systematic Approach to Metamodeling Environments and Model Transformation Systems in VMTS," Electronic Notes in Theoretical Computer Science, vol. 127, no. 1, pp. 65-75, 2005.
[49] K. Li et al., "Augmenting DSVL Meta-Tools with Pattern Specification, Instantiation and Reuse," Proc. Workshop Visual Formalisms for Patterns, vol. 31, 2010.
[50] K.N.L. Li, J.G. Hosking, and J.C. Grundy, "A Generalised Event Handling Framework," Proc. Workshop IEEE/ACM Automated Software Eng. Conf., 2009.
[51] L. Li, J.C. Grundy, and J.G. Hosking, "EML: A Tree Overlay-Based Visual Language for Business Process Modelling," Proc. Int'l Conf. Enterprise Information Systems, 2007.
[52] Y. Lin, J. Gray, and F. Jouault, "DSMDiff: A Differentiation Tool for Domain-Specific Models," European J. Information Systems, vol. 16, no. 4, pp. 349-361, 2007.
[53] N. Liu, J.C. Grundy, and J.G. Hosking, "A Visual Language and Environment for Composing Web Services," Proc. ACM/IEEE Int'l Conf. Automated Software Eng., 2005.
[54] N. Liu, J.C. Grundy, and J.G. Hosking, "A Visual Language and Environment for Specifying User Interface Event Handling in Design Tools," Proc. Eighth Australasian User Interface Conf., 2007.
[55] N. Liu, J.G. Hosking, and J.C. Grundy, "MaramaTatau: Extending a Domain Specific Visual Language Meta Tool with a Declarative Constraint Mechanism," Proc. IEEE Symp. Visual Languages and Human-Centric Computing, 2007.
[56] M. Lyu and J. Schoenwaelder, "Web-CASRE: A Web-Based Tool for Software Reliability Measurement," Proc. Int'l Symp. Software Reliability Eng., 1998.
[57] D. Mackay, J. Noble, and R. Biddle, "A Lightweight Web-Based Case Tool for UML Class Diagrams," Proc. Fourth Australasian User Interface Conf. User Interfaces, vol. 18, pp. 95-98, 2003.
[58] D. Maplesden, J.G. Hosking, and J.C. Grundy, "A Visual Language for Design Pattern Modelling and Instantiation," Design Patterns Formalization Techniques, T. Taibi, ed., Idea Group, Inc., 2007.
[59] F. Maurer et al., "Merging Project Planning and Web Enabled Dynamic Workflow Technologies," IEEE Internet Computing, vol. 4, no. 3, pp. 65-74, May/June 2000.
[60] D.W. McIntyre, "Design and Implementation with Vampire," Visual Object-Oriented Programming, pp. 129-159, Manning Publications Co., 1995.
[61] A. Mehra, J.C. Grundy, and J.G. Hosking, "A Generic Approach to Supporting Diagram Differencing and Merging for Collaborative Design," Proc. IEEE/ACM Int'l Conf. Automated Software Eng., 2005.
[62] M. Minas, "Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation," Science of Computer Programming, vol. 44, no. 2, pp. 157-180, 2002.
[63] M. Minas, "Visual Specification of Visual Editors with VisualDiaGen," Applications of Graph Transformations with Industrial Relevance, J.L. Pfaltz, M. Nagl, and B. Böhlen, eds., pp. 473-478, Springer Berlin/Heidelberg, 2004.
[64] M. Minas, "Generating Meta-Model-Based Freehand Editors," Proc. Third Int'l Workshop Graph Based Tools, 2006.
[65] D.L. Moody, "The 'Physics' of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering," IEEE Trans. Software Eng., vol. 35, no. 6, pp. 756-779, Nov./Dec. 2009.
[66] Y.S. Pei, J.G. Hosking, and J.C. Grundy, "Automatic Diagram Layout Support for the Marama Meta-Toolset," Proc. IEEE Symp. Visual Languages and Human-Centric Computing, Sept. 2011.
[67] C. Phillips et al., "The Design of the Client User Interface for a Meta Object-Oriented CASE Tool," Proc. Technology of Object-Oriented Languages , 1998.
[68] B. Plimmer and M. Apperley, "INTERACTING with Sketched Interface Designs: An Evaluation Study," Proc. CHI '04 Extended Abstracts on Human Factors in Computing Systems, pp. 1337-1340, 2004.
[69] L. Qiu and C.K. Riesbeck, "An Incremental Model for Developing Educational Critiquing Systems: Experiences with the Java Critiquer," J. Interactive Learning Research, vol. 19, pp. 119-145, 2008.
[70] J. Rekers and A. Schuerr, "Defining and Parsing Visual Languages with Layered Graph Grammars," J. Visual Languages and Computing, vol. 8, no. 1, pp. 27-55, 1997.
[71] J.E. Robbins and D.F. Redmiles, "Cognitive Support, UML Adherence, and XMI Interchange in Argo/UML," J. Information and Software Technology, vol. 42, no. 2, pp. 79-89, 2000.
[72] C. Schuckmann et al., "Designing Object-Oriented Synchronous Groupware with COAST," Proc. ACM Conf. Computer Supported Cooperative Work, pp. 30-38, 1996.
[73] A. Sutcliffe, The Domain Theory: Patterns for Knowledge and Software Reuse. L. Erlbaum Assoc., 2002.
[74] J.M. Vlissides and M. Linton, "Unidraw: A Framework for Building Domain Specific Graphical Editors," Proc. Ann. ACM Siggraph Symp. User Interface Software and Technology, pp. 158-167, 1989.
[75] P. Wohed, W.M.P. van der Aalst, M. Dumas, A.H.M. terHofstede, and N. Russell, "On the Suitability of BPMN for Business Process Modelling," Proc. Fourth Int'l Conf. Business Process Management, pp. 161-176, 2006.
[76] J. Zhang, Y. Lin, and J. Gray, "Generic and Domain-Specific Model Refactoring Using a Model Transformation Engine," Research and Practice in Software Eng., vol. 2, pp. 199-218, 2005.
[77] K. Zhang, D.-Q. Zhang, and J. Cao, "Design, Construction, and Application of a Generic Visual Language Generation Environment," IEEE Trans. Software Eng., vol. 27, no. 4, pp. 289-307, Apr. 2001.
[78] C. Zhao, J. Kong, and K. Zhang, "Program Behavior Discovery and Verification: A Graph Grammar Approach," IEEE Trans. Software Eng., vol. 36, no. 3, pp. 431-448, May/June 2010.
[79] N. Zhu et al., "Pounamu: A Meta-Tool for Exploratory Domain-Specific Visual Language Tool Development," J. Systems and Software, vol. 80, no. 8, pp. 1390-1407, 2007.
32 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool