Buscar

ESW Conceitos Introdutórios e Processo de Software 1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Engenharia de Software
Profa Priscila Facciolli
Sumário
Software;
Características do SW;
Aplicações do SW;
Evolução do SW;
Crise do SW;
Mitos do SW;
Definição de Engenharia de SW;
Elementos Fundamentais da SW;
Processos de SW;
Elementos básicos do Processo de Software;
Projeto Lógico e Físico;
Exercícios.
2
Software
1- Instruções
quando executadas produzem a função e o 
desempenho desejados
2 - Estruturas de Dados
possibilitam que os programas manipulem 
adequadamente a informação
3 - Documentos
descrevem a operação e o uso dos programas
3
Características do Software
1. desenvolvido ou projetado por engenharia, não 
manufaturado no sentido clássico
2. não se desgasta mas se deteriora
3. a maioria é feita sob medida em vez de ser 
montada a partir de componentes existentes
4
Curva de falhas para o Hardware
tempo
“desgaste”“mortalidade
infantil”
índice 
de 
falhas
5
Curva de falhas do Software
índice de 
falhas mudança
curva real
curva idealizada
tempo
6
Aplicações do Software
BBÁÁSSIICCOO programas de apoio a outros programas
DDEE TTEEMMPPOO RREEAALL monitora, analisa e controla eventos do
mundo real
CCOOMMEERRCCIIAALL operações comerciais e tomadas de
decisões administrativas
CCIIEENNTTÍÍFFIICCOO EE DDEE
EENNGGEENNHHAARRIIAA
algoritmos de processamento de números
EEMMBBUUTTIIDDOO controla produtos e sistemas de mercados
industriais e de consumo
DDEE CCOOMMPPUUTTAADDOORR
PPEESSSSOOAALL
processamento de textos, planilhas
eletrônicas, diversões, etc.
DDEE IINNTTEELLIIGGÊÊNNCCIIAA
AARRTTIIFFIICCIIAALL
algoritmos não numéricos para resolver
problemas que não sejam favoráveis à
computação ou à análise direta
7
Evolução do Software
(1950 - 1965)
 O hardware sofreu contínuas mudanças
 O software era uma arte "secundária" para a 
qual havia poucos métodos sistemáticos
 O hardware era de propósito geral
 O software era específico para cada aplicação 
 Não havia documentação
8
Evolução do Software
(1965 - 1975)
 Multiprogramação e sistemas multiusuários 
 Técnicas interativas 
 Sistemas de tempo real
 1a geração de SGBD’s
 Produto de software - software houses
 Bibliotecas de Software
 Cresce no de sistemas baseado em computador
 Manutenção quase impossível
..... CRISE DE SOFTWARE 9
Evolução do Software
(1975 - hoje)
 Sistemas distribuídos
 Redes locais e globais
 Uso generalizado de microprocessadores -
produtos inteligentes
 Hardware de baixo custo
 Impacto de consumo
..... CRISE DE SOFTWARE (aflição crônica???)
10
Evolução do Software
(Quarta era do software: atualidade)
 Tecnologias orientadas o objetos
 Sistemas especialistas e software de inteligência 
artificial usados na prática
 Software de rede neural artificial
 Computação Paralela
 Internet
