Você está na página 1de 4

Análise Orientada a Objetos

1. Introdução

Existem no mercado muitos livros e outras referências bibliográficas apresentando os


conceitos da Tecnologia de Objetos e os benefícios de sua utilização. Além disso, a
grande maioria dos softwares comerciais, especialmente os do ambiente Windows, já
incorporam características orientadas a objetos. Porém, ainda percebe-se muito
ceticismo na comunidade de profissionais de desenvolvimento de sistemas
organizacionais. Em pane pela falta de cultura na utilização de metodologias, e muitas
vezes por não acreditarem que é possível aplicar os conceitos AOO em suas empresas.
Essa falta de credibilidade advém principalmente da escassez de profissionais que
realmente dominam a tecnologia e consequente reduzido número de empresas bem
sucedidas na adoção de metodologia de desenvolvimento orientado a objetos.

URCAMP
Análise de Sistemas
Análise Orientada a Objeto
1. Introdução (Histórico das Linguagens O.O.)

• Simula 67(introduz conceitos de classes e objetos) [1967];


• Smalltalk 1972, 74, 76, 78, 80;
• Ada 1983 (uso militar-EUA), Eilffel 1984 (características formais), Object
pascal 1986;
• C++ 1.0 1980, C++ 2.0 1989, C++ 3.0 1990 (linguagem híbrida, derivada da
linguagem C);
• JAVA 1995(Linguagem puramente orientada a objetos);
• 1995 --> Várias linguagens agregando conceitos OO.

2. Análise Orientada a Objetos (AOO)


A análise orientada a objetos é constituída de conceitos que são
considerados inovadores se comparados com os outros métodos. Isto
implica em uma mudança radical sobre as metodologias orientadas ao
processo (como a análise estruturada), porém, produzindo somente uma
mudança incremental sobre as metodologias orientadas aos dados. De fato,
seus conceitos podem parecer diferentes, porém eles são muito naturais e
se aplicam ao nosso mundo real.
O objetivo da análise orientada a objetos é o de desenvolver uma
série de modelos de análise, satisfazendo um conjunto de requisitos
definidos pelo cliente. Isto é, esses modelos descrevem, de forma
estruturada, as informações, as funções e o comportamento de seus
elementos constituintes. A informação (ou modelo de objeto) contém a
definição dos objetos no sistema, os quais incluem: o nome do objeto, os
atributos do objeto, e os relacionamentos que um objeto tem com outros. O
modelo de comportamento (ou de estado) descreve o comportamento dos
objetos em termos das transições permitidas entre os objetos e os eventos
que causam a mudança de estado desses objetos.
A AOO enxerga o mundo como objetos com estrutura de dados e
comportamentos, e eventos que mudam estes comportamentos ou suas
operações. A ideia que o sistema pode ser visto como uma população de
objetos interativos, cada um sendo um conjunto de dados e funcionalidades,
é o fundamento da tecnologia de objetos e fornece uma alternativa atraente
para o desenvolvimento de sistemas complexos. Este é um radical começo
comparado com os métodos anteriores de especificação de requisitos,
como a decomposição funcional e análise estruturada. Uma grande variedade
de métodos de análise orientada a objetos foram desenvolvidos desde 1988. Porém,
todos eles possuem características comuns entre si, são elas:
• Representação de classes e hierarquias

• Criação de modelos de relacionamento de objetos

• Derivação de modelos de comportamento de objetos

A AOO possui muitas vantagens, dentre elas destacamos:


• manutenibilidade através da simplificação do mapeamento do mundo real, o qual
proporciona menos esforço de análise, menos complexidade no design do sistema, e
uma fácil verificação por parte do usuário;
• reusabilidade dos artifícios da análise, os quais economizam tempo e custos;
• ganhos na produtividade através do direto mapeamento pelas características da
Linguagens de Programação Orientadas a Objetos.

