ENGENHARIA DE SOFTWARE II. Modelos de Ciclo de Vida e Processos de Software AULA 2

Tamanho: px
Começar a partir da página:

Download "ENGENHARIA DE SOFTWARE II. Modelos de Ciclo de Vida e Processos de Software AULA 2"

Transcrição

1 ENGENHARIA DE SOFTWARE II Modelos de Ciclo de Vida e Processos de Software AULA 2

2 Sumário Motivação Conceitos de Processo de Desenvolvimento de Software Atividades que compõem os processos de desenvolvimento de software Modelos de ciclo de vida

3 Sumário Motivação Conceitos de Processo de Desenvolvimento de Software Atividades que compõem os processos de desenvolvimento de software Modelos de ciclo de vida

4 Crise do software O termo expressava as dificuldades de desenvolvimento de software frente ao rápido crescimento da demanda existente e da inexistência de técnicas estabelecidas para o desenvolvimento de sistemas Os primeiros processos de desenvolvimento de software surgiram em meados da década de 70, motivados pela crise do software, em 1968

5 Crise do software Dijkstra: A maior causa da crise do software é que as máquinas tornaram-se várias ordens de magnitude mais poderosas! Para esclarecer melhor: quando não havia máquinas, a programação não era um problema; quando tínhamos poucos computadores, a programação tornou-se um problema razoável, e agora, que nós temos computadores gigantes, a programação tornouse um problema igualmente grande.

6 Crise do software Os projetos de software dos anos iniciais, devido à imaturidade no desenvolvimento de software, tinham os seguintes problemas: Projetos estourando o orçamento Projetos estourando o prazo Software de baixa qualidade Software não atendendo os requisitos Projetos não gerenciáveis e código difícil de manter

7 Situação da época

8 Por que usar processos de desenvolvimento de software? Tecnologia de desenvolvimento de software implica, ainda, em grande carga de trabalho. Muitas vezes o desenvolvimento é realizado de maneira amadora, gerando acréscimos de custos de desenvolvimento. Importante introdução de um 'caminho das pedras', apresentando propostas de soluções às questões relacionadas ao desenvolvimento de software.

9 Será que a crise acabou? STANDISH GROUP, 2004, pesquisa com 8000 projetos Apenas 29% dos projetos foram entregues respeitando os prazos e os custos e com todas as funcionalidades especificadas Aproximadamente 18% dos projetos foram cancelados antes de estarem completos 53% foram entregues, porém com prazos maiores, custos maiores ou com menos funcionalidades do que especificado no início do projeto A média de atrasos foi de 222%, e a média de custo foi de 189% a mais do que o previsto

10 Será que a crise acabou? Embora problemas durante o desenvolvimento de software aconteçam, e com certa freqüência, os processos, métodos e ferramentas existentes auxiliam muito o desenvolvimento Assim como na construção civil, muitas empresas estouram custos e prazos, mesmo tendo métodos e técnicas bem estabelecidas Porém, aqueles que utilizam os princípios corretamente têm grandes chances de sucesso O problema é que boa parte das organizações não encara o desenvolvimento de software como um projeto de verdade, aplicando as técnicas, métodos e ferramentas necessárias

11 Questões atuais Sistemas legados: os sistemas antigos devem ser mantidos e atualizados. Heterogeneidade: sistemas são uma combinação de hardware e software, sistemas distribuídos, com diferentes tipos de computadores e sistemas de apoio. Prazos de entrega: pressão para um menor prazo de entrega.

12 Sumário Motivação Conceitos de Processo de Desenvolvimento de Software Atividades que compõem os processos de desenvolvimento de software Modelos de ciclo de vida

13 Processo de fabricação de carro

14 Analogia com a fabricação de sw A construção de um carro e a construção de um software são projetos similares, mas que exigem diferentes habilidades na sua condução e execução Ou seja, levantar os requisitos associados, construir modelos para representar a solução a ser desenvolvida, implementar as diversas unidades que irão compor o produto, verificando se tais unidades atendem aos requisitos identificados, realizar a integração entre as unidades, também verificando seu funcionamento, até que se tenha o produto por completo

15 Ciclo de Vida Conforme visto nas aulas anteriores, ES nada mais é do que o tratamento do software como um produto, empregando dentro do processo de desenvolvimento todos os princípios da engenharia Como todo produto, o software também possui um ciclo de vida, que pode ser definido como o conjunto de todas as etapas relacionadas à sua existência, desde sua concepção até seu desaparecimento

16 Ciclo de Vida do Software Ele é concebido a partir da percepção de uma necessidade É desenvolvido, transformando-se em um conjunto de itens entregue a um cliente Entra em operação, sendo usado dentro de algum processo de negócio e sujeito a atividades de manutenção, quando necessário É retirado de operação ao final de sua vida útil

17 Ciclo de Vida do Software

