SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
Introdução à Engenharia de
Software
Conceitos fundamentais
A situação do software
 A sofisticação do software ultrapassou nossa
capacidade de construir um software que extraia o
potencial do hardware.
 Nossa capacidade de construir programas não pode
acompanhar o ritmo da demanda de novos
programas.
 Nossa capacidade de manter os programas
existentes é ameaçada por projetos ruins e recursos
inadequados
A grandeza do software na atualidade
 A economia de todas as
nações desenvolvidas
são dependentes de
software
 Muitos sistemas são
controlados por software
 Veja – Agosto 2009
Custos de software
 Os custos de software geralmente determinam os
custos de sistemas.
 Em um PC:
 Windows 7 Professional – R$629,00
 MS Office 2010 Professional – R$1399,00
 MS Visual Studio .NET 2010 Professional – R$1899,00
 Licença de acesso para um usuário SAP – R$999,00 (por
ano!)
 O maior custo de software é a manutenção.
 A engenharia de software se preocupa com
custo/benefício (ROI)
Qualidade — Terminologias
 Erro: erro humano
 Defeito: resultado do erro evidenciado em algum
desenvolvimento ou manutenção do produto
 Falha: divergência entre o comportamento
requerido para o sistema e o comportamento real.
Perguntas frequentes
 O que é software?
 Qual a diferença entre Engenharia de Software e
Ciências da Computação?
 Qual é a diferença entre Engenharia de Software e
Engenharia de Sistemas?
 O que é um processo de software
 O que é um modelo de processo de software?
 Quais são os custos da Engenharia de Software?
 O que são métodos de Engenharia de Software?
 O que é CASE (Computer-Aided Software Engineering)
 Quais são as características de um software bom?
 Quais são os principais desafios da Engenharia de
Software?
O que é Software?
 Programas de computador e documentação
associada.
 Produtos de Software podem ser, basicamente:
 Genéricos: produzidos e vendidos no mercado a
qualquer cliente
 Produtos sob encomenda: são desenvolvidos para um
cliente em particular – MySoftware.
Participantes do desenvolvimento de
software sob encomenda
Qual é a diferença entre Engenharia de
Software e Ciências da Computação?
 A Ciência da Computação
se preocupa com as
teorias e os métodos
fundamentais.
 A Engenharia de Software
se dedica aos problemas
práticos da produção de
software.
 As teorias da Ciência da
Computação não são
suficientes por si só.
Qual é a diferença entre Engenharia de
Software e Engenharia de Sistemas?
 Engenharia de sistemas se ocupa de todos os
aspectos de desenvolvimento e da evolução de
sistemas baseado em computadores, incluindo
hardware, software e engenharia do processo.
 A Engenharia de Software é parte deste processo.
 Engenheiros de sistemas estão envolvidos na
especificação do sistema, na definição de sua
arquitetura geral, integração e desenvolvimento.
O que é um processo de software?
 Um conjunto de atividades cujo objetivo é o
desenvolvimento ou evolução do software.
 Atividades comuns a todo processo de
desenvolvimento de software são:
 Especificação – o que o sistema deveria fazer (ou não -
constraints);
 Desenvolvimento – produção do software;
 Validação – verificação de que o software é o que o
cliente quer;
 Evolução – modificações do software em resposta às
mudanças de requisitos.
O que é um modelo de processo de software?
 Uma descrição simplificada de um processo de software,
que é representada a partir de uma perspectiva
específica.
 Exemplos de tipos de modelos de processos de
software:
 Workflow – sequência de atividades;
 Fluxo de dados ou atividades – demonstra o fluxo da
informação;
 Papel/Ação – quem faz o que.
 Modelos genéricos de desenvolvimento
 Waterfall;
 Desenvolvimento evolucionário;
 Especificação formal;
 Modelagem a partir de componentes reutilizáveis.
Quais são os custos de Engenharia de
Software?
 De maneira geral:
 60% dos custos são custos de desenvolvimento;
 40% são custos de teste.
 Para software personalizado, o custo de evolução
