Você está na página 1de 49

Avisos Importantes!!!

Programao das aulas clique aqui Datas das provas


30/3 1 Avaliao 03/5 2 avaliao 08/6 3 avaliao

Seminrios
13 e 14 de junho.

Software e engenharia de software

Prof Joslaine Cristina Jeske de Freitas

Roteiro
A importncia do software Software Software: uma crise no horizonte Mitos do software

Introduo O Software ultrapassou o Hardware como chave para o sucesso de muitos sistemas baseados em computador (Pressman, pg. 3, 1992)

O Software o que faz a diferena!!!


Completeza da informao Interface amigvel inteligncia funcionalidade compatibilidade suporte Tornam um produto melhor que outro

A importncia do Software
Durante as 3 primeiras dcadas da era do computador, o principal desafio era desenvolver um HARDWARE de baixo custo e alto desempenho. O hoje o desafio melhorar a qualidade (e reduzir os custos) das solues baseadas em SOFTWARE!

A evoluo do Software - Nova Revoluo Computao Industrial (Toffler) - 3a. Onda

Revoluo Industrial Primeira Onda


Ferro (Darby, 1709) Mquina a vapor:
Inventada (Newcomen, 1712) Aperfeioada (WATT, 1766 - 69 -82)

Mecanizao da indstria txtil:


Tear Mecnico (Kay, 1722) Maquina de fiar (Hargreaves, 1764)

Revoluo Industrial Segunda Onda


Ao (Bessemel, 1856 e 1885 - Liga) Locomotiva a Vapor (Rede de Transporte - 1830) Mquina de Costura (SINGER,1851) Motor a combusto interna:
Primeiro eficiente (OTTO, 1876) Produo automobilstica em massa (Daimler e Benz, 1896)

Revoluo Industrial: Terceira Onda


Energia Nuclear (Fermi, 1942) Uso Industrial/Comercial da Eletricidade Computadores Eletrnicos (ENIAC 1946) Transistor (Shockley, et al., 1948) Sociedade Sociedade Industrial da Informao transforma
o

Filosofando...
A mudana de uma sociedade industrial para uma baseada na informao uma Radical Mudana Econmica:
Material tem menos valor e Informao tem mais valor Antes: quanto Hoje: quanto mais menos pessoas pessoas possuem possussem algo, algo, maior o valor. maior o valor.

Filosofando ... Exemplo!


Cite as caractersticas dos sistemas operacionais que voc conhece. Compare os sistemas:
Unix Windows Linux

O Windows vende mais porque mais fresquinho ou mais fresquinho porque vende mais???

Passado x Presente

A evoluo do software
Software dividida em 4 Eras:
Primeiros anos 1950 - 1965 Segunda Era 1965 - 1975 Terceira Era 1975 - 1988 Quarta Era 1988 - ...

O que Software?
Definio - Software :
1o - instrues (programas de computador) que, quando executadas, produzem a funo e o desempenho desejados; 2o - estruturas de dados que permitem a manipulao das informaes; 3o - documentos que descrevem a operao e uso dos programas.

Caractersticas do Software 1
O Software desenvolvido ou projetado por engenharia, no manufaturado no sentido clssico:
Custos so concentrados no trabalho de engenharia. Projetos no podem ser geridos como projetos de manufatura. Fbrica de Software!

Caractersticas do Software 2
Software no desgasta!
Software no sensvel aos problemas ambientais que fazem com que o hardware se desgaste. Toda falha indica erro de projeto ou implementao: manuteno do SW mais complicada que a do HW.

Caractersticas do Software 3
A maioria dos softwares feita sob medida e no montada a partir de componentes existentes. != Hardware. Situao est mudando:
Orientao a objetos. Reusabilidade o Santo Graal(diminui custos e melhora projetos).

Software - Aplicaes

Quais so os problemas?
A sofisticao do software ultrapassou nossa capacidade de construo. Nossa capacidade de construir programas no acompanha a demanda por novos programas. Nossa capacidade de manter programas ameaada por projetos ruins.

Perguntas que Engenharia de Software quer responder:


Porque demora tanto para concluir um projeto (no cumprimos prazos)? Porque custa tanto (uma ordem de magnitude a mais)? Porque no descobrimos os erros antes de entregar o software ao cliente? Porque temos dificuldade de medir o progresso enquanto o software est sendo desenvolvido?

Causas bvias
No dedicamos tempo para coletar dados sobre o desenvolvimento do software - resulta em estimativas a olho. Comunicao entre o cliente e o desenvolvedor muito fraca. Falta de testes sistemticos e completos.

Causas menos bvias


