Você está na página 1de 16

FACULDADE EDUCACIONAL DE ARAUCÁRIA.

EMERSON MUNIZ DE CARVALHO.

ANÁLISE ESTRUTURADA X ANALISE ORIENTADA A OBJETOS.

ARAUCÁRIA
2009
2

FACULDADE EDUCACIONAL DE ARAUCÁRIA.

ANALISE ESTRUTURADA X ORIENTADA A OBJETOS.

Trabalho [Comparação entre a análise estruturada


VS Orientada a Objetos] apresentado para a
disciplina Fundamento de Analise de Sistemas, sob
a orientação da (o) Profª: Marcelo Isolani, turma
Sistema de Informação, noturno.

ARAUCÁRIA.
2009
3

RESUMO.

Todas as linguagens de programação fornecem abstrações. A linguagem é uma


pequena abstração da máquina na qual os programas são executados, nestas linguagens, é
necessário pensar em termos da estrutura do computador, ao invés de se pensar em termos da
estrutura do problema a ser resolvido! O programador deve estabelecer uma associação entre
o modelo da máquina (no espaço da solução) e o modelo do problema que está sendo
resolvido (no espaço do problema). O esforço para fazer este mapeamento pode ser
gigantesco, O programa permite se adaptar ao problema, adicionando novos tipos ao espaço
da solução que mapeiam os tipos existentes no espaço do problema è Descreve-se o problema
em termos do problema e não em termos da solução. Definindo solução, uma notação que é o
método de análise estruturada com a finalidade de retratar o fluxo e o conteúdo das
informações utilizadas pelo sistema, dividir o sistema em partições funcionais e
comportamentais e descrever a essência daquilo que será construído. A análise estruturada é
muito difícil de ser modelada e, rastrear e gerenciar mudanças manualmente. Por essas e
outras razões, as ferramentas DFD tornaram-se uma abordagem preferida. Para uma pré-
elaboração de um projeto de desenvolvimento de software. A modelagem orientada a objeto,
não é somente uma nova forma de programar, mas uma nova forma de pensar um problema,
de forma abstrata, utilizando conceitos do mundo real e não conceitos computacionais. Na
programação orientada a objeto o conceito de objeto deve acompanhar todo o ciclo de
desenvolvimento do software. A POO também inclui uma nova notação e exige do
analista/programador o conhecimento dessa notação (diagramas de classe, diagramas de
interação, diagramas de seqüência, etc.).
4

SUMÁRIO.

1. INTRODUÇÃO ................................................................................................................... 5

2. ANALISE ESTRUTURADA ............................................................................................... 6


2.1. Benefícios da analise estruturada.................................................................................. 7
2.2. Diferenças (Estruturada x POO) .................................................................................. 8

3. ANALISE ORIENTADA A OBJETOS ............................................................................... 9


3.1. Benefício da analise orientada objetos..........................................................................10
3.2. Diferenças (AOO x Estruturada) .................................................................................11

4. CONCLUSÃO......................................................................................................................12

REFERÊNCIAS .......................................................................................................................13

ANEXOS..................................................................................................................................14
5

1 INTRODUÇÃO.

O Dilema dos cursos de sistema de informação é a questão de estrutura, é o que


domina atualmente cursos de programação, mas é o Paradigma Orientado a Objetos que é a
protagonista em sistemas maiores. Dificilmente encontra-se um grande projeto de software
sem a utilização de POO, sendo este, requisito fundamental para profissionais da área de
programação. Em detalhe, cada paradigma tem suas vantagens e desvantagens, sendo
indicados para fins específicos. Enquanto que no Estruturado temos simplicidade nos seus
termos e facilidade de aprendizagem, que o levam para as primeiras aulas de programação, no
Orientado a Objetos, temos mais recursos e melhores organizações e reaproveitamento de
código, colocando em um novo nível, os paradigmas Imperativo e Estruturado, dos quais ele
herda características. Análise estruturada para com a finalidade de retratar o fluxo e o
conteúdo das informações utilizadas pelo sistema, dividir o sistema em partições funcionais e
comportamentais e descrever a essência daquilo que será construído. A análise estruturada é
muito difícil de ser modelada e, rastrear e gerenciar mudanças manualmente. Por essas e
outras razões, as ferramentas DFD tornaram-se uma abordagem preferida. Análise Estruturada
e funcional o programa é dividido em um conjunto de funções e dados As funções agem sobre
os dados cada função tem linhas de composição funcional: força programador a fixar atenção
muito mais nos procedimentos que nos dados, Analise Estruturada: Ênfase nos
procedimentos, inseridos, em blocos estruturados, com comunicação entre procedimentos por
passagem de dados.
6

2 ANALISE ESTRUTURADA.

