SlideShare ist ein Scribd-Unternehmen logo
1 von 19
   Muita gente associa o termo software aos programas de computador. Na verdade,
    essa é uma visão muito restritiva. Software não é apenas o programa, mas também
    toda a documentação associada e os dados de configuração necessários para fazer
    com que esses programas operem corretamente.

   Produtos genéricos: São sistema produzidos por uma organização de
    desenvolvimento e vendidos no mercado a qualquer cliente capaz de adquiri-los.
    exemplos desse tipo de produto estão a base de dados, os processadores de texto, os
    pacotes de desenho.

   Produtos sob encomenda: São os sistemas encomendados por um cliente em
    particular. O software é desenvolvido especialmente para aquele cliente por uma
    empresa de software. Exemplo: sistema de controle de tráfego aéreo
Engenharia de Software

   A engenharia de software foi desenvolvida em resposta a
    problemas de construção de sistemas, software de grande
    porte e personalizada, destinados a aplicações industriais,
    governamentais e para o setor de defesa. Atualmente,
    desenvolvemos uma variedade muito maior de produtos
    de software, desde jogos para consoles especializados,
    passando por produtos para PCs e sistemas baseados na
    Web, até chegar aos sistemas distribuídos em grande
    escala. Embora algumas técnicas apropriadas para os
    sistemas personalizados.
Modelo de processo

   Um modelo de processo de software é uma descrição
    simplificada de um processo de software, que é
    apresentada a partir de uma nova perspectiva. Os modelos,
    pela sua natureza são simplificação; e, assim, um modelo
    de processo de software é uma abstração do processo real
    que esta sendo descrito. Dentre os modelos de processo
    destacam-se atividades que são parte do processo de
    software, produto de software e o papel das pessoas
    envolvidas na engenharia de software.
O que é Case?

 CASE  significa Computer-Aided Software
 Enginneering (engenharia de software com o
 auxilio de computador). São vários programas
 diferentes utilizados para apoiar as atividades de
 processo de software, como análise de requisitos,
 a modelagem de sistema, a depuração e os testes.
Atributos de um bom software

   Eles refletem seu comportamento quanto ao funcionamento, estrutura,
    organização do programa fonte e também a documentação associada.
    Exemplos desses atributos (às vezes, chamados de atributos não
    funcionais) são o tempo de respostas do software à consulta de um
    usuário e a facilidade de compreensão do código do programa.
   Um sistema bancário tem de ser seguro, um jogo interativo deve ter
    uma resposta rápida, um sistema de controle de telefonia precisa ser
    confiável e assim por diante.
   Cada vez mais se exige que os sistemas operem como sistemas
    distribuídos por meio de redes que possuem diferentes tipos de
    computadores e diferentes tipos de sistemas de apoio.
Métricas

   Medidas são necessárias para analisar qualidade e produtividade do processo de
    desenvolvimento e manutenção, bem como do produto de software construído. Medidas
    técnicas são necessárias para qualificar a performance técnica dos produtos do ponto de
    vista do desenvolvedor. Por outro lado, medidas funcionais são necessárias para
    qualificar a performance dos produtos pela perspectiva do usuário.
   As Métricas de Software, do ponto de vista de medição, podem ser divididas em duas
    categorias: medidas diretas e indiretas.
   Medidas diretas;
   Mediadas indiretas.
   Ponto de vista de apricação:
      •  Métricas de produtividade;
      •  Métricas de qualidade.
   Métricas orientadas ao tamanho;
   Métricas orientadas à função.
Riscos

   Riscos é a execução de atividades que viabilizem a
    identificação prévia e o tratamento de potenciais
    problemas. Na literatura são apresentadas diversas
    propostas de modelos e processos para incorporar a
    gerência de riscos ao processo de desenvolvimento de
    software. Uma questão que se coloca é como analisar
    se a incorporação da gerência de riscos no processo
    de desenvolvimento está sendo efetiva.