frequentemente ultrapassa os custos de
desenvolvimento.
 Custos podem variar, dependendo do tipo de
software que está sendo desenvolvido e os
requisitos de atributos como performance e
confiabilidade.
 A distribuição dos custos depende do modelo de
desenvolvimento que está sendo utilizado.
O que são métodos de Engenharia de
Software?
 Uma abordagem estruturada para o
desenvolvimento de software que inclui:
 Descrição de modelos – gráficos, textuais, documentais,
etc.
 Regras – restrições aplicadas a modelos de sistemas.
 Padrões de design - recomendações de melhores
práticas.
 Guias de processo – quais atividades seguir,
O que é CASE (Computer-Aided Software
Engineering)?
 Sistema de software cujo objetivo é fornecer suporte
automatizado para as atividades de processo de
software. Sistemas CASE são frequentemente
utilizados para apoiar a aplicação dos métodos.
Quais são os atributos de um bom
software?
 Atender aos requisitos solicitados pelo usuário
 Performance
 Manutenibilidade – o software precisa evoluir para
atender a novos requisitos.
 Confiabilidade – em caso de falha o software não
pode causar danos significativos ao usuário.
 Eficiência – usar os recursos do sistema com
parcimônia.
 Usabilidade – o software deve poder ser utilizado
pelos usuários para os quais ele foi desenhado.
Quais são os principais desafios
enfrentados pela Engenharia de Software?
 Sistemas legados – antigos, mas valiosos.
 Heterogeneidade – diversidade crescente de
plataformas, de software distribuído, mistura muito
grande de software e hardware.
 Demanda x Tempo de entrega
Leitura e discussão
 Governo fará censo para avaliar apagão de mão de
obra de TI
 Saídas para evitar o apagão de mão de obra em TI
 CIOs sofrem com a falta de talentos de TI no Brasil
 Jogos Olímpicos de Londres geram 60 GB de
informações por segundo
Construindo uma casa versus um software
 A casa
 Identificar e analisar os
requisitos
 Produzir e documentar todo
o projeto
 Detalhar as especificações
 Identificar e projetar os
componentes
 Construir cada componente
 Testar cada componente
 Integrar os componentes
 Fazer as modificações
finais
 Manutenção contínua
 O software
 Análise e definição dos
requisitos
 Projeto do sistema
 Projeto do programa
 Escrever os programas
 Testes das unidades
 Teste de integração
 Teste do sistema
 Entrega do sistema
 Manutenção
Os papéis na equipe de desenvolvimento

Mais conteúdo relacionado

Mais procurados

Engenharia de Software Pressman
Engenharia de Software PressmanEngenharia de Software Pressman
Engenharia de Software PressmanSimoneinfo
 
Cap1 introd-engenharia de software
Cap1 introd-engenharia de softwareCap1 introd-engenharia de software
Cap1 introd-engenharia de softwareAdilson Nascimento
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de softwareJoao Johanes
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De SoftwareCursoSENAC
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareCamilo de Melo
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Softwareelliando dias
 
Engenharia de Software - Unimep/Pronatec - Aula 1
Engenharia de Software - Unimep/Pronatec - Aula 1Engenharia de Software - Unimep/Pronatec - Aula 1
Engenharia de Software - Unimep/Pronatec - Aula 1André Phillip Bertoletti
 
Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2André Phillip Bertoletti
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareCloves da Rocha
 
Paradigmas De Engenharia De Software
Paradigmas De Engenharia De SoftwareParadigmas De Engenharia De Software
Paradigmas De Engenharia De SoftwareRobson Silva Espig
 
Engenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEngenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEduardo Castro
 

Mais procurados (20)

Engenharia de Software Pressman
Engenharia de Software PressmanEngenharia de Software Pressman
Engenharia de Software Pressman
 
Cap1 introd-engenharia de software
Cap1 introd-engenharia de softwareCap1 introd-engenharia de software
Cap1 introd-engenharia de software
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de Software
 
