• JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
 
  Bookmark and Share
 
 
Tese de Doutorado
DOI
10.11606/T.55.2009.tde-02092009-140533
Documento
Autor
Nome completo
Daniel Lucredio
Unidade da USP
Área do Conhecimento
Data de Defesa
Imprenta
São Carlos, 2009
Orientador
Banca examinadora
Fortes, Renata Pontin de Mattos (Presidente)
Braga, Rosana Teresinha Vaccare
Garcia, Alessandro Fabricio
Ricarte, Ivan Luiz Marques
Werner, Claudia Maria Lima
Título em português
Uma abordagem orientada a modelos para reutilização de software
Palavras-chave em português
Desenvolvimento orientado a modelos
Engenharia de Domínio
Linguagens específicas de domínio
Linhas de produtos de software
Programação generativa
Reutilzação de szoftware
Resumo em português
A reutilização de software busca aumentar a qualidade e produtividade no desenvolvimento de software, evitando a duplicação do esforço e reaproveitando o máximo possível das experiências de projetos passados. Apesar de simples, esta idéia não é facilmente colocada em prática, principalmente de maneira sistemática e controlada. Técnicas de engenharia de domínio e linhas de produtos de software buscam facilitar esta tarefa, porém ainda existem outros fatores que dificultam a adoção da prática da reutilização. Entre estes, destacam-se os problemas inerentes ao desenvolvimento de software da maneira como é conduzido atualmente, baseado em código-fonte. Estes problemas têm suas origens na crescente demanda por software cada vez mais complexo e afetam negativamente a capacidade de reutilizar software. O desenvolvimento orientado a modelos surge como uma alternativa atraente neste cenário, elevando a importância de modelos dentro do ciclo de vida do software, incorporando-os como parte integrante do produto final por meio de técnicas de modelagem e geração de código. Com isto, parte da complexidade do software fica escondida dentro dos geradores, protegendo os desenvolvedores, reduzindo a incidência de erros, aumentando a produtividade, qualidade, interoperabilidade e manutenibilidade dos artefatos produzidos. Nesta dissertação defende-se a tese de que o desenvolvimento orientado a modelos pode efetivamente aumentar e/ou melhorar a reutilização de software, e que para isso ela deve ser tratada de forma consistente dentro de um processo de engenharia de domínio. Para demonstrar esta tese, é apresentada uma abordagem orientada a modelos para reutilização de software, com atividades que guiam o desenvolvedor durante a análise, projeto e implementação do domínio. São também apresentados os resultados de uma avaliação envolvendo três estudos empíricos, realizados em ambiente acadêmico e industrial, que buscou determinar a viabilidade da abordagem e os benefícios que podem ser alcançados com a combinação de técnicas do desenvolvimento orientado a modelos e da reutilização de software. Os resultados mostram que a abordagem pode trazer diferentes benefícios para organizações de software, incluindo aumento da quantidade e qualidade da reutilização, e reduzindo a complexidade de desenvolvimento e configuração de produtos
Título em inglês
A model-driven software reuse approach
Palavras-chave em inglês
Domain engineering
Domain-Specific languages
Generative programming
Model-driven development
Software product lines
Software reuse
Resumo em inglês
Software reuse aims at increasing quality and productivity in software development, avoiding effort duplication and reusing all past experiences possible. Although it is a simple idea, it is not easy to put reuse in practice, especially in a systematic and controlled way. Domain engineering and software product lines techniques try to make this task easier, but there are many other factors that difficult the reuse adoption. Among these factors are the problems that are inherent to software development in the way it is conducted today, based on source code. These problems arise from the growing demand for increasingly complex software, negatively affecting the ability to reuse. Model-driven development is an attractive alternative in this scenario, leveraging the importance of models in the software life cycle, incorporating them as part of the final product through modeling and code generation techniques. As a result, part of the software complexity becomes hidden inside the generators, shielding the developers, reducing errors, increasing the productivity, quality, interoperability and maintainability of the produced assets. In this dissertation is presented the thesis that model-driven development can effectively increase and/or improve software reuse, and that to achieve this goal it must be treated in a consistent way inside a domain engineering process. To demonstrate this thesis, a model-driven software reuse approach is presented, with activities that guide the developer during domain analysis, design and implementation. The results of an evaluation involving three empirical studies are also presented. The studies were performed in both academic and industrial environments, and aimed at determining the viability of the approach and the benefits that can be achieved with the combination of model-driven development and software reuse techniques. The results showed that the approach can bring different benefits to software organizations, such as software reuse quantity and quality improvements, and complexity reduction in product development and configuration tasks
 
AVISO - A consulta a este documento fica condicionada na aceitação das seguintes condições de uso:
Este trabalho é somente para uso privado de atividades de pesquisa e ensino. Não é autorizada sua reprodução para quaisquer fins lucrativos. Esta reserva de direitos abrange a todos os dados do documento bem como seu conteúdo. Na utilização ou citação de partes do documento é obrigatório mencionar nome da pessoa autora do trabalho.
tese.pdf (3.08 Mbytes)
Data de Publicação
2009-09-02
 