18 Codificação No ciclo de vida de um software, a codificação, que faz parte da etapa de Desenvolvimento, e que representa a escrita do programa utilizando alguma linguagem de programação, é apenas uma parte do ciclo de vida, embora muitos profissionais de informática acreditem, erroneamente, que essa seja a única tarefa relacionada ao desenvolvimento de software.

19 Relação entre Ciclo de Vida e Processo de Software O processo de software é um guia de como um produto de software deve ser construído, do início ao fim A ligação com o ciclo de vida está no fato de que esse guia depende do modelo de ciclo de vida utilizado Existem vários modelos e dependendo dele, as atividades a serem executadas podem variar. Essa é a ligação

20 Conceitos São sinônimos Modelos de ciclo de vida Paradigmas de desenvolvimento Modelos de processo de desenvolvimento de sw Desenvolvimento Criação ou manutenção de um produto ou serviço Software Código-fonte e documentação

21 Conceitos Processo Conjunto de passos parcialmente ordenados, constituídos por atividades, métodos, práticas e transformações, utilizados para se atingir uma meta É um guia para se construir um produto Projeto É o uso de um processo para o desenvolvimento de um produto específico

22 Analogia com classe e objeto Classe estrutura que abstrai um conjunto de objetos com características similares Objeto instância da classe, com valores específicos para cada uma dessas características O processo está para classe assim como o projeto está para um objeto Um projeto é a instanciação de um processo para a construção de um produto

23 Analogia com classe e objeto Cascata Espiral Incremental Classe Processo Codifica-Remenda

24 Processo de Desenvolvimento de Software Conjunto de atividades, disciplinas e papéis que prescreve práticas para se conceber, desenvolver, implantar e testar um software. As atividades possuem entradas, saídas, ferramentas e técnicas que estão ligadas a artefatos criados ou alterados durante sua execução.

25 Processo de Desenvolvimento de Software De acordo com Wilson de Pádua, um processo deve ter uma documentação que o descreve, apresentando detalhes sobre o que é feito (produto), quando (passos), por quem (agentes), o que usa como entrada (insumo) e o que é produzido (resultado) Essa documentação pode ser simples e informal, como é o caso dos Processos Ágeis, ou completamente detalhada, como é o caso dos processos baseados no Processo Unificado

26 Processo de Desenvolvimento de Software Existem processos que abrangem todo o ciclo de vida do software, assim como processos específicos para partes do desenvolvimento, como, por exemplo, processos para testes, processos para manutenção, etc, que são considerados subprocessos O ponto inicial para seleção de um processo, e posterior iniciação de um projeto, é entender qual modelo de ciclo de vida ele utiliza. Um modelo de ciclo de vida pode ser apropriado para um projeto mas não ser apropriado para outro

27 Modelos de ciclo de vida São uma descrição simplificada do processo de software Especificam as atividades e a ordem em que, de acordo com o modelo, devem ser executadas Produtos de software podem ser construídos utilizando-se de diferentes modelos de ciclo de vida Alguns modelos são mais adequados que outros para determinados tipos de aplicação A opção por um determinado modelo deve ser feita levando-se em consideração o produto a ser desenvolvido

28 Objetivos Processos objetivam auxiliar o processo de produção (produtos de alta qualidade, produzidos rapidamente e a um custo menor) e possibilitam: Ao gerente: controlar o processo de desenvolvimento de sistemas de software Ao desenvolvedor: obter a base para produzir, de maneira eficiente, software que satisfaça os requisitos pré-estabelecidos

29 Sumário Motivação Conceitos de Processo de Desenvolvimento de Software Atividades que compõem os processos de desenvolvimento de software Modelos de ciclo de vida

30 Processo de Software Conjunto de etapas para especificar, projetar, implementar e testar sistemas de software. Principais atividades: Especificação Desenvolvimento Validação Evolução

31 Etapas do processo: Especificação Momento de definição e compreensão do que o sistema deverá fazer considerando as suas restrições. Estágio particularmente crítico, pois erros nesse estágio conduzem a problemas posteriores no projeto e implementação. Esse processo leva à produção de um documento de requisitos, ou seja, a especificação do sistema.

32 Etapas do processo: Especificação focaliza "o quê" será desenvolvido que informação vai ser processada que função e desempenho são desejados que comportamento pode ser esperado do sistema que interfaces vão ser estabelecidas que restrições de projeto existem que critérios de validação são exigidos para definir um sistema bem sucedido que tarefas serão realizadas

33 Etapas do processo: Especificação Processo de Engenharia de Requisitos

34 Etapas do processo: Desenvolvimento O estágio de implementação e desenvolvimento de software é o processo de conversão de uma especificação em um sistema executável. Envolve a inclusão de formalidades e detalhes, uma vez que o projeto é desenvolvido por meio de revisões constantes. Erros e omissões em estágios anteriores são descobertos.

