Processo de desenvolvimento de sistema de informação -...
Click here to load reader
Transcript of Processo de desenvolvimento de sistema de informação -...
Processo de desenvolvimento de sistema de informação - DSI
DSI – é o processo cujo objetivo é introduzir
mudanças num sistema de informação, com
objetivo de melhorar o seu desempenho.
Preocupação:
• Problema técnicos
• Mudança na natureza e conteúdo do trabalho das pessoas
• implicações estratégicas que o SI poderá ter na organização
Aproximações de soluções:
• Hard – assume que o problema tem base lógica ou matemática
• Soft – relacionada aos efeitos ambientais do SI – aspectos
econômicos, legais, psicológicos do ambiente
Processo de desenvolvimento de sistema de informação
Diferença entre desenvolvimento de Sistema deInformação e desenvolvimento de software
Histórico:Década de 50 e 60 – não havia processo definido para
DSI. A solução era buscada por meio de termoscomputacionais, sem dar atenção à compreensão edescrição do sistema em si.
Década de 70 – maior conscientização da importância dasfases – análise de requisitos e modelagem –movimento de desenvolvimento estruturado,sistemático, top-down.
Surgimento do conceito de ciclo de vida dedesenvolvimento de sistema (SDLC – SystemsDevelopment Life Cycle)
Processo de desenvolvimento de sistema de informação
Conceito de ciclo de vida de desenvolvimento de sistema
• Desenvolvimento sequencial – segue uma abordagemsistêmica e linear ao longo da vida do projeto .
• Desenvolvimento evolutivo – o sistema é construído emdiferentes etapas, sendo, em cada etapa, construída umaversão do sistema que vai evoluindo. Cada versão satisfazos requisitos conhecidos
• Desenvolvimento incremental – parte da ideia que pode-seconstruir um sistema a partir de varias versões, cada umacom um conjunto especifico de funções.
Processo de desenvolvimento de sistema de informação
Modelo sequencial linear ou modelo em Cascata(Waterfall model ) – apareceu no início do anos 70,foi o primeiro que veio com a intenção de disciplinare sistematizar o DSI.
Características:• Cada fase tem objetivos bem definidos• modelo mais antigo e o mais amplamente usado• modelado em função do ciclo convencional• requer uma abordagem sistemática, sequencial ao
desenvolvimento do sistema• o resultado de uma fase se constitui na entrada da outra• Apropriado para sistemas transacionais onde as rotinas e
procedimentos a serem automatizados são altamenteestruturados.
Processo de desenvolvimento de sistema de informação
Modelo Cascata
Processo de desenvolvimento de sistema de informação
Problemas Encontrados no modelo Cascata:
• Projetos reais raramente seguem o fluxo sequencial que omodelo propõe
• Difícil para o cliente estabelecer todos os requisitosinicialmente.
• O cliente precisa ter paciência! Tempo necessário paradisponibilizar o software.
• Uma versão do software somente estará pronta ao final docronograma do projeto;
• Incremento dos custos de correção na medida em que seavancem as fases.
• Os erros mais comuns são encontrados no início do períodode testes, enquanto os mais sérios são encontrados apenas nofinal.
• Ausência de envolvimento do utilizador no processo dedesenvolvimento
Processo de desenvolvimento de sistema de informação
O Modelo de processo em Cascata trouxecontribuições importantes para o processo dedesenvolvimento de sistemas:
• Imposição de disciplina, planejamento egerenciamento
• a implementação do produto deve serpostergada até que os objetivos tenham sidocompletamente entendidos;
• Permite gerência do baseline, que identifica umconjunto fixo de documentos produzidos aolongo do processo de desenvolvimento;
Processo de desenvolvimento de sistema de informação
Modelo prototipagem – Processo que propicia aodesenvolvedor cria um modelo do sistema queserá implementado. O protótipo serve como ummecanismo para a identificação dos requisitos dosistema.
Os protótipos permitem:
• que o projetista avalie previamente algumas características particulares do projeto;
• que o modelo seja testado sem o risco de comprometer todo um projeto;
• que o usuário tenha condições de melhor entender o produto que esta sendo desenvolvido.
Processo de desenvolvimento de sistema de informação
O modelo pode assumir uma das três formas:
• Um protótipo em papel ou visual que retrata a interação homem-máquina;
• Um protótipo de trabalho que implementa algum subconjunto da função exigida do software desejado;
• Um programa que executa parte ou toda a função desejada, porém que necessita ser aprimorado para tornar-se operacional.
Processo de desenvolvimento de sistema de informação
Modelo Prototipagem
Processo de desenvolvimento de sistema de informação
Problemas da prototipagem:
• Não entendimento pelo cliente de que oprotótipo não é um produto acabado;
• O cliente vê o protótipo e tem pressa paracolocá-lo em funcionamento, não levando emconsideração a qualidade global do sistema.
• Muitas vezes o desenvolvedor quer colocar oprotótipo em funcionamento rapidamente, comisso, um sistema operacional ou linguagem deprogramação imprópria pode ser usada,simplesmente porque está à disposição e éconhecida.
Processo de desenvolvimento de sistema de informação
Comentários sobre o Modelo de Prototipagem
• ainda que possam ocorrer problemas, a prototipagem é um ciclo de vida eficiente.
• a chave é definir as regras do jogo logo no começo.
• o cliente e o desenvolvedor devem ambos concordar que o protótipo seja construído para servir como um mecanismo para definir os requisitos
Processo de desenvolvimento de sistema de informação
Modelo Espiral – foi evoluindo ao longo do tempo (BarryBoehm, 1988)
• Abrange as melhores características tanto do ciclo de cascata como prototipagem.
• Combina a natureza iterativa da prototipagem com os aspectos controlados e sistemáticos do modelo linear sequencial (cascata).
• Fornece potencial para o desenvolvimento rápido de versões incrementais do SI.
• Foi acrescido de uma nova fase, a análise de risco.• O modelo espiral é dividido em uma série de atividades
de trabalho ou regiões de tarefa.• Engloba várias iterações através de sucessivos ciclos.
Processo de desenvolvimento de sistema de informação
Modelo Espiral
Processo de desenvolvimento de sistema de informação
Modelo EspiralEstabelecimento de objetivossão definidos objetivos específicospara a fase do projeto. Sãoidentificadas restrições sobre oprocesso e o produto. É projetadoum plano de gerenciamentodetalhado. São identificados riscosdo Projeto e, dependendo dosriscos, estratégias alternativaspodem ser planejadas
Avaliação e redução de riscospara cada um dos riscosidentificados, uma análisedetalhada é executada. Passossão tomados para reduzir orisco
Desenvolvimento e validaçãodepois da avaliação do risco, um modelo de desenvolvimento é escolhido para o sistema
Planejamentoo projeto é revisto e é tomadauma decisão de continuidadese é decidido continuar, sãoprojetados planos para a próximafase do projeto
Processo de desenvolvimento de sistema de informação
Características dos ciclosCada ciclo na espiral representa uma fase do processo de
software• o ciclo mais interno está concentrado nas possibilidades do
sistema• o próximo ciclo está concentrado na definição dos
requisitos do sistema• o ciclo um pouco mais externo está concentrado no projeto
do sistema• um ciclo ainda mais externo está concentrado na
construção do sistema
Não existem fases fixas no modelo. As fases mostradas nafigura são meramente exemplos. A gerência decide comoestruturar o projeto em fases
Processo de desenvolvimento de sistema de informação
Modelo Espiral• é, atualmente, a abordagem mais realística para o
desenvolvimento de sistemas de informação /software em grande escala.
• usa uma abordagem que capacita o desenvolvedor e o cliente a entender e reagir aos riscos em cada etapa evolutiva
• pode ser difícil convencer os clientes que uma abordagem "evolutiva" é controlável
• exige considerável experiência na determinação de riscos e depende dessa experiência para ter sucesso
• o modelo é relativamente novo e não tem sido amplamente usado. Demorará muitos anos até que a eficácia desse modelo possa ser determinada com certeza absoluta
Processo de desenvolvimento de sistema de informação
Modelo RAD - ( Rapid Application Development),desenvolvimento rápido de aplicações (Martin,1991) – enquadra-se no tipo dedesenvolvimento sequencial linear queenfatiza um ciclo de desenvolvimentoextremamente curto.
O desenvolvimento rápido é obtido usando umaabordagem de construção baseada emcomponentes, seguindo a regra dos 80/20.Surgiu como uma reação aos modelostradicionais que eram demasiadamentelongos.
Processo de desenvolvimento de sistema de informação
Características do Modelo RAD
• Os requisitos devem ser bem entendidos e o alcance do projeto restrito
• O modelo RAD é usado principalmente para aplicações de sistema de informação
• Cada função principal pode ser direcionada para uma equipe RAD separada e então integrada para formar o todo.
Processo de desenvolvimento de sistema de informação
Modelo RAD
Processo de desenvolvimento de sistema de informação
Desvantagens:• Exige recursos humanos suficientes para todas as
equipes• Exige que desenvolvedores e clientes estejam
comprometidos com as atividades de “fogo-rápido” afim de terminar o projeto num prazo curto
Nem todos os tipos de aplicação são apropriadas para oRAD:
• Deve ser possível a modularização efetiva da aplicação• se alto desempenho é uma característica e o
desempenho é obtido sintonizando as interfaces doscomponentes do sistema, a abordagem RAD pode nãofuncionar
Processo de desenvolvimento de sistema de informação
Modelo V (V Model) – (Jensen e Tonies, 1979)
Esse modelo pode ser visto como uma evolução do modeloem cascata.
Neste modelo o processo de DSI é basicamente dividido emduas partes, as duas pernas do V, a parte da especificação ea da verificação e validação.
Esse modelo sugere que nenhuma fase pode ser consideradacompleta, e a seguinte começar, até que o documentoproduzido esteja completo.
A conexão entre os lados direito e esquerdo do modelo em V implica que, caso sejam encontrados problemas em uma atividade de teste, a correspondente fase do lado esquerdo e suas fases subsequentes podem ter de ser executadas novamente para corrigir ou melhorar esses problemas.
Processo de desenvolvimento de sistema de informação
Modelo em V
Processo de desenvolvimento de sistema de informação
Características Modelo V
• Enfatiza a importância de considerar as atividadesde testes durante o processo, ao invés de umteste posterior após o término do processo;
• A fase de teste começa no início do ciclo.• A segunda fase de testes é extremamente
reduzida.• Pode-se obter a retroalimentação mais
rapidamente;• Ajuda a desenvolver novos requisitos;• Melhora a qualidade do produto resultante.
Processo de desenvolvimento de sistema de informação
Desvantagens Modelo V
• Dificuldade em seguir o fluxo sequencial do modelo;• Não é suficientemente flexível;• É necessário maior feedback entre todas as fases do
ciclo.• Dificuldade para o cliente poder especificar os
requisitos explicitamente.• Pressupõem que o sistema é entregue completo, após
a realização de todas as atividades dodesenvolvimento. Entretanto, nos dias de hoje, osclientes não estão mais dispostos a esperar o temponecessário para tal, sobretudo, quando se trata degrandes sistemas
Processo de desenvolvimento de sistema de informação
Desenvolvimento de sistema WEB
Devido a grande necessidade de desenvolvimento de sistemaspara ambientes web, levou-se a questionar a utilização dediferentes abordagens para o desenvolvimento desses SI(WIS – Web Information Systems)
Modelo W – é uma adaptação do modelo V. Estaadaptação baseia-se na substituição da fase decodificação por uma fase designada porimplementação incremental, que inclui uma etapa devalidação com o cliente, devido a importância que ainterface com o utilizador tem nesses sistemas. Todasas outras fases devem existir, independente de serum sistema web ou não.
Processo de desenvolvimento de sistema de informação
Exercício
Faça uma avaliação dos modelos apresentados e monte umatabela com as fases do processo de DSI nas diferentesabordagens.
Referencia:• PRESSMAN, Roger S. Engenharia de Software. Trad. José
Carlos Barbosa dos Santos. São Paulo: Makron Books, 1995.• YOURDON, Edward. Análise Estruturada Moderna. 3ª Ed.
Trad. Dalton C. de Alencar. Rio de Janeiro: Campus, 1990.• FALBO, Ricardo de Almeida, Engenharia de software: Notas de
aula, disponível em: http://www.inf.ufes.br/~falbo/download/aulas/es-g/2005-2/NotasDeAula.pdf