aula1 engenharia de software - ?· a engenharia de software é mais especifica, a de sistemas é...

Download Aula1 Engenharia de Software - ?· A Engenharia de Software é mais especifica, a de Sistemas é mais…

Post on 09-Nov-2018

212 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • ENGENHARIA DE SOFTWARE

    Prof: Janaide Nogueira

    Curso: Sistemas de Informao

  • ENGENHARIA DE SOFTWAREENGENHARIA DE SOFTWARE

  • APRESENTAOFormao Tcnica:

    Informtica(IFCE-Campus Tiangu-CE)Secretria Escolar(FDR)Graduao:

    Bacharelado em Sistemas de Informao(Ieducare)Ps-Graduao:

    Especializao em Engenharia de Software (WPS) Especializao em Engenharia de Software (WPS) MBA em Sistemas de Informao (ESAB)Atividades Profissionais:

    Prof. Faculdade Ieducare.Prof. IFCE Campus Tiangu-CE Pronatec (Programao Web).

  • EMENTAConceitos e princpios fundamentais.

    Ciclo de vida de software e estgios de desenvolvimento:

    requisitos de software, projeto, implementao, gerenciamento

    e qualidade de software.

    Ferramentas e ambientes de desenvolvimento integrado.

    CARGA HORRIA : 60 HORAS/AULA = 15 ENCONTROS

  • REFERNCIAS

    PAULA FILHO, W. P. Engenharia de Software Fundamentos, Mtodos e Padres. 2. ed. Rio de Janeiro: LTC, 2003.

    PFLEEGER, S. L. Engenharia de Software Teoria e Prtica. 2. ed. So Paulo: Pearson PrenticeHall, 2004.

    PRESSMAN, R.S.Engenharia de Software.6. ed. So Paulo: McGraw-Hill, 2006.

    SOMMERVILLE, I. Engenharia de Software. 8. ed. So Paulo: Pearson, 2007.

  • METODOLOGIA DE AVALIAO

    (Nota1+Nota2+Nota3)\3= Mdia final;Nota1 = (1*Exerccios + 2*Artigo)/3;Nota2= (1*Exerccios + 2*Prova escrita)/3;Nota2= (1*Exerccios + 2*Prova escrita)/3;Nota3= Trabalho;

  • FALTAS E ATRASOS

    O aluno deve evitar ao mximo ter faltas,pois dificulta o aprendizado.pois dificulta o aprendizado.

    As aulas iniciam s 19:00 horas, o intervaloinicia s 20:15 horas, com 15 minutos dedurao, terminando o encontro pontualmenteas 22:00 horas.

  • ENGENHARIA DE SOFTWAREENGENHARIA DE SOFTWARE

  • O QUE ENGENHARIA DE SOFTWARE?

    " uma disciplina da engenharia que se preocupacom todos os aspectos da produo de software, desde osestgios iniciais de especificao do sistema at amanuteno desse sistema, depois que ele entrou emmanuteno desse sistema, depois que ele entrou emoperao".(SOMMERVILLE,2007)

    Com isso o engenheiro de software deve adotar umperfil sistemtico e organizado para seus trabalhos e utilizarferramentas e tcnicas apropriadas, dependendo doproblema a ser resolvido e dosobstculos no desenvolvimento e dos recursos disponveis.

  • OBJETIVOS DA ENGENHARIA DE SOFTWARE

    Controlar o desenvolvimento de software dentro de custos,prazos e nveis de qualidade desejados;

    Qualidade X Produtividade;

  • QUAL A DIFERENA ENTRE ENGENHARIA DE SOFTWARE E DE

    SISTEMAS?A Engenharia de Software mais especifica, a de

    Sistemas mais genrica. Enquanto a Engenharia deSistemas est mais envolvida com o sistema como um todoSistemas est mais envolvida com o sistema como um todoe seus detalhes, a Engenharia de Software mais especifica,em especial ao hardware e software.

  • TIPOS DE SOFTWARE

    Produtos genricos;

    Produtos sob encomendas (personalizados);

  • O QUE CASE?

    Compute raided software engineering (engenharia desoftware como auxlio de computador). Se refere a

    uma ampla gama de diferentes tipos de programas

    utilizados para apoiar as atividades de processo deutilizados para apoiar as atividades de processo de

    software, como a anlise de requisitos, modelagem

    de sistema, a depurao e os testes.

    Upper-CASE: Apoio as atividades iniciais (requisitose projeto);

    Lower-CASE: Apoio as atividades finais(programao, depurao e teste).

  • O QUE DEPURAO DE SOFTWARE?

    o processo de encontrar e reduzir defeitos em umsoftware.

  • ATRIBUTOS DE UM BOM SOFTWARE

    O software deve oferecer aos usurios as funcionalidades e o

    desempenho por ele desejado, deve possuir fcil manuteno,

    ser eficiente...

    Caractersticas Descrio

    Facilidade de Manuteno Esse um atributo crucial, porque as

    15

    Facilidade de Manuteno Esse um atributo crucial, porque as

    modificaes em um software so uma

    consequncia inevitvel de um

    ambiente de negcios em constante mutao.

    Nvel de Confiana Neste nvel incluem-se as caractersticas de

    confiabilidade, proteo e segurana

    Eficincia O Software no deve desperdiar os recursos do

    sistema, como por exemplo os ciclos do processador

    Facilidade de Uso O software deve ser utilizvel, usurios leigos no

    devem sentir muita dificuldade.

  • PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

    O Conjunto de atividades associadas geram um produto

    de software. H quatro atividades de processos fundamentais

    comuns a todos os processos de software que so:

    Especificao do software;

    Desenvolvimento do software;

    16

    Desenvolvimento do software;

    Validao do software;

    Evoluo do software.

  • CICLO DE VIDA DE DESENVOLVIMENTO DE

    SOFTWARE

    O CVDS descreve como o software deve ser desenvolvido,

    ou seja, define a ordem global das atividades e prope uma

    estratgia de desenvolvimento.

    17

    estratgia de desenvolvimento.

    Simplificando: Todo desenvolvimento de um software caracterizado por fases que quando colocadas em sequncia

    obtm-se um Ciclo de Vida do Sistema.

  • MODELO BALBRDIA

    No incio da computao, poucos programadoresseguiam algum tipo de metodologia baseando-se, emsua maioria, na prpria experincia. Era o quechamamos hoje de Modelo Balbrdia, que sosistemas desenvolvidos na informalidade sem nenhumtipo de projeto ou documentao.

    18

    tipo de projeto ou documentao.Nesse modelo, o software tende a entrar num ciclo

    de somente duas fases: o de implementao e deimplantao. E os ajustes ao software para atenderaos novos requisitos, sempre so em clima deurgncia e de stress, motivados por vrios fatores, eprincipalmente por presso poltica.

  • MODELO CASCATA

    19

  • MODELO CASCATAO modelo em Cascata a fase seguinte no deve se iniciar

    at que a fase precedente tenha sido concluda;

    Na prtica os estgios se sobrepem e trocam informaes

    entre si;

    20

    entre si;

    A principal desvantagem do modelo em cascata a

    dificuldade de acomodao das mudanas depois que o

    processo est em andamento. Uma fase tem de estar

    completa antes de passar para a prxima;

  • DESVANTAGENS DO MODELO CASCATA

    Particionamento inflexvel do projeto em estgios

    distintos, dificulta a respota aos requisitos de mudana do

    cliente;

    Este modelo apropriado somente quando os requisitos

    so bem compreendidos, e quando as mudanas forem

    21

    so bem compreendidos, e quando as mudanas forem

    bastante limitadas durante o desenvolvimento do sistema;

    Poucos sistemas de negcio tm requisitos estveis;

  • DESVANTAGENS DO MODELO CASCATA

    Pode no permitir a viso real do processo em andamento.

    Dois universos:

    Universo que se refere ao processo em andamento;

    Universo que se refere s mudanas que deveriam ser

    aplicadas, mas no so pelo fato do modelo no

    22

    aplicadas, mas no so pelo fato do modelo no

    incorporar em sua dinmica.

  • FASES DO MODELO CASCATAAnlise e definio de requisitos;

    Projeto de sistema e software;

    Implementao e teste de unidade;

    Integrao e teste de sistema;

    Operao e manuteno;

    23

    Operao e manuteno;

  • MODELO EVOLUCIONRIOTem como base a idia de desenvolver uma

    implementao inicial, expr o resultado ao comentrio do

    usurio e fazer seu aprimoramento por meio de muitas

    verses, at que um sistema adequado tenha sido

    desenvolvido.

    24

    desenvolvido.

  • TIPOS DE MODELO EVOLUCIONRIO

    DESENVOLVIMENTO EXPLORATRIO;

    25

  • MODELO EVOLUCIONRIO: DESENVOLVIMENTO

    EXPLORATRIO

    O desenvolvimento se inicia com as partes do sistema que esto bem compreendidas adicionar novas caractersticas medida que forem propostas pelo

    26

    caractersticas medida que forem propostas pelo cliente.

  • TIPOS DE MODELO EVOLUCIONRIO

    PROTOTIPAO DESCARTVEL;

    27

  • MODELO EVOLUCIONRIO: PROTOTIPAO DESCARTVEL

    O objetivo compreender os requisitos de sistema. Deve iniciar com requisitos mal compreendidos para esclarecer o que realmente necessrio.

    28

  • DESVANTAGENS DA PROTOTIPAO DESCARTVEL

    Falta de visibilidade do processo; Os sistemas so frequentemente mal estruturados;

    29

  • DESENVOLVIMENTO ORIENTADO A REUSO

    Baseado em reuso sistemtico onde sistemas so integrados a

    partir de componentes existentes.

    Estgios do processo:

    Anlise de componentes;

    30

    Anlise de componentes;

    Modificao de requisitos;

    Projeto de sistema com reuso;

    Desenvolvimento e integrao.

  • DESENVOLVIMENTO ORIENTADO A REUSO

    Vantagens do Desenvolvimento Orientado a Reuso

    -Reduzir a quantidade de software a ser desenvolvida;

    -Reduzir custos;

    31

    -Reduzir custos;

    -Reduzir riscos.

    Problema do Desenvolvimento Orientado a Reuso

    -Perda do controle sobre a evoluo do sistema.

  • ITERAO DE PROCESSO

    -Requisitos de sistema SEMPRE evoluem no curso de um projeto

    e, sendo assim, a iterao de processo, onde estgios iniciais so

    retrabalhados, sempre parte do processo dos sistemas de

    grande porte.

    32

    grande porte.

    -A iterao pode ser aplicada a qualquer um dos modelos

    genricos do processo.

    Duas abordagens (relacionadas)

    -Entrega incremental;

    -Desenvolvimento espiral.

  • ENTREGA INCREMENTALAo invs de entregar o sistema como uma n