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

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

MAPS: Um Modelo de Adaptação de Processos de Software Ciro Carneiro Coelho Orientador Prof. Hermano Perrelli de Moura.

Apresentações semelhantes


Apresentação em tema: "MAPS: Um Modelo de Adaptação de Processos de Software Ciro Carneiro Coelho Orientador Prof. Hermano Perrelli de Moura."— Transcrição da apresentação:

1 MAPS: Um Modelo de Adaptação de Processos de Software Ciro Carneiro Coelho Orientador Prof. Hermano Perrelli de Moura

2 CIn - UFPECiro Carneiro Coelho2 Roteiro Introdução –Motivação –Objetivos MAPS –Visão Geral –Modelo de Caracterização de Projetos –PConfig –Base de Processos

3 CIn - UFPECiro Carneiro Coelho3 Roteiro Estudo de Caso –Considerações Gerais –Abordagem Utilizada –Adaptação para o Projeto A –Adaptação para o Projeto B –Análise dos Resultados Conclusões –Principais Contribuições –Dificuldades Encontradas –Trabalhos Futuros

4 Introdução

5 CIn - UFPECiro Carneiro Coelho5 Motivação As exigências do mercado de software são cada vez maiores As empresas de software são obrigadas a buscar formas de melhorar o desenvolvimento de software A demanda por um desenvolvimento mais estruturado levou ao surgimento de inúmeros processos de desenvolvimento de software Introdução  Motivação

6 CIn - UFPECiro Carneiro Coelho6 Motivação Um processo de desenvolvimento de software é “um conjunto de atividades, métodos, práticas e transformações que as pessoas empregam para desenvolver e manter software e produtos associados” (MCT/SEPIN) Introdução  Motivação

7 CIn - UFPECiro Carneiro Coelho7 Motivação Um número cada vez maior de organizações tem adotado um processo padrão de desenvolvimento de software –Facilita treinamento –Permite melhoria do processo –Melhora a comunicação entre os membros da equipe –Torna o desenvolvimento mais previsível Não existe um processo único que se adeqüe a todas as situações Introdução  Motivação

8 CIn - UFPECiro Carneiro Coelho8 Motivação A utilização de um processo inadequado pode causar o fracasso de um projeto Introdução  Motivação P I3I3 I2I2 I1I1 Peso do Processo Probabilidade de Sucesso

9 CIn - UFPECiro Carneiro Coelho9 Motivação O processo padrão de uma organização deve ser adaptado para cada projeto A adaptação de processos não é uma tarefa trivial –Exige esforço e conhecimento –Os resultados da adaptação são incertos Um método sistemático de adaptação de processos pode diminuir o esforço de adaptação, e diminuir a incerteza quanto ao processo adaptado Introdução  Motivação

10 CIn - UFPECiro Carneiro Coelho10 Objetivos Estabelecer um modelo de adaptação do processo padrão de uma organização para projetos específicos Fornecer mecanismos para diminuir o esforço necessário para realizar a adaptação de processos Permitir a melhoria contínua dos processos utilizados pela organização Estar em conformidade com o nível 3 do CMM, que define uma estrutura para a utilização e adaptação dos processos da organização Introdução  Objetivos

11 MAPS

12 CIn - UFPECiro Carneiro Coelho12 Visão Geral Modelo de Adaptação de Processos de Software É um modelo que auxilia a adaptação de um processo padrão para projetos específicos e promove o reuso e melhoria de processos de software É baseado nas características dos projetos e nos artefatos do processo padrão É compatível com o nível 3 do CMM Atualmente, contempla apenas a disciplina Planejamento e Gerenciamento MAPS  Visão Geral

13 gera melhora fornece Processo Padrão modifica é entrada para permite Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo é aplicado a fornece gera Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos

14 melhora fornece gera é entrada para permite é aplicado a fornece gera Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos

15 gera permite fornece melhora fornece Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica é entrada para é aplicado a gera 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos

16 gera permite fornece melhora fornece Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos é entrada para é aplicado a gera

17 é aplicado a gera permite fornece melhora fornece Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos gera é entrada para

18 gera permite é aplicado a fornece melhora fornece Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos é entrada para gera

19 permite é aplicado a fornece melhora fornece Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos é entrada para gera

20 permite é aplicado a fornece melhora fornece Processo Padrão modifica Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica 1.Identificação das Características 2.Comparação de Projetos 3.Reuso de Processos 4.Complementação do Processo 5.Utilização do Processo 6.Avaliação do Processo 7.Alimentação da Base de Processos é entrada para gera

21 melhora fornece Processo Padrão modifica é entrada para permite Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo é aplicado a fornece gera Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica

22 CIn - UFPECiro Carneiro Coelho22 Modelo de Caracterização de Projetos Realiza uma comparação de projetos de software, permitindo identificar projetos semelhantes e facilitando, assim, o reuso de processos A comparação é feita entre as disciplinas do processo, e não em relação ao processo completo –Menor complexidade no desenvolvimento e utilização do modelo –Maior facilidade para encontrar projetos semelhantes MAPS  Modelo de Caracterização de Projetos

23 CIn - UFPECiro Carneiro Coelho23 Características Selecionadas Para a disciplina Planejamento e Gerenciamento, a comparação entre projetos é feita a partir das seguintes características: –Tamanho da Equipe –Distribuição Geográfica da Equipe –Experiência da Equipe no Processo –Criticidade do Software –Custo do Projeto MAPS  Modelo de Caracterização de Projetos  Características Selecionadas

24 CIn - UFPECiro Carneiro Coelho24 Nível 1Nível 2Nível 3Nível 4Nível 5 Tamanho da Equipe Muito pequena (1-6 pessoas) Pequena (7-20 pessoas) Média (21-50 pessoas) Grande (51-100 pessoas) Muito grande (+100 pessoas) Distribuição Geográfica da Equipe Mesma sala Mesmo prédio, salas diferentes Mesma cidade, mesma empresa, prédios diferentes Mesma cidade, empresas diferentes Cidades diferentes Experiência da Equipe Nenhum projeto1 projeto2 a 3 projetos4 a 5 projetos+5 projetos Criticidade do Software Perda de conforto Prejuízos baixos, perdas facilmente recuperáveis Prejuízos moderados, perdas recuperáveis Prejuízos baixos, perdas irrecuperáveis Risco de vida Custo do Projeto Até R$ 50.000,00 Entre R$50.000,00 e R$150.000,00 Entre R$150.000,00 e R$1.000.000,00 Entre R$1.000.000,00 e R$3.000.000,00 Mais de R$3.000.000,00 Caracterização dos Projetos MAPS  Modelo de Caracterização de Projetos  Caracterização dos Projetos

25 CIn - UFPECiro Carneiro Coelho25 O grau de semelhança S D entre dois projetos P e P’, em relação a uma disciplina D, é dado por: onde:  m é o número total de características que impactam D  n i e n i ’ são os níveis de classificação dessas características em P e P’, respectivamente  | n i - n i ’| representa a diferença de níveis para cada característica de P e P’ Comparação de Projetos MAPS  Modelo de Caracterização de Projetos  Comparação de Projetos

26 CIn - UFPECiro Carneiro Coelho26 Comparação de Projetos Caso 1: S D = 1 –projetos totalmente semelhantes em relação a D Caso 2: 0,5  S D < 1 –projetos muito semelhantes em relação a D Caso 3: 0  S D < 0,5 –projetos pouco semelhantes em relação a D Caso 4: S D < 0 –projetos não semelhantes em relação a D MAPS  Modelo de Caracterização de Projetos  Comparação de Projetos

27 CIn - UFPECiro Carneiro Coelho27 Estratégia de Reuso de Processos Caso 1: reuso direto das partes do processo relativas à disciplina em questão Caso 2: reuso das partes do processo relativas à disciplina em questão com adaptações Caso 3: a definição do novo processo deve ser feita a partir da comparação entre o processo já utilizado, que está sendo reusado, e o processo padrão da organização Caso 4: a definição do novo processo deve ser feita a partir do processo padrão da organização MAPS  Modelo de Caracterização de Projetos  Estratégia de Reuso de Processos

28 gera melhora fornece Processo Padrão modifica é entrada para permite Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo é aplicado a fornece gera Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica

29 CIn - UFPECiro Carneiro Coelho29 PConfig PConfig é um processo de configuração de processos de software para projetos específicos. Baseia-se na escolha dos artefatos do processo padrão que farão parte do processo adaptado de acordo com as características do projeto PConfig é dependente do processo padrão que a organização utiliza. A versão atual do MAPS utiliza o Rational Unified Process (RUP) como processo padrão MAPS  PConfig

30 CIn - UFPECiro Carneiro Coelho30 Processo PConfig Passo 1: Identificar os artefatos do processo padrão que são adaptáveis Passo 2: Para cada característica, fazer uma matriz com os níveis de classificação da característica e os artefatos da disciplina impactada, identificando, para cada nível, os artefatos que serão produzidos, não serão produzidos ou serão produzidos com restrições, ou ainda os artefatos que são indiferentes à característica MAPS  PConfig  Processo PConfig

31 CIn - UFPECiro Carneiro Coelho31 Processo PConfig Tamanho da Equipe Artefatos1-6 pessoas 7-20 pessoas 21-50 pessoas 51-100 pessoas +100 pessoas Artefato 1NNRSS Artefato 2SSSSS Artefato 3IIIII Artefato 4NNNNS MAPS  PConfig  Processo PConfig

