Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

<p>Métodos, modelos e técnicas em Engenharia de Software – Sumário Aula 1</p><p>Software;</p><p>Características do SW;</p><p>Aplicações do SW;</p><p>Evolução do SW;</p><p>Crise do SW;</p><p>Mitos do SW;</p><p>Definição de Engenharia de SW;</p><p>Elementos Fundamentais da SW;</p><p>Processos de SW;</p><p>Elementos básicos do Processo de Software;</p><p>Software</p><p>1- Instruções: 	quando executadas produzem a função e o desempenho desejados</p><p>2 - Estruturas de Dados: possibilitam que os programas manipulem adequadamente a informação</p><p>3 – Documentos: descrevem a operação e o uso dos programas</p><p>2</p><p>Características do Software</p><p>1. desenvolvido ou projetado por engenharia, não manufaturado no sentido clássico</p><p>2. não se desgasta mas se deteriora</p><p>3. a maioria é feita sob medida em vez de ser montada a partir de componentes existentes</p><p>3</p><p>3</p><p>Curva de falhas para o Hardware</p><p>tempo</p><p>“desgaste”</p><p>“mortalidade infantil”</p><p>índice de falhas</p><p>Curva de falhas do Software</p><p>índice de falhas</p><p>mudança</p><p>curva real</p><p>curva idealizada</p><p>tempo</p><p>5</p><p>Aplicações do Software</p><p>6</p><p>Crise de Software</p><p>Refere-se a um conjunto de problemas encontrados no desenvolvimento de software:</p><p>(1) As estimativas de prazo e de custo freqüentemente são imprecisas</p><p>“Não dedicamos tempo para coletar dados sobre o processo de desenvolvimento de software”</p><p>“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”</p><p>7</p><p>7</p><p>Crise de Software</p><p>(2) A produtividade das pessoas da área de software não tem acompanhado a demanda por seus serviços</p><p>“Os projetos de desenvolvimento de software normalmente são efetuados apenas com um vago indício das exigências do cliente”</p><p>8</p><p>8</p><p>Crise de Software</p><p>(3) A qualidade de software às vezes é menos que adequada</p><p>Só recentemente começam a surgir conceitos quantitativos sólidos de garantia de qualidade de software</p><p>(4) O software existente é muito difícil de manter</p><p>A tarefa de manutenção devora o orçamento destinado ao software</p><p>A facilidade de manutenção não foi enfatizada como um critério importante</p><p>9</p><p>9</p><p>Crise de Software</p><p>estimativas de prazo e de custo </p><p>produtividade das pessoas </p><p>qualidade de software </p><p>software difícil de manter </p><p>10</p><p>Preocupação: Sistematizar o processo de</p><p>criação e manutenção de software.</p><p>Engenharia de Software</p><p>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.</p><p>Engenharia de Software</p><p>Definições</p><p>12</p><p>IEEE Standard Glossary of Software Engineering terminology: Engenharia de software é uma abordagem sistemática para o desenvolvimento, operação, manutenção de software</p><p>Software: programas de computador, procedimentos, regras, documentação possivelmente associada, e dados sobre sua operação.</p><p>Engenharia de Software</p><p>Definições</p><p>13</p><p>abrange um conjunto de três elementos fundamentais:</p><p>Métodos, Ferramentas e Procedimentos</p><p>Principais metas: melhorar a qualidade de produtos de software, aumentar a produtividade do pessoal técnico e aumentar a satisfação do cliente.</p><p>Engenharia de Software</p><p>14</p><p>Métodos: proporcionam os detalhes de como fazer para construir o software</p><p>Elementos fundamentais da Engenharia de Software</p><p>Ementa</p><p>Ferramentas: dão suporte automatizado</p><p>aos métodos.</p><p>existem atualmente ferramentas para sustentar cada um dos métodos</p><p>quando as ferramentas são integradas é estabelecido um sistema de suporte ao desenvolvimento de software chamado CASE - Computer Aided Software Engineering</p><p>Engenharia de Software</p><p>Ementa</p><p>Procedimentos: constituem o elo de</p><p>ligação entre os métodos e ferramentas</p><p>seqüência em que os métodos serão aplicados</p><p>produtos que se exige que sejam entregues</p><p>controles que ajudam assegurar a qualidade e coordenar as alterações</p><p>marcos de referência que possibilitam administrar o progresso do software.</p><p>Engenharia de Software</p><p>conjunto de etapas que envolve</p><p>métodos</p><p>ferramentas</p><p>procedimentos</p><p>Essas etapas são conhecidas como componentes de CICLO DE VIDA DE SOFTWARE</p><p>ou Processo de Software</p><p>Engenharia de Software</p><p>18</p><p>Segundo Sommerville “.. Um processo de software é</p><p>um conjunto de atividades e resultados associados</p><p>que levam á produção de um produto de software”.</p><p>Embora existam muitos processos de software</p><p>diferentes, há atividades fundamentais comuns a</p><p>todos eles, são elas:</p><p>Processos de Software</p><p>19</p><p>Planejamento e estimativa de projeto</p><p>Análise de requisitos de software e de sistemas</p><p>Projeto da estrutura de dados</p><p>Algoritmo de processamento</p><p>Codificação</p><p>Teste</p><p>Manutenção</p><p>Etapas principais do Processo de Software</p><p>20</p><p>Levantamento de Dados;</p><p>Análise de Requisitos;</p><p>Implementação;</p><p>Testes;</p><p>Implantação;</p><p>Manutenção.</p><p>Elementos básicos do Processos de Software</p><p>Obter com o maior nível de detalhes toda a necessidade do cliente para o desenvolvimento do sistema.</p><p>Isso pode ser dar de diversas formas:</p><p>Questionários;</p><p>Entrevistas;</p><p>Reuniões, etc</p><p>Processo de Software – Levantamento de Dados</p><p>22</p><p>Nada mais é do que após toda informação coletada na fase anterior será feita uma análise pela equipe de Analistas para ser definido o que é importante e tem que ser aproveitado e o que pode ser descartado.</p><p>Processo de Software – Análise de Requisitos</p><p>23</p><p>Nesta fase, é empregado toda a parte de análise estruturada, sendo utilizado três ferramentas importantes que são:</p><p>Diagrama de fluxo de dados;</p><p>Dicionário de dados;</p><p>Prototipação.</p><p>Processo de Software – Projeto</p><p>24</p><p>Os desenvolvedores receberão todo material desenvolvido na fase anterior e irão transferir toda a lógica e toda a diagramação para linha de código, aplicando a linguagem adequada para o desenvolvimento real do sistema.</p><p>Pode-se fazer novas solicitações do usuário de última hora para o sistema.</p><p>Processo de Software – Implementação</p><p>25</p><p>Após todo o desenvolvimento realizado é chegada a hora do teste, onde será testado todo os módulos que compõe o sistema.</p><p>Passaremos tela a tela testando as funcionalidades e colhendo os resultados apresentados, caso ocorra falhas as mesmas serão corrigidas imediatamente.</p><p>Processo de Software – Testes</p><p>26</p><p>Com o sistema pronto para utilização do cliente, temos antes da “entrega do software”, de treiná-lo, instalar o sistema no ambiente do cliente e acompanhar a utilização do novo software por um tempo até que o cliente consiga conduzir os trabalhos sozinhos.</p><p>Processo de Software – Implantação</p><p>27</p><p>Todos os defeitos encontrados no software durante a utilização do software pelo cliente, será reportado á Analistas de Suporte (Help Desks), que analisaram e testarão o problema, e caso o defeito seja detectado, encaminharão para a equipe de desenvolvimento para acerto e posterior liberação da rotina em funcionamento para o cliente.</p><p>Processo de Software - Manutenção</p><p>28</p><p>FIM</p><p>29</p><p>Até a próxima aula!!!</p><p>image20.png</p><p>image21.png</p><p>image22.svg</p><p>image9.png</p><p>audio1.wav</p><p>image15.png</p><p>image13.png</p><p>image14.svg</p><p>.MsftOfcThm_Background1_lumMod_85_Fill {</p><p>fill:#D9D9D9;</p><p>}</p><p>oleObject1.bin</p><p>BÁSICO</p><p>programas de apoio a outros programas</p><p>DE TEMPO REAL</p><p>monitora, analisa e controla eventos do mundo real</p><p>COMERCIAL</p><p>operações comerciais e tomadas de decisões administrativas</p><p>CIENTÍFICO E DE ENGENHARIA</p><p>algoritmos de processamento de números</p><p>EMBUTIDO</p><p>controla produtos e sistemas de mercados industriais e de consumo</p><p>DE COMPUTADOR PESSOAL</p><p>processamento de textos, planilhas eletrônicas, diversões, etc.</p><p>DE INTELIGÊNCIA ARTIFICIAL</p><p>algoritmos não numéricos para resolver problemas que não sejam favoráveis à computação ou à análise direta</p><p>image24.wmf</p><p>B</p><p>B</p><p>Á</p><p>Á</p><p>S</p><p>S</p><p>I</p><p>I</p><p>C</p><p>C</p><p>O</p><p>O</p><p>programas de apoio a outros programas</p><p>D</p><p>D</p><p>E</p><p>E</p><p>T</p><p>T</p><p>E</p><p>E</p><p>M</p><p>M</p><p>P</p><p>P</p><p>O</p><p>O</p><p>R</p><p>R</p><p>E</p><p>E</p><p>A</p><p>A</p><p>L</p><p>L</p><p>monitora, analisa e controla eventos do</p><p>mundo real</p><p>C</p><p>C</p><p>O</p><p>O</p><p>M</p><p>M</p><p>E</p><p>E</p><p>R</p><p>R</p><p>C</p><p>C</p><p>I</p><p>I</p><p>A</p><p>A</p><p>L</p><p>L</p><p>operações comerciais e tomadas de</p><p>decisões administrativas</p><p>C</p><p>C</p><p>I</p><p>I</p><p>E</p><p>E</p><p>N</p><p>N</p><p>T</p><p>T</p><p>Í</p><p>Í</p><p>F</p><p>F</p><p>I</p><p>I</p><p>C</p><p>C</p><p>O</p><p>O</p><p>E</p><p>E</p><p>D</p><p>D</p><p>E</p><p>E</p><p>E</p><p>E</p><p>N</p><p>N</p><p>G</p><p>G</p><p>E</p><p>E</p><p>N</p><p>N</p><p>H</p><p>H</p><p>A</p><p>A</p><p>R</p><p>R</p><p>I</p><p>I</p><p>A</p><p>A</p><p>algoritmos de processamento de números</p><p>E</p><p>E</p><p>M</p><p>M</p><p>B</p><p>B</p><p>U</p><p>U</p><p>T</p><p>T</p><p>I</p><p>I</p><p>D</p><p>D</p><p>O</p><p>O</p><p>controla produtos e sistemas de mercados</p><p>industriais e de consumo</p><p>D</p><p>D</p><p>E</p><p>E</p><p>C</p><p>C</p><p>O</p><p>O</p><p>M</p><p>M</p><p>P</p><p>P</p><p>U</p><p>U</p><p>T</p><p>T</p><p>A</p><p>A</p><p>D</p><p>D</p><p>O</p><p>O</p><p>R</p><p>R</p><p>P</p><p>P</p><p>E</p><p>E</p><p>S</p><p>S</p><p>S</p><p>S</p><p>O</p><p>O</p><p>A</p><p>A</p><p>L</p><p>L</p><p>processamento de textos, planilhas</p><p>eletrônicas, diversões, etc.</p><p>D</p><p>D</p><p>E</p><p>E</p><p>I</p><p>I</p><p>N</p><p>N</p><p>T</p><p>T</p><p>E</p><p>E</p><p>L</p><p>L</p><p>I</p><p>I</p><p>G</p><p>G</p><p>Ê</p><p>Ê</p><p>N</p><p>N</p><p>C</p><p>C</p><p>I</p><p>I</p><p>A</p><p>A</p><p>A</p><p>A</p><p>R</p><p>R</p><p>T</p><p>T</p><p>I</p><p>I</p><p>F</p><p>F</p><p>I</p><p>I</p><p>C</p><p>C</p><p>I</p><p>I</p><p>A</p><p>A</p><p>L</p><p>L</p><p>algoritmos não numéricos para resolver</p><p>problemas que não sejam favoráveis à</p><p>computação ou à análise direta</p><p>image25.wmf</p><p>image11.jpeg</p><p>image26.wmf</p><p>image27.wmf</p><p>image28.wmf</p><p>image29.wmf</p><p>image30.wmf</p><p>image31.png</p><p>image32.png</p><p>image10.png</p><p>image33.png</p>

Mais conteúdos dessa disciplina