Processos de Software
Processos de SoftwareProcessos de Software
Processos de Software
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Aula 2 - Processos de Software
Aula 2 - Processos de SoftwareAula 2 - Processos de Software
Aula 2 - Processos de Software
 
Engenharia de Software - Unimep/Pronatec - Aula 1
Engenharia de Software - Unimep/Pronatec - Aula 1Engenharia de Software - Unimep/Pronatec - Aula 1
Engenharia de Software - Unimep/Pronatec - Aula 1
 
Engenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - IntroEngenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - Intro
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Capitulo 02 sommerville
Capitulo 02 sommervilleCapitulo 02 sommerville
Capitulo 02 sommerville
 
Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2
 
Fundamentos da Engenharia de Software
Fundamentos da Engenharia de SoftwareFundamentos da Engenharia de Software
Fundamentos da Engenharia de Software
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de Software
 
Paradigmas De Engenharia De Software
Paradigmas De Engenharia De SoftwareParadigmas De Engenharia De Software
Paradigmas De Engenharia De Software
 
152191 11993
152191 11993152191 11993
152191 11993
 
Engenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEngenharia Requisitos - Método RON
Engenharia Requisitos - Método RON
 
Documento de requisitos
Documento de requisitosDocumento de requisitos
Documento de requisitos
 

Destaque

TCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em ComponentesTCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em ComponentesJuliano Tiago Rinaldi
 
Engenharia de Software Baseada em Componentes
Engenharia de Software Baseada em ComponentesEngenharia de Software Baseada em Componentes
Engenharia de Software Baseada em Componenteselliando dias
 
Engenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em ComponentesEngenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em Componentesigordsm
 
Dru - Desenvolvimento para Reuso
Dru - Desenvolvimento para ReusoDru - Desenvolvimento para Reuso
Dru - Desenvolvimento para ReusoJuliana Cindra
 
Engenharia de Software - Introdução à Ciências da Computação - Engenharia Civil
Engenharia de Software - Introdução à Ciências da Computação - Engenharia CivilEngenharia de Software - Introdução à Ciências da Computação - Engenharia Civil
Engenharia de Software - Introdução à Ciências da Computação - Engenharia CivilAna Carolline Pereira
 
Introduçao a engenharia agricola trabalho(1)
Introduçao a engenharia agricola   trabalho(1)Introduçao a engenharia agricola   trabalho(1)
Introduçao a engenharia agricola trabalho(1)Rômulo Alexandrino Silva
 
ENGENHARIA AGRICOLA E AMBIENTAL UFV 2003
ENGENHARIA AGRICOLA  E AMBIENTAL UFV 2003ENGENHARIA AGRICOLA  E AMBIENTAL UFV 2003
ENGENHARIA AGRICOLA E AMBIENTAL UFV 2003Gustavo Petra
 
Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...
Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...
Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...alexculpado
 
Engenharia informatica
Engenharia informaticaEngenharia informatica
Engenharia informaticaTurma9bejsm
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de softwareTiago Pinhão
 
Engenharia Mecânica FMU
Engenharia Mecânica FMUEngenharia Mecânica FMU
Engenharia Mecânica FMUFMU - Oficial
 
Afinal, o que é Engenharia Mecânica - profissaoengenheiro.com.br
Afinal, o que é Engenharia Mecânica - profissaoengenheiro.com.brAfinal, o que é Engenharia Mecânica - profissaoengenheiro.com.br
Afinal, o que é Engenharia Mecânica - profissaoengenheiro.com.brCarolina Tomazetti
 
Engenharia mecanica
Engenharia mecanicaEngenharia mecanica
Engenharia mecanicaAgregacao
 
.Didatica organizacao do_trabalho_pedagogico-1
.Didatica organizacao do_trabalho_pedagogico-1.Didatica organizacao do_trabalho_pedagogico-1
.Didatica organizacao do_trabalho_pedagogico-1Rômulo Rodrigues
 
