Você está na página 1de 22

Histrico das Metodologias

de Desenvolvimento de
Sistemas

Introduo

Para haver sucesso no desenvolvimento de


sistemas, torna-se necessria utilizao de
uma metodologia de trabalho.

Histrico das Metodologias

Crise do Software (~1970):

Problemas de execuo nos programas - erros


Prazos eram extrapolados
Custos inesperados correo de erros e adaptao do cdigo
s reais necessidades do usurio
Empresas dependentes de computadores com sistemas
legados (computadores/sistemas de uma empresa X, que so
de difcil manuteno/modernizao) que necessitavam
modificaes mas com cdigo/documentao ilegvel ou
inexistentes.
Insatisfao de usurios

Problemas

Pouco tempo para coletar dados sobre o


desenvolvimento do software
Comunicao durante o desenvolvimento
muito fraca
Falta de testes mais bem elaborados

O que Metodologia?

Uma metodologia pode ser entendida como uma


descrio sobre a maneira de se utilizar um conjunto
coerente e coordenado de mtodos para atingir um
objetivo, de modo que se evite a subjetividade na
execuo do trabalho (e se busque a objetividade).

Benefcios do uso de uma Metodologia

Aumento da qualidade dos sistemas: Os desenvolvedores tm a


sua disposio mtodos que permitem levantar com preciso as
necessidades dos usurios e construir sistemas melhor
estruturados.
Independncia de indivduos: Como os sistemas so bem
estruturados e tm documentao padronizada e atualizada, um
analista consegue, em pouco tempo, dar manuteno a um sistema
que no conhece, evitando a figura do dono do sistema.
Facilidade de manuteno: Pelos mesmos motivos acima citados:
sistemas bem documentados e estruturados.
Aumento da produtividade: Sistemas bem construdos tm mais
partes reutilizveis. E, como o sistema bem especificado e
projetado, gasta-se menos tempo em testes e emendas para
atender ao usurio.

Principais Objetivos da Metodologia

Fornecer um instrumental que possibilite o desenvolvimento de


projetos na empresa em harmonia com os princpios elementares
da administrao da empresa;
Promover o cumprimento de prazos, eficincia e qualidade do
servio, visando uma maior produtividade por meio da
padronizao das atividades de desenvolvimento;
Servir de apoio ao desenvolvimento de projetos em suas etapas,
orientando a execuo das atividades requeridas em todos os
nveis do processo, de uma forma padronizada e integrada.

Caractersticas de uma boa Metodologia (1-2)


Apresentar definio clara de quem faz o
que, quando, como e at mesmo onde;
Instituir
um
conjunto
de
padres
preestabelecidos (evitar subjetividade).

Caractersticas de uma boa Metodologia (2-2)

Uma metodologia deve definir quais as fases do trabalho previstas


para o desenvolvimento de sistemas. Para cada fase quais
tcnicas sero adotadas;
A metodologia deve ainda definir quais as ferramentas sero
utilizadas. So exemplos de ferramentas: DFD, MER, Diagrama de
transio de estados, etc.
Cada ferramenta ir produzir um tipo de modelo. So exemplos de
modelos: modelo funcional, modelo conceitual de dados, etc.

Anlise de Sistemas

Embora as metodologias de modelagem de sistemas


sejam muito importantes, por razes diversas, na prtica
algumas empresas ainda relutam na sua adoo.
Uma das queixas comuns entre os que relutam em
aceitar, que acreditam que com a adoo destas
tcnicas, o desenvolvimento de sistemas estende-se
muito longamente.

Perfil do analista

O analista de sistemas deve possuir uma formao que vai alm das
disciplinas voltadas para o conhecimento de computadores. O seguinte
conjunto de habilidades seria mais adequado para o bom desempenho na
atividade de anlise de sistemas de informao:

Comunicao: entendida como capacidade para ouvir, redigir, expor


idias com clareza e preciso, aprender e expressar o contedo com
facilidade.

Capacidade de anlise: entendida como aptido para realizar


operaes mentais com abstraes sobre o recorte da realidade em
estudo. Possuir uma viso sistmica e critica do contexto em anlise,
alm de habilidade para distinguir e conceituar categoria de significado
de noes concretas e abstratas associadas ao negcio da empresa.

Perfil do analista

Conhecimento da rea usuria: entendido, principalmente, como


aquele tipo de conhecimento que no pode ser obtido atravs de
treinamento, mas adquirido por meio da experincia.

Capacidade de negociao: entendida como habilidade em obter


resultado desejado, e capacidade de administrar conflitos de
interesses interpessoais que surjam durante o trabalho em grupo.

