Anda di halaman 1dari 17

Universidade Portucalense

Desenvolvimento de Sistemas de Informação,


Departamento de Informática

M. Filomena Cerqueira de Castro Lopes


M. João Ferreira

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Análise Orientada a Objectos

ANÁLISE ORIENTADA A OBJECTOS

Na orientação a objectos um sistema complexo consistindo num


grande número de ocorrências é modelado:
• como um conjunto de objectos

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

1
Análise Orientada a Objectos

Há uma forte relação entre ocorrências na vida real e objectos


no modelo

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Análise Orientada a Objectos

CASA guia CARRO

vive
ÀRVORE
PESSOA
DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

2
Análise Orientada a Objectos

UM OBJECTO é uma ocorrência que tem interesse para o


sistema em estudo e que pretendemos descrever no seu
ambiente

UM OBJECTO contem informação e comportamento

O comportamento de um objecto define o modo como ele age e


reage a estímulos externos

A identidade de um objecto é uma propriedade que o distingue


de todos os demais, sendo preservada quando o seu estado muda

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

ANÁLISE ORIENTADA A OBJECTOS

Conjunto de princípios a seguir na fase de análise do processo


de desenvolvimento (DSOO)

Na orientação a objectos um sistema complexo consistindo num


grande número de ocorrências é modelado:
• como um conjunto de objectos

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

3
Analise Orientada a Objectos

18 estudos empíricos sobre DSOO (Johnson, 2002)

CONCLUSÕES:

• 8 estudos (44%) são favoráveis ao DSOO

• 4 (22%) não são favoráveis

• Os restantes (34%) incluem quer aspectos positivos


quer negativos

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

ESTRUTURADA ORIENTADA A OBJECTOS

Ciclo de Vida Sequencial com iterações permitidas Iterativo e incremental

Conceito unificador ao longo Nenhum Objecto


do ciclo vida

Análise Modelos de dados e modelos de Modelos de objectos (diagrama de


processos classes)

Desenho Diagramas de estrutura, especificação Desenho especificação de classes,


detalhada de programas, esquema Diagrama de sequência
base de dados

Implementação Implementação programas, Implementação de classes,


implementação base dados, implementação de base de dados,
integração e testes integração e testes

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

4
Analise Orientada a Objectos

DSOO/DSC
• DSC: decompor o sistema em processos e dados
• DSOO: decompor o problema em objectos inter-
relacionados

• DSOO: altera o foco da modelação da solução para a


área do problema

• DSOO: o desenvolvimento concentra-se sempre nos


mesmos componentes: objecto, classes, relações

• DSOO: o desenvolvimento é feito de uma forma


evolutiva

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

Modelo orientado a objectos

OOA foi construída baseada nos melhores conceitos de:


i Modelo de dados
i OOP
i Sistemas baseados no conhecimento

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

5
Analise Orientada a Objectos

Desenvolvimento de sistemas orientado a objectos


(DSOO)
• Há mais de 30 anos (OOP)
• OOD e OOA início década 90
• Alguns autores:
Booch 1995
Coad and Yourdon 1991
Coleman, Arnold Bodoff, Dollin, Gilchrist, Hayes,
Jeremaes 1994
Jacobson, Chisterson, Jonsson e Overgaard 1995
Rumbaugh, Blaha, Premerlani, Eddy e Lorensen
1991
Shlaer e Mellor 1992
Wirfd-Brock e Johnson 1990
DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Análise Orientada a Objectos

• Proporciona maior compreensão do domínio do problema,


dando-lhe uma maior ênfase
• Melhora a interacção entre analistas e especialistas do
domínio do problema (OOA organiza a análise e especificação
usando os métodos da organização que baseiam o pensamento
das pessoas)
• Reduz a distância entre as diferentes actividades da análise
(incrementa a consistência dos seus resultados tratando
atributos e serviços como um todo)
• Representa explicitamente os elementos comuns
• Elabora especificações que suportam alterações,
providenciando estabilidade sobre os requisitos que mudam
• Reutiliza resultados de análise (organiza os resultados
baseado nos domínios do problema para reutilização presente
e futura)
DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

6
Analise Orientada a Objectos

Os princípios em que OOA se baseia:

• Abstracção (dados, procedimentos)

• Encapsulamento

• Herança

• Associação

• Comunicação com mensagens

• Métodos de organização (Objectos e Atributos, Todo e


Partes, Classes e Membros)

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

Abstracção

iRelacionada com a modelação do mundo real

iPreocupa-se nos aspectos essenciais e próprios


de uma entidade, ignorando as suas
propriedades acidentais

iPreocupa-se no que o objecto é e faz antes de


decidir como será implementado
DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

7
Analise Orientada a Objectos

Encapsulamento
iConsiste na separação dos aspectos externos de
um objecto, que são acessíveis a outros
objectos, dos detalhes de implementação
interna que são ocultados dos outros objectos

iOs dados e as rotinas de processamento em


conjunto formam o objecto

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

Herança
iPermite ao analista especificar atributos e
serviços comuns uma vez
i A capacidade de herdar atributos e serviços de
outras classes é importante (as classes e
objectos devem estar organizados numa
hierarquia)
iAs classes inferiores herdam atributos e
serviços das superiores

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

8
Analise Orientada a Objectos

Associação
iUnião ou conexão de ideias
iAs pessoas usam associação para ligar certas
coisas entre si

Comunicação com mensagens


iAs mensagens resultam na activação de
serviços, os quais vão realizar as acção
necessárias

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

Métodos de organização predominantes - como as


pessoas organizam o seu pensamento

3 métodos:
1)Objectos e Atributos

2) Todo e Partes
Distinção entre um objecto e seus componentes

3) Classes e Membros
Formação e distinção entre diferentes classes de
objectos

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

