Escolar Documentos
Profissional Documentos
Cultura Documentos
Diagrama de Componentes
n Captura a estrutura física da implementação
n Construído como parte da especificação da arquitectura
n Objectivo
• Organizar o código fonte (ambiente de desenvolvimento)
• Construir uma release executável (ambiente de produção)
• Especificar uma base de dados física
Componentes
n Um componente é uma parte física (feita de bits e bytes) e
substituível de um sistema, que proporciona a realização de um
conjunto de interfaces
• Podem-nos interessar diferentes ambientes: desenvolvimento, produção,
testes, ...
kernel32.dll
2 rodas
dentadas <<library>> biblioteca estática ou dinâmica
Interfaces
n Uma interface é um conjunto de operações usado para especificar
os serviços de uma classe ou componente
n Relação de concretização (realization): um componente pode
concretizar (implementar os serviços de) uma ou mais interfaces
• Normalmente quer dizer que tem classes que implementam esses interfaces
• Diz-se que as interfaces são exportadas
• Um componente poder ser substituído por outro componente que implementa
as mesmas interfaces
- Não basta obedecer à mesma sintaxe, mas também à mesma semântica
Interfaces – Exemplo 1
image.java componente.java
ImageObserver
<<interface>>
image.java ImageObserver componente.java
abort: int {final static}
error: int {final static}
imageUpdate(): Boolean
JDBC
Visual Basic
Application
Sun JDBC-
SQL Server
ODBC brigde JDBC driver
interface
(mais precisamente, API)
ODBC
Transact SQL
SQL Server
DBMS
n Dependências estereotipadas:
• estereótipo «hyperlink» - entre páginas html ou páginas html e
executáveis
• estereótipo «trace» - entre versões consecutivas do mesmo tipo de
componente
Dependências - Exemplo
Composição e agrupamento de
componentes
n Conforme o nome indica, os componentes são para compor
(montar), criando componentes maiores ou sistemas inteiros
n Exemplos:
• Base de dados composta por tabelas
• Biblioteca dinâmica (dll) composta por componentes COM+
Base de dados de
biblioteca
Web site
«hyperlink»
Componentes de Lógica de
Negócio do SIB