Uma Metodologia e Estudo de Caso para a Avaliação de Dependências no Desenvolvimento de Sistemas

Authors

  • Carlos Magno Barbosa Universidade Federal de São João del-Rei
  • Luan Luiz Gonçalves Federal University of São João del-Rei - UFSJ
  • Flávio Luiz Schiavonni Federal University of São João del-Rei - UFSJ

Keywords:

Mosaicode, dependência de bibliotecas, manutenção de software

Abstract

The library re-usage is one of the most common practices to increase the efficiency of software development and the quality of developed systems. However, this re-usage of libraries can be harmful if it adds problematic dependencies to system maintenance. This paper brings an approach of topics and possible issues that must be taken in considerations during software development and maintenance according to dependencies and used libraries. This analysis can help the dependency optimization relating it with longevity, stability, maturity and maintenance of the system. To exemplify thus purpose it is presented a study of case that describes the analyze on the recovery process in the Harpia / Mosaicode application

Downloads

Download data is not yet available.

References

Abi-Antoun, M. (2007). Making frameworks work: a project retrospective. In Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion, pages 1004–1018. ACM.

Ahmed, M. A. (2011). Towards the development of integrated reuse envirnoments for uml artifacts. In Proceedings of the 6th International Conference on Software Engineering Advances, pages 426 – 431.

Barbosa, C. M. and Schiavoni, F. L. (2020). Avaliação de dependências no desenvolvimento de sistemas. In Anais da IV Escola Regional de Engenharia de Software, pages 106–115, Porto Alegre, RS, Brasil. SBC.

Bessa, S., Valente, M. T., and Terra, R. (2016). Modular specification of architectural constraints. In 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS), pages 31–40.

Caldiera, G. and Basili, V. R. (1991). Identifying and qualifying reusable software components. Computer, 24(2):61–70.

Gamma, E., Helm, R., Johnson, R., and Vlissides, J. (1994). Design patterns: elements of.

German, D. M. and Hassan, A. E. (2009). License integration patterns: Addressing license

mismatches in component-based development. In Proceedings of the 31st International Conference on Software Engineering, pages 188–198. IEEE Computer Society.

Gimenes, I. M. d. S. and Huzita, E. H. M. (2005). Desenvolvimento baseado em componentes: conceitos e técnicas. Rio de Janeiro: Ciência Moderna.

Gonçalves, L. L. and Schiavoni, F. L. (2020). Do harpia ao mosaicode a evolução de um ambiente de programação visual.

In Anais da IV Escola Regional de Engenharia de Software, pages 316–324, Porto Alegre, RS, Brasil. SBC.

Gonçalves, L. L. and Schiavoni, F. (2020). Creating digital musical instruments with libmosaic-sound and mosaicode. Revista de Informática Teórica e Aplicada, 27(04):95–107.

Hummel, O. (2010). Facilitating the comparison of software retrieval systems through a reference reuse collection. In Proceedings of the Workshop on Search-Driven Development: Users, Infrastructure, Tools and Evaluation, pages 17–20.

Johnson, R. E. (1997). Frameworks=(components+ patterns). Communications of the ACM, 40(10):39–42.

Knodel, J., Muthig, D., Naab, M., and Lindvall, M. (2006). Static evaluation of software

architectures. In Proceedings of the 10th European Conference on Software Maintenance and Reengineering, pages 279–294. IEEE.

Krasner, G. E., Pope, S. T., et al. (1988). A description of the model-view-controller user

interface paradigm in the smalltalk-80 system. Journal of object oriented programming, 1(3):26–49.

Kula, R. G., De Roover, C., German, D., Ishio, T., and Inoue, K. (2014). Visualizing

the evolution of systems and their library dependencies. In Software Visualization

(VISSOFT), 2014 Second IEEE Working Conference on, pages 127–136. IEEE.

Li, Y., Zhang, L., Li, G., Xie, B., and Sun, J. (2008). Recommending typical usage

examples for component retrieval in reuse repositories. In Proceedings of 10th International Conference on Software Reuse: High Confidence Software Reuse in Large Systems, pages 76–87.