..... CRISE DE SOFTWARE (aflição crônica???)
11
Crise de Software
Refere-se a um conjunto de problemas 
encontrados no desenvolvimento de software:
(1) As estimativas de prazo e de custo freqüentemente 
são imprecisas
“Não dedicamos tempo para coletar dados sobre o
processo de desenvolvimento de software”
“Sem nenhuma indicação sólida de produtividade, não
podemos avaliar com precisão a eficácia de novas
ferramentas, métodos ou padrões”
12
Crise de Software
(2) A produtividade das pessoas da área de software 
não tem acompanhado a demanda por seus 
serviços
“Os projetos de desenvolvimento de software 
normalmente são efetuados apenas com um vago 
indício das exigências do cliente”
13
Crise de Software
(3) A qualidade de software às vezes é menos que 
adequada
Só recentemente começam a surgir conceitos 
quantitativos sólidos de garantia de qualidade de 
software
(4) O software existente é muito difícil de manter
A tarefa de manutenção devora o orçamento destinado 
ao software
A facilidade de manutenção não foi enfatizada como 
um critério importante
14
Crise de Software
estimativas de prazo e de custo 
produtividade das pessoas 
qualidade de software 
software difícil de manter 
15
Causas dos problemas associados à 
Crise de Software
1. próprio caráter do Software
O software é um elemento de sistema lógico e 
não físico (produto intangível)
Conseqüentemente, o sucesso é medido pela 
qualidade de uma única entidade e não pela 
qualidade de muitas entidades manufaturadas
O software não se desgasta, mas se 
deteriora!!!
16
2. falhas das pessoas responsáveis pelo 
desenvolvimento de Software
Gerentes sem nenhum background em 
software
Os profissionais da área de software têm 
recebido pouco treinamento formal em novas 
técnicas para o desenvolvimento de software
Resistência a mudanças.
Causas dos problemas associados à 
Crise de Software
17
3. mitos do Software
propagaram desinformação e confusão
administrativos
cliente
profissional
Causas dos problemas associados à 
Crise de Software
18
Mitos do Software (administrativos)
Já temos um manual repleto de padrões e 
procedimentos para a construção de software. Isso 
não oferecerá ao meu pessoal tudo o que eles 
precisam saber?
Realidade:
Será que o manual é usado? 
Os profissionais sabem que ele existe? 
Ele reflete a prática moderna de desenvolvimento de software? 
Ele é completo? 
19
Meu pessoal tem ferramentas de desenvolvimento de 
software de última geração; afinal lhes compramos 
os mais novos computadores.
Mitos do Software (administrativos)
Realidade:
É preciso muito mais do que os mais recentes 
computadores para se fazer um desenvolvimento de 
software de alta qualidade.
20
Se nós estamos atrasados nos prazos, podemos 
adicionar mais programadores e tirar o atraso.
Mitos do Software (administrativos)
Realidade:
O desenvolvimento de software não é um processo 
mecânico igual à manufatura. 
Acrescentar pessoas em um projeto torna-o ainda mais 
atrasado. Pessoas podem ser acrescentadas, mas 
somente de uma forma planejada.
21
FASES CUSTO DE MANUTENÇÃO
DEFINIÇÃO 1 x
DESENVOLVIMENTO 1.5 - 6x
MANUTENÇÃO 60 - 100x
magnitude das mudanças
22
Assim que escrevermos o programa e o colocarmos 
em funcionamento nosso trabalho estará completo.
Mitos do Software (profissional)
Realidade:
Os dados da indústria indicam que entre 50 e 70% de todo 
esforço gasto num programa serão despendidos depois que 
ele for entregue pela primeira vez ao cliente.
23
Preocupação: Sistematizar o processo de
criação e manutenção de software.
24
 Boehm: Engenharia de software envolve a 
aplicação prática de conhecimento científico para 
o projeto e construção de programas de 
computador e a documentação associada 
necessária para desenvolvê-los, operá-los e 
mantê-los. 
Engenharia de Software 
Definições
25
 IEEE Standard Glossary of Software Engineering 
terminology: Engenharia de software é uma 
abordagem sistemática para o desenvolvimento, 
operação, manutenção de software
Software: programas de computador, 
procedimentos, regras, documentação 
possivelmente associada, e dados sobre sua 
operação.
Engenharia de Software 
Definições
26
abrange um conjunto de três elementos fundamentais: 
Métodos, Ferramentas e Procedimentos
Principais metas: melhorar a qualidade de 
produtos de software, aumentar a 
produtividade do pessoal técnico e aumentar 
a satisfação do cliente.
27
Métodos: proporcionam os detalhes de 
como fazer para construir o software
Elementos fundamentais da 
Engenharia de Software
28
 Planejamento e estimativa de projeto
 Análise de requisitos de software e de sistemas
 Projeto da estrutura de dados
 Algoritmo de processamento
 Codificação
 Teste
Manutenção
Engenharia de Software 
29
Ferramentas: dão suporte automatizado
aos métodos.
 existem atualmente ferramentas para sustentar 
cada um dos métodos
 quando as ferramentas são integradas é 
estabelecido um sistema de suporte ao 
desenvolvimento de software chamado CASE -
Computer Aided Software Engineering
Engenharia de Software
30
Procedimentos: constituem o elo de
ligação entre os métodos e ferramentas
 seqüência em que os métodos serão aplicados
 produtos que se exige que sejam entregues
 controles que ajudam assegurar a qualidade e 
coordenar as alterações
 marcos de referência que possibilitam administrar 
o progresso do software.
Engenharia de Software
31
conjunto de etapas que envolve
métodos
ferramentas 
procedimentos 
Essas etapas são conhecidas como componentes de
CICLO DE VIDA DE SOFTWARE
ou Processo de Software
Engenharia de Software
32
Segundo Sommerville “.. Um processo de software é
um conjunto de atividades e resultados associados
que levam á produção de um produto de software”.
Embora existam muitos processos de software
diferentes, há atividades fundamentais comuns a
todos eles, são elas:
Processos de Software
33
 Concepção do Sistema;

Outros materiais