35 Etapas do processo: Desenvolvimento Focaliza "como" o software será desenvolvido como os dados vão ser estruturados como a função vai ser implementada em uma arquitetura de software como os detalhes procedimentais vão ser implementados como as interfaces vão ser caracterizadas como o projeto será traduzido em uma linguagem de programação como os testes serão efetuados

36 Etapas do processo: Desenvolvimento Modelo Geral do Processo de projeto

37 Etapas do processo: Validação V&V: Validação e Verificação destina-se a mostrar que um sistema está em conformidade com sua especificação e que atende às expectativas do cliente. A cada estágio do processo de software, são aplicados processos de verificação.

38 Etapas do processo: Validação Processo de teste Processo de debugging

39 Etapas do processo: Evolução Evolução: mudanças no software para atender às novas demandas Focaliza as "mudanças" que ocorrerão depois que o software for liberado para uso operacional Essa fase reaplica os passos das fases de especificação e desenvolvimento, mas faz isso no contexto de um software existente

40 Etapas do processo: Evolução As mudanças estão associadas com: correção de erros/defeitos adaptações exigidas conforme o ambiente do software evolui aperfeiçoamentos para incluir funções adicionais que trarão benefícios para os clientes Modificações preventivas para evitar erros e facilitar modificações futuras

41 Exercício 1. Além dos desafios de heterogeneidade, entrega rápida e tratar sistemas legados, identifique outros problemas e desafios que a engenharia de software provavelmente está enfrentando no século Um sistema de museu virtual multimídia que oferece experiências virtuais da Grécia Antiga será desenvolvido para um consórcio de museus europeus. O sistema deve fornecer aos usuários recursos para visualizar modelos 3-D da Grécia Antiga por meio de um navegador Web padrão e deve também suportar uma experiência de imersão em realidade virtual. Que dificuldades organizacionais podem surgir quando o sistema for instalado nos museus que formam os consórcios? 3. Quais as atividades básicas de todo processo de sw? Explique cada uma delas.

42 Sumário Motivação Conceitos de Processo de Desenvolvimento de Software Atividades que compõem os processos de desenvolvimento de software Modelos de ciclo de vida

43 Modelo de ciclo de vida O termo modelo de ciclo de vida é utilizado para descrever um grupo de atividades relacionado ao desenvolvimento de software e a forma como elas se relacionam. Para cada modelo de ciclo de vida existe um relacionamento diferente entre as atividades, determinando formas diferente de se conduzir o processo de construção do produto

44 Modelo de ciclo de vida Os modelos de ciclo de vida, de maneira geral, contemplam apenas as fases do processo de desenvolvimento A escolha de um modelo de processo é fortemente dependente das características do projeto, dentre elas: tipo de software a ser desenvolvido (p.ex., sistema de informação, sistema de tempo real etc.) tipo de desenvolvimento (estruturado, orientado a objetos) tamanho e complexidade do sistema estabilidade dos requisitos características da equipe Assim, é importante conhecer alguns modelos e em que situações são aplicáveis

45 Modelos de ciclo de vida Codifica-Remenda Ciclo de vida em cascata (clássico) Modelo em espiral (Evolutivo) Desenvolvimento incremental Outros modelos Desenvolvimento formal Desenvolvimento baseado em reuso

46 Codifica-remenda O ciclo de vida mais caótico Partindo de uma especificação incompleta, ou mesmo ausente, inicia-se a codificação do software, que por sua vez tende a gerar algo Na maioria das vezes não é o que o cliente deseja, mas vai sendo alterado e consertado até que o produto atinja um estágio que permita seu uso Provavelmente o ciclo de vida mais usado

47 Codifica-remenda Vantagem: modelo é atraente porque não exige nenhuma sofisticação técnica ou gerencial Desvantagem: por outro lado, é um modelo de alto risco, impossível de gerir e que não permite assumir compromissos confiáveis

48 Codifica-remenda É possível que o uso desse modelo de ciclo de vida gere resultados aceitáveis para produtos pequenos e com equipes formadas por poucas pessoas, normalmente por um único desenvolvedor, mas certamente ele só gerará problemas em qualquer projeto envolvendo produtos que requeiram equipes maiores

49 Ciclo de vida clássico Método sistemático e sequencial. O resultado de uma fase constitui na entrada de outra e consiste de um ou mais documentos aprovados. Também é conhecido como cascata. A fase seguinte não deve começar antes que a fase anterior tenha terminado.

50 Ciclo de vida clássico

51 Ciclo de vida clássico Vantagens: Como é executado em seqüência, posssui pontos de controle bem definidos. Estes pontos de controle facilitam muito a gestão dos projetos, o que faz com que este processo seja, em princípio, confiável e utilizável em projetos de qualquer escala apropriado somente quando os requisitos são bem compreendidos