32 CIn - UFPECiro Carneiro Coelho32 Processo PConfig Passo 3: Para cada característica, selecionar a coluna da matriz correspondente à característica do projeto 7-20 pessoas Artefato 1N Artefato 2S Artefato 3I Artefato 4N MAPS  PConfig  Processo PConfig

33 CIn - UFPECiro Carneiro Coelho33 Processo PConfig Passo 4: Para cada disciplina, fazer uma sobreposição das colunas selecionadas de cada característica que impacta a disciplina para decidir que artefatos devem ser produzidos Passo 5: Completar a lista de artefatos. Caso algum artefato seja indiferente a todas as características, decidir se ele será ou não produzido MAPS  PConfig  Processo PConfig

34 CIn - UFPECiro Carneiro Coelho34 Processo PConfig Passo 6: Realizar adaptação do processo. De posse da lista de artefatos que serão produzidos, identificar as atividades necessárias para a produção desses artefatos e os papéis responsáveis pelas atividades Passo 7: Análise do Engenheiro de Processos MAPS  PConfig  Processo PConfig

35 gera melhora fornece Processo Padrão modifica é entrada para permite Planejamento Inicial do Projeto Comparação de Projetos e Reuso de Processos Avaliação Final do Processo é aplicado a fornece gera Modelo de Caracterização de Projetos PConfig Projeto Base de Processos Características do Projeto Processo Preliminar Processo Adaptado alimenta fornece Avaliação Parcial do Processo modifica

36 CIn - UFPECiro Carneiro Coelho36 Base de Processos Armazena o conhecimento adquirido sobre a utilização de processos em projetos passados –Informações sobre os projetos passados e suas características –O processo de software utilizado em cada projeto Artefatos Selecionados Artefatos Não Selecionados Artefatos Incluídos Artefatos Excluídos –Uma avaliação de cada processo utilizado, artefato por artefato MAPS  Base de Processos

37 Estudo de Caso

38 CIn - UFPECiro Carneiro Coelho38 Considerações Gerais O RUP foi adaptado, utilizando o MAPS, para dois projetos, Projeto A e Projeto B Os projetos não utilizaram realmente os processos gerados pelo MAPS, foi feito apenas um estudo comparativo A organização onde o estudo de caso foi realizado utiliza um processo padrão fortemente baseado no RUP A adaptação através do MAPS foi avaliada com e sem reuso de processos Estudo de Caso  Considerações Gerais

39 CIn - UFPECiro Carneiro Coelho39 Abordagem Utilizada Passo 1: Escolha dos projetos Passo 2: Caracterização dos projetos Passo 3: Adaptação do processo para o Projeto A Passo 4: Avaliação e compatibilização dos processos do Projeto A Passo 5: Adaptação do processo para o Projeto B Passo 6: Avaliação e compatibilização dos processos do Projeto B Passo 7: Análise dos resultados obtidos Estudo de Caso  Abordagem Utilizada

40 CIn - UFPECiro Carneiro Coelho40 Adaptação para o Projeto A Adaptação com base apenas no PConfig O Processo MAPS e o Processo Real foram diferentes em relação a 5 artefatos Em relação à avaliação do gerente do projeto, o Processo MAPS foi mais adequado em 3 casos e o Processo Real foi mais adequado em 2 casos Estudo de Caso  Adaptação para o Projeto A

41 CIn - UFPECiro Carneiro Coelho41 Adaptação para o Projeto B Adaptação utilizando reuso de processos Estudo de Caso  Adaptação para o Projeto B CaracterísticaProjeto AProjeto B Tamanho da EquipeNível 3Nível 2 Distribuição Geográfica da Equipe Nível 2 Experiência da EquipeNível 1 Criticidade do Software Nível 3 Tamanho do ProjetoNível 4 Caso 2: 0,5  S PG < 1 reuso das partes do processo relativas à disciplina em questão com adaptações

42 CIn - UFPECiro Carneiro Coelho42 Adaptação para o Projeto B A diferença entre o Processo MAPS e o Processo Real resumiu-se a 3 artefatos Em relação à avaliação do gerente do projeto, o Processo MAPS foi mais adequado em 2 casos. Para 1 artefato, não foi possível determinar qual dos processos foi o mais adequado O reuso de processos trouxe melhoria para 4 artefatos, em relação à adaptação feita sem utilizar reuso Estudo de Caso  Adaptação para o Projeto B

43 CIn - UFPECiro Carneiro Coelho43 Adaptação para o Projeto B O esforço de adaptação utilizando reuso foi mínimo Uma lição aprendida no Projeto A diminuiu o esforço necessário para a produção de um artefato no Projeto B Estudo de Caso  Adaptação para o Projeto B

