analise estruturada x orinetada a objetos

23
FACULDADE EDUCACIONAL DE ARAUCÁRIA. EMERSON MUNIZ DE CARVALHO. ANÁLISE ESTRUTURADA X ANALISE ORIENTADA A OBJETOS.

Upload: emerson-carvalho

Post on 11-Jun-2015

16.215 views

Category:

Documents


2 download

DESCRIPTION

segue um trabalho nas normas assim como necessitei de pesquisas na net alguem do curso de sistema poderá necessitar abraços Emerson Carvalho. Sistema de Informação Facear.

TRANSCRIPT

Page 1: Analise Estruturada x Orinetada a Objetos

FACULDADE EDUCACIONAL DE ARAUCÁRIA.

EMERSON MUNIZ DE CARVALHO.

ANÁLISE ESTRUTURADA X ANALISE ORIENTADA A OBJETOS.

ARAUCÁRIA

2009

Page 2: Analise Estruturada x Orinetada a Objetos

FACULDADE EDUCACIONAL DE ARAUCÁRIA.

ANALISE ESTRUTURADA X ORIENTADA A OBJETOS.

ARAUCÁRIA.

2009

2

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.

Page 3: Analise Estruturada x Orinetada a Objetos

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.).

3

Page 4: Analise Estruturada x Orinetada a Objetos

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

4

Page 5: Analise Estruturada x Orinetada a Objetos

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.

5

Page 6: Analise Estruturada x Orinetada a Objetos

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.

6

Page 7: Analise Estruturada x Orinetada a Objetos

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.

7

Page 8: Analise Estruturada x Orinetada a Objetos

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.

8

Page 9: Analise Estruturada x Orinetada a Objetos

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.

9

Page 10: Analise Estruturada x Orinetada a Objetos

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.

10

Page 11: Analise Estruturada x Orinetada a Objetos

3.2 Diferenças (AOO x Estruturada).

11

Page 12: Analise Estruturada x Orinetada a Objetos

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.

12

Page 13: Analise Estruturada x Orinetada a Objetos

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.

13

Page 14: Analise Estruturada x Orinetada a Objetos

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.

14

Page 15: Analise Estruturada x Orinetada a Objetos

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.

15

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

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

Page 16: Analise Estruturada x Orinetada a Objetos

16