52 Ciclo de vida clássico Desvantagens: Se interpretado literalmente, é um processo rígido e burocrático, onde as atividades de requisitos, análise e desenho têm de ser muito bem dominadas, pois não são permitidos erros Baixa visibilidade para o cliente, que só recebe o resultado ao final do projeto Particionamento inflexível do projeto em fases distintas Isso torna difícil responder a requisitos do usuário que mudam

53 Ciclo de vida clássico Fases: (Sommerville)

54 Desenvolvimento em Espiral Em vez de representar o processo de software como uma sequência de atividades com algum retorno entre uma atividade e outra, o processo é representado como uma espiral Originalmente proposto por Barry Boehm A ideia básica é desenvolver um produto a partir de pequenas versões incrementais, que podem iniciar com um modelo em papel e evoluir até versões do sistema completamente funcionais

55 Desenvolvimento em Espiral Podemos fazer uma comparação com o modelo em cascata: uma volta na espiral equivale à execução do modelo em cascata para uma pequena parte do software. Durante essa volta na espiral, deve ser realizado o levantamento de requisitos para a pequena parte do software que desejamos abordar, a modelagem desses requisitos (análise), o projeto das partes que serão desenvolvidas (desenho), a codificação dessas partes (implementação) e sua verificação (teste). Quando isso acontece temos o início de um novo ciclo e tudo se repete, até que tenhamos todo o produto desenvolvido

56 Modelo do Ciclo de Vida em Espiral

57 Desenvolvimento em Espiral Vantagens: Permite construir produtos em prazos curtos, com novas características e recursos que são agregados na medida em que a experiência descobre sua necessidade As atividades de manutenção são usadas para identificar problemas; seus registros fornecem dados para definir os requisitos das próximas liberações É mais aplicável quando o problema não é bem definido e ele não pode ser totalmente especificado no início do desenvolvimento

58 Desenvolvimento em Espiral Desvantagens: O principal problema do ciclo de vida em espiral é que requer gestão muito sofisticada para ser previsível e confiável É difícil a gerência de projetos e chegar a um número de iterações ótimo

59 Desenvolvimento Incremental Utilizado para construir uma série de versões provisórias, denominadas protótipos Versões parciais do produto são efetivamente entregues aos clientes, para que sejam verificadas, validadas e utilizadas no ambiente operacional Um projeto é dividido em várias iterações, que são as divisões do produto que serão consideradas durante a construção Escolhe-se uma iteração para iniciar o desenvolvimento, começando pelo planejamento, levantamento de requisitos, análise, desenho, implementação, testes e avaliação da iteração, geralmente realizada com a participação do cliente

60 Modelo de ciclo de vida Incremental

61 Desenvolvimento Incremental O modelo incremental sofre dos mesmos problemas do modelo em espiral, no entanto, apresenta como grande vantagem sua alta flexibilidade e visibilidade para os clientes. No entanto, requer gerência sofisticada e uma arquitetura forte, para que o produto inicialmente concebido não esbarre em problemas que impeçam sua continuidade

62 Desenvolvimento Incremental Processos de software famosos, como o XP e Scrum utilizam esse modelo de ciclo de vida. Esses processos são conhecidos como Processos (ou Métodos ou Metodologias) Ágeis, em virtude de darem mais importância ao software funcionando do que qualquer outro artefato gerado durante o desenvolvimento Os Métodos Ágeis surgiram como uma resposta aos métodos mais estruturados, especialmente aos métodos baseados no modelo em cascata

63 Métodos Ágeis A maioria dos métodos ágeis não possui nada de novo em relação aos processos tradicionais. O que os diferencia dos outros métodos são o enfoque e os valores. A ideia dos métodos ágeis é o enfoque nas pessoas e não em processos ou algoritmos. Além disso, existe a preocupação de gastar menos tempo com documentação e mais com a implementação Os conceitos chaves do Manifesto Ágil são: Indivíduos e interações ao invés de processos e ferramentas Software executável ao invés de documentação Colaboração do cliente ao invés de negociação de contratos Respostas rápidas a mudanças ao invés de seguir planos

64 Métodos Ágeis O termo metodologias ágeis tornou-se popular em 2001 quando diversos especialistas em processos de desenvolvimento de software representando as metodologias Extreme Programming (XP), SCRUM, DSDM (Dynamic Systems Development Methodology), Crystal e outros, estabeleceram princípios comuns compartilhados por todos esses métodos. O resultado foi a criação da Aliança Ágil, e o estabelecimento do Manifesto Ágil (Agile Manifesto)

65 Incremental X Evolutivo Incremental Versões parciais do produto são efetivamente entregues aos clientes, para que sejam verificadas, validadas e utilizadas no ambiente operacional Normalmente, os requisitos são bem definidos Evolutivo Quando o problema não é bem definido e ele não pode ser totalmente especificado no início do desenvolvimento, é melhor optar por um modelo evolutivo Não tem compromisso de entregar logo alguma versão para o cliente