03 Modelo de processo de software
03 Modelo de processo de software03 Modelo de processo de software
03 Modelo de processo de softwareWaldemar Roberti
 

Destaque (20)

TCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em ComponentesTCC - Engenharia de Software Baseada em Componentes
TCC - Engenharia de Software Baseada em Componentes
 
Desenvolvimento baseado em componentes
Desenvolvimento baseado em componentesDesenvolvimento baseado em componentes
Desenvolvimento baseado em componentes
 
Engenharia de Software Baseada em Componentes
Engenharia de Software Baseada em ComponentesEngenharia de Software Baseada em Componentes
Engenharia de Software Baseada em Componentes
 
Engenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em ComponentesEngenharia De Software Baseada Em Componentes
Engenharia De Software Baseada Em Componentes
 
Dru - Desenvolvimento para Reuso
Dru - Desenvolvimento para ReusoDru - Desenvolvimento para Reuso
Dru - Desenvolvimento para Reuso
 
Codasp 82 anos
Codasp 82 anosCodasp 82 anos
Codasp 82 anos
 
Engenharia de Software - Introdução à Ciências da Computação - Engenharia Civil
Engenharia de Software - Introdução à Ciências da Computação - Engenharia CivilEngenharia de Software - Introdução à Ciências da Computação - Engenharia Civil
Engenharia de Software - Introdução à Ciências da Computação - Engenharia Civil
 
Introduçao a engenharia agricola trabalho(1)
Introduçao a engenharia agricola   trabalho(1)Introduçao a engenharia agricola   trabalho(1)
Introduçao a engenharia agricola trabalho(1)
 
ENGENHARIA AGRICOLA E AMBIENTAL UFV 2003
ENGENHARIA AGRICOLA  E AMBIENTAL UFV 2003ENGENHARIA AGRICOLA  E AMBIENTAL UFV 2003
ENGENHARIA AGRICOLA E AMBIENTAL UFV 2003
 
Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...
Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...
Engenharia Informática vs Sistemas de Informação-II seminario do DEI-UAN-alex...
 
Engenharia informatica
Engenharia informaticaEngenharia informatica
Engenharia informatica
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Engenharia Mecânica FMU
Engenharia Mecânica FMUEngenharia Mecânica FMU
Engenharia Mecânica FMU
 
Afinal, o que é Engenharia Mecânica - profissaoengenheiro.com.br
Afinal, o que é Engenharia Mecânica - profissaoengenheiro.com.brAfinal, o que é Engenharia Mecânica - profissaoengenheiro.com.br
Afinal, o que é Engenharia Mecânica - profissaoengenheiro.com.br
 
Engenharia mecanica
Engenharia mecanicaEngenharia mecanica
Engenharia mecanica
 
Modelo Espiral
Modelo EspiralModelo Espiral
Modelo Espiral
 
.Didatica organizacao do_trabalho_pedagogico-1
.Didatica organizacao do_trabalho_pedagogico-1.Didatica organizacao do_trabalho_pedagogico-1
.Didatica organizacao do_trabalho_pedagogico-1
 
Introdução à Engenharia de Produção - 01
Introdução à Engenharia de Produção - 01Introdução à Engenharia de Produção - 01
Introdução à Engenharia de Produção - 01
 
03 Modelo de processo de software
03 Modelo de processo de software03 Modelo de processo de software
03 Modelo de processo de software
 
Engenharia genética
Engenharia genéticaEngenharia genética
Engenharia genética
 

Semelhante a 02 Introdução à engenharia de software - conceitos fundamentais

Fundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptxFundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptxRoberto Nunes
 
Engenharia de Software introdução
Engenharia de Software    introduçãoEngenharia de Software    introdução
Engenharia de Software introduçãomiroslayer
 
Es aula01
Es   aula01Es   aula01
Es aula01Itaú
 
Introdução a informática: do Windows ao Excel
Introdução a informática: do Windows ao ExcelIntrodução a informática: do Windows ao Excel
Introdução a informática: do Windows ao Excelmalviana1
 
