Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas



Documentos relacionados
Engenharia de Software

Processo de Desenvolvimento de Software

Qualidade de Software Normatização

Plano de Teste. Arndt von Staa Departamento de Informática PUC-Rio Maio 2014

Qualidade de Produto. Maria Cláudia F. P. Emer

Agenda. O que é Testar? Por que testar? Quando testar? Processo de teste Níveis de teste Tipos de teste Classificação dos testes.

Introdução. Qualidade de Produto. Introdução. Introdução ISO/IEC Normas

Tipos de Software e Ambientes de Processamento

Unidade II Atividades em PDS: Testes. Unidade III Suporte e Manutenção. Processo Desenvolvimento Software

EA976 Engenharia de Software. AULA 2 Ciclo de Vida de um Software

Modelos de Ciclo de Vida de Software

Universidade do Algarve Faculdade de Ciência e Tecnologia Engenharia de Programação

Interpretações de Qualidade de Software. Interpretações de Qualidade de Software. Aspectos Importantes das Definições de Qualidade

Integralização do Curso Nova grade de Ciência Proposta

Avaliação da Satisfação do Cliente de Informática

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

LINHAS MESTRAS; FASES; DISCIPLINAS; PRINCÍPIOS E MELHORES PRÁTICAS.

1.1. Definição do Problema

INE 5323 Banco de Dados I

BANCO DE DADOS. Professor: André Dutton

Prototipação Exploratória

CONCEITOS DE SISTEMAS DE INFORMAÇÃO Fundamentos

Estudo de um caso real de migração de banco de dados de sistemas transacionais para Data Warehouse

Engenharia Econômica

Linguagens de Programação:

Introdução a Engenharia de Software

Como desenvolver sistemas de informação. Capítulo 1 Paulo C. Masiero/Vania Neves 2013

SUMÁRIO PARTE I. Princípios de Projeto, a Linguagem de Modelagem Unificada (Unified Modeling Language, ou UML) e Projeto em Nível de Código

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Perguntas que se esperam respondidas ao final do capítulo 7

Montadores e Compiladores

Universidade Paulista

Portaria Conjunta STN/SOF nº 3/2008 Manual de Despesa Nacional;

5 - Qual é a principal vantagem de desenvolvimento de código por pares:

T écnicas de Obtenção de Requisitos

Modelo CMMI em Fábrica de Software

Índice 1. CONTEXTO OBJETIVOS CRONOGRAMA REFERÊNCIAS ASSINATURAS

FSW CTIS FÁBRICA DE SOFTWARE. case fsw ctis

PROJETO EM GESTÃO DE PRODUÇÃO

Exame de Equivalência à Frequência do Ensino Secundário

Termos de Referência para Serviços especializados de consultoria Individual na área de Arquitetura de Sistemas

ESCOLA TÉCNICA ESTADUAL DE ILHA SOLTEIRA ILHA SOLTEIRA

Manutenção total aplicada em ferramentarias

Manual do Processo de Planejamento da UFSC. Departamento de Planejamento SEPLAN/UFSC

EN Engenharia Unificada I. O MÉTODO DE PROJETO EM ENGENHARIA Centro de Engenharia, Modelagem e Ciências Sociais Aplicadas

Banco de Dados. Banco de Dados. Conceitos Básicos. Banco de Dados SGBD SGBD. Fundamentos. Fernando Fonseca Ana Carolina.

Curso Superior de Tecnologia em Gestão Pública. Ciclo de vida e organização do projeto

Requisitos de Software

Capítulo 3: Qualidade de Produto e a ISO 9126

/ 2012_1 6 ( ) ADM ( ) ADM COMEX ( ) ADM MKT

Plano de Trabalho Docente Ensino Técnico

Plano de Trabalho Docente Ensino Técnico

O Processo de Design de Interação

Gerenciamento de TEMPO

As atividades que conciliam

Optativas Comércio Eletrônico Comunicação Oral e Escrita Customização de Sistemas Integrados Desenvolvimento Avançado de Software

APOSTILHA AULA 4 O CICLO DE VIDA DO PROJETO

ANÁLISE DE FALHAS DE COMPUTADORES

Título : B1 INTRODUÇÃO. Conteúdo : INTRODUÇÃO

Aula 05 Instalação e Uso do Arcabouço. Alessandro Garcia Alexander Chávez LES/DI/PUC-Rio Março 2016

Arquitetura de Computadores Sistemas Operacionais I

Programação de Computadores I. Linguagem C Função

MPS.BR. rogerioaraujo.wordpress.com - rgildoaraujo@gmail.com 1