66 Desenvolvimento Formal 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

67 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

68 Desenvolvimento baseado em 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

69 Desenvolvimento baseado em reuso Sommerville

70 Principais pontos da aula O processo de desenvolvimento de software consiste de atividades que são envolvidas no desenvolvimento de produtos de software. As atividades básicas deste desenvolvimento são: especificação, desenvolvimento, validação e evolução. Modelos de desenvolvimento são formas organizadas de produzir software.

71 Principais pontos da aula Principais modelos de desenvolvimento: Codifica-Remenda, Ciclo de vida clássico, Desenvolvimento em espiral (evolutivo), Desenvolvimento incremental

72 Referências Bibliográficas Engenharia de Software Capítulo 4 Ian Sommerville 8ª edição Pearson Education Engenharia de Software Capítulo 2 Wilson de Pádua Paula Filho 2ª edição LTC Engenharia de Software Notas de Aula Capítulo 2 Ricardo de Almeida Falbo Universidade Federal do Espírito Santo

73 Exercício 1.Qual é a importância do processo de desenvolvimento de software no desenvolvimento de sistemas? 2.Faça um estudo comparativo entre o modelo de desenvolvimento de software tradicional e o evolutivo.

PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 1. VISÃO GERAL 1.1. PROCESSOS EM GERAL

PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 1. VISÃO GERAL 1.1. PROCESSOS EM GERAL PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 1. VISÃO GERAL 1.1. PROCESSOS EM GERAL Um processo é um conjunto de passos parcialmente ordenados, constituídos por atividades, métodos, práticas e transformações,

Leia mais

Unidade I Conceitos BásicosB. Conceitos BásicosB

Unidade I Conceitos BásicosB. Conceitos BásicosB à Engenharia de Software Unidade I Conceitos BásicosB Pedro de Alcântara dos Santos Neto pasn@ufpi.edu.br 1961 a 1963 Surgimento de novos Hardwares 1963-1968 Crise do Software! Incapacidade de se utilizar

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com Engenharia de Software: conceitos e aplicações Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com 1 Objetivos da aula Apresentar os conceitos de Engenharia de Software e explicar a sua importância.

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que

Leia mais

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software.

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software. Processos de Software Objetivos Apresentar os modelos de processo de software Conjunto coerente de atividades para especificar, projetar, implementar e testar s de software Descrever os diferentes modelos

Leia mais

Processos de Desenvolvimento de Software

Processos de Desenvolvimento de Software Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e

Leia mais

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE Prof. Msc. Hélio Esperidião O QUE É UM ALGORITMO? É qualquer procedimento computacional bem definido que informa algum valor ou conjunto de valores como entrada

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Engenharia de Software Parte I Introdução Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Mitos do Desenvolvimento de Software A declaração de objetivos é suficiente para se construir um software.

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

Professor: Curso: Disciplina:

Professor: Curso: Disciplina: Professor: Curso: Disciplina: Aula 1 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Dinâmica da disciplina, plano de curso e avaliação 03º semestre Prof. Esp. Marcos

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

Leia mais

Especialização em Engenharia de Software e Banco de Dados

Especialização em Engenharia de Software e Banco de Dados Especialização em Engenharia de Software e Banco de Dados Disciplina: Engenharia de Software Tópico: Modelos de Ciclo de Vida Prof. Rodolfo Miranda de Barros rodolfo@uel.br Ciclo de Vida A Engenharia de

Leia mais

Engenharia de Software Processo de Desenvolvimento de Software

Engenharia de Software Processo de Desenvolvimento de Software Engenharia de Software Processo de Desenvolvimento de Software Prof. Edison A. M. Morais prof@edison.eti.br http://www.edison.eti.br Objetivo (1/1) Conceituar PROCESSO E CICLO DE VIDA, identificar e conceituar

Leia mais

PROFESSOR: CRISTIANO MARIOTTI

PROFESSOR: CRISTIANO MARIOTTI PROFESSOR: CRISTIANO MARIOTTI Conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto de software; Considerado um dos principais mecanismos para se obter software de qualidade

Leia mais

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis Profª Esp.: Maysa de Moura Gonzaga 2º Semestre / 2011 Extreme Programming (XP); DAS (Desenvolvimento Adaptativo de Software)

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Processo de software I Ricardo de Sousa Britto rbritto@ufpi.edu.br + O que é Engenharia de Software n Definição dada pela IEEE [IEE93]: n Aplicação de uma abordagem sistemática,

Leia mais

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW Ciclo de Vida Aula 2 Revisão 1 Processo de Desenvolvimento de Software 1 O Processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto

Leia mais

Modelo Cascata. Alunos: Bruno Nocera Zanette Pedro Taques