AVISO: O material descrito abaixo refere-se a trabalhos decorrentes desta tese ou dissertação. O conteúdo desses trabalhos é de inteira responsabilidade do autor da tese ou dissertação.
  • FORTES, R. P. M., et al. Reinforcing Design Rationale in Software Projects Developed in Academic Environment,. International Transactions on Systems Science and Applications [online], 2007, vol. 3, p. 238-248. Available from: http://itssa.xiaglow-research.org.uk/toc/03-3.abstract.pdf.
  • LISBOA, Liana Barachisio, et al. A systematic review of domain analysis tools [doi:10.1016/j.infsof.2009.05.001]. Information and Software Technology [online], 2010, vol. 52, n. 1, p. 1-13.
  • LISBOA, Liana Barachisio, et al. A Systematic Review of Domain Analysis Tools [doi:10.1016/j.infsof.2009.05.001]. Information and Software Technology [online], 2010, vol. 52, p. 1-13.
  • LUCRéDIO, Daniel, et al. Software reuse : The Brazilian industry scenario [doi:10.1016/j.jss.2007.08.036]. Journal of Systems and Software [online], 2008, vol. 81, n. 6, p. 996-1013.
  • LUCRéDIO, Daniel, M. FORTES, Renata P., and WHITTLE, Jon. MOOGLE : a metamodel-based model search engine [doi:10.1007/s10270-010-0167-7]. Software & Systems Modeling [online], 2012, vol. 11, n. 2, p. 183-208.
  • LUCRÉDIO, Daniel, et al. Software Reuse: The Brazilian Industry Scenario [doi:10.1016/j.jss.2007.08.036]. Journal of Systems and Software [online], 2008, vol. 81, p. 996-1013.
  • LUCRÉDIO, Daniel, M. Fortes, Renata P., and Whittle, Jon. MOOGLE: a metamodel-based model search engine [doi:10.1007/s10270-010-0167-7]. Software and Systems Modeling [online], 2012, vol. 11, p. 183-208.
  • ALMEIDA, Eduardo S., et al. Domain Implementation in Software Product Lines Using OSGi [doi:10.1109/ICCBSS.2008.19]. In Seventh International Conference on Composition-Based Software Systems (ICCBSS 2008) [online], Madrid, Spain, 2008. Madrid, Spain : IEEE, 2008. p. 72-81. ISBN 978-0-7695-3091-8.
  • ALMEIDA, Eduardo Santana de, et al. A Systematic Process for Domain Engineering. In The 20th International Conference on Software Engineering and Knowledge Engineering (SEKE), Redwood City, California, USA, 2008. Proceedings of SEKE 2008., 2008.
  • ALMEIDA, Eduardo Santana de, et al. Domain Implementation in Software Product Lines Using OSGi [doi:10.1109/ICCBSS.2008.19]. In Seventh International Conference on Composition-Based Software Systems (ICCBSS 2008), Madrid - Espanha, 2008. Proceedings of IEEE ICCBSS 2008.Los Amitos CA - USA : IEEE Computer Society, 2008.
  • BITTAR, T. J., et al. Definição de metamodelos para Web incorporando boas práticas de acessibilidade e usabilidade. In CLEI 2010 - XXXVI Conferência Latino-Americana de Informática, Assunção - Paraguai, 2010. Anais do CLEI 2010.Assunção, 2010.
  • GARCIA, Vinicius C., et al. Toward a Code Search Engine Based on the State-of-Art and Practice [doi:10.1109/APSEC.2006.57]. In 2006 13th Asia Pacific Software Engineering Conference (APSEC'06) [online], Bangalore, India, 2006. Bangalore, India : IEEE, 2006. p. 61-70. ISBN 0-7695-2685-3.
  • Garcia, Vinicius Cardoso, et al. From Specification to the Experimentation: A Software Component Search Engine Architecture [doi:10.1007/11783565]. In Component-Based Software Engineering: 9th International Symposium, CBSE 2006, Väster s - Sweden., 2006. Lecture Notes in Computer Science..Heidelberg : Springer Berlin, 2006.
  • Garcia, Vinicius Cardoso, et al. Toward a Code Search Engine Based on the State-Of-The-Art and Practice [doi:10.1109/APSEC.2006.57]. In 13th Asia Pacific Software Engineering Conference (APSEC06), Bangalore, 2006. Proceedings of 13th Asia Pacific Software Engineering Conference (APSEC06).Bangalore, 2006.
  • Garcia, Vinicius Cardoso, et al. Towards a Maturity Model for a Reuse Incremental Adoption. In SBCARS - Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software de 2007, Campinas - SP, 2007. Anais do Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software de 2007 (SBCARS 2007)., 2007.
  • GARCIA, Vinicius Cardoso, et al. Towards an Assessment Method for Software Reuse Capability [doi:10.1109/QSIC.2008.58]. In QSIC '08: Eighth International Conference on Quality Software, 2008. QSIC '08: Proceedings of the 2008 The Eighth International Conference on Quality Software.Washington, DC, USA : IEEE Computer Society, 2008. Abstract.
  • Grillo, F. Del Nero, Fortes, Renata P.M., and LUCRÉDIO, Daniel. Towards collaboration between sighted and visually impaired developers in the context of Model-Driven Engineering. In 1. Workshop GMLD (on Graphical Modeling Language Development)), Lyngby, Dinamarca, 2012. Joint Proceedings of co-located Events at the 8th European Conference on Modelling Foundations and Applications (ECMFA 2012).Copenhagen, Denmark : Technical University of Denmark - DTU Informatics, 2012. Available from: http://www2.imm.dtu.dk/conferences/ECMFA-2012/proceedings/PDF/ECMFA-2012-Workshop-Proceedings.pdf.
  • LUCRÉDIO, Daniel, et al. Designing domain architectures for model-driven engineering. In Simpósio Brasileiro de Componentes, Arquitetura e Reutilização de Software, Salvador BA, 2010. Anais do SBCARS.Porto Alegre RS : SBC, 2010.
  • LUCRÉDIO, Daniel, et al. Performing Domain Analysis for Model-Driven Software Reuse [doi:10.1007/978-3-540-68073-4_19]. In 10th International Conference on Software Reuse (ICSR), Beijing - China, 2008. Lecture Notes in Computer Science.Heidelberg : Springer Berlin / Heidelberg, 2008.
  • LUCRÉDIO, Daniel, et al. The Draco Approach Revisited: Model-Driven Software Reuse. In VI Workshop Brasileiro de Desenvolvimento Baseado em Componentes, Recife-PE, 2006. Proceedings of WDBC 2006.Recife - PE : UFPE/CIN, 2006.
  • LUCRÉDIO, Daniel, et al. Towards a Model-Driven Reuse Process. In 31st IEEE EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA), Work in Progress Session, Porto, Portugal, 2005. Proceedings of 31st IEEE EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA), Work in Progress Session., 2005. Abstract.
  • LUCRÉDIO, Daniel, and Fortes, Renata P.M. Mapping code generation templates to a reference implementation towards automatic code migration. In Workshop Brasileiro de Desenvolvimento de Software Dirigido por Modelos - WB - DSDM, Salvador BA, 2010. Anais do WB-DSDM.Porto Alegre RS : SBC, 2010.
  • LUCRÉDIO, Daniel, FORTES, R. P. M., and Whittle, Jon. MOOGLE: A Model Search Engine [doi:10.1007/978-3-540-87875-9_22]. In MoDELS 2008 - 11th International Conference on Model Driven Engineering Languages and Systems, Toulouse, France, 2008. Proceedings and Lecture Notes in Computer Science.Berlin / Heidelberg : Springer, 2008.
  • PAIVA, Debora Maria Barroso, LUCRÉDIO, Daniel, e FORTES, R. P. M. MVCASE - Incluindo Design Rationale para Auxílio à Modelagem em Projetos de Pesquisa. In XX Simpósio Brasileiro de Engenharia de Software, Florianópolis, Santa Catarina, 2006. Anais da XIII Sessão de Ferramentas.Florianópolis - SC : UFSC, 2006. Resumo.
  • GARCIA, Vinicius Cardoso, et al. From Specification to Experimentation : A Software Component Search Engine Architecture. In GORTON, Ian, et al. Component-Based Software Engineering [doi:10.1007/11783565_6]. Editor. Berlin, Heidelberg : Springer Berlin Heidelberg, 2006. chap. 6. p. 82-97. Lecture Notes in Computer Science.
  • LUCRéDIO, Daniel, et al. Performing Domain Analysis for Model-Driven Software Reuse. In MEI, Hong. High Confidence Software Reuse in Large Systems [doi:10.1007/978-3-540-68073-4_19]. Editor. Berlin, Heidelberg : Springer Berlin Heidelberg, 2008. chap. 19. p. 200-211. Lecture Notes in Computer Science.
  • LUCRéDIO, Daniel, M. FORTES, Renata P., and WHITTLE, Jon. MOOGLE : A Model Search Engine. In CZARNECKI, Krzysztof, et al. Model Driven Engineering Languages and Systems [doi:10.1007/978-3-540-87875-9_22]. Editor. Berlin, Heidelberg : Springer Berlin Heidelberg, 2008. chap. 22. p. 296-310. Lecture Notes in Computer Science.
Todos os direitos da tese/dissertação são de seus autores
Centro de Informática de São Carlos
Biblioteca Digital de Teses e Dissertações da USP. Copyright © 2001-2018. Todos os direitos reservados.