Vous êtes sur la page 1sur 32

Engenharia de Software

Professor Paulo Srgio


paulo.santos@ifnmg.edu.br

Objetivos da disciplina

Contextualizao da Engenharia de Software. Fundamentao dos Princpios da Engenharia de Software.

Conceituao de Produto e Processo de Software.


Ciclo de vida de desenvolvimento de software. Comparao entre os Paradigmas de Desenvolvimento Software. Caracterizao do Projeto de Software. Introduo a Gerenciamento de Projetos. Definio de Qualidade de Software.

Distribuio das notas

Prova 1 - 25 pontos

Prova 2 - 25 pontos
Seminrio 25 pontos Seminrio 25 pontos

Objetivos da aula
Falar sobre a viajem 1 Conhecer os principais pontos da evoluo do software; 2 Entender as caractersticas do software;

3 Compreender sobre a crise do software;


4 Descobrir quais so os principais erros quando se desenvolve um software; 5 Analisar quais os principais mitos do software; 6Onde aplicamos os softwares.

Evoluo, caractersticas, mitos e crise de software

SOFTWARE

Software
Instrues : quando executadas produzem a funo e o desempenho desejados
Estruturas de Dados : possibilitam que os programas manipulem adequadamente os dados e os transformem em informao Documentos : descrevem a operao e o uso dos programas

Caractersticas do Software
Desenvolvido ou projetado por engenharia, no manufaturado no sentido clssico

No se desgasta, mas se deteriora

A maioria feita sob medida ao invs de ser montada a partir de componentes existentes

Aplicaes de Software
BSICO DE TEMPO REAL COMERCIAL CIENTFICO E DE ENGENHARIA EMBUTIDO

programas de apoio a outros programas monitora, analisa e controla eventos do mundo real operaes comerciais e tomadas de decises administrativas algoritmos de processamento de nmeros

controla produtos e sistemas de mercados industriais e de consumo DE COMPUTADOR processamento de textos, planilhas PESSOAL eletrnicas, diverses, etc. DE INTELIGNCIA algoritmos no numricos para resolver ARTIFICIAL problemas que no sejam favorveis computao ou anlise direta

Evoluo do Software
1950 - 1965 O hardware sofreu contnuas mudanas O software era uma arte "secundria" para a qual havia poucos mtodos sistemticos O hardware era de propsito geral O software era especfico para cada aplicao No havia documentao

Evoluo do Software
1965 - 1975 Multiprogramao e sistemas multiusurios Tcnicas interativas Sistemas de tempo real 1a gerao de SGBDs Produto de software - software houses Bibliotecas de Software

Evoluo do Software
1975 final dos anos 90 Sistemas distribudos Redes locais e globais Hardware de baixo custo

11

Evoluo do Software
Dias atuais Tecnologias orientadas o objetos Sistemas especialistas e software de inteligncia artificial usados na prtica Computao Paralela Internet

Pondo em prtica ...


Perguntas : Em sua opinio, por que sempre to difcil criar e dar manuteno em um software?
E quais so as verdades e mentiras que se tornaram mitos na hora de implementar um software?

13

Mitos do software

Mitos do Software

So declaraes aparentemente razoveis (s vezes contendo elementos de verdade), mas que so falsas e eram propagadas sem que fossem comprovadas de maneira rigorosa.

Mitos do Software Mitos administrativos


Adotados pela gerncia de desenvolvimento de software, como forma de atenuar as presses.
J temos todos os manuais e procedimentos para construo de software; isso suficiente. Meu pessoal tem ferramentas de desenvolvimento de software de ltima gerao e computadores novos. Se sofrermos atraso no prazo, basta adicionar mais programadores ao projeto

Mitos do Software Mitos dos clientes


Clientes acreditam em mitos sobre software, porque a rea de Informtica nada faz para esclarece-los; como resultado temos falsa expectativa e insatisfao. Uma declarao geral dos objetivos suficiente para se comear a escrever programas; Os detalhes sero informados/descobertos ao longo do processo. Requisitos de projeto mudam continuamente, mas isso no problema porque o software flexvel.

Mitos do Software Mitos do profissional


Assim que escrevermos o programa e o colocarmos em funcionamento, nosso trabalho estar completo. Enquanto o programa no estiver pronto, no temos nenhuma maneira de avaliar sua qualidade. O nico produto a ser entregue em um projeto bem sucedido o programa funcionando.

A crise do Software

Crise de Software
Refere-se a um conjunto de problemas encontrados no desenvolvimento de software e na etapa de Manuteno

Curva de falhas para o Hardware

ndice de falhas

mortalidade infantil

desgaste

tempo

Curva de falhas do Software

mudana
curva real ndice de falhas curva idealizada

tempo

Crise de Software
Estimativas de prazo e de custo

Produtividade das pessoas Qualidade de software Software difcil de manter

23

Principais Tipos de Erros


1 - Sistemas desenvolvidos corretamente a partir de especificaes erradas ou incompletas; 2 - Corte deliberado do escopo do projeto, em razo do estouro do prazo ou da verba do projeto; e 3- Sistemas desenvolvidos incorretamente a partir de especificaes corretas.

Principais Causas de Erros


Estudo promovido por Computerworld-USA em maro/2010. Pesquisados 160 profissionais dentre as maiores empresas privadas que detinham estruturas prprias para o desenvolvimento de software.

Principais Causas de Erros


80% dos projetos superam oramentos e prazos porque as mudanas ocorreram depois que os requisitos foram definidos. A frequncia do impacto dos requisitos no oramento e prazo ocorre: Sempre 31% Frequentemente 49% Raramente 20%

Principais Causas de Erros


Falhas em requisitos representam geralmente um aumento de 11% a 50% nos custos e/ou atraso no projeto. O impacto causado nos custos e prazos no projeto :

Principais Causas de Erros


Desenvolvedores consultados definiram a causa dos frequentes erros na especificao de requisitos, como sendo: Definio inicial falha Novas aplicaes desconhecidas dos usurio Projeto to longo que os requisitos mudaram durante o desenvolvimento Gerenc. falho ou dificuldades em administrar a expectativa dos usurios Dificuldade em envolver os usurios nos estgios iniciais do projeto Dificuldade em empregar tcnicas de prototipao ou desenv.conjunto

Principais Causas de Erros


Desenvolvedores informaram sobre as tcnicas que pretendem usar para superar os problemas com definio de requisitos: Projetar aplicaes conjuntamente usurios e desenvolvedores Usar prototipao para obter definio de requisitos Buscar a completeza da definio de requisitos Usar ferramentas de controle e gerncia de projetos Dizer NO s solicitaes de alterao dos requisitos, depois de iniciado o projeto

Concluso
No vamos atender a demanda de software com qualidade, a preo compatvel e num contexto de globalizao e da busca de resultados, desenvolvendo-os de maneira artesanal e emprica. preciso adotar mtodos, tcnicas e ferramentas que permitam a aplicao de princpios cientficos ou, no mnimo, adequados produo eficiente de software.

Vdeo

Empresa DATATEC

Atividades em sala de aula


1 Explique sobre a crise do software 2 Quais so os principais erros quando se desenvolve um software? 3 Baseado em nossa aula, quais foram os principais erros cometidos pela empresa DATATEC?