Uma arquitetura de software para reuso de componentes

  • Eduardo Kroth UNISC
  • Carlos Alberto Heuser UFRGS

Resumo


O artigo trata do reuso de software, mais especificamente do problema de construção de aplicações a partir de componentes de software pré-existentes. Estes componentes possuem métodos concretos e "template" que oferecem uma funcionalidade especifica para ser usada na aplicação em construção. Este artigo apresenta uma técnica que permite que o construtor de uma aplicação especifique a relação desejada entre as classes da aplicação e um conjunto de componentes pré-existentes. Nesta relação, identificam-se dois tipos de contratos de reuso: uso e implementação. O tipo de contrato uso estabelece regras para o uso de métodos de um componente e o tipo de contrato implementação estabelece regras para a implementação de métodos abstratos de um componente. Para permitir a implementação dos tipos de contratos, é proposta uma arquitetura de integração, formada por componentes, classes da aplicação e classes de integração. As classes de integração possuem especificações como padrões de projeto. O artigo descreve a arquitetura de aplicações que utilizam componentes e mostra como a arquitetura integração deve ser construída.

Palavras-chave: reuso de software, componentes, frameworks, padrões de projeto, contratos de reuso

Referências

BOSCH, J. Adapting Object-Oriented Components, Jyväskylä, Finland - Ed. Springer Proceedings of the .. ECOOP97 Workshops, junho 1997.

COAD, P. et al Object models: strategies, patterns and applications. New Jersey, Ed. Prentice Hall, 1997

CODIENE, W. et al. From custom applications to domain-specific frameworks. Communications of the ACM, 40(10):71-77.

D'HONT, T.; et al. Reuse Contracts Disponível em http://progwww.vub.ac.be/prog/pools/res/index.html (18 out 1999)

FAYAD, M.; SCHMIDT, D. Object-Oriented Application Frameworks. Communications of the ACM. 40(10):71-77

GAMMA, E. et al. Design Patterns: Elements of Reusable Object-Oriented Software. Massachusetts, Addison Wesley Publishing Company, 1994.

JACOBSON, I. et al. Software Reuse-architecture process and organization for business success. Ed. Addison-Wesley, New York, 1997.

JOHNSON, R; FOOTE, B. Designing Reusable Classes. Journal of Object-Oriented Programming, junho/julho 1988, volume 1 número 2.p32-35

KROTH, E. et al. Software Assistente no Uso de Componentes. Proceedings of the XII — Simpósio Brasileiro de Engenharia de Software — Sessão de Ferramentas, outubro 1999.

LUCAS, C. Documenting Reuse and Evolution with Reuse Contracts. Tese de doutorado, Departamento de Ciência da Computação, Universidade Vrije, Bruxelas, Bélgica, 1996.

MEIJER, T. et al. Class Composition in FACE, a Framework Adaptive Composition Environment. Proceedings of the... ECOOP'96 Workshop Reader, julho 1996.

MENS, K. et al Reuse Contracts: Managing Evolution in Adaptable Systems. Proceedings of the... ECOOP'96 Workshop on Adaptability in Object-Oriented Software Development, 1996

MENS, K. et al Supporting Disciplined Reuse and Evolution of UML Models. Proceedings of the... UML'98 Workshop, Mulhouse, França, junho 1998.

MENS, K. et al Giving Precise Semantics to Reuse and Evolution in UML. Proceedings of the... ICSE'98 International Workshop on Principles of Software Evolution, Kyoto, Japan, 1998.

MEUSEL, M. Czarecki; Kopf, W. A model for structuring user documentation of object-oriented frameworks using pattems and hypertext. Proceedings of the ... ECOOP'97 (LNCS 1241), pp.498-510, Springer-Verlag, 1997.

ODENTHAL, G.; QuiebekCirkel,K. Using Patterns for Design an Documentation. Proceedings of the... ECOOP'97 (LNCS 1241), pp. 511-529, Springer-Verlag, 1997.

SILVA, A. R. et al Three-Layered Framework with Separation of Concerns. Proceedings of the... OOPSLA'96 Workshop on Exploration of Framework Design Principles, Califórnia, EUA, outubro, 1996

Steyaert, P. et al. Reuse Contracts: Managing the Evolution of Reusable Asses. Proceedings of the.. OOPSLA'96 Conference on Object-Oriented Programming, Systems, Languages and Applications, ACM SIGPLAN Notices, vol.31, nº. 10, outubro 1996, pp. 268-285

SZYPERSKI, C. Component Software. Harlow, Reino Unido, Addison Wesley Publishing Company, 1998
Publicado
04/10/2000
KROTH, Eduardo; HEUSER, Carlos Alberto. Uma arquitetura de software para reuso de componentes. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 14. , 2000, João Pessoa/PB. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2000 . p. 195-210. DOI: https://doi.org/10.5753/sbes.2000.25929.