On refinement of software architectures

Although increasingly popular, software component techniques still lack suitable formal foundations on top of which rigorous methodologies for the description and analysis of software architectures could be built. This paper aims to contribute in this direction: building on previous work by the auth...

ver descrição completa

Detalhes bibliográficos
Autor principal: Meng, Sun (author)
Outros Autores: Barbosa, L. S. (author), Naixiao, Zhang (author)
Formato: conferencePaper
Idioma:eng
Publicado em: 2005
Assuntos:
Texto completo:http://hdl.handle.net/1822/6292
País:Portugal
Oai:oai:repositorium.sdum.uminho.pt:1822/6292
Descrição
Resumo:Although increasingly popular, software component techniques still lack suitable formal foundations on top of which rigorous methodologies for the description and analysis of software architectures could be built. This paper aims to contribute in this direction: building on previous work by the authors on coalgebraic semantics, it discusses component refinement at three different but interrelated levels: behavioural, syntactic, i.e., relative to component interfaces, and architectural. Software architectures are defined through component aggregation. On the other hand, such aggregations, no matter how large and complex they are, can also be dealt with as components themselves, which paves the way to a discipline of hierarchical design. In this context, a major contribution of this paper is the introduction of a set of rules for architectural refinement. Keywords: Software component, software architecture, refinement, coalgebra.