On the Use of UML in the Brazilian Industry: A Survey

Authors

DOI:

https://doi.org/10.5753/jserd.2022.2554

Keywords:

UML, Unified Model Language, Practice, Industry, Survey

Abstract

Although UML modeling has been used in the Brazilian industry in the last decade, little is known about the factors, perceptions of professionals and practices that end up affecting the UML use in real-world projects. This paper, therefore, reports on an exploratory survey focused on investigating how UML is used in practice in the Brazilian software industry. In total, 376 practitioners from 210 information technology companies answered an online questionnaire about the usage-affecting factors, difficulty and frequency of use, perceived benefits, and adoption-preventing contextual factors of UML models. Moreover, 20 practitioners participated in a semi-structured interview. The results show that the participants recognize the usefulness of the UML models, e.g., allowing an improved understanding of the integration among enterprise applications. However, 74.8\% of the participants did not use UML models due to some factors such as continuous delivery practices, time constraints, lack of knowledge about modeling, company culture, and the ever-present difficulty of keeping the models updated and synchronized.

Downloads

Download data is not yet available.

References

Akdur, D., Demirörs, O., and Garousi, V. (2017). Characterizing the development and usage of diagrams in embedded software systems. In 2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pages 167–175. IEEE.

Akdur, D., Say, B., and Demirörs, O. (2021). Modeling cultures of the embedded software industry: feedback from the field. Software and Systems Modeling, 20(2):447–467.

Bian, W., Alam, O., and Kienzle, J. (2019). Automated grading of class diagrams. In 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), pages 700–709. IEEE.

Böhm, W., Junker, M., Vogelsang, A., Teufl, S., Pinger, R., and Rahn, K. (2014). A formal systems engineering approach in practice: An experience report. In Proceedings of the 1st International Workshop on Software Engineering Research and Industrial Practices, pages 34–41.

Bucchiarone, A., Ciccozzi, F., Lambers, L., Pierantonio, A., Tichy, M., Tisi, M., Wortmann, A., and Zaytsev, V. (2021). What is the future of modeling? IEEE software, 38(2):119–127.

Chaudron, M. R., Heijstek, W., and Nugroho, A. (2012). How effective is uml modeling? Software & Systems Modeling, 11(4):571–580.

Chen, L. (2015). Continuous delivery: Huge benefits, but challenges too. IEEE Software, 32(2):50–54.

Chen, L. (2017). Continuous delivery: overcoming adoption challenges. Journal of Systems and Software, 128:72–86.

Cicchetti, A., Ciccozzi, F., and Carlson, J. (2016). Software evolution management: Industrial practices. In ME@ MODELS, pages 8–13. Citeseer.

Ciccozzi, F., Malavolta, I., and Selic, B. (2019). Execution of uml models: a systematic review of research and practice. Software & Systems Modeling, 18(3):2313–2360.

Deterding, S., Dixon, D., Khaled, R., and Nacke, L. (2011). From game design elements to gamefulness: defining” gamification”. In 15th Int. Academic MindTrek conference: Envisioning future media environments, pages 9–15.

Dori, D. (2002). Why significant uml change is unlikely. Communications of the ACM, 45(11):82–85.

Dzidek, W. J., Arisholm, E., and Briand, L. C. (2008). A realistic empirical evaluation of the costs and benefits of uml in software maintenance. IEEE Transactions on software engineering, 34(3):407–432.

Elazhary, O., Werner, C., Li, Z. S., Lowlind, D., Ernst, N. A., and Storey, M.-A. (2021). Uncovering the benefits and challenges of continuous integration practices. IEEE Transactions on Software Engineering.

Farias, K., Garcia, A., Whittle, J., von Flach Garcia Chavez, C., and Lucena, C. (2015). Evaluating the effort of composing design models: a controlled experiment. Software & Systems Modeling, 14(4):1349–1365.

Farias, K., Gonçales, L., Bischoff, V., da Silva, B. C., Guimarães, E. T., and Nogle, J. (2018). On the uml use in the brazilian industry: A state of the practice survey (s). In SEKE, pages 372–371.

Farias, K. and Silva, B. C. d. (2020). What’s the grade of your diagram? towards a streamlined approach for grading uml diagrams. In 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, pages 1–2.