NORMA TÉCNICA PARA RECEBIMENTO DE BENS DE INFORMÁTICA PELA METODOLOGIA DE INSPEÇÃO POR ATRIBUTOS. Referência: NT-AI Data: 17/04/2.

Gestão de Processos: Ciclo PDCA. Profa. Reane Franco Goulart

Algoritmos e Programação II

MODELAGEM MATEMÁTICA DE UM SISTEMA DE DISTRIBUIÇÃO DE ENERGIA ELÉTRICA EM MÉDIA TENSÃO 1. Gabriel Attuati 2, Paulo Sausen 3.

Glossário Versão 1.0 Desenvolvimento do Sistema de Gestão de Documentos Doc Manager Histórico de Revisão

DIAGNÓSTICO OPERACIONAL DE UM SISTEMA DE ABASTECIMENTO DE ÁGUA, PARA IMPLANTAÇÃO DE UM PROGRAMA DE QUALIDADE DA OPERAÇÃO BASEADO NO TQC JAPONÊS

Verificação e validação

Desenvolvimento Organizacional

Aula 07. Comércio Eletrônico. Tipos de Sistemas de Informação 10/10/2012

REGULAMENTO DO CURSO DE ENGENHARIA DE PRODUÇÃO

AUTOMAÇÃO COMERCIAL UNIDADE VI

Árvore da Realidade Atual e Mapeamento de Processos

Bacharelado em Ciência da Computação 2009

BUSINESS INTELLIGENCE (BI) Disciplina: DESENVOLVIMENTO TECNOLÓGICO Prof. Afonso Celso M. Madeira 8º semestre

2 MATERIAL E MÉTODOS

Já conhece o ciclo de Eficiência Energética nos edifícios?

Ref: Observatório Nacional de Clima e Saúde Projeto Observatorium.

Cursos de Mestrado em TSI Situação em Ensino Superior Público... f.2 2 Ensino Superior Particular e Cooperativo... f.5

O SOFTWARE LIVRE COMO FERRAMENTA DE ENSINO

ELIPSE E3 OTIMIZA O ACESSO ÀS INFORMAÇÕES DOS PROCESSOS AUTOMATIZADOS NA RANDON

GESTÃO DA MANUTENÇÃO

MINUTA DA NORMA BRASILEIRA DE CONTABILIDADE TÉCNICA DO SETOR PÚBLICO NBCT SP.

RESOLUÇÃO. Artigo 2º - O Curso, ora criado, será oferecido no turno noturno, com 10 semestres de duração e com 50 vagas iniciais.

Ferramenta 5W2H. ferramentas apresentadas. Definir: 10/03/2011

19/9/2011. Canais de distribuição. Introdução

Elaboração e Análise de Projetos

Engenharia de Software

UFG - Instituto de Informática

Transcrição:

Engenharia de Software Profa. Dra. Lúcia Filgueiras Profa. Dra. Selma S. S. Melnikoff Ciclos de Vida do Software 1. Sistemas 2. Crise do software 3. Caracterização do software 4. Ciclos de vida do software 1. Sistemas Definição 1. Conjunto de elementos, entre os quais haja alguma relação. 2. Disposição das partes ou dos elementos de um todo, coordenados entre si, e que formam estrutura organizada. (Aurélio)

Sistemas automatizados SOFTWARE USUÁRIOS SISTEMA HARDWARE DADOS PROCEDIMENTOS Exemplos de tipos de sistemas Sistemas on-line entrada de dados remota processamento de transações Sistemas de tempo real recebe dados do ambiente modifica o ambiente a tempo Sistemas de apoio à decisão regras de avaliação coletam dados de outros sistemas Características comuns de sistemas 1. Especialização X adaptação Quanto mais especializado o sistema, menor sua capacidade de adaptação a mudanças. 2. Manutenção Quanto maior o sistema, mais recursos são necessários para sua manutenção 3. Composição Todo sistema pode ser decomposto em sistemas menores 4. Crescimento Os sistemas tendem a crescer.

Software software de sistema sistemas operacionais compiladores gerenciadores de redes software de tempo real management information systems - MIS software científico e de engenharia CAD simuladores software embarcado PC software software de inteligência artificial Evolução do software 1950 1960 1970 1980 1990 2000 1a. fase 2a. fase 3a. fase 4a. fase sistemas batch distribuição limitada software dedicado sistemas multiusuário tempo real base de dados software-produto sistemas distribuídos hardware de baixo custo inteligência local impacto no consumidor desk-tops poderosos tecnologia de objetos computação paralela redes neurais sistemas especialistas 2. Crise do software Crise de tecnologia - hardware caminha mais rápido que o software Crise de oferta - demanda é maior que a capacidade de desenvolvimento Crise de manutenção - mau projeto e recursos escassos não permitem manutenção.