Qualidade
   Qualidade de software é um conjunto de propriedades a serem
    satisfeitas, em determinado grau, de modo que o software
    satisfaça as necessidades do usuário, e para isso acontecer é
    necessário que o gerente de projeto tenha, de forma clara e
    definida, o objetivo daquele projeto de desenvolvimento.
   O gerenciamento da qualidade do projeto inclui os processos
    necessários para assegurar que o projeto satisfaça as
    necessidades para as quais foi criado. Os processos principais
    do gerenciamento da qualidade são:
   Planejamento da qualidade (identificar);
   Garantia da qualidade (avaliar o desempenho);
   Controle de qualidade (controlar os resultados).
Princípios da Gestão da Qualidade

 Foco no Cliente;
 Liderança;
 Envolvimento da equipe;
 Prevenção ao invés de inspeção;
 Prevenir riscos ainda na fase de
  planejamento.
Requisitos
   A gerência de projeto do software não é sempre tão fácil como
    parece. As técnicas de gerência tradicionais de projeto são
    incapazes de adaptar-se muito bem às mudanças e aos novos
    riscos. Isto faz com as equipes tenham cada vez mais
    dificuldades para reagirem rapidamente às mudanças
    intrínsecas ao processo de desenvolvimento de software.
    Entretanto, as novas técnicas com métodos ágeis podem
    tornar mais fácil a vida de gerentes de projeto e equipes desde
    que executadas corretamente. Uma equipe qualificada e
    comprometida conseguirá entregar softwares melhores e mais
    baratos mais rapidamente.
Escopo
   Gerenciamento do Escopo do Projeto incluem a definição do trabalho
    necessário para concluir o projeto, servir como guia (ou ponto de
    referência) para determinar que trabalho não está incluído (ou não é
    necessário) no projeto.
   O escopo é o “foco” do projeto. O escopo do projeto difere-se do
    escopo do produto na medida em que o escopo do projeto define o
    trabalho necessário para fazer o produto, e o escopo do produto
    define os recursos (atributos e comportamentos) do produto que está
    sendo criado.
   Início do projeto ;
   Planejamento do escopo do projeto;
   Processos do Gerenciamento do escopo do projeto;
   Controle de mudanças do escopo do projeto;
   Verificação do escopo do projeto.
Prazos
   O objetivo da gerência do tempo de projeto é descrever os
    processos requeridos para o término do projeto, garantindo que o
    mesmo cumpra com os prazos definidos em um cronograma de
    atividades.
   Definições das Atividades;
   Seqüenciar Atividades;
   Estimativa de Recursos de Atividade;
   Estimativa de Duração de Atividade;
   Desenvolvimento do Cronograma;
   Controle do Cronograma.

   A gerência do tempo de projeto e a gerência do custo do projeto
    são as áreas de maior exigência dentro de um projeto.
Cronograma
   O cronograma é importantíssimo no desenvolvimento de software. É a única
    forma de estabelecer uma data final para a entrega do produto. A data de
    entrega deve ser informada pelo desenvolvimento ao resto da empresa.




 Regras       e Dicas sobre Cronogramas.
Diagramas

   O DFD ou Diagrama de Fluxos de Dados é uma
    ferramenta para a modelagem de sistemas. Ela
    fornece apenas uma visão do sistema, a visão
    orientada a funções, ou seja, o fluxo dos dados.
   Um DFD é uma ferramenta de modelagem que nos
    permite imaginar um sistema como uma rede de
    processos funcionais, interligados por “dutos” e
    “tanques de armazenamento de dados .
Entidades Externas
Processos
Fluxo de Dados
Depósito de Dados
Testes

   O teste do software é um processo que permeia outros
    processos da Engenharia de Software, e envolve ações que
    vão do levantamento de requisitos (necessidades) até a
    execução do teste propriamente dito. O objetivo, por mais
    paradoxal que pareça, é encontrar defeitos nos produtos,
    para que estes possam ser corrigidos pela equipe de
    programadores, antes da entrega final. A maioria das
    pessoas pensa que o teste de software serve para
    demonstrar o correto funcionamento de um programa,
    quando na verdade ele é utilizado como um processo da
    engenharia de software para encontrar defeitos.