Mahmood, S., Ahmed, M., and Alshayeb, M. (2013). Reuse environments for software

artifacts: Analysis framework. In Proceedings of IEEE/ACIS 12th International Conference on Computer and Information Science (ICIS), pages 35 – 40.

Mancinelli, F., Boender, J., Di Cosmo, R., Vouillon, J., Durak, B., Leroy, X., and Treinen, R. (2006). Managing the complexity of large free and open source package-based software distributions. In Automated Software Engineering, 2006. ASE’06. 21st IEEE/ACM International Conference on, pages 199–208. IEEE.

Manolescu, D., Kozaczynski, W., Miller, A., and Hogg, J. (2007). The growing divide in

the patterns world. IEEE Software, 24(4):61–67.

Melo, I., Santos, G., Serey, D. D., and Valente, M. T. (2016). Perceptions of 395 developers on software architecture’s documentation and conformance. In X Brazilian Symposium on Software Components, Architectures and Reuse, pages 81–90.

Mendez, D., Baudry, B., and Monperrus, M. (2013). Empirical evidence of large-scale diversity in api usage of objected-oriented software. In Proceedings of 13th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM),

pages 43–52.

Mili, A., Mili, R., and Mittermeir, R. T. (1998). A survey of software reuse libraries. Annals of Software Engineering, 5:349 – 414.

Niu, H., Keivanloo, I., and Zou, Y. (2017). Api usage pattern recommendation for software development. Journal of Systems and Software, 129:127 – 139.

Pressman, R. and Maxim, B. (2016). Engenharia de Software-8ª Edição. McGraw Hill Brasil.

Rosik, J., Gear, A. L., Buckley, J., Babar, M. A., and Connolly, D. (2011). Assessing architectural drift in commercial software development: a case study. Software: Practice and Experience, 41(1):63–86.

Schiavoni, F. L. and Gonçalves, L. L. (2017a). Programação musical para a web com

o mosaicode. In Anais do XXVII Congresso da Associação Nacional de Pesquisa e

Pós-Graduação em Música, pages 1–6, Campinas - SP - Brazil.

Schiavoni, F. L. and Gonçalves, L. L. (2017b). Teste de usabilidade do sistema mosaicode. In Anais [do] IV Workshop de Iniciação Científica em Sistemas de Informação (WICSI), pages 5–8, Lavras - MG - Brazil.

Schiavoni, F. L., Gonçalves, L. L., and Gomes, A. L. N. (2017). Web audio application development with mosaicode. In Proceedings of the 16th Brazilian Symposium on Computer Music, pages 107–114, São Paulo - SP - Brazil.

Shiva, S. G. and Abou Shala, L. (2007). Software reuse: Research and practice. In Fourth International Conference on Information Technology (ITNG’07), pages 603–609. IEEE.

Shiva, S. G. and Shala, L. A. (2007). Software reuse: Research and practice. In Proceedings of the 4th International Conference on Information Technology – ITNG, pages 603–609. IEEE.

Vidal, S., Guimaraes, E., Oizumi, W., Garcia, A., Pace, A. D., and Marcos, C. (2016).

Identifying architectural problems through prioritization of code smells. In X Brazilian

Symposium on Software Components, Architectures and Reuse (SBCARS), pages 41–50.

Wang, J. and Han, J. (2004). Bide: efficient mining of frequent closed sequences. In

Proceedings of 20th International Conference on Data Engineering (ICDE), pages 79–90.

Zhong, H., Xie, T., Pei, P., and Mei, H. (2009). Mapo: mining and recommending api usage pattern.

In Proceedings of European Conference on Object-Oriented Programming, page 318–343.

Published

2021-09-04

How to Cite

Barbosa, C. . M., Gonçalves, L. L. ., & Schiavonni, F. L. (2021). Uma Metodologia e Estudo de Caso para a Avaliação de Dependências no Desenvolvimento de Sistemas. Eletronic Journal of Undergraduate Research on Computing, 19(3). Retrieved from https://journals-sol.sbc.org.br/index.php/reic/article/view/1882

Issue

Section

Full Papers