Problemas Por que os programas não ficam prontos rapidamente? Por que os custos de desenvolvimento são altos? Por que os erros não são detectados? Por que é difícil medir o progresso durante o desenvolvimento? 3. Caracterização do Software Software é desenvolvido - não manufaturado! produto manufaturado: projeto + produção produto desenvolvido: não existe produção falhas em uma cópia estão em todas não há perda da qualidade devida ao processo produtivo Software não desgasta. MORTALIDADE INFANTIL Taxa de falhas (hardware) DESGASTE Tempo

Software deteriora. curva real Taxa de falhas curva ideal modificações Software não é montagem de partes (ainda...) hardware: montagem de componentes bibliotecas técnicas de 4a. geração reutilização de software Componentes do Software SOFTWARE = CÓDIGO EXECUTÁVEL + DOCUMENTAÇÃO

Engenharia de software O estabelecimento e o uso de princípios sólidos de engenharia, com o intuito de obter, economicamente, software que seja confiável e funcione eficientemente em máquinas reais. Fritz Bauer, 1969 O QUÊ? DEFINIÇÃO COMO? DESENVOLVIMENTO POR QUE NÃO? MANUTENÇÃO Para quê, um ciclo? para definir as atividades a serem conduzidas no projeto. para manter a consistência entre sistemas desenvolvidos em uma mesma empresa. para viabilizar pontos de controle para a gerência.

Modelo de cascata ENGENHARIA DE SISTEMAS ANÁLISE PROJETO CODIFICAÇÃO TESTE MANUTENÇÃO Fase 1: Engenharia de sistema definir o escopo do sistema avaliar sistemas atualmente em uso estabelecer metas e objetivos do sistema decidir a viabilidade de automatizar estimar tempo e recursos decidir a metodologia de projeto identificar hardware e software Resultado: análise de viabilidade e workstatement Fase 2: Análise e especificação modelo essencial (independente de tecnologia): dados e funções uso de ferramentas de modelagem refinamento das relações custo-benefício refinamento das estimativas de recursos especificação dos critérios de aceitação definição do balanceamento entre operação humana e automação Resultado: especificação de requisitos

Fase 3: Projeto definição da arquitetura processadores tarefas módulos de programa. transformação do modelo de dados em base de dados modelo da interface homem-máquina elaboração do plano de testes Resultado: documento de projeto Fase 4: Codificação transformação em linguagem de programação técnica de programação estruturada Resultado: listagens do programa Fase 5: Testes Comparação do sistema com sua especificação Verificação do funcionamento interno e externo do programa Estratégia de teste Ambientes de teste Aceitação Instalação (simples ou gradual) Resultado: sistema instalado

Fase 6: Manutenção correção de erros mudanças de software mudanças no hardware evolução no ambiente de utilização Resultados: modificações (programa e documentos) Problemas com ciclo clássico fluxo seqüencial é quebrado pelas múltiplas iterações é difícil acomodar incertezas do início do desenvolvimento o software produto só é visível ao final do ciclo Prototipação modelo da interface de usuário (em papel ou tela) implementação de parte das funções (protótipo de trabalho) programa ou sistema existente

Ciclo de vida com prototipação FIM INÍCIO engenharia de produto identificação de requisitos refinamento do protótipo projeto breve avaliação do protótipo pelo cliente construção do protótipo Problemas com ciclo de prototipação cliente acha que protótipo é produto projetista incorpora soluções inadequadas convergência do protótipo Modelo da espiral ANÁLISE DE RISCO SISTEMA COMPLETO AVALIAÇÃO

Modelo da espiral Planejamento: determinação dos objetivos, alternativas e restrições Análise de riscos: análise de alternativas e identificação/resolução dos problemas Engenharia: desenvolvimento do produto do nível seguinte Avaliação do cliente: avaliação do produto Técnicas de 4a. geração ferramentas de descrição do software em nível alto tipos de ferramentas gerenciadores de bancos de dados linguagens de consulta não-procedurais geradores de relatórios construtores de telas geradores de código cada ferramenta tem a sua linguagem Ciclo com técnicas de 4a. geração IDENTIFICAÇÃO DE REQUISITOS ESTRATÉGIA DE PROJETO IMPLEMENTAÇÃO TESTES

Problemas comtécnicas de 4a. Geração número de ferramentas é explosivo evolução das ferramentas x obsolescência dependência do fornecedor royalties na distribuição confiabilidade auto-documentação