9
Analise Orientada a Objectos

OOA - Conceitos Gerais


• Na orientação por objectos os átomos do processo
de desenvolvimento são os Objectos (combinam
estruturas de dados e comportamento numa
simples entidade), que trocam Mensagens entre si

• As Mensagens provocam a activação de Serviços,


que por sua vez realizam as acções necessárias

• O emissor da Mensagem não precisa saber como o


Objecto receptor organiza o seu estado interno,
mas apenas que este responde a certas Mensagem
de maneira bem definida

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

• Um Objecto consiste num identificador único (um


nome), uma lista de Atributos (dados) e um
conjunto de Serviços (métodos/operações)

• O Serviço opera nos Atributos ou chama outros


Objectos através de Mensagens

• Objectos similares são organizados em Classes de


objectos

• Uma Classe & Objecto representa um mais alto


nível de abstracção de um grupo de objectos
similares

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

10
Analise Orientada a Objectos

• Atributo - Dado que caracteriza os objectos de


uma classe
Ex: Nome é um atributo da classe Pessoa

• Serviço (Operação/Método) - Manipulação directa


de um objecto através de acções

• O Serviço opera nos Atributos ou chama outros


Objectos através de Mensagens

• Atributos e Serviços são encapsulados no Objecto


e estão disponíveis para outros objectos só
através
DICT, MFCL de um interface
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

• Reutilização e Componentes - resultado da


abstracção, encapsulamento e modularidade

A definição de classes pode ser armazenada, catalogada e


mantida numa livraria de objectos

Os Módulos de código compilados são reutilizáveis e


chamam-se Componentes

Ex: A classe Cliente, após ter sido definida para o sistema


de encomendas e o sistema de stocks, pode ser
reutilizada para o sistema de marketing
O Componente de código que mostra a janela de input
para adicionar um novo objecto Cliente pode ser
reutilizada

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

11
Analise Orientada a Objectos

Um OBJECTO é uma pessoa, um lugar ou uma coisa

• A conta bancária é um objecto num banco; o


empregado é outro objecto no banco tal como o
cliente
• Uma apólice de seguros é um objecto numa
seguradora. Tal como no banco o empregado e o
cliente também existem e são objectos.
• Um carro é um objecto numa centro de automóveis.
O carro é também um objecto num fabrica de
produção de automóveis

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

Uma CLASSE é um conjunto de objectos que


partilham as mesmas propriedades (atributos e
serviços)

Os nomes das classes devem fazer parte da


terminologia do domínio em estudo

Ex válidos para análise:


Cliente, ProdutoEncomendado

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

12
Analise Orientada a Objectos

Um SERVIÇO é uma rotina de processamento que


faz parte de um objecto

• actua aquando uma mensagem de input


• processa os atributos
• produz uma resposta

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Analise Orientada a Objectos

Os nomes dos serviços devem ser atribuídos de


forma a que transmitam facilmente a
funcionalidade que representam

Ex válidos para análise:


AberturadeConta, Gravar, ImprimirEtiquetamail

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

13
Analise Orientada a Objectos

Um ATRIBUTO é um elemento de dados que


descreve uma classe e que permite descrever o
estado de um objecto

Os nomes dos atributos devem ser sugestivos

Ex válidos para análise:


PrimeiroNome, ProdutoEncomendado

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Unified Modelling Language

UML
UNIFIED MODELLING LANGUAGE
(linguagem de modelação unificada)

Utiliza uma notação padrão para especificar,


construir, visualizar e documentar SI segundo
uma perspectiva orientada a objectos

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

14
Unified Modelling Language

Origem e evolução UML


Wirfs-Brock Coad-Yourdon Booch Gamma et al. Meyer
1990 1991 1994 1995 1997

UML
Shlaer-Mellor Rumbaugh Jacobson
1989 1991 1995

(adaptado Nunes e O´Neill, 2001)

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Unified Modelling Language

Origem e evolução UML

Outubro de 1995 aparece o Unified Method, baseado


essencialmente nos métodos OOD (Object Oriented Design de
Grady Booch), OMT (Object Modelling Technique de James
Rumbaugh) e OOSE (Object Oriented Software Engineering de
Ivar Jacobson)

Novembro de 1997 pretendeu-se, sob a égide do OMG (Object


Management Group), normalizar as diversas ferramentas e
notações utilizadas no âmbito da OO

Janeiro de 1997 surge a versão UML 1.0


Em 1999 surge a versão UML 1.3
Actualmente a versão é 2.0 UML
DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

15
Unified Modelling Language

Diagramas UML
•Diagrama Casos de Uso (Use Cases Diagram)
comportamento

•Diagrama de Classes (Class Diagram)


Diagramas de

•Diagrama de Sequência (Sequence Diagram)


•Diagrama de Actividade (Activity Diagram)
•Diagrama de Colaboração (Collaboration Diagram)
•Diagrama de Estados (State Chart Diagram)
•Diagrama de Componentes (Component Diagram)
Diagramas de
arquitectura

•Diagramas de Instalação (Deployment Diagram)

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

Unified Modelling Language

Regras gerais para a construção dos diagramas:


•Evitar linhas cruzadas
•Aplicar consistentemente o tamanho dos símbolos
•Organizar o diagrama da esquerda para a direita e de
cima para baixo
•Mostrar só o que tem que mostrar
•Reorganizar diagramas grandes em diagramas mais
pequenos
•Descrever os diagramas com uma nota quando
necessário

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

16
Unified Modelling Language

Atribuição de nomes:

• Usar a terminologia comum do domínio em estudo

• Atribuir de uma forma consistente o mesmo nome a


objectos que aparecem em diferentes diagramas

DICT, MFCL
Desenvolvimento de Sistemas de Informação, 2009

17

Anda mungkin juga menyukai