A análise estruturada é uma atividade de construção de modelos. Utiliza uma


notação que é particular ao método de análise estruturada para com a finalidade de retratar o
fluxo e o conteúdo das informações utilizadas pelo sistema, dividir o sistema em partições
funcionais e comportamentais e descrever a essência daquilo que será construído. A análise
estruturada é muito difícil de ser modelada e, rastrear e gerenciar mudanças manualmente. Por
essas e outras razões, as ferramentas DFD tornaram-se uma abordagem preferida. Para uma
pré-elaboração de um projeto de desenvolvimento de software.
A análise estruturada também contém gráficos que possibilita o analista criar modelos de
fluxo de informação, com uma heurística para o uso dos símbolos, juntamente com um
dicionário de dados, e narrativas de processamentos como o complemento aos modelos de
fluxo de informação. Um modelo de fluxo pode ser criado para qualquer sistema baseado em
computador, independentemente do tamanho e complexidade. O dicionário de dados é uma
listagem organizada de todos os elementos de dados que são pertinentes ao sistema, com
definições precisas e rigorosas, de forma que tanto o usuário como os analistas de sistemas
tenham uma compreensão comum das tarefas, das saídas, dos componentes dos depósitos e
[até mesmo] dos cálculos intermediários. Atualmente, isto é inserido quase sempre como parte
de uma ferramenta de projeto e análise estruturada.
7

2.1 Beneficio analise estruturada.

Os usuários obtêm uma idéia mais clara do sistema proposto pelo diagrama de fluxo
de dados, do que a obtida através da narrativa e Fluxograma de sistemas físicos, a
apresentação em termos de fluxo lógico consegue mostrar mal-entendidos e pontos
controversos, As interfaces entre o novo sistema e outros já existentes, são mostrados de
modo bem mais claro, o uso de dicionário de dados para guardar os itens do glossário do
projeto economiza tempo ao resolver rapidamente os casos em que pessoas chamam as
mesmas coisas por diferentes nomes.
8

2.2 Diferenças (Estruturada x AOO).

O esforço, a formalidade e o grau de detalhes necessários, especialmente na


construção do dicionário de dados, muitas vezes sofrem resistência Tem havido certa
preocupação por parte dos programadores de que ao obterem especificações detalhadas da
lógica no português estruturado, acabarão “retirando todo o prazer da programação, tornando-
os meros codificadores” Orientação dos usuários e treinamento dos analistas são necessários,
pois com a introdução da Análise Estruturada foram mudadas as “regras do jogo” e todos
devem ser bem esclarecidos quanto às novas regras e à maneira como elas melhoram o jogo.
9

3 ANALISE ORIENTADA A OBJETOS (AOO).

A programação orientada a objeto é diferente da programação estruturada. Na


programação orientada a objeto, funções e dados estão juntos, formando o objeto. Essa
abordagem cria uma nova forma de analisar, projetar e desenvolver programas, é uma forma
mais abstrata, e genérica, que permite um maior reaproveitamento dos códigos, e facilita a sua
manutenção. Observe que a modelagem orientada a objeto, não é somente uma nova forma de
programar, mas uma nova forma de pensar um problema, de forma abstrata, utilizando
conceitos do mundo real e não conceitos computacionais. Na programação orientada a objeto
o conceito de objeto deve acompanhar todo o ciclo de desenvolvimento do software. A POO
também inclui uma nova notação e exige do analista/programador o conhecimento dessa
notação (diagramas de classe, diagramas de interação, diagramas de seqüência, etc.).
Atualmente existem centenas de bibliotecas, cuidadosamente desenhadas, para dar suporte aos
programadores menos sofisticados. Desta forma os programadores podem montar seus
programas unindo as bibliotecas externas com alguns objetos que criaram, ou seja, poderão
montar suas aplicações rapidamente, contando com módulos pré-fabricados. O usuário final
verá todos os ícones e janelas da tela como objetos e associará a manipulação desses objetos
visuais à manipulação dos objetos reais que eles representam. Enxerga o mundo como objetos
com estrutura de dados e comportamentos O objetivo é desenvolver uma série de modelos de
análise, satisfazendo um conjunto de requisitos definidos pelo cliente O problema não está em
aprender como programar em uma linguagem OO, mas sim em aprender a explorar as
vantagens que as linguagens OO oferecem. Portanto, para o sucesso de um projeto OO é
necessário seguir boas práticas de engenharia discutidas na literatura e pesquisando padrões já
consolidados e aprovados.
10

3.1 Benefícios da analise orientada objetos.

