Engenharia software

Disponível somente no TrabalhosFeitos
  • Páginas : 6 (1275 palavras )
  • Download(s) : 0
  • Publicado : 10 de janeiro de 2013
Ler documento completo
Amostra do texto
Definição Sintética de engenharia de software:
Engenharia de Software é a criação e a utilização de sólidos princípios de engenharia a fim de obter software de maneira económica, que seja confiável e que trabalhe eficientemente em máquinas reais, podemos também que é uma área do conhecimento da informática voltada a especificação, desenvolvimento e manutenção de sistemas de software aplicandotecnologias e práticas de ciência da computação, gerência de projectos e outras disciplinas, com vista à organização, produtividade e qualidade.
Por outro lado a engenharia de software concentra-se nos aspectos práticos da produção de um sistema de software, enquanto a ciência da computação estuda os fundamentos teóricos dos aspectos computacionais.

Processo de desenvolvimento de software :
Umprocesso de software, ou processo de engenharia de software, é uma sequência coerente de práticas que objectiva o desenvolvimento ou evolução de sistemas de software. Estas práticas englobam as actividades de especificação, projecto, implementação, testes e caracterizam-se pela interacção de ferramentas, pessoas e métodos.

Fases de um processo de Software

Para Schwartz as principais fases deum processo de software são:
* Programação (Codificação): produção do código que controla o sistema e realiza a computação e lógica envolvida.
* Verificação e Integração (Verificação): verificação da satisfação dos requisitos iniciais pelo produto produzido.
* Especificação de Requisitos: tradução da necessidade ou requisito operacional para uma descrição da funcionalidade a serexecutada.
* Projecto de Sistema: tradução destes requisitos em uma descrição de todos os componentes necessários para codificar o sistema.

Modelos de Processo de Desenvolvimento de Software:
Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às situações a analisar, porque só na altura em que enfrentamos o problema é que podemos escolher omodelo.
Nos modelos de processo de software é dado uma atenção especial à representação abstracta dos elementos do processo e sua dinâmica, não estabelecendo métodos de desenvolvimento, pois este trabalha num nível mais alto de abstracção do que os modelos de ciclo de vida.
Modelos:
Ciclo de Vida Clássico (Cascata/ Queda d’água)
* Modelado em função do ciclo da engenharia convencional.* Modelo mais antigo e o mais amplamente usado da engenharia de software.
* Requer uma abordagem sistemática, sequencial ao desenvolvimento de software.

As desvantagens deste modelo são:
* Dificuldade em acomodar mudanças depois que o processo está a ser executado;
* Dificuldade em responder a mudanças dos requisitos;
* É mais apropriado quando os requisitos são bemcompreendidos;
* É difícil capturar os requisitos de uma só vez;
* Cliente tem de pacientemente esperar o resultado final;
* Os programadores são frequentemente atrasados sem necessidade;
* Alto custo de correcção das especificações quando nas fases de Teste e Implantação.

Modelo Espiral
Neste modelo o projecto é atacado como uma série de pequenos ciclos, cada um finalizando um versão deum software executável.
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.
O modelo em espiral assume que o processo de desenvolvimento ocorre em ciclos, cada um contendo fases de avaliação e planejamento, onde a opção deabordagem para a próxima fase (ou ciclo) é determinada. Estas opções podem acomodar características de outros modelos.

Vantagens deste modelo
* Modelo em espiral permite que ao longo de cada iteração se obtenham versões do sistema cada vez mais completas, recorrendo à prototipagem para reduzir os riscos.
* Este tipo de modelo permite a abordagem do refinamento seguido pelo modelo em...
tracking img