3. Conceitos Básicos
Vamos definir agora os principais conceitos que estão por trás da
análise orientada a objetos. Eles são de fundamental importância para a
análise e, são eles que "fazem a diferença" com relação aos outros
métodos.
3.1Objeto
A característica básica dos métodos orientados a objeto é a façanha da unificação
dos formalismos utilizados na análise, projeto e programação.
A partir do momento que nossa mente nos habituou a pensar
abstratamente, começamos a formar conceitos sobre as coisas que nos
cercam. Isto nos permitiu separar coisas semelhantes, segundo algumas
características e atribuir um nome genérico ao conjunto. Por exemplo, um
avião teco-teco, um avião de carga, um avião a jato; todos eles poderiam
ser agrupados em um conjunto chamado Avião. Ou seja, o avião é uma
abstração da realidade - trata-se de uma generalização de um aspecto da
realidade.
Um objeto é qualquer coisa, real ou abstrata, a respeito da qual
armazenamos dados e os métodos que os manipulam. É entidade qualquer
objeto com identidade própria que é caracterizada por seu comportamento
(método) e estados (atributos).
Objeto é uma representação abstrata de coisas do mundo real, que sob o ponto de vista do nosso problema
possuem atributos e métodos comuns.
3.1.1 Identificação de Objetos
A identificação de objetos inicia-se ao examinar a declaração do
problema ou ao executar uma "análise gramatical" da narrativa de
processamento do sistema a ser construído. Objetos são determinados
sublinhando-se cada nome ou cláusula nominal e colocando-se numa
tabela.
Os objetos podem ser:
•Entidades Externas (por exemplo, outros sistemas, dispositivos, pessoas) que produzem ou
consomem informações a serem usadas por um sistema baseado em computador.
•Coisas (por exemplo, relatórios, displays, cartas, cartazes) que fazem parte do domínio
de informação do problema.
•Ocorrências ou eventos (por exemplo, uma transferência de propriedade ou a conclusão de
uma série de movimentos de robô) que ocorrem dentro do contexto de operação do
sistema.
• Papéis (funções) (por exemplo, gerente, engenheiro, vendedor) desempenhados por
pessoas que interagem com o sistema.
•Unidades Organizacionais (por exemplo, divisão, grupo, equipe) que são pertinentes a uma
organização.
•Lugares (por exemplo, piso de fábrica ou área de descarga) que estabelecem o contexto
do problema e a função global do sistema.
•Estruturas (por exemplo, sensores, veículos de quatro rodas ou computadores) que
definem uma classe de objetos ou, ao extremo, classes relacionadas de objetos.
Os objetos podem ser definidos durante os primeiros estágios de
análise, através da análise gramatical da narrativa de processamento.
Extraindo os nomes, que serão as entradas na lista, estamos definindo os
Objetos em Potencial dessa lista.
Características de seleção que devem ser usadas ao se examinar cada objeto em
potencial para inclusão no modelo de análise:
•Informação Repetida: O objeto em potencial será útil durante a análise somente se a
informação sobre ele precisar ser lembrada de forma que o sistema possa funcionar.
• Serviços Necessários: O objeto em potencial deve ter um conjunto de operações
identificáveis que podem mudar o valor de seus atributos de alguma forma.
•Múltiplos Atributos: Durante a análise de requisitos, o foco deve recair sobre informações
importantes; um objeto com um único atributo pode, de fato, ser útil durante
a fase de projeto, mas provavelmente ele será mais bem representado
como um atributo de um outro objeto durante a atividade de análise.
•Atributos Comuns: Um conjunto de atributos pode ser definido para o objeto em potencial,
e esses atributos aplicam-se a todas as ocorrências do objeto.
•Operações Comuns: Um conjunto de operações pode ser definido para o objeto em
potencial, e essas operações aplicam-se a todas as ocorrências do objeto.
•Requisitos Essenciais: Entidades externas que aparecem no espaço problema e produzem
ou consomem informações que são essenciais à operação de qualquer solução para o
sistema quase sempre serão definidas como objetos no modelo de requisitos.
A decisão de inclusão de objetos em potencial no modelo de análise é um tanto
subjetiva, e uma avaliação posterior pode fazer com que o objeto seja descartado ou
reconsiderado.
Os objetos também apresentam algumas propriedades:
1. Estado
Diz respeito à situação em que pode estar um determinado objeto. Por
exemplo, o objeto caneta, pode estar no estado, “com tinta” ou “sem tinta”.
Podemos ainda atribuir a caneta outros estados “inteira para uso” ou
“quebrada”. O estado depende da natureza do objeto.
2. Comportamento
Qualquer objeto apresenta um comportamento. O comportamento é o meio
através do qual o objeto passa de um estado para outro. Normalmente isto
dá mediante uma condição/ação (a ação será sempre um método a ser
executado)
3. Identificação
Todo objeto é identificável. Embora se possam ter várias canetas de
um mesmo tamanho, cor, fabricante e modelo, cada uma delas é uma
caneta em particular, tem sua própria identidade, são, portanto, distinguíveis
entre si.
3.2 Atributos
Um atributo é a abstração de uma única característica possuída pelas entidades que
foram abstraídas com um objeto. O Objetivo é arranjar um conjunto de atributos que
sejam:
• completos - eles abrangem todas as informações pertinentes ao objeto que esta

sendo definido;
• totalmente fatorados – Cada atributo capta um aspecto separado da abstração do

objeto;
• mutuamente independentes – os atributos assumem seus valores ficando
independentes uns dos outros.
Os atributos podem ser identificados fazendo referência:
• às características das instâncias do objeto;

• à descrição do objeto: que informações precisaríamos conhecer a propósito de uma

entidade para dizer que é uma instância deste objeto?


3.2.1 Identificadores ou atributos determinantes
Um conjunto de um ou mais atributos que singularmente distingue
cada exemplo de um objeto é um identificador para aquele objeto. Um
identificador é às vezes chamado de “chave candidata”. Devem obedecer as
seguintes restrições:
• Não há outra entidade com o mesmo valor para o atributo

• O atributo não é nulo para nenhuma entidade se não houver, naturalmente, um

atributo que satisfaça.


3.2.2 Descrição dos atributos
Prof. Luís Eduardo Vieira

Você também pode gostar