Modelo Cascata. Alunos: Bruno Nocera Zanette Pedro Taques Modelo Cascata Alunos: Bruno Nocera Zanette Pedro Taques Principais Características Gerenciamento Simples das etapas Também conhecido como "Ciclo de Vida Clássico", sugere uma abordagem sistemática e sequencial

Leia mais

Pós Graduação Engenharia de Software

Pós Graduação Engenharia de Software Pós Graduação Engenharia de Software Ana Candida Natali COPPE/UFRJ Programa de Engenharia de Sistemas e Computação FAPEC / FAT Estrutura do Módulo Parte 1 QUALIDADE DE SOFTWARE PROCESSO Introdução: desenvolvimento

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

DSI é o processo cujo objetivo é introduzir mudanças num sistema de informação, com objetivo de melhorar o seu desempenho.

DSI é o processo cujo objetivo é introduzir mudanças num sistema de informação, com objetivo de melhorar o seu desempenho. - DSI DSI é o processo cujo objetivo é introduzir mudanças num sistema de informação, com objetivo de melhorar o seu desempenho. Preocupação: Problema técnicos Mudança na natureza e conteúdo do trabalho

Leia mais

ENG1000 Introdução à Engenharia

ENG1000 Introdução à Engenharia ENG1000 Introdução à Engenharia Aula 01 Processo de Desenvolvimento de Software Edirlei Soares de Lima Processo de Software O processo de software consiste em um conjunto estruturado

Leia mais

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1. ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1

Capítulo 2. Processos de Software. 2011 Pearson Prentice Hall. Todos os direitos reservados. slide 1 Capítulo 2 Processos de Software slide 1 Tópicos apresentados Modelos de processo de software. Atividades de processo. Lidando com mudanças. Rational Unified Process (RUP). Um exemplo de um processo de

Leia mais

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr Engenharia de Software Apostila I >>> Introdução à ES - HEngholmJr Histórico de Revisões Data Versão Descrição Autor 12/08/2014 1.0 Criação da primeira versão HEngholmJr Agenda Introdução à Engenharia

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE CMP1280/CMP1250 Prof. Me. Fábio Assunção Introdução à Engenharia de Software SOFTWARE Programa de computador acompanhado dos dados de documentação e configuração

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: SIG Aula N : 11 Tema: Como desenvolver e

Leia mais

Fábrica de Software 29/04/2015

Fábrica de Software 29/04/2015 Fábrica de Software 29/04/2015 Crise do Software Fábrica de Software Analogias costumam ser usadas para tentar entender melhor algo ou alguma coisa. A idéia é simples: compara-se o conceito que não se

Leia mais

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

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 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 Cronograma das Aulas. Hoje você está na aula Semana

Leia mais

Processo de Desenvolvimento Unificado

Processo de Desenvolvimento Unificado Processo de Desenvolvimento Unificado Processo de Desenvolvimento de Software? Conjunto de atividades bem definidas; com responsáveis; com artefatos de entrada e saída; com dependências entre as mesmas

Leia mais

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 3 http://www.ic.uff.br/~bianca/engsoft2/ Aula 3-29/04/2006 1 Monitoria Marina Albuquerque E-mail: monitoriaes2@yahoo.com.br Horário de Atendimento: Terça e quinta de 09:00

Leia mais

Princípios da Engenharia de Software Aula 02. Prof.: Franklin M. Correia

Princípios da Engenharia de Software Aula 02. Prof.: Franklin M. Correia Princípios da Engenharia de Software Aula 02 Prof.: Franklin M. Correia Na aula anterior... Introdução a Engenharia de Software O que é software? O que é Engenharia de Software? Conceitos importantes Tipos

Leia mais

Tópicos. Métodos Ágeis. Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Referências Bibliográficas.

Tópicos. Métodos Ágeis. Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Referências Bibliográficas. Métodos Ágeis Edes Garcia da Costa Filho edes_filho@dc.ufscar.br 1 Tópicos Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Extreme Programming (XP). Referências Bibliográficas. 2 Histórico

Leia mais

Universidade Paulista

Universidade Paulista Universidade Paulista Ciência da Computação Sistemas de Informação Gestão da Qualidade Principais pontos da NBR ISO/IEC 12207 - Tecnologia da Informação Processos de ciclo de vida de software Sergio Petersen

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 5 http://www.ic.uff.br/~bianca/engsoft2/ Aula 5-05/05/2006 1 Dúvidas da aula passada RUP (Rational Unified Process) é uma ferramenta ou um processo? Resposta: os dois. O

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

Tecnologias Atuais de. Desenvolvimento de Software

Tecnologias Atuais de. Desenvolvimento de Software Tecnologias Atuais de Desenvolvimento de Software volução dos Processos de Desenvolvimento de Software Prof. Luiz Antônio lpereira@uninet.com.br Agenda onceitos volução dos Processos de Software Modelos

