Engenharia de Software I Processos de desenvolvimento de SW. profa. Denise Neves

Documentos relacionados
Engenharia de Software I. profa. Denise Neves

Processos de software

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Ciclo de vida: fases x atividades

Engenharia de Software

Engenharia de Software. Processos. Desenvolvimento de Software Tradicionais 2014/2. Prof. Luís Fernando Garcia

Engenharia de Software

INTRODUÇÃO A ENGENHARIA DE SOFTWARE

Processos de Software

Paradigmas de Software

ENGENHARIA DE SOFTWARE

Processos de Software

Desenvolvimento de Projetos

ENGENHARIA DE SOFTWARE

Engenharia de Software. Prof. Me. Clodoaldo Brasilino

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 03 PROFª BRUNO CALEGARO

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

ENGENHARIA DE SOFTWARE. Aula 03 Processos de Software

MODELOS DE PROCESSOS (PARTE 2)

Engenharia de Software. Prof. Me. Clodoaldo Brasilino

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE

Projeto e Desenvolvimento de Software

14/11/2013. Capítulo 2. Processos de Software. Tópicos apresentados. Oprocessodesoftware. Modelos de processo de software. Atividades de processo.

Engenharia Software. Ení Berbert Camilo Contaiffer

Material Disciplina Tópicos em Engenharia de Software Parte 1 (Introdução aos Conceitos Engenharia de Software) Prof. Wagner Santos C.

Perguntas da Aula 2. Respostas da Pergunta 2. Respostas da Pergunta 1. Respostas da Pergunta 4. Respostas da Pergunta 3. Processos de Software

Abordagem para Construção de SI. Ciclo de Vida de Sistemas Tradicionais

Engenharia de Software II

Bibliografia. Quais são os problemas? capacidade de construção. acompanha a demanda por novos programas. ameaçada por projetos ruins.

Fábricas de Software. Processos de Software. Fábricas de Software. Fábricas de Software 17/08/2010. Jorge Dias

Ainda que muitos modelos sejam semelhantes entre os modelos de ciclo de vida, existem alguns aspectos que os diferenciam:

Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS

Engenharia de Software

15/03/2018. Professor Ariel da Silva Dias Modelos de Processo de Software

Processos de software Leitura: Cap3 Sommerville / Cap1: Pressman - Ariadne

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

Processos de Software

Definições e ciclo de vida

PDS. Aula 1.6 Modelos de Processo. Prof. Dr. Bruno Moreno

Processos de Desenvolvimento de Software. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 2

Engenharia de Software 1

Professor Emiliano S. Monteiro

Gerência de Projetos de Software. Prof. Dr. João Dovicchi INE / CTC / UFSC.

ORGANIZAÇÃO CURRICULAR TÉCNICO NA ÁREA DE INFORMÁTICA: HABILITAÇÃO TÉCNICO EM INFORMÁTICA NA MODALIDADE A DISTÂNCIA /1

As 10 Áreas da Engenharia de Software, Conforme o SWEBOK Prof. Elias Ferreira

Engenharia de Software I

Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software

CARGA HORÁRIA Engenharia de Software Código: horas PRÉ-REQUISITOS: Paradigmas de Programação

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2016

Paradigmas da Engenharia de Software AULA PROF. ABRAHAO LOPES

Capítulo 2 - Processos de Software

CARGA HORÁRIA Engenharia de Software Código: horas PRÉ-REQUISITOS: Paradigmas de Programação

Engenharia de Software I

Princípios da Engenharia de Software aula 03

Processos de Software

Escolhendo um Modelo de Ciclo de Vida

FUNDAMENTOS DA ANÁLISE E PROJETO DE SISTEMAS. Projeto de Programas PPR0001

Tópicos da Aula. O que é anunciado. Falha de Comunicação no Desenvolvimento de Software. Engenharia de Software: Conceitos Fundamentais

Análise e Projeto. Prof. Erinaldo Sanches Nascimento

PDS. Aula 1.4 Modelos de Processo. Prof. Dr. Bruno Moreno

Manutenção de Software

Introdução à Engenharia de Software

PROCESSOS DE SOFTWARE

Engenharia de Software

Modelos de Processo de Software. Profª Jocelma Rios

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC

Aula 2 - Modelos de Processo - cascata, iterativo e incremental e ágil

Ciência da Computação ENGENHARIA DE SOFTWARE. Capítulo 1 Introdução

ISO/IEC Processo de ciclo de vida

Processos de. Desenvolvimento de Software

Introdução a Engenharia de Software

Engenharia de Software

Engenharia de Software

PROJETO DE BANCO DE DADOS