Bibliografia

   Engenharia de Software - Roger S. Pressman - Ed.
    Makron Books.
   Engenharia de Software - Ian Sommerville - Ed. Pearson.
   Sites diversos referenciados pelo Google.

Weitere ähnliche Inhalte

Was ist angesagt?

Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...Marcelo Schumacher
 
Introdução a engenharia de software aula 02
Introdução a engenharia de software   aula 02Introdução a engenharia de software   aula 02
Introdução a engenharia de software aula 02Franklin Matos Correia
 
Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...
Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...
Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...Maicon Zerbielli
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de softwareJoao Johanes
 
Engenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEngenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEduardo Castro
 
Engenharia de software i 3 - processos de engenharia de requisitos
Engenharia de software i   3 - processos de engenharia de requisitosEngenharia de software i   3 - processos de engenharia de requisitos
Engenharia de software i 3 - processos de engenharia de requisitosWillian Moreira Figueiredo de Souza
 
Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução Elaine Cecília Gatto
 
Ap i unidade 3 - levantamento de requisitos
Ap i   unidade 3 - levantamento de requisitosAp i   unidade 3 - levantamento de requisitos
Ap i unidade 3 - levantamento de requisitosGlauber Aquino
 
Princípios Fundamentais da Análise de Requisitos
Princípios Fundamentais da Análise de RequisitosPrincípios Fundamentais da Análise de Requisitos
Princípios Fundamentais da Análise de Requisitoselliando dias
 
Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Luís Fernando Richter
 
Analise de Requisitos
Analise de RequisitosAnalise de Requisitos
Analise de Requisitoselliando dias
 

Was ist angesagt? (20)

Rastreabilidade de Requisitos
Rastreabilidade de RequisitosRastreabilidade de Requisitos
Rastreabilidade de Requisitos
 
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
Gerenciamento de Requisitos como Alternativa de Otimização na Manutenção de S...
 
Qualidade de software
Qualidade de softwareQualidade de software
Qualidade de software
 
Gerência de Requisitos
Gerência de RequisitosGerência de Requisitos
Gerência de Requisitos
 
Introdução a engenharia de software aula 02
Introdução a engenharia de software   aula 02Introdução a engenharia de software   aula 02
Introdução a engenharia de software aula 02
 
Aula1 introducao engsw
Aula1 introducao engswAula1 introducao engsw
Aula1 introducao engsw
 
Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...
Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...
Desenvolvimento de um microprocesso utilizando métricas e indicadores como a...
 
Aula4 levantamento requisitos
Aula4 levantamento requisitosAula4 levantamento requisitos
Aula4 levantamento requisitos
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
152191 11993
152191 11993152191 11993
152191 11993
 
Documento de requisitos
Documento de requisitosDocumento de requisitos
Documento de requisitos
 
Aula3 engenharia requisitos
Aula3 engenharia requisitosAula3 engenharia requisitos
Aula3 engenharia requisitos
 
Engenharia Requisitos - Método RON
Engenharia Requisitos - Método RONEngenharia Requisitos - Método RON
Engenharia Requisitos - Método RON
 
Engenharia de software i 3 - processos de engenharia de requisitos
Engenharia de software i   3 - processos de engenharia de requisitosEngenharia de software i   3 - processos de engenharia de requisitos
Engenharia de software i 3 - processos de engenharia de requisitos
 
Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução
 
Ap i unidade 3 - levantamento de requisitos
Ap i   unidade 3 - levantamento de requisitosAp i   unidade 3 - levantamento de requisitos
Ap i unidade 3 - levantamento de requisitos
 
Jucelir
JucelirJucelir
Jucelir
 
Princípios Fundamentais da Análise de Requisitos
Princípios Fundamentais da Análise de RequisitosPrincípios Fundamentais da Análise de Requisitos
Princípios Fundamentais da Análise de Requisitos
 
Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006
 
Analise de Requisitos
Analise de RequisitosAnalise de Requisitos
Analise de Requisitos
 