Pode representar melhor o mundo real modelagem mais perfeita e natural. A mesma é
usada desde a análise até o projeto e a implementação, de modo que a informação adicionada
em uma etapa do desenvolvimento não é necessariamente perdida ou traduzida para a etapa
seguinte, Dedicação maior à fase de análise. Ocorre uma redução na quantidade de erros com
conseqüente diminuição do tempo despendido nas etapas de codificação e teste. Os modelos
espelham a estrutura e o comportamento dos objetos do negócio, diminuindo o abismo
existente nas outras abordagens que tratam dados e funções separadas redução no tempo de
manutenção, pois as revisões são mais fáceis e mais rápidas já que o problema é mais bem
localizado, favorece a reutilização, facilidade de extensão. A criação de novos objetos que se
comuniquem com os já existentes não obriga o desenvolvedor a conhecer o interior destes
últimos. Análise Orientada a Objetos, têm suam distinção por se tratar de uma forma, mas
direcionada de se desenvolver respeitando a necessidade do usuário e dos hardwares
envolvidos A orientação a objetos, também conhecida como: Programação Orientada a
Objetos (POO) ou ainda em inglês Object-Oriented Programming (OOP) é um paradigma
de análise, projeto e programação de sistemas de software baseado na composição e interação
entre diversas unidades de software chamadas de objetos. Em alguns contextos, prefere-se
usar modelagem orientada ao objeto, em vez de outras formas de programação. As análises de
projeto orientadas a objetos têm como meta identificar o melhor conjunto de objetos para
descrever um sistema de software. O funcionamento deste sistema se dá através do
relacionamento e troca de mensagens entre estes objetos. Na programação orientada a objetos,
programar-se um conjunto de classes que definem os objetos presentes no sistema de
software. Cada classe determina o comportamento (definido nos métodos) e estados possíveis
(atributos) de seus objetos, assim como o relacionamento com outros objetos.
Subconjunto da linguagem normal com algumas restrições com as sentenças quanto:
tipos das sentenças que podem ser usadas, formas de como podem ser utilizadas, formas de
como podem ser reunidas. Equilíbrio de como uma linguagem de programação formal.
11

3.2 Diferenças (AOO x Estruturada).


12

A AOO é um paradigma que pode ser aplicado a qualquer problema proposto em


sistemas. Desde definição de pequenos problemas a problemas de grande complexidade.
Orientada a objetos tem se mostrado mais adequada, comparativamente às demais, para ser
empregada no desenvolvimento de sistemas de software complexos e de grande porte. Neste
sentido, a orientada a objetos (AOO) tem papel fundamental. A programação orientada a
objetos foi desenvolvida devido às limitações da estruturada, ou encontradas nas abordagens
anteriores de programação. Isto é, cada declaração na linguagem informa que o computador
deve realizar alguma tarefa como, por exemplo, ler um dado de entrada, adicionar uma
constante, dividir por algum número e exibir o resultado. Apesar de das inúmeras
vantagens, a AOO tem também algumas desvantagens, que incluem:
Apropriação, Fragilidade Linearidade de desenvolvimento. A apropriação é
apresentada tanto como uma vantagem como uma desvantagem, porque
a AOO nem sempre soluciona os problemas elegantemente. Enquanto que
a mente humana parece classificar objetos em categorias (classes) e
agrupar essas classes em relacionamentos de herança, o que ela
realmente faz não é tão simples. Em vez disso, objetos com características
mais ou menos similares, e não precisamente definidas, são reunidos em
uma classificação. A AOO requer definições precisas de classes; definições
flexíveis e imprecisas não são suportadas. Na mente humana, essas
classificações podem mudar com o tempo. Os critérios para classificar
objetos podem mudar significativamente. A apropriação utilizada na AOO
torna-a muito rígida para trabalhar com situações dinâmicas e imprecisas.
Além disso, algumas vezes não é possível decompor problemas do mundo
real em uma hierarquia de classes. Negócios e pessoas têm
freqüentemente regras de operações sobre objetos que desafiam uma
hierarquia limpa e uma decomposição orientada a objetos. O paradigma
de objetos não trata bem de problemas que requerem limites nebulosos e
regras dinâmicas para a classificação de objetos. Isto leva ao próximo
problema com AOO: fragilidade. Desde que uma hierarquia orientada a
objetos requer definições precisas, se os relacionamentos fundamentais
entre as classes chave mudam, o projeto original orientada a objetos é
perdido. Torna-se necessário reanalisar os relacionamentos entre os
objetos principais e reprojetar uma nova hierarquia de classes.
13

4 CONCLUSÃO.

Um sistema orientado a objetos é dividido em componentes e não mais em processos,