O Software desenvolvido ou projetado por engenharia, no manufaturado no sentido clssico (caracterstica 1). Gerentes sem background em desenvolvimento de SW. Profissionais recebem pouco treinamento formal. Falta investimento (em ES). Faltam mtodos e automao.

Uma Crise no horizonte


A indstria de Software tem tido uma crise que a acompanha h quase 30 anos:
Aflio Crnica != Crise

Problemas no se limitam ao software que no funciona adequadamente, mas abrange:


desenvolvimento, testes, manuteno, suprimento, etc.

Crnica Crise de Software


Engenhari a de Qualidade SoftwareProduto , Proces PRTICA!! so

TEORIA!!

Sucesso do Software

Considerao
Apesar de todos os avanos na tecnologia de software, ou mesmo por causa destes avanos, um problema bsico existe: a comunicao entre pessoas das melhores prticas e solues em Engenharia de Software

Observaes
Grande volume de inovaes tecnolgicas, teorias e aplicaes prticas Conflitos entre Teoria e Prtica
Processo Racional de Design: Como e porque fingi-lo (Parnas e Clements 86)

Observaes
nfase em aspectos meta para software
Teorias, Modelos, Representaes, Ferramentas, ...

Desumanizao da Engenharia de Software Dependncia de pessoas experientes

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS Por que os custos so to elevados?
no h controle sobre prazos ou planejamento sobre equipes e recursos o levantamento de requisitos no realizado de forma integrada com o cliente e dentro de padres antecipadamente projetados

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS
Por que os cronogramas no so cumpridos? fatores que afetam a preciso da estimativa: a interao usurio-analista o conhecimento e a descrio do problema a experincia da equipe de desenvolvimento

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS Por que os erros no so detectados antes da liberao das verses?
o controle de qualidade no objetivo e sistemtico desde o princpio do desenvolvimento.

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS Por que difcil medir o progresso durante o desenvolvimento?
Porque no h referncias. H falta de um plano de CQ com metas e prazos explicitamente definidos.

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS Por que a produtividade baixa?
aprendizado dos usurios ao longo do projeto; alteraes dos requisitos provocadas por mudanas de tecnologia, legislao ou mercado; implicaes para a implementao somente percebidas ao tempo da implementao.

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS Por que o software no acompanha os nveis de sofisticao do hardware?
as inovaes de hardware so de fcil implementao. No caso do software, ao contrrio, a novidade demanda um enorme esforo para a implantao.

CRISE DO SOFTWARE

QUESTES NO RESOLVIDAS Por que a produo no acompanha a demanda? Manuteno

CRISE DO SOFTWARE
QUESTES NO RESOLVIDAS Por que crescente a dificuldade de manter sistemas ? complexidade

CRISE DO SOFTWARE
DESEMPENHO PROCURADO qualidade nos nveis desejados pelo cliente custos compatveis com os recursos disponveis produtividade elevada rgido cumprimento de prazos.

CRISE DO SOFTWARE
Razes para o insucesso dos SI
falta de envolvimento do usurio; anlise e projeto inadequados; falta de flexibilidade no projeto; prazos longos para a concluso do projeto; elevada rotatividade de pessoal.

CRISE DO SOFTWARE
Razes para o insucesso dos SI
velocidade da mudana tecnolgica velocidade na mudana dos mercados velocidade na obsolescncia dos sistemas incapacidade das estruturas de SI para acompanhar a velocidade das mudanas

CRISE DO SOFTWARE
Razes para o insucesso dos SI
informaes mal analisadas; problemas mal identificados; desconhecimento do domnio da aplicao; fatores sociais e psicolgicos mais amplos negligenciados;

Crise Software
cronogramas no cumpridos custos elevados erros no detectados produtividade baixa

INSATISFAO DO USURIO

Mitos do Software Administrativos


Um manual oferece tudo que se precisa saber. Computadores de ltima gerao solucionam problemas de desenvolvimento. Se estamos atrasados, basta adicionar programadores e tirar o atraso.

Mitos do Software - do Cliente


Uma declarao geral suficiente para comear a escrever programas. Mudanas podem ser facilmente acomodadas em um projeto

Mitos do Software do Profissional


Um programa est terminado ao funcionar. Quanto mais cedo escrever o cdigo, mais rpido terminarei o programa. S posso avaliar a qualidade de um programa em funcionamento. A nica coisa a ser entregue em um projeto o programa funcionando.

Atividades 2 de maro
Responder as seguintes questes do cap 1 do livro de Pressman. 1.1, 1.2, 1.5, 1.7, 1.9, 1.11, 1.12 OBS.Material no xerox.

Você também pode gostar