Collaboro: a collaborative (meta) modeling tool

6 Software development processes are collaborative in nature. Neglecting the key role of end-users leads to software unlikely to satisfy their needs. This collaboration becomes specially important when creating Domain-Specific Modeling Languages (DSMLs), which are (modeling) languages specifically designed to carry out the tasks of a particular domain. While end-users are actually the experts of the domain for which a DSML is developed, their participation in the DSML specification process is still rather limited nowadays. In this paper, we propose a more community-aware language development process by enabling the active participation of all community members (both developers and end-users of the DSML) from the very beginning. Our proposal is based on a DSML itself, called Collaboro, which allows representing change proposals on the DSML design and discussing (and tracing back) possible solutions, comments and decisions arisen during the collaboration. Collaboro also incorporates a metric-based recommender system to help community members to define high-quality notations for the DSMLs. We also show how Collaboro can be used at the model-level to facilitate the collaborative specification of software models. 7

[1]  G. A. Miller THE PSYCHOLOGICAL REVIEW THE MAGICAL NUMBER SEVEN, PLUS OR MINUS TWO: SOME LIMITS ON OUR CAPACITY FOR PROCESSING INFORMATION 1 , 1956 .

[2]  Donald A. Norman,et al.  User Centered System Design: New Perspectives on Human-Computer Interaction , 1988 .

[3]  Thomas R. G. Green,et al.  Cognitive dimensions of notations , 1990 .

[4]  G. A. Miller The magical number seven plus or minus two: some limits on our capacity for processing information. , 1956, Psychological review.

[5]  Marian Petre,et al.  Usability Analysis of Visual Programming Environments: A 'Cognitive Dimensions' Framework , 1996, J. Vis. Lang. Comput..

[6]  M. Petre,et al.  Usability Analysis of Visual Programming Environments , 1996 .

[7]  Olga De Troyer,et al.  WSDM: A User Centered Design Method for Web Sites , 1998, Comput. Networks.

[8]  John Mylopoulos,et al.  From object-oriented to goal-oriented requirements analysis , 1999, CACM.

[9]  Dimitris Papadias,et al.  Computer supported argumentation and collaborative decision making: the HERMES system , 2001, Inf. Syst..

[10]  Maria Kutar,et al.  Cognitive Dimensions of Notations: Design Tools for Cognitive Technology , 2001, Cognitive Technology.

[11]  Model Driven Architecture (mda) 1 Why the Mda 1.1 Mda and the Mission of the Object Management Group 1.2 the Omg's Specification History , 2001 .

[12]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[13]  Brian A. Malloy,et al.  A metrics suite for grammar-based software , 2004, J. Softw. Maintenance Res. Pract..

[14]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.

[15]  Juan Manuel Dodero,et al.  CASLO: Collaborative Annotation Service for Learning Objects , 2005 .

[16]  Pierre-Yves Schobbens,et al.  Clear justification of modeling decisions for goal-oriented requirements engineering , 2008, Requirements Engineering.

