Desenvolvimento de sistemas de informação: diferenças entre revisões

Fonte: aprendis
Saltar para a navegaçãoSaltar para a pesquisa
m (uma edição)
 
Sem resumo de edição
 
(Há 7 revisões intermédias de 2 utilizadores que não estão a ser apresentadas)
Linha 1: Linha 1:
[[Category:Aprendis]]
O desenvolvimento é uma [[Fases_de_um_sistema_de_informação| fase de um sistema de informação]].
 
== Desenvolvimento à medida ou por pacotes ⌘ ==
 
Existem duas abordagens principais distintas para o desenvolvimento de sistemas de informação:
Existem duas abordagens principais distintas para o desenvolvimento de sistemas de informação:


Linha 12: Linha 15:




----
== Modelos para o desenvolvimento de SI ⌘ ==
=== Recursos para o Desenvolvimento de Sistemas de Informação===
Existem diversos modelos para o desenvolvimento de Sistemas de Informação:
* Modelo Waterfall
* Modelo em Espiral|Modelo em Espiral
* Modelo Agile


Cada modelo compreende um conjunto particular de fases que, com mais ou menos variações, procuram cumprir o mesmo objetivo: desenvolver e construir sistemas de informação capazes de suprir as necessidades dos seus utilizadores.
===Modelo Waterfall ⌘ ===
[[Ficheiro:Cascata.jpg|thumb|400px|''Fonte:[http://arquivo.devmedia.com.br/REVISTAS/easyjava/imagens/31/1/1.png Google Images]'']]
O modelo waterfall (ou "em cascata") é um modelo de desenvolvimento de software/sistemas de informação sequencial, isto é, no qual as fases se sucedem umas às outras de forma constante (como o fluir de uma cascata):
# Análise de requisitos;
# Projeto;
# Implementação;
# Testes (validação);
# Integração;
# Manutenção de software.
Neste modelo, a passagem de uma fase para a seguinte é puramente sequencial. Isto significa que só se inicia uma nova fase quando a anterior está completa. Por isto, é considerado rígido - não permite voltar atrás numa fase para fazer melhoramentos (uma fase só é terminada quando considerada "perfeita") - e monolítico - não inclui a participação dos utilizadores no processo.
Mais ainda, as métricas utilizadas nas estimativas de tempo e recursos são imprecisas, levando a que, quase sempre, o planeamento das atividades tenha que ser revisto. No entanto, devido à sua rigidez, o modelo em cascata não permite os reajustes necessários, causando o não cumprimento dos prazos estipulados inicialmente.
===Modelo em Espiral ⌘===
[[Ficheiro:Espiral.gif|thumb|600px|''Fonte: [http://voat.com.br/rdal/wp-content/uploads/2010/07/c2_5.gif Google Images]'']]
O modelo em espiral é um modelo de desenvolvimento de software/sistemas de informação cíclico onde, em cada ciclo, existem fases de avaliação e planeamento.
<blockquote>''Este modelo foi desenvolvido para abranger as melhores características tanto do ciclo de vida clássico como da prototipação, acrescentando, ao mesmo tempo, um novo elemento - a análise de riscos - que falta a esses paradigmas.'' <small>Em [http://www.cin.ufpe.br/~cadcn/files/Monitoria/Monitoria%20-%20Gradua%E7%E3o/material%20de%20apoio/esperial.pdf Modelo em Espiral]</small></blockquote>
Existem diferentes variações do modelo, sendo que todos compreendem entre três e seis tarefas/setores que incluem:
* Comunicação com o cliente;
* Planeamento;
* Análise de risco;
* Engenharia;
* Construção e liberação;
* Avaliação do cliente.
<blockquote>''A dimensão radial representa o custo acumulado actualizado e a dimensão angular representa o progresso através da espiral. Cada sector da espiral corresponde a uma tarefa (fase) do desenvolvimento.'' <small>Em [http://www.cin.ufpe.br/~cadcn/files/Monitoria/Monitoria%20-%20Gradua%E7%E3o/material%20de%20apoio/esperial.pdf Modelo em Espiral]</small></blockquote>
Ao contrário do modelo em cascata, este é flexível e inclui a participação dos utilizadores durante todo o processo. É uma abordagem mais realista e evolutiva.
===Modelo Agile ⌘===
[[Ficheiro:Agile.jpg|thumb|400px|''Fonte: [http://dijore.files.wordpress.com/2013/11/iterative.jpg Google Images]'']]
O modelo agile é um modelo de desenvolvimento de software/sistemas de informação que tem como objetivo minimizar o risco através do desenvolvimento em janelas de tempo pequenas, chamadas de '''iterações'''.
Cada iteração é um "mini-projeto" que inclui todas as fases necessárias à criação de novo software:
* Planeamento;
* Análise de Requisitos;
* Projeto;
* Codificação;
* Teste;
* Documentação.
Para cada iteração, que tem uma duração típica de 1 a 4 semanas, é, então, lançada uma versão do SI.
Na criação de novo software, então, devem estar envolvidas todas as pessoas necessárias ao desenvolvimento do SI, nomeadamente: os programadores, os clientes, os projetistas, os responsáveis pela realização dos testes, etc.
Este método dá uma grande importância à comunicação presencial, desenfatizando o papel da comunicação escrita. Consequentemente, o modelo agile dá origem a pouca documentação, o que pode ser visto como um ponto negativo, uma vez que a criação de documentação pode ser muito útil em iterações futuras ou novos projetos de desenvolvimento.
== Recursos para o Desenvolvimento de Sistemas de Informação ⌘==


* '''Técnicas''':
* '''Técnicas''':
Linha 35: Linha 92:
*** Apoia e automatiza parte do processo completo de desenvolvimento de SI.
*** Apoia e automatiza parte do processo completo de desenvolvimento de SI.


 
== Atividades da Construção de Sistemas de Informação ==
----
=== Atividades da Construção de Sistemas de Informação===


A construção de um sistema de informação envolve a programação/configuração, teste e documentação do sistema.
A construção de um sistema de informação envolve a programação/configuração, teste e documentação do sistema.
Linha 58: Linha 113:
** Especificação de procedimentos e tarefas.
** Especificação de procedimentos e tarefas.


 
== Informação para slides ==
 
<slideshow style="flower" headingmark="⌘"  incmark="…" scaled="true" >
<small>[http://mediawiki.gim.med.up.pt/index.php/Sistemas_de_Informa%C3%A7%C3%A3o_em_Sa%C3%BAde Voltar]</small>
;author: Vários autores
;subfooter: {{date}}
;footer:
</slideshow>

Edição atual desde as 11h57min de 9 de fevereiro de 2017

O desenvolvimento é uma fase de um sistema de informação.

Desenvolvimento à medida ou por pacotes ⌘

Existem duas abordagens principais distintas para o desenvolvimento de sistemas de informação:

  • Desenvolvimento à medida:
    • Construção do sistema corresponde diretamente aos requisitos da organização/dos utilizadores;
    • Implica, tipicamente, um grande investimento, nomeadamente no que refere os recursos internos qualificados.


  • Desenvolvimento por pacotes:
    • Construção do sistema através da aquisição de um pacote de soluções de software já desenvolvidas, que correspondem mais ou menos aos requisitos pedidos pela organização/pelos utilizadores;
    • Implica, tipicamente, um maior trabalho de configuração e adaptação, que pode ser mais ou menos complexo e envolver mais ou menos recursos dependendo do sistema.


Modelos para o desenvolvimento de SI ⌘

Existem diversos modelos para o desenvolvimento de Sistemas de Informação:

  • Modelo Waterfall
  • Modelo em Espiral|Modelo em Espiral
  • Modelo Agile

Cada modelo compreende um conjunto particular de fases que, com mais ou menos variações, procuram cumprir o mesmo objetivo: desenvolver e construir sistemas de informação capazes de suprir as necessidades dos seus utilizadores.

Modelo Waterfall ⌘

O modelo waterfall (ou "em cascata") é um modelo de desenvolvimento de software/sistemas de informação sequencial, isto é, no qual as fases se sucedem umas às outras de forma constante (como o fluir de uma cascata):

  1. Análise de requisitos;
  2. Projeto;
  3. Implementação;
  4. Testes (validação);
  5. Integração;
  6. Manutenção de software.

Neste modelo, a passagem de uma fase para a seguinte é puramente sequencial. Isto significa que só se inicia uma nova fase quando a anterior está completa. Por isto, é considerado rígido - não permite voltar atrás numa fase para fazer melhoramentos (uma fase só é terminada quando considerada "perfeita") - e monolítico - não inclui a participação dos utilizadores no processo. Mais ainda, as métricas utilizadas nas estimativas de tempo e recursos são imprecisas, levando a que, quase sempre, o planeamento das atividades tenha que ser revisto. No entanto, devido à sua rigidez, o modelo em cascata não permite os reajustes necessários, causando o não cumprimento dos prazos estipulados inicialmente.

Modelo em Espiral ⌘

O modelo em espiral é um modelo de desenvolvimento de software/sistemas de informação cíclico onde, em cada ciclo, existem fases de avaliação e planeamento.

Este modelo foi desenvolvido para abranger as melhores características tanto do ciclo de vida clássico como da prototipação, acrescentando, ao mesmo tempo, um novo elemento - a análise de riscos - que falta a esses paradigmas. Em Modelo em Espiral

Existem diferentes variações do modelo, sendo que todos compreendem entre três e seis tarefas/setores que incluem:

  • Comunicação com o cliente;
  • Planeamento;
  • Análise de risco;
  • Engenharia;
  • Construção e liberação;
  • Avaliação do cliente.

A dimensão radial representa o custo acumulado actualizado e a dimensão angular representa o progresso através da espiral. Cada sector da espiral corresponde a uma tarefa (fase) do desenvolvimento. Em Modelo em Espiral

Ao contrário do modelo em cascata, este é flexível e inclui a participação dos utilizadores durante todo o processo. É uma abordagem mais realista e evolutiva.

Modelo Agile ⌘

O modelo agile é um modelo de desenvolvimento de software/sistemas de informação que tem como objetivo minimizar o risco através do desenvolvimento em janelas de tempo pequenas, chamadas de iterações. Cada iteração é um "mini-projeto" que inclui todas as fases necessárias à criação de novo software:

  • Planeamento;
  • Análise de Requisitos;
  • Projeto;
  • Codificação;
  • Teste;
  • Documentação.

Para cada iteração, que tem uma duração típica de 1 a 4 semanas, é, então, lançada uma versão do SI.

Na criação de novo software, então, devem estar envolvidas todas as pessoas necessárias ao desenvolvimento do SI, nomeadamente: os programadores, os clientes, os projetistas, os responsáveis pela realização dos testes, etc. Este método dá uma grande importância à comunicação presencial, desenfatizando o papel da comunicação escrita. Consequentemente, o modelo agile dá origem a pouca documentação, o que pode ser visto como um ponto negativo, uma vez que a criação de documentação pode ser muito útil em iterações futuras ou novos projetos de desenvolvimento.

Recursos para o Desenvolvimento de Sistemas de Informação ⌘

  • Técnicas:
    • Centradas no desenvolvedor:
      • Técnicas de análise de dados;
      • Técnicas de análise de processos;
      • Técnicas de análise de objetos;
    • Centradas no utilizador:
      • Prototipagem;
      • Cenários;
      • Casos de uso;
  • Métodos:
    • Métodos estruturados;
    • Desenvolvimento rápido de aplicações;
    • Métodos orientados a objetos;
  • Ferramentas:
    • CASE - Computer Aided Software Engineering:
      • Apoia e automatiza partes do processo de construção de SI;
    • CAISE - Computer Aided Information Systems Engineering:
      • Apoia e automatiza parte do processo completo de desenvolvimento de SI.

Atividades da Construção de Sistemas de Informação ⌘

A construção de um sistema de informação envolve a programação/configuração, teste e documentação do sistema. Desta fase fazem parte as seguintes atividades:

  • Construção da aplicação:
    • Interface com o utilizador;
    • Regras do negócio;
    • Gestão dos dados;
  • Teste da aplicação:
    • Teste de unidades;
    • Teste do sistema;
    • Teste de integração;
    • Teste de aceitação;
  • Documentação da aplicação:
    • Documentação do utilizador;
    • Documentação do sistema;
  • Construção do sistema de atividades humanas:
    • Especificação das funções e papéis;
    • Especificação da estrutura organizacional;
    • Especificação de procedimentos e tarefas.

Informação para slides

<slideshow style="flower" headingmark="⌘" incmark="…" scaled="true" >

author
Vários autores
subfooter
Predefinição:Date
footer

</slideshow>