Administrao de projetos: entendida como noes sobre alocao


de tempo e recursos, financeiros e materiais necessrios a projetos,
nos quais participam pessoas de formaes diferentes, num
empreendimento de caracterstica interdisciplinar, procurando
sempre a efetividade, garantindo eficcia e eficincia do processo de
obteno dos resultados a serem alcanados.

Conhecimento tcnico: entendido como a capacidade de especificar


sistemas de informao

Perfil do analista

As funes do analista, projetista e programador so, s vezes, confundida.


Para esclarecer, podemos dizer, a rigor, que o papel do analista de
sistemas especificar quais so os requisitos do sistema do ponto de vista
da eficcia, ou seja, garantir que o sistema alcance os objetivos globais da
empresa.

O analista deve certificar-se de que o sistema far o que precisa ser feito,
far o que certo ser feito, independentemente da instrumentao que ser
usada para chegar a este objetivo. Por sua vez, o projetista tem um papel
voltado para a eficincia, isto , voltado para obteno do melhor
desempenho individual dos componentes do sistema. O papel do
programador construir (implementar) o sistema, de acordo com as
especificaes feitas pelo projetista.

Evoluo da Anlise
Tcnicas

Abordagens

Ferramentas

Anlise tradicional

Funcional

Textos
Fluxogramas

Anlise Estruturada

Funcional
Dados

DFD
Mini especificaes
Dicionrio de Dados (DD) especificao dos campos de dados

Anlise Essencial

Funcional
Dados
Controle

Tabela de eventos
DFD
Diagrama de entidade Relacionamento (DER)
Diagrama de transio de estados
Mini especificaes
Dicionrio de dados (DD)

Anlise Tradicional

Basicamente, trata-se de um documento com


informaes do sistema;
Tem apenas uma ferramenta, que so os
fluxogramas;
Esta abordagem era quase que exclusivamente
voltada
para
as
perspectivas
das
funes/funcionalidades do sistema.

Anlise Estruturada

Enfatiza a perspectiva das funes/funcionalides, com


nfase nos processos de sistema (existentes em um
DFD).
Utiliza as seguintes ferramentas:

Diagrama de Fluxo de Dados (DFD);


Dicionrio de Dados (DD).

A anlise estruturada clssica no modela o


comportamento temporal do sistema (evoluo ao longo
do tempo, transio de estados), nem complexos
relacionamentos de dados.

Anlise Estruturada
Pedido_preos

E2
Fornecedores

E1
Departamento
de produo

Entidade
externa

Lista_materiais
necessrios

os
Dad

_f

P1
Escolher
fornecedor

or
ced
e
n
or

Preos_material

Processo
Lista

D1 Fornecedores
Dado
s

Depsito
De dados

_ f or

nece
do

P2
Pedir
materiais

Nota_encomenda

Fluxo de dados

Anlise Essencial

uma evoluo da Anlise Estruturada, por


adicionar a preocupao com o controle do
sistema;
Usa uma lista de eventos externos como base
para o particionamento do sistema em sub-partes;
O modelo essencial construdo sem considerar
restries de implementao do sistema.

Anlise Essencial

A anlise essencial formada pelos modelos:


Modelo Ambiental define a fronteira entre o sistema e o
ambiente externo.
Modelo Comportamental descreve o comportamento interno
do sistema, atravs da representao de eventos.
Modelo de Informao modela os dados necessrios s
atividades essenciais do sistema.

Modelo Ambiental

Usa o Diagrama de Contexto, que define as


interfaces (relaes) entre o sistema e o ambiente
externo. So identificadas informaes externas ao
sistema, e as produzidas como sada pelo sistema;
Identificao da Lista de Eventos - Identifica os
eventos que ocorrem no ambiente externo e como
o sistema deve reagir a eles.

Modelo Comportamental

Mostra o comportamento interno do sistema;


Usa como ferramenta o DFD, mas com uma abordagem diferente;
Constri-se um DFD para cada evento do sistema (um DFD de
resposta a eventos). A partir dele feito um agrupamento para
formar os diagramas superiores e inferiores.
Nele tambm so criados os Dicionrio de Dados (DD), com a
especificao detalhada dos campos de dados, por exemplo:
endereo = logradouro + nome + nmero + complemento.

Modelo de Informao

Representa os dados necessrios ao sistema;


Ferramentas utilizadas so:
Diagrama

de entidade e relacionamento (DER);


Representa a estrutura esttica dos dados;
Dicionrio de Dados (DD).

1
Empregado

n
Dependente