A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Engenharia de Software

Apresentações semelhantes


Apresentação em tema: "Engenharia de Software"— Transcrição da apresentação:

1 Engenharia de Software
Rafaela Bosse Schroeder, MSC. Joinville, 2017

2 Apresentação Mestrado: Computação Aplicada – UDESC - 2017
Pós-Graduação: Engenharia de Software – PUC Paraná Graduação: Tecnologia em Desenvolvimento de Sistemas para Internet – SOCIESC – 2007 Atuação mercado: consultoria (análise e desenvolvimento) de sistemas ERP TOTVS. Experiência: Wetzel (2012-atual), Britânia/Philco ( ), TOTVS ( ), Logocenter ( ).

3 Plano de Aula Ementa: Método de Avaliação:
Processos de Software; Modelos, métricas, estimativas e alocação de recursos; Processo individual de software (PSP- Personal Software Process); Qualidade e sua administração; Alocação e administração de Pessoal e recursos; Ambientes de uso de software; Ferramentas de desenvolvimento de software. Método de Avaliação: 2 Seminários, 2 Provas e Projeto Final Média Semestre: 0.2*P *P *ES + 0.1*S *S *PROJ P1 e P2 – Prova 1 e Prova 2 ES – Média dos Exercícios em Sala (entregues Moodle durante aula) S1 e S2 – Seminários 1 e 2 PROJ – Desenvolvimento do Projeto

4 Tópicos – Aula 1 O que é Engenharia de Software;
Modelos de ciclo de vida;

5 O que é Engenharia de Software
“O estabelecimento e uso de sólidos princípios de engenharia para que se possa obter economicamente um software que seja confiável e que funcione eficientemente em máquinas reais” (PRESSMAN, 2002). Estuda-se como construir e manter sistemas de software de forma controlada e previsível.  Funcionalidades Qualidade Recursos Engenharia de Software

6 Importância “software é uma dentre poucas tecnologias importantes que terão um impacto significativo em praticamente todo o aspecto da sociedade moderna.” Como software está inserido em todo e qualquer processo desde o mais simples ao mais complexo, “os programas, documentos e dados que constituem o software, ajudam a gerar o bem mais importante que qualquer indivíduo, negócio ou governo pode adquirir – a informação” (PRESSMAN,2002)

7 Origens - Rupturas 1968 - Reunião OTAN de Garmisch
Objetivo: Resolver a “crise do software”; Dificuldade em desenvolver softwares complexos de forma segura e previsível; Dificuldade em cumprir cronogramas e especificações de grandes projetos de software.

8 Origens - Rupturas Início dos anos 80 – paradigma procedural para a programação orientada a objeto; Novembro de 2000 – A OMG (Object Management Group) cria a MDA (Model Driven Architecture – Arquitetura dirigida pelo Modelo) com o objetivo principal de extrair valor a partir de modelos e processos de modelagem.

9 Problemas Em geral, os projetos de software: Mitos de gerenciamento:
Ultrapassam o orçamento; Atrasam o cronograma; São cancelados; Não atendem os requisitos; Deixam o usuário extremamente insatisfeito Mitos de gerenciamento: “Se o desenvolvimento do software estiver atrasado, basta aumentar a equipe para honrar o prazo de desenvolvimento”

10 Mitos Mitos dos clientes:
“Se a equipe dispõe de um manual repleto de padrões e procedimentos de desenvolvimento de software, então a equipe está apta a encaminhar bem o desenvolvimento.” Mitos dos clientes: “Uma descrição breve e geral dos requisitos do software é o suficiente para iniciar o seu projeto... Maiores detalhes podem ser definidos posteriormente.”

11 Mitos Mitos dos profissionais:
“Após a edição do programa e a sua colocação em funcionamento, o trabalho está terminado.” “O produto a ser entregue no final do projeto é o programa funcionando.” “Enquanto o programa não entrar em funcionamento, é impossível avaliar a sua qualidade.”

12 Sucesso em projetos de TI
Resultados de projetos nos últimos 5 anos Fonte: Standish Group 2015 Chaos Report

13 Tópicos – Aula 2 O que é Engenharia de Software;
Modelos de ciclo de vida;

14 Modelos de ciclo de vida
Podem ser entendidos como: A forma como as etapas de desenvolvimento são organizadas; A sequência em que as atividades dos projetos de desenvolvimento e manutenção de softwares são executados

15 Codificar - Testar

16 Modelo Cascata ou Clássico
Fonte: (FALBO,2005)

17 Modelo Cascata ou Clássico
Etapas ou Atividades: Análise e Engenharia de Sistemas (coleta a nível de sistema); Análise de requisitos do software (domínio da informação, função, desempenho e interfaces); Projeto (estrutura de dados, arquitetura, detalhes procedimentais e interface); Codificação; Testes; Manutenção (mudanças)

18 Modelo Cascata ou Clássico
Características: Simples; Visão global do sistema; Ordenamento linear das etapas (determinar início e fim); Todas as etapas devem ser realizadas e de forma ordenada. Problemas: Requisitos são inalterados; Software funcionando somente o final

19 Modelo “V” Fonte: (FALBO,2005)

20 Modelo Incremental Desenvolve-se uma implementação inicial, apresenta ao usuário e evolui o software ao longo do tempo

21 Modelo Iterativo A cada iteração uma ou mais atividades são executadas antes de iniciar uma nova atividade; Fluxo de execução: Fonte: (PRESSMAN,2002)

22 Modelo Incremental x Iterativo

23 Modelo Prototipação

24 Modelo Prototipação Etapas ou Atividades: Características:
Coleta de requisitos; Projeto rápido (abordagens de entrada e saída); Construção protótipo (avaliado pelo usuário); Avaliação e refinamento do protótipo; Engenharia do produto. Características: Eliminar congelamento dos requisitos; Protótipo com base nos requisitos iniciais; Validar ou reformular os requisitos para as etapas seguintes; Versão simplificada

25 Modelo Prototipação Problemas: Usuário quer usar o protótipo;
O desenvolvedor faz concessões (linguagem e/ou sistema operacional impróprio); As expectativas do usuário não podem ser atendidas.

26 Modelo Espiral Etapas ou Atividades: Planejamento (objetivos);
Análise de riscos; Engenharia (Produto); Avaliação

27 Modelo Espiral Características: Problemas:
Redução dos riscos (prosseguir ou não prosseguir); Abordagem realística (evolucionária); Cada ciclo é encerrado por uma atividade de revisão. Problemas: Difícil de convencer o cliente que a abordagem [e controlável; Exige experiência na avaliação dos riscos; Modelo relativamente novo


Carregar ppt "Engenharia de Software"

Apresentações semelhantes


Anúncios Google