Andere mochten auch

Apresentação lubrificantes
Apresentação lubrificantesApresentação lubrificantes
Apresentação lubrificantesWillian Mello
 
Curso automação industrial clp senai - aula12
Curso automação industrial   clp senai - aula12Curso automação industrial   clp senai - aula12
Curso automação industrial clp senai - aula12miroslayer
 
Clp completa
Clp completaClp completa
Clp completapanelada
 
Curso clp siemens
Curso clp siemensCurso clp siemens
Curso clp siemensSENAI SP
 
Entradas E Saídas Digitais AnalóGicas
Entradas E Saídas Digitais AnalóGicasEntradas E Saídas Digitais AnalóGicas
Entradas E Saídas Digitais AnalóGicasJÚLIO PEIXOTO
 
Clp – controlador lógico programável
Clp – controlador lógico programávelClp – controlador lógico programável
Clp – controlador lógico programávelVictor Said
 
Treinamento Lubrificacao Basica E Rolamentos 2005 Modul
Treinamento  Lubrificacao  Basica E  Rolamentos   2005    ModulTreinamento  Lubrificacao  Basica E  Rolamentos   2005    Modul
Treinamento Lubrificacao Basica E Rolamentos 2005 Modul123marcao123
 
Apostila clp - blocos funcionais
Apostila   clp - blocos funcionaisApostila   clp - blocos funcionais
Apostila clp - blocos funcionaisRobisonpardim
 
Fundamentos da Lubrificação
Fundamentos da LubrificaçãoFundamentos da Lubrificação
Fundamentos da LubrificaçãoAthamir
 
Slides lubrificação
Slides lubrificaçãoSlides lubrificação
Slides lubrificaçãocris78ba
 
Linguagens De ProgramaçãO Clp
Linguagens De ProgramaçãO ClpLinguagens De ProgramaçãO Clp
Linguagens De ProgramaçãO ClpJÚLIO PEIXOTO
 
Microcontroladores x microprocessadores
Microcontroladores x microprocessadoresMicrocontroladores x microprocessadores
Microcontroladores x microprocessadoresmiroslayer
 

Andere mochten auch (16)

Apostila automacao-senai-pe
Apostila automacao-senai-peApostila automacao-senai-pe
Apostila automacao-senai-pe
 
Lubrificação industrial
Lubrificação industrialLubrificação industrial
Lubrificação industrial
 
Apresentação lubrificantes
Apresentação lubrificantesApresentação lubrificantes
Apresentação lubrificantes
 
Curso automação industrial clp senai - aula12
Curso automação industrial   clp senai - aula12Curso automação industrial   clp senai - aula12
Curso automação industrial clp senai - aula12
 
Clp Conceito
Clp ConceitoClp Conceito
Clp Conceito
 
Clp completa
Clp completaClp completa
Clp completa
 
Linguagens clp
Linguagens clpLinguagens clp
Linguagens clp
 
Curso clp siemens
Curso clp siemensCurso clp siemens
Curso clp siemens
 
Entradas E Saídas Digitais AnalóGicas
Entradas E Saídas Digitais AnalóGicasEntradas E Saídas Digitais AnalóGicas
Entradas E Saídas Digitais AnalóGicas
 
Clp – controlador lógico programável
Clp – controlador lógico programávelClp – controlador lógico programável
Clp – controlador lógico programável
 
Treinamento Lubrificacao Basica E Rolamentos 2005 Modul
Treinamento  Lubrificacao  Basica E  Rolamentos   2005    ModulTreinamento  Lubrificacao  Basica E  Rolamentos   2005    Modul
Treinamento Lubrificacao Basica E Rolamentos 2005 Modul
 
Apostila clp - blocos funcionais
Apostila   clp - blocos funcionaisApostila   clp - blocos funcionais
Apostila clp - blocos funcionais
 
Fundamentos da Lubrificação
Fundamentos da LubrificaçãoFundamentos da Lubrificação
Fundamentos da Lubrificação
 
