Escolar Documentos
Profissional Documentos
Cultura Documentos
Componentes
Curso de Especializao DEINF - UFMA
Desenvolvimento Orientado a Objetos
Prof. Geraldo Braz Junior
Introduo
Engenharia de software baseada em componentes (CBSE
Fundamentos CBSE
Componentes independentes especificados por suas
interfaces.
Padres de implementao de Componentes para facilitar a
integrao de componentes.
Middleware que fornece suporte para a interoperabilidade.
Um processo de desenvolvimento que orientada para a
reutilizao.
Problemas CBSE
Confiabilidade de componentes
Caractersticas
Padro
Caractersticas
Implantvel
Interfaces de Componentes
Interface Forncecida
Define os servios que so oferecidos pelo componente
Interface requerida
Define os servios que especifica quais servios devem ser
Interfaces de Componentes
10
sensorManagement
Data collector
sensorData
11
stopSensor
testSensor
initialise
repor t
listAll
Modelos de Componentes
Um modelo de componente uma definio de normas
Elementos de um modelo de
componentes
Customisation
Naming
convention
Composition
Interface
definition
Specific
inter faces
Interfaces
Documentation
Meta-data
access
Usage
information
Component model
13
Packag ing
Evolution
suppor t
Deploy ment
and use
Middleware
Modelos de componentes so a base para o middleware que
14
Transaction
management
Resource
management
Concurrency
Persistence
Security
Platform services
Addressing
15
Inter face
definition
Exception
management
Component
communications
16
Componente de desenvolvimento
para reutilizao
17
Reutilizao de componentes
Deve refletir abstraes estveis do domnio;
Deve ocultar a representao do Estado;
Deve ser to independente quanto possvel;
Dever publicar excees por meio da interface do
componente.
H um trade-off entre reusabilidade e usabilidade
Quanto mais a interface genrica, maior a capacidade de
reutilizao,
No entanto, a reutilizao mais complexa
componente.
Integrar componentes necessrios para reduzir as
dependncias.
18
19
Os componentes reutilizveis
O custo de desenvolvimento de componentes
20
O processo CBSE
Quando reutilizar componentes, essencial para fazer
21
O processo CBSE
Requisitos
Gerais do
Sistema
22
Identificar
Componentes
Candidatos
Identificar
Componentes
Candidatas
Alterar Requisitos
de acordo com
componentes
identificadas
Projeto de
Arquitetura
O processo de identificao de
componentes
Busca de
Componentes
23
Seleo de
Componentes
Validao de
Componentes
Questes na identificao de
componentes
Confiana:Voc precisa ser capaz de confiar no fornecedor de um
Composio de componentes
O processo de montagem de componentes para criar um
25
Tipos de composio
Composio seqencial
componentes compostos so executados em seqncia. Isso envolve
Composio hierrquica
Um componente chama servios de outro.
Composio do aditiva
as interfaces de dois componentes so colocadas juntas para
26
Tipos de composio
A
(a)
27
(b)
(c)
Incompatibilidade de Interfaces
Incompatibilidade de parmetro
onde as operaes tm o mesmo nome, mas so de diferentes
tipos.
Incompatibilidade Operao
onde os nomes das operaes nas interfaces compostas so
diferentes.
Inconcluso de Operao
onde a interface provides de um componente um subconjunto
28
Componentes Incompatveis
string location(string pn)
29
Adaptor
Resolver o problema de incompatibilidade de componentes,
30
31
addSensor
removeSensor
star tSensor
star t
sensor
stop
getdata
32
Adapter
Data collector
sensorData
stopSensor
testSensor
initialise
repor t
listAll
Interface
Voc tem que confiar na documentao do componente para
33
addItem
adaptor
Photo
Library
retrieve
catEntry
getCatalogEntry
User
Inter face
34
Image
Manager
OCL
O Object Constraint Language (OCL) destinado a definir
35
PhotoLibrary Condies
Como especificado usando OCL:
No deve haver uma fotografia na biblioteca com o mesmo
37
funcionais?
Qual a composio de componentes permite mudar o futuro?
Quais sero as propriedades emergentes do sistema composto?
38
Referncias
Ian Sommerville, Engenharia de Software. 8 edio Traduo
39