es01

25
Engenharia de Software I Introdução à engenharia de software

Upload: felipe-braga

Post on 01-Oct-2015

227 views

Category:

Documents


7 download

DESCRIPTION

engenharia de software

TRANSCRIPT

  • Engenharia de Software I

    Introduo engenharia de software

  • Objetivo

    Proporcionar ao estudante conceitos fundamentais de se aprofundar em todos os conceitos, mtodos e processo de engenharia de software, incluindo especificao, projeto, desenvolvimento, verificao, validao e gerenciamento de projetos de software

  • Objetivos Especficos

    Compreender o contexto e as caractersticas especficas da atividade de desenvolvimento de software;

    Ser capaz de descrever os mtodos, processos e ferramentas associados rea de Engenharia de Software;

    Conhecer e utilizar tcnicas de trabalho em grupo, especificamente para desenvolvimento de softwares;

    Despertar o interesse para aspectos de gerencia de projetos de software, tais como gesto de riscos e controle de qualidade;

    Saber identificar os princpios da tica profissional do engenheiro de software.

  • Ementa

    Crise do software, conceito objetivo e reas da engenharia de software; Histrico da engenharia de software, ciclo de vida, metodologias, processos e ferramentas de engenharia de software; Noes de gesto de projetos de desenvolvimento de software; Processo de especificao, anlise e documentao de requisitos de software.

  • Contedo Programtico

    Introduo Engenharia de Software

    Principais conceitos relacionados ao software;

    A crise do software: problemas e causas;

    Mitos do software;

    Conceitos em Engenharia de Software.

    Evoluo da Engenharia de Software

    Processos de software

    Modelos de processo de software;

    Iterao de Processo

    Atividades de processo

    O Rational Unified Process

    Maturidade de Processo (CMMI e Mps.Br)

    Gerenciamento de projetos

    Atividades de gerenciamento;

    Planejamento de projeto

    Cronograma do projeto

    Gerenciamento de riscos

    Estimativas de Custos

    Desenvolvimento gil de Software

    Mtodos geis

    Desenvolvimento gil e Dirigido a Planos

    Extreme Programming

    Gerenciamento gil de Processo

    Escalamento de Processos geis

    Requisitos de software

    Classificao de requisitos;

    Especificao de Requisitos

    Processo de Engenharia de Requisitos

    Elicitao e Anlise de Requisitos

    Validao de Requisitos

    Gerenciamento de Requisitos

    Documentao de Requisitos

  • Avaliao

    Avaliao

    1n - nota referente a frequncia e participao

    2n nota referente a trabalhos e atividade das fbricas

    3n nota referente a aplicao de prova

    Clculo

    NotaX = (n1*1 + n2*2 + n3*5)/8

    Mdia = (Nota1 + Nota2)/2

    Prof. Esp. Ccero Samuel Clemente Rodrigues 4

  • Bibliografia

    SOMMERVILLE, Ian. Engenharia de Software. 8 Ed. So Paulo: Pearson, 2007.

    PRESSMAN, Roger S. Engenharia de Software. 6 Ed. So Paulo: McGraw-Hill, 2006.

    PAULA FILHO, Wilson de Pdua. Engenharia de Software: Fundamentos, Mtodos e Padres. Rio de Janeiro: LTC, 2003.

    PFLEEGER, Shari Lawrence. Engenharia de Software: Teoria e Prtica. 2 Ed. So Paulo: Pearson, 2004.

    Prof. Esp. Ccero Samuel Clemente Rodrigues 5

  • Origem...em 1968, especialistas se renem em Garmisch, para discutir problemas

    de desenvolvimento de software

    http://homepages.cs.ncl.ac.uk/brian.randell/NATO/index.html

    4

    Origemem 1968, especialistas se renem em Garmisch, para discutir problemas de desenvolvimento de software

  • Problemas da poca

    Produtos de Software

    de baixa qualidade

    sem atender requisitos esperados

    Projetos realizados acima

    do oramento e

    do tempo previsto e

    ingerenciveis

  • Crise do Software

    A crise do software foi um termo utilizado nos anos 70, quando a engenharia de software era praticamente inexistente.

    O termo expressava as dificuldades do desenvolvimento de software frente ao rpido crescimento da demanda por software, da complexidade dos problemas a serem resolvidos e da inexistncia de tcnicas estabelecidas para o desenvolvimento de sistemas que funcionassem adequadamente ou pudessem ser validados.

  • 7

  • Qual a resposta para a crise de software?

  • Conceito

    Engenharia = a atividade em que os conhecimentos cientficos so empregados para resolver problemas prticos

    Engenharia de Software = a atividade em que os [conhecimentos cientficos] so empregados para resolver problemas prticos relacionados

    construo de software

  • Um dos objetivos bsicos da Engenharia de Software transformar a criao de

    sistemas software realizada de maneira artstica, indisciplinada

    e pouco entendvel para uma forma devidamente controlada,

    quantificada e previsvel.

  • IEEE

    Engenharia de software a aplicao de uma abordagem

    sistemtica, disciplinada e possvel de ser medida para o desenvolvimento, operao e manuteno do software.

  • IEEE

    Processo de software a bordagem sistemtica,

    disciplinada e possvel de ser medida para o desenvolvimento,

    operao e manuteno do software.

  • O que processo de software?

    um conjunto de atividades cuja meta o desenvolvimento ou evoluo de software.

    As atividades genricas em todos os processos de software so:

    Especificao o que o sistema deve fazer e suas restries de desenvolvimento.

    Desenvolvimento produo do sistema de software.

    Validao verificao de que o software o que o cliente deseja.

    Evoluo mudana do software em resposta s demandas de mudana.

  • O que um modelo de processo de software

    Uma representao simplificada de um processo de software, apresentado sob uma perspectiva especfica.

    Exemplos de modelos de processo so:

    Modelo de workflow sequncia de atividades;

    Modelo de fluxo de dados fluxo de informaes;

    Modelo de papel/ao quem faz o qu.

  • Modelos gerais de processo

    Cascata;

    Desenvolvimento iterativo;

    Engenharia de software baseada em componentes.

  • Modelos gerais de processo

    Cascata;

    Desenvolvimento iterativo;

    Engenharia de software baseada em componentes.

    Ciclo de Vida

  • Custos em engenharia de software

    Aproximadamente 60% dos custos so custos de desenvolvimento e 40% so custos de testes. Para software sob encomenda, os custos de evoluo normalmente excedem de desenvolvimento.

    Os custos variam dependendo do tipo de sistema que est sendo desenvolvido e dos requisitos de atributos de sistema, tais como desempenho e confiabilidade.

    A distribuio de custos depende do modelo de desenvolvimento que usado.

  • Custos de desenvolvimento do produto