Aula 1 introdução à engenharia de software1 (1)
Aula 1   introdução à engenharia de software1 (1)Aula 1   introdução à engenharia de software1 (1)
Aula 1 introdução à engenharia de software1 (1)Tiago Vizoto
 
modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3spawally
 
Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9wilsonguns
 
aula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptxaula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptxMarcondesTiburcio
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - WikipediaRobson Silva Espig
 
Arquitetura de Software - Uma visão gerencial
Arquitetura de Software - Uma visão gerencialArquitetura de Software - Uma visão gerencial
Arquitetura de Software - Uma visão gerencialAlexandre Leão
 
1 Qss
1 Qss1 Qss
1 Qsslcbj
 
Aula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWAREAula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWAREErnesto Bedrikow
 
Producto X Processo X Projecto de Engenharia de Software
Producto X Processo X Projecto de Engenharia de SoftwareProducto X Processo X Projecto de Engenharia de Software
Producto X Processo X Projecto de Engenharia de SoftwareRogerio P C do Nascimento
 
Aula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfAula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfJadna Almeida
 

Semelhante a 02 Introdução à engenharia de software - conceitos fundamentais (20)

Fundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptxFundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptx
 
Engenharia de software
Engenharia de software Engenharia de software
Engenharia de software
 
Aula1 introducao engsw
Aula1 introducao engswAula1 introducao engsw
Aula1 introducao engsw
 
Engenharia de Software introdução
Engenharia de Software    introduçãoEngenharia de Software    introdução
Engenharia de Software introdução
 
Es aula01
Es   aula01Es   aula01
Es aula01
 
Agilidade em projetos de software
Agilidade em projetos de softwareAgilidade em projetos de software
Agilidade em projetos de software
 
Introdução a informática: do Windows ao Excel
Introdução a informática: do Windows ao ExcelIntrodução a informática: do Windows ao Excel
Introdução a informática: do Windows ao Excel
 
Sld 3
Sld 3Sld 3
Sld 3
 
Aula 1 introdução à engenharia de software1 (1)
Aula 1   introdução à engenharia de software1 (1)Aula 1   introdução à engenharia de software1 (1)
Aula 1 introdução à engenharia de software1 (1)
 
modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3
 
Aula1 dia 22 02 2022.pdf
Aula1  dia 22 02 2022.pdfAula1  dia 22 02 2022.pdf
Aula1 dia 22 02 2022.pdf
 
Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9Engenharia de-software-1217199594686494-9
Engenharia de-software-1217199594686494-9
 
Crise de software2
Crise de software2Crise de software2
Crise de software2
 
aula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptxaula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptx
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - Wikipedia
 
Arquitetura de Software - Uma visão gerencial
Arquitetura de Software - Uma visão gerencialArquitetura de Software - Uma visão gerencial
Arquitetura de Software - Uma visão gerencial
 
1 Qss
1 Qss1 Qss
1 Qss
 
Aula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWAREAula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWARE
 
Producto X Processo X Projecto de Engenharia de Software
Producto X Processo X Projecto de Engenharia de SoftwareProducto X Processo X Projecto de Engenharia de Software
Producto X Processo X Projecto de Engenharia de Software
 
Aula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdfAula 01 e 02 - Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdf
 

Mais de Waldemar Roberti

Mais de Waldemar Roberti (6)

07 Modelagem (Sommer)
07 Modelagem (Sommer)07 Modelagem (Sommer)
07 Modelagem (Sommer)
 
06 Requisitos
06 Requisitos06 Requisitos
06 Requisitos
 
05 agile
05 agile05 agile
05 agile
 
04 Unified process
04 Unified process04 Unified process
04 Unified process
 
01 Introdução - Contextualização Engenharia de Software
01 Introdução - Contextualização Engenharia de Software01 Introdução - Contextualização Engenharia de Software
01 Introdução - Contextualização Engenharia de Software
 
00 Apresentação
00 Apresentação00 Apresentação
00 Apresentação
 

