Engenharia de Software introdução

491 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
491
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Engenharia de Software introdução

  1. 1.  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
  2. 2. 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.
  3. 3. 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.
  4. 4. 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.
  5. 5. 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.
  6. 6. 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.
  7. 7. 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.
  8. 8. 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).
  9. 9. 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.
  10. 10. 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.
  11. 11. 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.
  12. 12. 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.
  13. 13. 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.
  14. 14. 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 .
  15. 15. Entidades ExternasProcessosFluxo de DadosDepósito de Dados
  16. 16. 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.
  17. 17. Bibliografia Engenharia de Software - Roger S. Pressman - Ed. Makron Books. Engenharia de Software - Ian Sommerville - Ed. Pearson. Sites diversos referenciados pelo Google.

×