44 CIn - UFPECiro Carneiro Coelho44 Análise dos Resultados O PConfig está relativamente bem ajustado, mas é preciso adaptá-lo às condições específicas da organização desenvolvedora O reuso de processos possui um grande potencial, tanto do ponto de vista da diminuição do esforço de adaptação quanto do ponto de vista da melhoria dos processos adaptados Existe a necessidade de uma ferramenta que automatize a comparação de projetos e facilite a escolha do processo a ser reusado Estudo de Caso  Análise dos Resultados

45 Conclusões

46 CIn - UFPECiro Carneiro Coelho46 Principais Contribuições Um modelo (MAPS) para adaptação de processos de software a partir de um processo padrão. O MAPS contempla, ainda, a avaliação, melhoria e reuso dos processos adaptados. O MAPS tem, como objetivo final, o estabelecimento de uma “família” de processos adaptados, todos derivados do processo padrão, em que cada membro da “família” é um processo adaptado, testado e aprovado para uma circunstância específica Um Modelo de Caracterização de Projetos que permite comparar projetos de software a partir de suas características Conclusões  Principais Contribuições

47 CIn - UFPECiro Carneiro Coelho47 Principais Contribuições Uma análise das principais características dos projetos de desenvolvimento de software que influenciam o planejamento e o gerenciamento desses projetos O relacionamento entre os artefatos da disciplina Planejamento e Gerenciamento do RUP e as características que influenciam a disciplina, identificando, caso a caso, a necessidade de produzir, ou não, cada artefato Conclusões  Principais Contribuições

48 CIn - UFPECiro Carneiro Coelho48 Trabalhos Relacionados Barros –Estratégia para armazenar e reusar o conhecimento sobre gerenciamento de projetos utilizando cenários –Não trata da adaptação de processos –Não se limita a representar os processos utilizados Borges e Falbo –ProKnowHow, ferramenta para apoiar a adaptação de processos, a coleta e disseminação do conhecimento adquirido e a melhoria do processo padrão –O reuso está focado em melhores práticas (técnicas, idéias, utilização de ferramentas) e não em disciplinas do processo Conclusões  Trabalhos Relacionados

49 CIn - UFPECiro Carneiro Coelho49 Trabalhos Relacionados Budlong e Szulewski –Método de adaptação baseado em “blocos de construção” –Não existe mecanismo para reuso de processos –Não é feita correspondência entre os “blocos de construção” e as características dos projetos Cameron –Descrição dos artefatos dos processo e das circunstâncias sob as quais cada artefato deve ser produzido –É feita apenas uma descrição do método de adaptação, sem detalhes sobre que condições ou características devem ser considerados –Não existe mecanismo para reuso de processos Conclusões  Trabalhos Relacionados

50 CIn - UFPECiro Carneiro Coelho50 Trabalhos Relacionados Henninger –BORE, ferramenta para capturar as mudanças feitas no processo padrão e as circunstâncias em que essas mudanças foram feitas, utilizando essas informações para auxiliar a adaptação de processos –Não existe uma definição de que características impactam o processo –Não é detalhada uma forma de recuperar as informações do BORE para realizar a adaptação em projetos semelhantes Conclusões  Trabalhos Relacionados

51 CIn - UFPECiro Carneiro Coelho51 Trabalhos Relacionados Machado –Ferramenta (DEF-PRO) e modelo para definição e adaptação de processos de software com base na norma ISO 12207 –O ponto de partida para a adaptação é a norma, e não um processo padrão. São descritos alguns critérios de adaptação, mas, como não existe um processo padrão, não existe uma correspondências entre esses critérios e os artefatos do processo –Não existe mecanismo para reuso de processos Conclusões  Trabalhos Relacionados

52 CIn - UFPECiro Carneiro Coelho52 Dificuldades Encontradas Complexidade do Processo de Software –O grande número de características que impactam o processo de software –A complexidade das disciplinas do processo –A falta de conhecimentos específicos sobre cada disciplina Estudo de Caso –Tempo –Disponibilidade de projetos Conclusões  Dificuldades Encontradas

53 CIn - UFPECiro Carneiro Coelho53 Trabalhos Futuros Detalhamento de outras disciplinas do processo Desenvolvimento do PConfig para outros processos Automação da comparação de projetos Avaliação do MAPS Integração com outros trabalhos Conclusões  Trabalhos Futuros

54 MAPS: Um Modelo de Adaptação de Processos de Software Ciro Carneiro Coelho Orientador Prof. Hermano Perrelli de Moura


Carregar ppt "MAPS: Um Modelo de Adaptação de Processos de Software Ciro Carneiro Coelho Orientador Prof. Hermano Perrelli de Moura."

Apresentações semelhantes


Anúncios Google