Leia mais

MANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças.

MANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças. METODOLOGIAS ÁGEIS SURGIMENTO As metodologias ágeis surgiram em resposta ao problema dos atrasos no desenvolvimento de software e aos cancelamentos, devido ao fato dos sistemas demorarem muito tempo para

Leia mais

Desenvolvimento Ágil de Software

Desenvolvimento Ágil de Software Desenvolvimento Ágil de Software Métodos ágeis (Sommerville) As empresas operam em um ambiente global, com mudanças rápidas. Softwares fazem parte de quase todas as operações de negócios. O desenvolvimento

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Processos de software Departamento de Matemática Universidade dos Açores Hélia Guerra helia@uac.pt Processo Um processo é uma série de etapas envolvendo actividades, restrições e

Leia mais

UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas

UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas 4.1 Motivação Sistemas de Informação são usados em diversos níveis dentro de uma organização, apoiando a tomada de decisão; Precisam estar

Leia mais

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva. juliocesar@tecnocracia.eti.br. Http://e-academy.com.br

Faculdade Pitágoras. Engenharia de Software. Prof.: Julio Cesar da Silva. juliocesar@tecnocracia.eti.br. Http://e-academy.com.br Faculdade Pitágoras Engenharia de Software Prof.: Julio Cesar da Silva juliocesar@tecnocracia.eti.br Http://e-academy.com.br Evolução do Software (1950 1965) - O hardware sofreu contínuas mudanças - O

Leia mais

Prof. Me. Marcos Echevarria

Prof. Me. Marcos Echevarria Prof. Me. Marcos Echevarria Introdução a engenharia de software; Conceito de análise orientada a objetos; UserStories; Requisitos de software; Técnicas de levantamento de requisitos; Modelo de casos de

Leia mais

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT Disciplina: Modelagem a Programação Orientada a Objetos

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

Processos de Software

Processos de Software Processos de Software Prof. Márcio Lopes Cornélio Slides originais elaborados por Ian Sommerville O autor permite o uso e a modificação dos slides para fins didáticos O processo de Um conjunto estruturado

Leia mais

MUDANÇAS NA ISO 9001: A VERSÃO 2015

MUDANÇAS NA ISO 9001: A VERSÃO 2015 MUDANÇAS NA ISO 9001: A VERSÃO 2015 Está em andamento o processo de revisão da Norma ISO 9001: 2015, que ao ser concluído resultará na mudança mais significativa já efetuada. A chamada família ISO 9000

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Processo de Software Thiago P. da Silva thiagosilva.inf@gmail.com Agenda Revisando Engenharia de Software Engenharia de Sistemas Processo de software Fases Genéricas de Modelos de

Leia mais

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti. TI Aplicada Aula 02 Áreas e Profissionais de TI Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

Modelos de Processo (métodos)

Modelos de Processo (métodos) Modelos de Processo (métodos) Um modelo de processo ou método define um conjunto de atividades específicas. Principais modelos: Cascata (Waterfall) Espiral (Spiral) Evolutivo Incremental Processo Unificado

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Profissões de TI Prof. MSc. Edilberto Silva edilms@yahoo.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos respectivos

Leia mais

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 Índice 1. Importância do ERP para as organizações...3 2. ERP como fonte de vantagem competitiva...4 3. Desenvolvimento e implantação de sistema de informação...5

Leia mais

Implantação. Prof. Eduardo H. S. Oliveira

Implantação. Prof. Eduardo H. S. Oliveira Visão Geral A implantação de um sistema integrado de gestão envolve uma grande quantidade de tarefas que são realizadas em períodos que variam de alguns meses a alguns anos, e dependem de diversos fatores,

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas

Leia mais

REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO

REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO Capítulo 12 REPROJETO DA ORGANIZAÇÃO COM SISTEMAS DE INFORMAÇÃO 12.1 2003 by Prentice Hall OBJETIVOS De que forma o desenvolvimento de um novo sistema poderia mudar a maneira de uma organização trabalhar?

Leia mais

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil Profª Esp.: Maysa de Moura Gonzaga 2º Semestre / 2011 O Processo Unificado dos autores Ivar Jacobson, Grady Booch e James

Leia mais

Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação UFJF

Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação UFJF Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação UFJF 1. Identificação de um problema a ser implementado 2. Análise

Leia mais

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

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura

Leia mais

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Engenharia de Software: Introdução Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Programa 1. O processo de engenharia de software 2. UML 3. O Processo Unificado 1. Captura de requisitos 2.

Leia mais

O modelo unificado de processo. O Rational Unified Process, RUP.