[17]  E. James Whitehead,et al.  Collaboration in Software Engineering: A Roadmap , 2007, Future of Software Engineering (FOSE '07).

[18]  Andreas Prinz,et al.  A Model-Based Standard for SDL , 2007, SDL Forum.

[19]  Jesús Sánchez Cuadrado,et al.  Building Domain-Specific Languages for Model-Driven Development , 2007, IEEE Software.

[20]  Katharina Siorpaes Lightweight Community-Driven Ontology Evolution , 2007, ISWC/ASWC.

[21]  Jos van Hillegersberg,et al.  Evaluating the Visual Syntax of UML: An Analysis of the Cognitive Effectiveness of the UMLFamily of Diagrams , 2009, SLE.

[22]  Volkmar Pipek,et al.  Community driven development as participation?: involving user communities in a software design process , 2008, PDC.

[23]  Markus Scheidgen Textual Modelling Embedded into Graphical Modelling , 2008, ECMDA-FA.

[24]  Faizan Javed,et al.  MARS: A metamodel recovery system using grammar inference , 2008, Inf. Softw. Technol..

[25]  Peter Rittgen,et al.  COMA: A Tool for Collaborative Modeling , 2008, CAiSE Forum.

[26]  Franz Rothlauf,et al.  Approaches to Collaborative Software Development , 2008, 2008 International Conference on Complex, Intelligent and Software Intensive Systems.

[27]  Frank Budinsky,et al.  EMF: Eclipse Modeling Framework 2.0 , 2009 .

[28]  Gregory Vance Wilson Tools for Teams: A Survey of Web-Based Software Project Portals , 2009 .

[29]  Petra Kaufmann,et al.  We can work it out: Collaborative Conflict Resolution in Model Versioning , 2009, ECSCW.

[30]  Manuel Wimmer,et al.  A survey on model versioning approaches , 2009, Int. J. Web Inf. Syst..

[31]  Pieter De Leenheer On Community-based Ontology Evolution , 2009 .

[32]  Andreas Holzinger,et al.  Current State of Agile User-Centered Design: A Survey , 2009, USAB.

[33]  Daniel L. Moody,et al.  The “Physics” of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering , 2009, IEEE Transactions on Software Engineering.

[34]  Steven Kelly,et al.  Worst Practices for Domain-Specific Modeling , 2009, IEEE Software.

[35]  Miguel Goulão,et al.  Do Software Languages Engineers Evaluate their Languages? , 2011, CIbSE.

[36]  Aurora Vizcaíno,et al.  Collaboration Tools for Global Software Engineering , 2010, IEEE Software.

[37]  Daniel Amyot,et al.  Analysing the Cognitive Effectiveness of the BPMN 2.0 Visual Notation , 2010, SLE.

[38]  Marjan Mernik,et al.  On automata and language based grammar metrics , 2010, Comput. Sci. Inf. Syst..

[39]  Michael Derntl,et al.  Cognitive effectiveness of visual instructional design languages , 2010, J. Vis. Lang. Comput..

[40]  Daniel Amyot,et al.  Analysing the cognitive effectiveness of the UCM visual notation , 2010, SAM'10.

[41]  Marco Kuhrmann User Assistance during Domain-specific Language Design , 2011 .

[42]  Jeffrey G. Gray,et al.  Design patterns for metamodels , 2011, SPLASH Workshops.

[43]  Jeffrey G. Gray,et al.  Creating visual Domain-Specific Modeling Languages from end-user demonstration , 2012, 2012 4th International Workshop on Modeling in Software Engineering (MISE).

[44]  Lyudmila Lyadova,et al.  MetaLanguage: a Tool for Creating Visual Domain-Specific Modeling Languages , 2012 .

[45]  Jeffrey G. Gray,et al.  Application of Metamodel Inference with Large-Scale Metamodels , 2012, Int. J. Softw. Informatics.

[46]  Miguel Goulão,et al.  Evaluating the Usability of Domain-Specific Languages , 2013 .

[47]  Cristina Gómez,et al.  A Method for the Definition and Treatment of Conceptual Schema Quality Issues , 2012, ER.

[48]  Michiel van Genuchten,et al.  Early Design Decisions , 2012, IEEE Software.

[49]  Jesús Gallardo,et al.  A model-driven development method for collaborative modeling tools , 2012, J. Netw. Comput. Appl..

[50]  Juan de Lara,et al.  Bottom-up meta-modelling: an interactive approach , 2012, MODELS'12.

[51]  John Rooksby,et al.  Collaboration in Formative Design: Working Together at a Whiteboard , 2012, IEEE Software.

[52]  Sophie Dupuy-Chessa,et al.  Support for quality metrics in metamodelling , 2013 .

[53]  Juan de Lara,et al.  Modeling collaboration protocols for collaborative modeling tools: Experiences and applications , 2013, J. Vis. Lang. Comput..

[54]  Juan de Lara,et al.  Engaging End-Users in the Collaborative Development of Domain-Specific Modelling Languages , 2013, CDVE.

[55]  Jordi Cabot,et al.  Enabling the Collaborative Definition of DSMLs , 2013, CAiSE.

[56]  Juan de Lara,et al.  Example-driven meta-model development , 2015, Software & Systems Modeling.

[57]  Patricia Lago,et al.  Organizational social structures for software engineering , 2013, CSUR.

[58]  John C. Grundy,et al.  Generating Domain-Specific Visual Language Tools from Abstract Visual Specifications , 2013, IEEE Transactions on Software Engineering.

[59]  Semih Bilgen,et al.  A framework for qualitative assessment of domain-specific languages , 2015, Software & Systems Modeling.

[60]  Salima Benbernou,et al.  A survey on service quality description , 2013, CSUR.

[61]  The 2014 “State of the Journal” report , 2015, Software & Systems Modeling.

[62]  Rini van Solingen,et al.  Collaboration Spaces for Virtual Software Teams , 2014, IEEE Software.

[63]  Jordi Cabot,et al.  Enabling the Definition and Enforcement of Governance Rules in Open Source Systems , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.