Slides lubrificação
Slides lubrificaçãoSlides lubrificação
Slides lubrificação
 
Linguagens De ProgramaçãO Clp
Linguagens De ProgramaçãO ClpLinguagens De ProgramaçãO Clp
Linguagens De ProgramaçãO Clp
 
Microcontroladores x microprocessadores
Microcontroladores x microprocessadoresMicrocontroladores x microprocessadores
Microcontroladores x microprocessadores
 

Ähnlich wie Engenharia de Software: Processos, Métricas, Qualidade e Testes

Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de SoftwareNécio de Lima Veras
 
Erika questionario pt 1 (Eng Software III).
Erika questionario pt 1 (Eng Software III).Erika questionario pt 1 (Eng Software III).
Erika questionario pt 1 (Eng Software III).Érika Santos
 
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
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De SoftwareFelipe Goulart
 
02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentaisWaldemar Roberti
 
Áreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareÁreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareElaine Cecília Gatto
 
Engenharia de Software Pressman
Engenharia de Software PressmanEngenharia de Software Pressman
Engenharia de Software PressmanSimoneinfo
 
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
 
Este trabalho trata
Este trabalho trataEste trabalho trata
Este trabalho trataRoni Reis
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - WikipediaRobson Silva Espig
 
Introdução Qualidade de Software
Introdução Qualidade de SoftwareIntrodução Qualidade de Software
Introdução Qualidade de SoftwareWellington Oliveira
 
PDSI.INT- S01 Introdução a Eng Software e Processo.pdf
PDSI.INT- S01 Introdução a Eng Software e Processo.pdfPDSI.INT- S01 Introdução a Eng Software e Processo.pdf
PDSI.INT- S01 Introdução a Eng Software e Processo.pdfpedrina4
 
Aula 1 Analise e Projeto
Aula 1   Analise e ProjetoAula 1   Analise e Projeto
Aula 1 Analise e ProjetoSergio Silva
 
Mineração de Dados Aplicada em Engenharia de Software
Mineração de Dados Aplicada em Engenharia de SoftwareMineração de Dados Aplicada em Engenharia de Software
Mineração de Dados Aplicada em Engenharia de SoftwareBruno Alisson
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaLucasBastos305659
 

Ähnlich wie Engenharia de Software: Processos, Métricas, Qualidade e Testes (20)

Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Rational Unified Process (RUP)
Rational Unified Process (RUP)Rational Unified Process (RUP)
Rational Unified Process (RUP)
 
Erika questionario pt 1 (Eng Software III).
Erika questionario pt 1 (Eng Software III).Erika questionario pt 1 (Eng Software III).
Erika questionario pt 1 (Eng Software III).
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de Software
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais
 
Áreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareÁreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de Software
 
Engenharia de Software Pressman
Engenharia de Software PressmanEngenharia de Software Pressman
Engenharia de Software Pressman
 
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
 
Este trabalho trata
Este trabalho trataEste trabalho trata
Este trabalho trata
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - Wikipedia
 
Engenharia de software
Engenharia de software Engenharia de software
Engenharia de software
 
Introdução Qualidade de Software
Introdução Qualidade de SoftwareIntrodução Qualidade de Software
Introdução Qualidade de Software
 
Sld 3
Sld 3Sld 3
Sld 3
 
PDSI.INT- S01 Introdução a Eng Software e Processo.pdf
PDSI.INT- S01 Introdução a Eng Software e Processo.pdfPDSI.INT- S01 Introdução a Eng Software e Processo.pdf
PDSI.INT- S01 Introdução a Eng Software e Processo.pdf
 
Aula 1 Analise e Projeto
Aula 1   Analise e ProjetoAula 1   Analise e Projeto
Aula 1 Analise e Projeto
 
Aula 1 analise e projeto
Aula 1   analise e projetoAula 1   analise e projeto
Aula 1 analise e projeto
 
Aula4
Aula4Aula4
Aula4
 
Mineração de Dados Aplicada em Engenharia de Software
Mineração de Dados Aplicada em Engenharia de SoftwareMineração de Dados Aplicada em Engenharia de Software
Mineração de Dados Aplicada em Engenharia de Software
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software Moderna
 