Último

19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileirosMary Alvarenga
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPanandatss1
 
Slides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfSlides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfpaulafernandes540558
 
Linguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdfLinguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdfLaseVasconcelos1
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfIedaGoethe
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxacaciocarmo1
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024GleyceMoreiraXWeslle
 
ADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mentalADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mentalSilvana Silva
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasRicardo Diniz campos
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...Martin M Flynn
 
6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptxErivaldoLima15
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASEdinardo Aguiar
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaFernanda Ledesma
 
PRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoPRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoSilvaDias3
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfErasmo Portavoz
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxkarinasantiago54
 

Último (20)

19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros
 
Educação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SPEducação São Paulo centro de mídias da SP
Educação São Paulo centro de mídias da SP
 
Slides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfSlides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdf
 
Linguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdfLinguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdf
 
Currículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdfCurrículo escolar na perspectiva da educação inclusiva.pdf
Currículo escolar na perspectiva da educação inclusiva.pdf
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptx
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024
 
ADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mentalADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mental
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
Mesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecasMesoamérica.Astecas,inca,maias , olmecas
Mesoamérica.Astecas,inca,maias , olmecas
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
 
6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx
 
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNASQUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
QUIZ DE MATEMATICA SHOW DO MILHÃO PREPARAÇÃO ÇPARA AVALIAÇÕES EXTERNAS
 
A Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão LinguísticaA Inteligência Artificial na Educação e a Inclusão Linguística
A Inteligência Artificial na Educação e a Inclusão Linguística
 
PRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoPRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basico
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdf
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
 

