Getting Research Findings into Practice: Guidelines to Produce Quality Software Engineering Diagrams to Assist Novice Engineers Josefina Guerrero-García 1 , Juan González-Calleros 1 , Jaime Muñoz-Arteaga 2 , Arturo Morales 1 Ivonne Monarca 1 Facultad de Ciencias de la Computación, Benemérita Universidad Autónoma de Puebla 2 Facultad de Ciencias de la Computación, Universidad Autónoma de Aguascalientes jguerrero,juangonzalez{@cs.buap.mx}, jmunozar@correo.uaa.mx Abstract Computer Diagrams are the communication mechanism among the different stakeholders of the software development lifecycle. While they are though at school, and promoted to be used by students for current and future projects, we still do not see full adoption in real life context. The literature reviewed points out some reasons related to this issue and propose some solutions, but still the problem persist. In this paper, we present our findings of three years of research at the University while working with senior students on real-life projects. Different methodologies were used as an iterative process, improving the quality of the results year by year. We present the lesson learned including guidelines on how to facilitate novice engineers to adopt diagrams and produce them with high quality standards. The proposal is validated with a real life case study. 1. Introduction Producing quality models in software engineering has been studied for decades. Particularly this is a problem for undergraduate students or naïve engineers [1, 5]. Some of the common problems reported in the literature are related to: bad use of name conventions / semantics [1,5,7,14,15,16], misconception of abstraction levels [1], cardinality [1], tools and visual syntax [2,8], evolutionary design missing [1], cognitive load to differentiate concepts [5,9], limited information processing capabilities [6]. If people are not good at it, why we keep promoting their use? So authors argue that they communicate information more effectively than text [5], an assumption that we keep considering while teaching but with poor results while evaluating students. As reported in [5,7,14,15,16], the lack of semantics is one of the common problems. Current mapping notations are not clear to what real world they have a correspondence. Existing metaphors are not easy to understand, thus creating and reading diagrams is not easy for novice learners due to the cognitive load. Attention must be paid to the usability of symbols used in the notations [6,16] trying to be mire cognitive effective [7]. In this paper we present findings of three years of research with senior year students, while working on a one-year project. With the following research questions: is it possible to improve the quality of the visual notations for analyzing and design software, by empowering students with decision making about what to use and how to use it? As promoted in an agile paradigm, empowering teams is a recommended practice for successful project. The only condition is to have an agreement with the whole team. The goal is to help them to create quality models and contributing to have a better understanding of the notations among our community. For this purpose, we conducted a set of experiments, first year we just simply guided students towards the correct use of existing notations and adopting a waterfall methodology for the development of the project. Notations used during our research was: use cases, state-charts, class diagrams, Sequence diagrams, activity diagrams or other process models such as BPMN or Petri Nets, Task Models, and UI prototyping notations. During the second year, we change the development strategy and start on relying on an agile methodology without flexibility to modify the notations. While the improvement in the quality of models was perceived yet most of the students were not able to fully understand them. Finally, during the third year, we kept the agile methodology SCRUM, and let the teams to modify or propose their own notation with really interesting diagrams that at the end were easy to understand not just by the whole team presenting the project but by the rest of their 2016 4th International Conference in Software Engineering Research and Innovation 978-1-5090-1074-5/16 $31.00 © 2016 IEEE DOI 10.1109/CONISOFT.2016.31 150 2016 4th International Conference in Software Engineering Research and Innovation 978-1-5090-1074-5/16 $31.00 © 2016 IEEE DOI 10.1109/CONISOFT.2016.31 149