O modelo unificado de processo. O Rational Unified Process, RUP. Cursos: Sistemas de Informação Disciplina: Administração ADM Prof. Jarbas Avaliação: Prova B1, 5º/6º semestres Data: 27/09/2010 Nome: Gabarito RA: Assinatura: Turma: 1) Segundo as afirmações a seguir,

Leia mais

Processo Unificado (RUP)

Processo Unificado (RUP) Fases do Desenvolvimento Processo Unificado (RUP) Ulf Bergmann ulf@ime.eb.br Domínio do Problema Objetos Objetos do do Mundo Mundo real real Modelo Semântico Domínio da Solução Aplicação Interface Serviços

Leia mais

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

Requisitos de Software. Teresa Maciel DEINFO/UFRPE Requisitos de Software Teresa Maciel DEINFO/UFRPE 1 Requisito de Software Características que o produto de software deverá apresentar para atender às necessidades e expectativas do cliente. 2 Requisito

Leia mais

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br Gerenciamento de projetos cynaracarvalho@yahoo.com.br Projeto 3URMHWR é um empreendimento não repetitivo, caracterizado por uma seqüência clara e lógica de eventos, com início, meio e fim, que se destina

Leia mais

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria Agenda Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria Introdução Processo de software é o conjunto de ferramentas, métodos

Leia mais

Fundamentos de Teste de Software

Fundamentos de Teste de Software Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 2- Teste Estático e Teste Dinâmico Aula 3 Teste Estático SUMÁRIO INTRODUÇÃO... 3 1. Definição... 3 2. Custo Versus Benefício...

Leia mais

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

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC CURSO: Bacharelado em Ciência da Computação DISCIPLINA: ANPS Análise e Projeto de Sistemas AULA NÚMERO: 3 DATA: PROFESSOR: Murakami Sumário 1 APRESENTAÇÃO...1 2 DESENVOLVIMENTO...1 2.1 Revisão...1 2.1.1

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

Metodologias Ágeis. Aécio Costa

Metodologias Ágeis. Aécio Costa Metodologias Ágeis Aécio Costa Metodologias Ágeis Problema: Processo de desenvolvimento de Software Imprevisível e complicado. Empírico: Aceita imprevisibilidade, porém tem mecanismos de ação corretiva.

Leia mais

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Versão 1.6 15/08/2013 Visão Resumida Data Criação 15/08/2013 Versão Documento 1.6 Projeto Responsáveis

Leia mais

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues Modelo De Desenvolvimento De Software É uma representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas e interrelacionadas

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Conteúdo Definição Questionamentos Típicos Visão Geral Ciclo de Vida dos Requisitos Síntese dos Objetivos Gerência de Mudança Identificação de Requisitos Classificação de Requisitos

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA-UFES Departamento de Computação

Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA-UFES Departamento de Computação Centro de Ciências Agrárias Departamento de Computação Visão Geral do Processo de Desenvolvimento de Software Introdução à Ciência da Computação Introdução à Ciência da Computação COM06850-2015-II Prof.

Leia mais

Governança de TI. ITIL v.2&3. parte 1

Governança de TI. ITIL v.2&3. parte 1 Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços

Leia mais

XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp web@cercomp.ufg.br

XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp web@cercomp.ufg.br XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp web@cercomp.ufg.br Introdução Criada por Kent Baeck em 1996 durante o projeto Daimler Chrysler. O sucesso

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Prof. José Honorato F.N. Prof. José Honorato F.N. honoratonunes@gmail.com Requisitos de Software Software é o conjunto dos programas e dos meios não materiais que possibilitam o

Leia mais

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software Análise e Projeto de Sistemas Análise e Projeto de Sistemas Contextualização ENGENHARIA DE SOFTWARE ANÁLISE E PROJETO DE SISTEMAS ENGENHARIA DA INFORMAÇÃO Perspectiva Histórica Engenharia de Software 1940:

Leia mais

Qualidade de Processo de Software Normas ISO 12207 e 15504

Qualidade de Processo de Software Normas ISO 12207 e 15504 Especialização em Gerência de Projetos de Software Qualidade de Processo de Software Normas ISO 12207 e 15504 Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br Qualidade de Software 2009 Instituto

Leia mais

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

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software O que é software? Software e Engenharia de Software Programas de computador Entidade abstrata. Ferramentas (mecanismos) pelas quais: exploramos os recursos do hardware. executamos determinadas tarefas

Leia mais

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17

PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17 PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO MÓDULO 17 Índice 1. Conceitos de Ciclo de Desenvolvimento de Sistemas...3 1.1. Principais Fases... 3 1.2. Técnicas... 4 1.3. Papéis de Responsabilidades... 4 1.3.1.

Leia mais

5. Métodos ágeis de desenvolvimento de software

5. Métodos ágeis de desenvolvimento de software Engenharia de Software 5. Métodos ágeis de desenvolvimento de software Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Desenvolver e entregar software o mais rapidamente possível é hoje em dia um dos

Leia mais