Anda di halaman 1dari 5

DCC / ICEx / UFMG

O que é anunciado

Falha de Comunicação no
Desenvolvimento de Software

Eduardo Figueiredo
http://www.dcc.ufmg.br/~figueiredo

O que o vendedor promete O projeto inicial

O projeto revisado do arquiteto A primeira versão


A versão entregue ao cliente O que o cliente queria

O que é software?

Motivação e Conceitos Programa de computador +


Documentação
Fundamentais
Classificação fundamental
Produtos genéricos
(ex. MS Office)
Produtos encomendados
(ex. Software de Controle da
Locadora do Zé)

Crise do Software (1968) Software está em todo lugar

Custos de hardware caindo


Custos do software subindo
Avanços em hardware
Permitem desenvolvimento de sistemas
cada vez mais complexos
Resultado (software)
Custos altos, projetos atrasados,
sistemas não confiáveis,
desempenho insatisfatório, etc...
Desafios de Produzir Software Desafios de Produzir Software
Confiabilidade Preço e desempenho
Pouco espaço na memória
Celular Grande variação em
Exemplo: Vôo Air France Rio - Paris características de aparelhos
1. Dados conflitantes (falha nos sensores)
2. Sistema assume o controle (piloto automático)
3. Piloto tenta reiniciar o sistema (boot)
4. Em 4 minutos o avião mergulha no oceano

The Last Four Minutes of Air France Flight 447.


http://www.spiegel.de/international/world/0,1518,679980,00.html

Desafios de Produzir Software Em Resumo...


Sistemas Críticos
O desenvolvimento informal de software
Equipamentos médicos não é suficiente
Extremamente críticos Técnicas e métodos são necessários
Lidam com vidas Algumas dificuldades
Heterogeneidade
Caixas eletrônicos Confiabilidade
Prejuízos financeiros Prazo de entrega
Mudança contínua

O que é Engenharia de Software? E as outras engenharias?

A Engenharia de Software é uma disciplina de O que difere Engenharia de Software


engenharia relacionada a todos os aspectos
de outras engenharias?
de produção de software. Ian Sommerville
Software é desenvolvido, não fabricado
Software não se desgasta
Foco no desenvolvimento de software de Software é geralmente produzido para
alta qualidade dentro de custos adequados.
um cliente específico
Atender necessidades do cliente
Eng. de Software em Camadas

Engenharia de Software: A engenharia de Ferramentas

Visão Geral software inclui


Métodos de Software
Processo
Métodos Processo de Software

Ferramentas Qualidade

Pode ser organizada em camadas

Qualidade de Software Processo de Software


Conjunto de atividades (e seus resultados)
Atributos de um bom software cujo objetivo é o desenvolvimento de software
Facilidade de manutenção O processo oferece estabilidade, controle e
Confiança organização no ciclo de desenvolvimento
Eficiência Ferramentas
Atividades principais Ferramentas
Usabilidade, etc. Especificação
Métodos de Software Desenvolvimento Métodos de Software
Validação
Processo de Software Processo de Software
Evolução
Qualidade Qualidade

Métodos de Software Métodos de Software


Abordagens estruturadas para Veremos
Abordagensmais detalhes
estruturadas para sobre
desenvolvimento de software desenvolvimento de software
métodos e processos de
Os métodos fornecem a técnica Os métodos fornecem a técnica
de como fazer software nas próximas aulas
de como fazer
Ferramentas Ferramentas
Métodos incluem Métodos incluem
Modelos Métodos de Software Modelos Métodos de Software
Notações Notações
Regras, etc. Processo de Software Regras, etc. Processo de Software

Qualidade Qualidade
Ferramentas Ferramentas

Fornecem apoio automatizado (ou semi- Fornecem apoio automatizado (ou semi-
automatizado) para o processo e para os
Veremos algumas ferramentas
automatizado) para o processo e para os
métodos nas
métodos aulas em laboratório
Exemplo: ferramentas Exemplo: ferramentas
Ferramentas Ferramentas
de modelagem do de modelagem do
processo Métodos de Software processo Métodos de Software
Permitem definir Permitem definir
ações, tarefas, Processo de Software ações, tarefas, Processo de Software
produtos, etc. de um produtos, etc. de um
Qualidade Qualidade
modelo de processo modelo de processo

Bibliografia

Roger Pressman. Engenharia de


Software: Uma Abordagem
Profissional, 7a Edição.
McGraw-Hill, 2011.
Capítulo 1

Anda mungkin juga menyukai