02 Introdução à engenharia de software - conceitos fundamentais

  • 1. Introdução à Engenharia de Software Conceitos fundamentais
  • 2. A situação do software  A sofisticação do software ultrapassou nossa capacidade de construir um software que extraia o potencial do hardware.  Nossa capacidade de construir programas não pode acompanhar o ritmo da demanda de novos programas.  Nossa capacidade de manter os programas existentes é ameaçada por projetos ruins e recursos inadequados
  • 3. A grandeza do software na atualidade  A economia de todas as nações desenvolvidas são dependentes de software  Muitos sistemas são controlados por software  Veja – Agosto 2009
  • 4. Custos de software  Os custos de software geralmente determinam os custos de sistemas.  Em um PC:  Windows 7 Professional – R$629,00  MS Office 2010 Professional – R$1399,00  MS Visual Studio .NET 2010 Professional – R$1899,00  Licença de acesso para um usuário SAP – R$999,00 (por ano!)  O maior custo de software é a manutenção.  A engenharia de software se preocupa com custo/benefício (ROI)
  • 5. Qualidade — Terminologias  Erro: erro humano  Defeito: resultado do erro evidenciado em algum desenvolvimento ou manutenção do produto  Falha: divergência entre o comportamento requerido para o sistema e o comportamento real.
  • 6. Perguntas frequentes  O que é software?  Qual a diferença entre Engenharia de Software e Ciências da Computação?  Qual é a diferença entre Engenharia de Software e Engenharia de Sistemas?  O que é um processo de software  O que é um modelo de processo de software?  Quais são os custos da Engenharia de Software?  O que são métodos de Engenharia de Software?  O que é CASE (Computer-Aided Software Engineering)  Quais são as características de um software bom?  Quais são os principais desafios da Engenharia de Software?
  • 7. O que é Software?  Programas de computador e documentação associada.  Produtos de Software podem ser, basicamente:  Genéricos: produzidos e vendidos no mercado a qualquer cliente  Produtos sob encomenda: são desenvolvidos para um cliente em particular – MySoftware.
  • 8. Participantes do desenvolvimento de software sob encomenda
  • 9. Qual é a diferença entre Engenharia de Software e Ciências da Computação?  A Ciência da Computação se preocupa com as teorias e os métodos fundamentais.  A Engenharia de Software se dedica aos problemas práticos da produção de software.  As teorias da Ciência da Computação não são suficientes por si só.
  • 10. Qual é a diferença entre Engenharia de Software e Engenharia de Sistemas?  Engenharia de sistemas se ocupa de todos os aspectos de desenvolvimento e da evolução de sistemas baseado em computadores, incluindo hardware, software e engenharia do processo.  A Engenharia de Software é parte deste processo.  Engenheiros de sistemas estão envolvidos na especificação do sistema, na definição de sua arquitetura geral, integração e desenvolvimento.
  • 11. O que é um processo de software?  Um conjunto de atividades cujo objetivo é o desenvolvimento ou evolução do software.  Atividades comuns a todo processo de desenvolvimento de software são:  Especificação – o que o sistema deveria fazer (ou não - constraints);  Desenvolvimento – produção do software;  Validação – verificação de que o software é o que o cliente quer;  Evolução – modificações do software em resposta às mudanças de requisitos.
  • 12. O que é um modelo de processo de software?  Uma descrição simplificada de um processo de software, que é representada a partir de uma perspectiva específica.  Exemplos de tipos de modelos de processos de software:  Workflow – sequência de atividades;  Fluxo de dados ou atividades – demonstra o fluxo da informação;  Papel/Ação – quem faz o que.  Modelos genéricos de desenvolvimento  Waterfall;  Desenvolvimento evolucionário;  Especificação formal;  Modelagem a partir de componentes reutilizáveis.
  • 13. Quais são os custos de Engenharia de Software?  De maneira geral:  60% dos custos são custos de desenvolvimento;  40% são custos de teste.  Para software personalizado, o custo de evolução frequentemente ultrapassa os custos de desenvolvimento.  Custos podem variar, dependendo do tipo de software que está sendo desenvolvido e os requisitos de atributos como performance e confiabilidade.  A distribuição dos custos depende do modelo de desenvolvimento que está sendo utilizado.
  • 14. O que são métodos de Engenharia de Software?  Uma abordagem estruturada para o desenvolvimento de software que inclui:  Descrição de modelos – gráficos, textuais, documentais, etc.  Regras – restrições aplicadas a modelos de sistemas.  Padrões de design - recomendações de melhores práticas.  Guias de processo – quais atividades seguir,
  • 15. O que é CASE (Computer-Aided Software Engineering)?  Sistema de software cujo objetivo é fornecer suporte automatizado para as atividades de processo de software. Sistemas CASE são frequentemente utilizados para apoiar a aplicação dos métodos.
  • 16. Quais são os atributos de um bom software?  Atender aos requisitos solicitados pelo usuário  Performance  Manutenibilidade – o software precisa evoluir para atender a novos requisitos.  Confiabilidade – em caso de falha o software não pode causar danos significativos ao usuário.  Eficiência – usar os recursos do sistema com parcimônia.  Usabilidade – o software deve poder ser utilizado pelos usuários para os quais ele foi desenhado.
  • 17. Quais são os principais desafios enfrentados pela Engenharia de Software?  Sistemas legados – antigos, mas valiosos.  Heterogeneidade – diversidade crescente de plataformas, de software distribuído, mistura muito grande de software e hardware.  Demanda x Tempo de entrega
  • 18. Leitura e discussão  Governo fará censo para avaliar apagão de mão de obra de TI  Saídas para evitar o apagão de mão de obra em TI  CIOs sofrem com a falta de talentos de TI no Brasil  Jogos Olímpicos de Londres geram 60 GB de informações por segundo
  • 19. Construindo uma casa versus um software  A casa  Identificar e analisar os requisitos  Produzir e documentar todo o projeto  Detalhar as especificações  Identificar e projetar os componentes  Construir cada componente  Testar cada componente  Integrar os componentes  Fazer as modificações finais  Manutenção contínua  O software  Análise e definição dos requisitos  Projeto do sistema  Projeto do programa  Escrever os programas  Testes das unidades  Teste de integração  Teste do sistema  Entrega do sistema  Manutenção
  • 20. Os papéis na equipe de desenvolvimento