Engenharia de Software: Processos, Métricas, Qualidade e Testes

  • 1.
  • 2. Muita gente associa o termo software aos programas de computador. Na verdade, essa é uma visão muito restritiva. Software não é apenas o programa, mas também toda a documentação associada e os dados de configuração necessários para fazer com que esses programas operem corretamente.  Produtos genéricos: São sistema produzidos por uma organização de desenvolvimento e vendidos no mercado a qualquer cliente capaz de adquiri-los. exemplos desse tipo de produto estão a base de dados, os processadores de texto, os pacotes de desenho.  Produtos sob encomenda: São os sistemas encomendados por um cliente em particular. O software é desenvolvido especialmente para aquele cliente por uma empresa de software. Exemplo: sistema de controle de tráfego aéreo
  • 3. Engenharia de Software  A engenharia de software foi desenvolvida em resposta a problemas de construção de sistemas, software de grande porte e personalizada, destinados a aplicações industriais, governamentais e para o setor de defesa. Atualmente, desenvolvemos uma variedade muito maior de produtos de software, desde jogos para consoles especializados, passando por produtos para PCs e sistemas baseados na Web, até chegar aos sistemas distribuídos em grande escala. Embora algumas técnicas apropriadas para os sistemas personalizados.
  • 4. Modelo de processo  Um modelo de processo de software é uma descrição simplificada de um processo de software, que é apresentada a partir de uma nova perspectiva. Os modelos, pela sua natureza são simplificação; e, assim, um modelo de processo de software é uma abstração do processo real que esta sendo descrito. Dentre os modelos de processo destacam-se atividades que são parte do processo de software, produto de software e o papel das pessoas envolvidas na engenharia de software.
  • 5. O que é Case?  CASE significa Computer-Aided Software Enginneering (engenharia de software com o auxilio de computador). São vários programas diferentes utilizados para apoiar as atividades de processo de software, como análise de requisitos, a modelagem de sistema, a depuração e os testes.
  • 6. Atributos de um bom software  Eles refletem seu comportamento quanto ao funcionamento, estrutura, organização do programa fonte e também a documentação associada. Exemplos desses atributos (às vezes, chamados de atributos não funcionais) são o tempo de respostas do software à consulta de um usuário e a facilidade de compreensão do código do programa.  Um sistema bancário tem de ser seguro, um jogo interativo deve ter uma resposta rápida, um sistema de controle de telefonia precisa ser confiável e assim por diante.  Cada vez mais se exige que os sistemas operem como sistemas distribuídos por meio de redes que possuem diferentes tipos de computadores e diferentes tipos de sistemas de apoio.
  • 7.
  • 8. Métricas  Medidas são necessárias para analisar qualidade e produtividade do processo de desenvolvimento e manutenção, bem como do produto de software construído. Medidas técnicas são necessárias para qualificar a performance técnica dos produtos do ponto de vista do desenvolvedor. Por outro lado, medidas funcionais são necessárias para qualificar a performance dos produtos pela perspectiva do usuário.  As Métricas de Software, do ponto de vista de medição, podem ser divididas em duas categorias: medidas diretas e indiretas.  Medidas diretas;  Mediadas indiretas.  Ponto de vista de apricação: • Métricas de produtividade; • Métricas de qualidade.  Métricas orientadas ao tamanho;  Métricas orientadas à função.
  • 9. Riscos  Riscos é a execução de atividades que viabilizem a identificação prévia e o tratamento de potenciais problemas. Na literatura são apresentadas diversas propostas de modelos e processos para incorporar a gerência de riscos ao processo de desenvolvimento de software. Uma questão que se coloca é como analisar se a incorporação da gerência de riscos no processo de desenvolvimento está sendo efetiva.
  • 10. Qualidade  Qualidade de software é um conjunto de propriedades a serem satisfeitas, em determinado grau, de modo que o software satisfaça as necessidades do usuário, e para isso acontecer é necessário que o gerente de projeto tenha, de forma clara e definida, o objetivo daquele projeto de desenvolvimento.  O gerenciamento da qualidade do projeto inclui os processos necessários para assegurar que o projeto satisfaça as necessidades para as quais foi criado. Os processos principais do gerenciamento da qualidade são:  Planejamento da qualidade (identificar);  Garantia da qualidade (avaliar o desempenho);  Controle de qualidade (controlar os resultados).
  • 11. Princípios da Gestão da Qualidade  Foco no Cliente;  Liderança;  Envolvimento da equipe;  Prevenção ao invés de inspeção;  Prevenir riscos ainda na fase de planejamento.
  • 12. Requisitos  A gerência de projeto do software não é sempre tão fácil como parece. As técnicas de gerência tradicionais de projeto são incapazes de adaptar-se muito bem às mudanças e aos novos riscos. Isto faz com as equipes tenham cada vez mais dificuldades para reagirem rapidamente às mudanças intrínsecas ao processo de desenvolvimento de software. Entretanto, as novas técnicas com métodos ágeis podem tornar mais fácil a vida de gerentes de projeto e equipes desde que executadas corretamente. Uma equipe qualificada e comprometida conseguirá entregar softwares melhores e mais baratos mais rapidamente.
  • 13. Escopo  Gerenciamento do Escopo do Projeto incluem a definição do trabalho necessário para concluir o projeto, servir como guia (ou ponto de referência) para determinar que trabalho não está incluído (ou não é necessário) no projeto.  O escopo é o “foco” do projeto. O escopo do projeto difere-se do escopo do produto na medida em que o escopo do projeto define o trabalho necessário para fazer o produto, e o escopo do produto define os recursos (atributos e comportamentos) do produto que está sendo criado.  Início do projeto ;  Planejamento do escopo do projeto;  Processos do Gerenciamento do escopo do projeto;  Controle de mudanças do escopo do projeto;  Verificação do escopo do projeto.
  • 14. Prazos  O objetivo da gerência do tempo de projeto é descrever os processos requeridos para o término do projeto, garantindo que o mesmo cumpra com os prazos definidos em um cronograma de atividades.  Definições das Atividades;  Seqüenciar Atividades;  Estimativa de Recursos de Atividade;  Estimativa de Duração de Atividade;  Desenvolvimento do Cronograma;  Controle do Cronograma.  A gerência do tempo de projeto e a gerência do custo do projeto são as áreas de maior exigência dentro de um projeto.
  • 15. Cronograma  O cronograma é importantíssimo no desenvolvimento de software. É a única forma de estabelecer uma data final para a entrega do produto. A data de entrega deve ser informada pelo desenvolvimento ao resto da empresa.  Regras e Dicas sobre Cronogramas.
  • 16. Diagramas  O DFD ou Diagrama de Fluxos de Dados é uma ferramenta para a modelagem de sistemas. Ela fornece apenas uma visão do sistema, a visão orientada a funções, ou seja, o fluxo dos dados.  Um DFD é uma ferramenta de modelagem que nos permite imaginar um sistema como uma rede de processos funcionais, interligados por “dutos” e “tanques de armazenamento de dados .
  • 17. Entidades Externas Processos Fluxo de Dados Depósito de Dados
  • 18. Testes  O teste do software é um processo que permeia outros processos da Engenharia de Software, e envolve ações que vão do levantamento de requisitos (necessidades) até a execução do teste propriamente dito. O objetivo, por mais paradoxal que pareça, é encontrar defeitos nos produtos, para que estes possam ser corrigidos pela equipe de programadores, antes da entrega final. A maioria das pessoas pensa que o teste de software serve para demonstrar o correto funcionamento de um programa, quando na verdade ele é utilizado como um processo da engenharia de software para encontrar defeitos.
  • 19. Bibliografia  Engenharia de Software - Roger S. Pressman - Ed. Makron Books.  Engenharia de Software - Ian Sommerville - Ed. Pearson.  Sites diversos referenciados pelo Google.