Fernández-Sáez, A. M., Caivano, D., Genero, M., and Chaudron, M. R. (2015). On the use of uml documentation in software maintenance: Results from a survey in industry. In 2015 ACM/IEEE 18th Int. Conf. on Model Driven Engineering Languages and Systems (MODELS), pages 292–301. IEEE.

Fernández-Sáez, A. M., Chaudron, M. R., and Genero, M. (2018). An industrial case study on the use of uml in software maintenance and its perceived benefits and hurdles. Empirical Software Engineering, 23(6):3281–3345.

Fitzgerald, B. and Stol, K.-J. (2017). Continuous software engineering: A roadmap and agenda. Journal of Systems and Software, 123:176–189.

Forward, A. and Lethbridge, T. C. (2008). Problems and opportunities for model-centric versus code-centric software development: a survey of software professionals. In Proceedings of the 2008 international workshop on Models in software engineering, pages 27–32.

Gorschek, T., Tempero, E., and Angelis, L. (2014). On the use of software design models in software development practice: An empirical investigation. Journal of Systems and Software, 95:176–193.

Heldal, R., Pelliccione, P., Eliasson, U., Lantz, J., Derehag, J., and Whittle, J. (2016). Descriptive vs prescriptive models in industry. In Proceedings of the acm/ieee 19th international conference on model driven engineering languages and systems, pages 216–226.

Ho-Quang, T., Hebig, R., Robles, G., Chaudron, M. R., and Fernandez, M. A. (2017). Practices and perceptions of uml use in open source projects. In 39th ICSE: Software Engineering in Practice Track, pages 203–212. IEEE.

Huotari, K. and Hamari, J. (2017). A definition for gamification: anchoring gamification in the service marketing literature. Electronic Markets, 27(1):21–31.

Hutchinson, J., Rouncefield, M., and Whittle, J. (2011a). Model-driven engineering practices in industry. In Proceedings of the 33rd International Conference on Software Engineering, pages 633–642.

Hutchinson, J., Whittle, J., Rouncefield, M., and Kristoffersen, S. (2011b). Empirical assessment of mde in industry. In Proceedings of the 33rd international conference on software engineering, pages 471–480.

Jackson, D. (2019). Alloy: A language and tool for exploring software designs. Commun. ACM, 62(9):66–76.

Júnior, E., Farias, K., and Silva, B. (2021). A survey on the use of uml in the brazilian industry. In Brazilian Symposium on Software Engineering, pages 275–284.

Khelladi, D. E., Kretschmer, R., and Egyed, A. (2019). Detecting and exploring side effects when repairing model inconsistencies. In 12th ACM Int. Conf. on Software Language Engineering, pages 113–126.

Kitchenham, B. A. and Pfleeger, S. L. (2008). Personal opinion surveys. In Guide to advanced empirical software engineering, pages 63–92. Springer.

Kobryn, C. (2002). Will uml 2.0 be agile or awkward? Communications of the ACM, 45(1):107–110.

Kretschmer, R., Khelladi, D. E., Lopez-Herrejon, R. E., and Egyed, A. (2021). Consistent change propagation within models. Software and Systems Modeling, 20(2):539–555.

Kuhn, A., Murphy, G. C., and Thompson, C. A. (2012). An exploratory study of forces and frictions affecting largescale model-driven development. In Int. Conf. on Model Driven Engineering Languages and Systems, pages 352–367. Springer.

Lange, C. F., Chaudron, M. R., and Muskens, J. (2006). In practice: Uml software architecture and design description. IEEE Software, 23(2):40–46.

Laukkanen, E., Itkonen, J., and Lassenius, C. (2017). Problems, causes and solutions when adopting continuous delivery—a systematic literature review. Information and Software Technology, 82:55–79.

Liebel, G., Marko, N., Tichy, M., Leitner, A., and Hansson, J. (2018). Model-based engineering in the embedded systems domain: an industrial survey on the state-of-practice. Software & Systems Modeling, 17(1):91–113.

Liu, D., Santhanam, R., and Webster, J. (2017). Toward meaningful engagement: A framework for design and research of gamified information systems. MIS quarterly, 41(4).

Mora, A., Riera, D., Gonzalez, C., and Arnedo-Moreno, J. (2015). A literature review of gamification design frameworks. In 2015 7th International Conference on Games and Virtual Worlds for Serious Applications (VS-Games), pages 1–8. IEEE.