as funções estariam agrupadas no objeto e em nenhum outro lugar. Estruturada: As rotinas e
funções de fornecedores estariam espalhadas em todo o sistema, Se você futuramente precisar
alterar algum dado, função ou propriedade, o que em seu programa será afetado? O que terá
que ser reestruturado? Imagine a você voltando à fase de testes e analisando todo o seu
sistema até ter certeza que a alteração que você fez não desencadeou umas finitas listas de
alterações que você terá que fazer em todo o sistema. POO: as propriedades, funções e rotinas
dos objetos, fornecedores estão todas em um único objeto, encapsulados, facilitando essa
necessidade futura de alterações e atualizações. Reutilização de código: Estruturada: É
possível a reutilização de código na programação estruturada, porém, em muitos casos você
será obrigado a utilizar o famoso "copiar e colar". POO: Com a POO você é capaz de elaborar
um relacionamento entre diversos componentes, estabelecendo comunicação entre eles e
facilitando assim, e muito a reutilização de código, além da facilidade de se poderem herdar
atributos e comportamentos de outros objetos. Talvez uma pergunta nesse momento povoe a
sua nossa mente. Mas e a POO, é mais fácil de programar com ela? Talvez para nós que
estamos acostumados com a estruturada no início do curso, com POO seja um pouco
complicado, afinal estaremos nos deparando com um novo conceito analise. Imagine você
desenvolvendo um programa, gastando horas e horas para elaborar, codificar e testar uma
determinada rotina, agora se imagine tendo que implementar em um novo programa essa
mesma rotina...Com a Estruturada você gastaria mais horas e horas para implementá-las
novamente, agora imagine com a POO, você criando um objeto ou componentes com toda
essa rotina e num próximo programa apenas o utilizando. O ganho de produtividade será
enorme, além de uma grande facilidade.
14

REFERÊNCIAS OU BIBLIOGRAFIAS.

Wikipédia, Biblioteca Virtual. [SI]: Wikipédia 2009. Disponível em:


<<http://pt.wikipedia.org/wiki/An%C3%A1lise_Estruturada>> Acesso em 11 Abril. 2009.
INPE Instituto Nacional de Pesquisas [SI]: INPE 2009. Disponível em:
<<http://www2.dem.inpe.br/ijar/AnaliseEstruturada.doc>> Acesso em 11 Abril 2009.
Apostilando, Site Apostilas. [SI]: Apostilando 2009. Disponível em:
<<http://www.apostilando.com/download>> Acesso em 11 de Abril de 2009.
Univ. Nova de Lisboa FCT, Teses Pesquisas. [SI]: Universidade 2009. Disponível em:
<<http://ctp.di.fct.unl.pt/~pg/docs/ensinar_objectos.pdf>> Acesso em 11 de Abril de 2009.
Carlos Ferraz, Sistemas Distribuídos [SI]: Ufpe 2009. Disponível em 2009.
<<http://www.cin.ufpe.br/~cagf/sdgrad/aulas/Caracteristicas6S.pdf>>Acesso em 11 Abril
2009.
Kurumin, guiado hardware [SI]: Guia do Hardware 2009. Disponível em 2009.
<<http://www.guiadohardware.net/comunidade/poo-heranc/885746/>>Acesso em 11 Abril
2009.
Fonseca, Ijar Milagre, Busca Textual [SI]: Busca 2009:Disponível em 2009.
<<http://buscatextual.cnpq.br/buscatextual/visualizacv.jsp?id=K4787898Y8>> Acesso em 11
de Abril de 2009.
Álvaro Rocha, Análise Estruturada Moderna [SI]: Ufpr 2009 em 2009.
<<http://www2.ufp.pt/~amrocha/as0506/Apresentacao.pdf>> Acesso em 11 de Abril 2009.
Mario Mollo Neto, Apostila Administração Geral [SI]:Fund.Analise 2009.
<<http://www.mariomollo.com.br/ApostilaFundAnDesSistemas.pdf>> Acesso em 11 de Abril
de 2009.
E-book, Análise Orientada a Objetos X Análise Estruturada [SI] Analise 2009.
<<http://www.pdf-search-engine.com/analise-estruturada-pdf.html>> Acesso em 11 de Abril
de 2009.
Cláudio Martins, POO_UML Cláudio Martins [SI]: POO 2009.
<<http://www.cci.unama.br/claudiomartins/cinbesa/POOppt.pdf>>Acesso em 11 Abril 2009.
Edward Yourdon. Analise Estrutura Moderna. . Ed. Campus: 1990.
15

Danilo Baptista da Silveira, Tecnologia em Processamento de Dados,[SI]: Proc.dados 2009.


<http://www.fieo.br/v2/central_aluno/revista/rev1999/ProgOO.htm>Acesso em 11 Abril
2009.

ANEXOS.
2. Ilustração de Forma de Analise estruturada.

3. Ilustração de Forma de Analise estruturada.


16

Você também pode gostar