Agenda TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS. Aula 3 21/08/2012

wuniversidade FEDERAL DO MARANHÃO CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO

DESENVOLVIMENTO BASEADO EM COMPONENTES

Componentes de SIs. Pessoas Organiz. Tecnologia

Engenharia de Software Introdução

Engenharia de Software Processo de Desenvolvimento de Software

Manutenção Leitura: Sommerville; Pressman

Qualidade de software. Prof. Emiliano Monteiro

PROCESSO DE SOFTWARE

O que é software? Software e Engenharia de Software. O que é software? O que é software? Tipos de Sistemas de Software. A Evolução do Software

RUP RATIONAL UNIFIED PROCESS

Organização para Realização de Teste de Software

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner

Verificação e Validação (V & V)

Modelos de Processo de Software

ISO/IEC 12207: Verificação, Validação e Testes

ENGENHARIA DE SOFTWARE

CICLO DE VIDA DO SOFTWARE. Nas empresas também é difícil adotar apenas um ciclo de vida, na maioria das vezes possui mais de um.

Processos de Software. O que é modelo de processo? Vantagens. Modelos de Processo Gerais. O que é um processo de software?

Aula 12. Aquisição de Hardware

O SWEBOK (2004) Guide to the SoftWare Engineering Body of Knowledge (SWEBOK) Editores: Patrocinadores: Alain Abran. James W. Moore.

Introdução à Interface Pessoa-Máquina

Engenharia de Software I: Introdução. Graduação em Informática 2009 Profa. Itana Gimenes

Engenharia de Software I

Transcrição:

I Processos de desenvolvimento de SW profa. Denise Neves profa.denise@hotmail.com 2018

Projeto Um projeto é um empreendimento temporário empreendido para alcançar um único conjunto de objetivos. (PMI,PMBOK Guide)

Projeto Projeto de TI Projetos de desenvolvimento de Softwares, podem ser de desenvolvimento de um novo projeto ou a atualização de programas existentes; A seleção, aquisição e implementação de pacotes de Softwares, os quais podem incluir aspectos de customização; A seleção, aquisição e implementação de Softwares, o que pode incluir equipamento de mainframe, servidores, estações de trabalho e outros equipamentos de suporte;

Projeto Projeto de TI Produtos de redes e telecomunicações e a seleção de serviços, aquisição ou implementação; Integração de sistemas ; e Alguma combinação dos itens acima

Sistema É um conjunto de elementos que se relacionam logicamente entre si, para atingir um objetivo. Características : Objetivo: é a razão pela qual o sistema existe. Elementos: são as partes que compõem o sistema. Estrutura: é a forma como os elementos se relacionam entre si.

Sistema de Informação É um conjunto de elementos que integram logicamente entre si, com a finalidade de gerar informação para a tomada de decisão. Exemplos: TIA, Sistema de Folha de Pagamento, Sistema de Controle de Estoque, Jornal, Televisão. Características de um Sistema de Informação: Objetivo: gerar informação em nível estratégico, tático e operacional. Elementos: dados, sistema de processamento de dados e meios de comunicação. Estrutura: maneira pela qual, diversos sistemas de informação se relacionam entre si.

Diariamente, todos nós interagimos com Sistemas de Informação, tanto pessoal como profissionalmente. Atualmente vivemos em uma economia de informação (pense na internet, quanto vale o cadastro de um usuário de um site de E- Commerce?). Os computadores e sistemas de informação mudarão para sempre nossa sociedade, nossas relações comerciais, nossa vida.

Conceitos Básicos Ciclo de Vida do Software O ciclo de vida de um software descreve as fases pelas quais o software passa desde a sua concepção até ficar sem uso algum.

Conceitos Básicos Fases do Ciclo de Vida de Sistemas Fase de definição Análise e Especificação Estudo de Viabilidade Estimativas Planejamento Fase de desenvolvimento Design Implementação e integração Verificação e Validação

Conceitos Básicos Fases do Ciclo de Vida Fase de operação Distribuição, Instalação e Configuração Utilização e administração Manutenção corretiva, evolutiva e adaptativa Fase de retirada Migração, reengenharia, engenharia reversa

Conceitos Básicos Fases de Definição Deve-se analisar os requisitos, recursos e restrições para apresentar soluções, estudar a viabilidade, planejar e gerenciar o desenvolvimento a partir de estimativas e análise de riscos que se utilizam de métricas Esta fase encerra-se com o contrato de desenvolvimento.