Neto, J. C., Bento, L. H. T. C., OliveiraJr, E., and Souza, S. D. R. S. (2021). Are we teaching uml according to what it companies need? a survey on the são carlos-sp region. In Anais do Simpósio Brasileiro de Educação em Computação, pages 34–43. SBC.

OMG (2017). Uml: Infrastructure specification. https://www.omg.org/spec/UML/2.5.1/PDF.

Ozkaya, M. and Erata, F. (2020). A survey on the practical use of uml for different software architecture viewpoints. Information and Software Technology, 121:106275.

Pedreira, O., García, F., Brisaboa, N., and Piattini, M. (2015).Gamification in software engineering–a systematic mapping. Information and software technology, 57:157–168.

Petre, M. (2013). Uml in practice. In 2013 35th international conference on software engineering (icse), pages 722–731. IEEE.

Petre, M. (2014). No shit or oh, shit!: responses to observations on the use of uml in professional practice. Software & Systems Modeling, 13(4):1225–1235.

Porto, D., Jesus, G., Ferrari, F., and Fabbri, S. (2020). Initiatives and challenges of using gamification in software engineering: A systematic mapping. arXiv preprint arXiv:2011.07115.

Reder, A. and Egyed, A. (2013). Determining the cause of a design model inconsistency. IEEE Transac. on Software Engineering, 39(11):1531–1548.

Ren, W., Barrett, S., and Das, S. (2020). Toward gamification to software engineering and contribution of software engineer. In 4th Int. Conf. on Management Engineering, Software Engineering and Service Sciences, pages 1–5.

Rubert, M. and Farias, K. (2022). On the effects of continuous delivery on code quality: A case study in industry. Computer Standards & Interfaces, 81:103588.

Scanniello, G., Gravino, C., Genero, M., Cruz-Lemus, J., and Tortora, G. (2014). On the impact of uml analysis models on source-code comprehensibility and modifiability. ACM TOSEM, 23(2):1–26.

Shpakova, A., Dörfler, V., and MacBryde, J. (2016). Gamification and innovation: a mutually beneficial union. In BAM 2016: 30th Annual Conference of the British Academy of Management.

Stikkolorum, D. R., van der Putten, P., Sperandio, C., and Chaudron, M. (2019). Towards automated grading of uml class diagrams with machine learning. In BNAIC/BENELEARN.

Störrle, H. (2017). How are conceptual models used in industrial software development? a descriptive survey. In 21st Int. Conf. on Evaluation and Assessment in Software Engineering, pages 160–169.

Thomas, D. (2004). Mda: Revenge of the modelers or uml utopia? IEEE software, 21(3):15–17.

Usman, M., Felderer, M., Unterkalmsteiner, M., Klotins, E., Mendez, D., and Alégroth, E. (2020). Compliance requirements in large scale software development: An industrial case study. In Int. Conf. on Product-Focused Software Process Improvement, pages 385–401. Springer.

Vesin, B., Klašnja-Milićević, A., Mangaroska, K., Ivanović, M., Jolak, R., Stikkolorum, D., and Chaudron, M. (2018). Web-based educational ecosystem for automatization of teaching process and assessment of students. In Proceedings of the 8th International Conference on Web Intelligence, Mining and Semantics, pages 1–9.

Webb, E. N. (2013). Gamification: when it works, when it doesn’t. In International Conference of Design, User Experience, and Usability, pages 608–614. Springer.

Wohlin, C., Runeson, P., Höst, M., Ohlsson, M. C., Regnell, B., and Wesslén, A. (2012). Experimentation in software engineering. Springer Science & Business Media.

Xavier, A., Martins, F., Pimentel, R., and Carvalho, D. (2019). Aplicação da uml no contexto das metodologias ágeis. In Anais do VI Encontro Nacional de Computação dos Institutos Federais. SBC.

Downloads

Published

2022-09-05

How to Cite

Júnior, E. W., Farias, K., & da Silva, B. (2022). On the Use of UML in the Brazilian Industry: A Survey. Journal of Software Engineering Research and Development, 10, 10:1 – 10:16. https://doi.org/10.5753/jserd.2022.2554

Issue

Section

Research Article