Conceitos Básicos Fase de desenvolvimento Design de Software Design conceitual, design da interface de usuário, design da arquitetura de software, design de algoritmos e estruturas de dados Implementação e integração Codificação, compilação, integração e verificação de programas (testes, inspeção, depuração) Verificação da qualidade Testes beta, avaliação de usabilidade, avaliação de desempenho, etc.

Conceitos Básicos Fase de Operação Distribuição e entrega Instalação e configuração Utilização Manutenção corretiva correção de erros evolutiva ou adaptativa novas versões Novos requisitos - novas situações de operação hardware - sistemas operacionais

Conceitos Básicos FASE DE RETIRADA Evolução do software - Sistemas legado - Reengenharia de Software

Conceitos Processos de Software Conjunto coerente de atividades para especificar, projetar, implementar e testar sistemas de software

Processos Objetivos : Apresentar os modelos de processo de software Descrever os diferentes modelos de processos e quando eles podem ser utilizados Descrever em formas gerais os modelos de processo para engenharia de requisitos, desenvolvimento de software, testes e evolução Apresentar a tecnologia CASE para apoiar atividades do processo de software

Processos Modelos genéricos de modelos de processo de software O modelo cascata Fases de especificação e desenvolvimento separadas e distintas Desenvolvimento evolucionário Especificação e desenvolvimento são interfoliadas Desenvolvimento formal de sistemas Um modelo matemático do sistema é transformado formalmente em uma implementação Desenvolvimento baseado em reuso O sistema é montado a partir de componentes existentes

Processos Fases do modelo Cascata Definição e análise de requisitos Projeto do sistema e do software Implementação e testes de unidade Integração e testes do sistema Operação e manutenção A desvantagem do modelo cascata é a dificuldade de acomodar as mudanças após o processo ter sido iniciado

Modelo Cascata[sommerville]

Processos Problemas da fase do modelo cascata Particionamento inflexível do projeto em fases distintas Isso torna difícil responder a requisitos do usuário que mudam Portanto, esse modelo é apropriado somente quando os requisitos são bem compreendidos

Processos Desenvolvimento Evolucionário Desenvolvimento exploratório O objetivo é trabalhar com os clientes e evoluir um sistema final a partir de uma especificação genérica inicial. O desenvolvimento se inicia com as partes do sistema que estão compreendidas. Fazer protótipos descartáveis O objetivo é compreender os requisitos do sistema. O protótipos e concentra em fazer experimentos com partes dos requisitos que estejam mal compreendidas

Evolucionários [summerville]

Desenvolvimento Evolucionário Problemas - Falta de visibilidade do processo - Os sistemas freqüentemente possuem pouca estrutura Podem ser exigidas habilidades especiais (p.ex.em linguagens para desenvolvimento rápido) Aplicabilidade -Para sistemas interativos pequenos ou de médio porte -Para partes de sistemas grandes (p.ex., a interface com o usuário) -Para sistemas de vida curta

Processos Desenvolvimento formal de sistemas Baseia-se na transformação de uma especificação matemática por meio de diferentes representações para um programa executável As transformações 'preservam a corretude', de tal forma que possa ser diretamente mostrado que o programa está de acordo com a sua especificação Embutida na abordagem de desenvolvimento de software chamada Cleanroom

Desenvolvimento Formal

Desenvolvimento Formal Problemas Necessidade de habilidades especiais e treinamento para aplicar a técnica Dificuldade de especificar formalmente alguns aspectos do sistema, tais como a interface com o usuário Aplicabilidade Sistemas críticos, especialmente aqueles onde um estudo de segurança deve ser feito antes de pôr o sistema em operação

Processos Desenvolvimento orientado ao reuso Baseia-se no reuso sistemático, onde sistemas são integrados a partir de componentes existentes ou sistemas COTS (Commercial-off-the-shelf) Estágios do processo Análise dos componentes Modificação de requisitos Projeto do sistema com reuso Desenvolvimento e integração Esta abordagem está se tornando mais importante, mas ainda há uma experiência limitada com ela

Desenvolvimento orientado ao reuso

Conceitos Básicos Objetivos da Aplicação de teoria, modelos, formalismos, técnicas e ferramentas da ciência da computação e áreas afins para o desenvolvimento sistemático de software. Aplicação de métodos, técnicas e ferramentas para o gerenciamento do processo de desenvolvimento. Produção da documentação formal destinada a comunicação entre os membros da equipe de desenvolvimento bem como aos usuários.

Conceitos Básicos Aspectos Históricos 1968 Conferência da OTAN, Garmisch Objetivo: resolver a Crise do Software Software é entregue Atrasado Com orçamento estourado Com falhas residuais Custo do hardware decrescente e custo do software em ascensão

Bibliografia Roger Pressman 7ª edição McGraw-Hill