Linguagem de Padrões para Planejamento de Medição de Software para o CEP

Documentos relacionados
Linguagem de Padrões para apoiar o Planejamento de Medição para o Controle Estatístico de Processos de Software

Componentes e Requisitos de um Ambiente Baseado em Conhecimento para Análise de Desempenho de Processos de Software

Avaliação de Processos de Software na Estação Taba

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

Estudo de Caso COMPOOTIM Parte I Criação da Linha

Análise de Sistemas. Aula 5

Modelagem de Interação e Navegação de Sistemas Interativos: Protocolo de um Mapeamento Sistemático da Literatura

Garantia da Qualidade, Medição e Melhoria. Leonardo Gresta Paulino Murta

Gerenciamento Objetivo de Projetos com PSM

Project Builder: Apoio a Gestão de Projetos do Nível G ao C do MPS.BR

Ontology Patterns. Ricardo de Almeida Falbo. Engenharia de Ontologias Departamento de Informática Universidade Federal do Espírito Santo

Implantando Pontos de Função com PSM

Gerência de Integração

UERJ Programa de Pós-graduação em Engenharia Mecânica (PPGEM) Seminary Class

Nesta seção você encontra artigos voltados para testes, processo, modelos, documentação, entre outros

DIAGNÓSTICO DE MATEMÁTICA

Uma Infra-estrutura para Gerência de Conhecimento em ODE

SABiO: Systematic Approach for Building Ontologies

Instituto Federal da Bahia Análise e Desenvolvimento de Sistemas INF022 Tópicos Avançados. Medição de Sofware

Service quality in restaurants: an experimental analysis performed in Brazil

Garantia da Qualidade, Medição e Melhoria. Leonardo Gresta Paulino Murta

Uma Abordagem de Apoio à Realização de Controle Estatístico de Processos de Software em Organizações de Alta Maturidade

Inflation Expectations and Behavior: Do Survey Respondents Act on their Beliefs? O. Armantier, W. Bruine de Bruin, G. Topa W. VanderKlaauw, B.

Utilizando um modelo de maturidade para implementar um programa de métricas. Márcio Silveira EDS - - Electronic Data Systems do do Brasil Ltda.

Prof. Fábio Lúcio Meira

Padrões de Qualidade de Software

Visão Geral de Engenharia de Software

Qualidade, Processos e Gestão de Software no contexto de Sitemas Embarcados. Metodologias Ágeis. Guilherme A. Dantas

Uma Abordagem Baseada em Ontologias para Integração Semântica de Ferramentas de Apoio à Medição de Software

10/09/2012. Preliminary Guidelines for Empirical Research in Software Engineering

ORIENTAÇÕES PARA SEMINÁRIOS TEMÁTICOS E TRABALHO FINAL TEMAS PROPOSTOS

PROVA DE EXATAS QUESTÕES EM PORTUGUÊS:

Felipe Beltrán Rodríguez 1, Eng., Master Student Prof. Erlon Cristian Finardi 1, D. Eng., Advisor Welington de Oliveira 2, D.Sc.

Normas ISO:

Desenvolvido pelo Software Engineering Institute-SEI em 1992 Possui representação por estágios (5 níveis)e contínua (6 níveis)

Reúso de Software: o cenário industrial brasileiro

Workshop Paraense de Tecnologia de Software PROCESSO DE MEDIÇÃO. Fabrício Medeiros Alho

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

UNIVERSIDADE FEDERAL DE PERNAMBUCO. Aplicando a Abordagem GQM para Avaliar o Impacto da Adoção da Metodologia Ágil Scrum

UPGRADE Engineering Bulletin Dec 02

SUPLEMENTO AO DIPLOMA DA UNIVERSIDADE DO MINHO MESTRADO EM DESIGN E MARKETING (2º CICLO)

A Method to Select Strategies and Indicators for IT Services

BR localization: Hotfix 003. Technical documentation Documentação Técnica Version Dec 12, de Dezembro de 2018

Instrução Normativa nº 10, de 19/12/2018

Ontologias: Definições e Tipos

PRIMARY HEALTHCARE EVALUATION

English version at the end of this document

Universidade Federal de Pernambuco

Ontologias: Definições e Tipos

Um Método para Melhoria de Dados Estruturados de Imóveis

Política de. Gestão de Serviços. Service Management Policy. A direcção pretendida The desired direction

Escopo: PROCESSOS FUNDAMENTAIS

A ENTREVISTA COMPREENSIVA: UM GUIA PARA PESQUISA DE CAMPO (PORTUGUESE EDITION) BY JEAN-CLAUDE KAUFMANN

Uma Notação Visual para Representação de Linguagens de Padrões Ontológicos

Padrões de Projeto de Software

Integração de Ontologia com Modelagem de Processo: Um Método para Facilitar a Elicitação de Requisitos

NORMAS DE FUNCIONAMENTO DOS CURSOS DE LÍNGUAS (TURMAS REGULARES E INTENSIVAS) 2015/2016

Elicitação de requisitos de software através da utilização de questionários

Resumo. Palavras-chave: Balanced Scorecard, competitividade, activos intangíveis, estratégia, gestão estratégica. -i-

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

Visão Geral do RUP.

Rule Set Each player needs to build a deck of 40 cards, and there can t be unit of different faction on the same deck.

ICET CURSO: Ciência da Computação e Sistemas de Informação (Engenharia de Software) Campus: Data: / / Nome:

ISO/IEC Roteiro IEC ISO. Histórico ISO/IEC ISO

Introdução À Engenharia De Software Com Foco No RUP: Rational Unified Process

Experiência de uso de Mapeamento de Processos de Negócio como ferramente de apoio ao Levantamento e Elicitação de Requisitos de Software

Aplicação da Análise de Sistemas à Definição de Processos de Desenvolvimento de Software

ALEXANDRE COTTINI MENDES. Cálculo da eficiência do gerenciamento de projetos utilizando uma analogia com a termodinâmica

Introdução. Introdução. Introdução. Planejamento da disciplina. Modelagem de Processos de Negócio. Prof.: Clarindo Isaías Pereira da Silva e Pádua

RUP Rational Unified Proccess (Processo Unificado da Rational) Equipe WEB Cercomp

Quais as Bases do Comprometimento dos Indivíduos da Geração Y em uma Empresa do Setor Privado no Brasil?

Análise de Pontos de Função

Requisitos de Ontologias

MARCELO EDUARDO GIACAGLIA MODELAGEM DE DADOS PARA PLANEJAMENTO E GESTÃO OPERACIONAL DE TRANSPORTES

Insper Instituto de Ensino e Pesquisa Certificate in Business and People Management - CBPM. Nome completo

English version at the end of this document

Engenharia de Software

Instruções para elaboração de TCC - CBPM PLANO DE DESENVOLVIMENTO DE EQUIPE DE PROCESSO

VGM. VGM information. ALIANÇA VGM WEB PORTAL USER GUIDE June 2016

Project Management Activities

SUPLEMENTO AO DIPLOMA DA UNIVERSIDADE DO MINHO MESTRADO EM ENGENHARIA INDUSTRIAL (2º CICLO)

Bases do Comprometimento da Geração Y em uma Empresa Pública: um estudo de caso

Divisão de Engenharia Mecânica. Programa de Pós-Graduação em Engenharia Aeronáutica e Mecânica. Prova de Seleção para Bolsas 1 o semestre de 2014

ESTUDO DE VARIÁVEIS METEOROLÓGICAS PARA ANÁLISE DE MICROCLIMA, USANDO TECNOLOGIA DE BAIXO CUSTO

Requisitos de Sistemas

Metodologia da Pesquisa em Sistemas de Informação. Aula 3. Projeto de Pesquisa. Revisão Sistemática. Profa. Fátima L. S. Nunes

ENGENHARIA DE SOFTWARE

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

Pesquisa Qualitativa do Início ao Fim (Métodos de Pesquisa) (Portuguese Edition)

Engenharia de Software para Sistemas Embarcados

Agradeço a Deus, aos meus amigos Ana e Paulo locks sem os quais eu não teria conseguido concluir este curso, ao meu orientador Prof.

English version at the end of this document

Projeto de Sistema Produtivo para um Novo Serviço em uma Empresa de Consultoria

Engenharia de Software

Simulação Digital: Modelos Digitais Fotorealísticos no Mapeamento. de Patologias em Projetos de Restauração

Qualidade de Software: Visão Geral. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa


Tool. Initial Change Description. (English and Brazilian Portuguese) 2012 Changefirst Limited

Introdução à Gestão de Processos de Negócios

Poder sem limites - o caminho do sucesso pessoal pela programação neurolinguística

Transcrição:

Linguagem de Padrões para Planejamento de Medição de Software para o CEP Daisy F. Brito 1 Monalessa P. Barcellos 1 Gleison Santos 2 1 NEMO - PPGI - Universidade Federal do Espírito Santo 2 PPGI - Universidade Federal do Estado do Rio de Janeiro

Agenda Introdução Fundamentação Teórica Método de Pesquisa MePPLa: A Measurement Planning Pattern Language Avaliação de MePPLa Considerações Finais 2

Introdução O crescente interesse das organizações de software em melhorar os seus processos tem motivado a busca pela alta maturidade, na qual é necessário realizar o controle estatístico de processos (CEP). Alguns problemas no uso do CEP em organizações de software são a definição de medidas inadequadas e coleta de dados não apropriados ao CEP. A literatura apresenta medidas adequadas ao CEP, porém o seu acesso pode ser difícil ou ineficiente, uma vez que as informações estão dispersas. A partir de um conjunto de medidas já utilizadas no CEP, é possível identificar alguns padrões para apoiar o planejamento de medição. 3

Introdução Um padrão pode ser definido como uma solução para um problema recorrente. Padrões tipicamente são usados de maneira combinada e o registro de padrões em catálogos não favorece a identificação das relações entre os padrões. Padrões podem ser organizados em uma Linguagem de Padrões (LP), que busca representar os padrões e suas relações a fim de facilitar a aplicação dos padrões. LPs potencializam o reúso que, consequentemente, contribui para a melhoria de qualidade e a produtividade. Assim, propõe-se uma Linguagem de Padrões para auxiliar na elaboração de planos de medição visando ao CEP. 4

Fundamentação Teórica Medição de Software Processo de Medição de Software Planejamento da Medição Execução da Medição Avaliação da Medição GQM (BASILI et al. 1994) pode ser usado para apoiar o planejamento da medição. Para cada objetivo estabelecido, é possível determinar questões cujas respostas são fornecidas por dados coletados para medidas 5

Fundamentação Teórica Controle Estatístico de Processos Usado para analisar o comportamento dos processos. Conhecer o comportamento histórico permite avaliar estabilidade, prever o comportamento futuro e verificar a capacidade de os processos alcançarem os objetivos para eles estabelecidos. Para realizar o CEP, é preciso selecionar os processos que serão submetidos ao CEP e as medidas que serão utilizadas para analisar o comportamento desses processos. Para realizar o CEP, são necessárias medidas adequadas para tal. Por exemplo, a medida deve: possuir granularidade adequada, estar relacionada a processo crítico, ter definição operacional que permita coleta consistente de dados e possuir medidas correlatas para apoiar a análise. 6

Fundamentação Teórica Linguagem de Padrões Uma Linguagem de Padrões é uma rede de padrões inter-relacionados que define um processo para resolução sistemática de problemas. Notações visuais podem ser utilizadas para representar graficamente LPs. OPL-ML (Ontology Pattern Language Modeling Language): notação visual, baseada em constructos da UML, para representação de Linguagem de Padrões Ontológicos (QUIRINO, 2016). Pode ser usada para representar LPs em outros domínios. LPs relacionadas à medição de software foram propostas por ANDRADE e SOUZA (2008) e BRAGA et al. (2012). Elas tratam estimativas de software na fase de planejamento do projeto. 7

Método de Pesquisa Problema Organizações de software têm dificuldade em realizar planejamento de medição adequada ao CEP. Requisitos da Pesquisa Desenvolver uma linguagem de padrões para planejamento de medição adequada ao CEP que seja capaz de guiar o usuário na seleção dos padrões a serem inclusos no plano de medição, apresentar relações entre medidas e que seja representada graficamente. Critérios de Aceitação Viabilidade de uso e utilidade. Ciclo de Relevância Domínio de Aplicação A linguagem de padrões é destinadas a organizações de software ou profissionais que desejam definir planos de medição adequados ao CEP. MePPLa (Concepção e Desenvolvimento) Ciclo de Design MePPLa Avaliação (avaliada em estudo experimental) Fundamentos Teorias científicas e métodos relacionados a: mapeamento sistemático da literatura, medição de software, controle estatístico de processos, linguagem de padrões e métodos de avaliação. Contribuições MePPLa, Ciclo de um panorama Rigor sobre a pesquisa abordando medidas utilizadas no CEP, o survey, que fornece informações sobre medidas que têm sido usadas em iniciativas de CEP em organizações brasileiras, ferramenta de apoio ao uso de MePPLa. 8

MePPLa: A Measurement Planning Pattern Language LP composta por padrões baseados no GQM. Cada padrão está associado a um (ou mais) processo que pode ser submetido ao CEP. MePPLa Busca apoiar o planejamento de medição para o CEP de organizações que desejam implementar as práticas do CEP visando à alta maturidade. Versão atual de MePPla contém 26 padrões, relacionados a 3 processos: 12 relacionados a Gerência de Projetos, 6 a Codificação e 8 a Testes. Padrões identificados a partir de uma investigação da literatura (mapeamento sistemático) e da prática (survey), que resultaram em 110 medidas, 18 processos e 49 objetivos de medição. A partir dos resultados, os processos a ser tratados na primeira versão de MePPLa foram selecionados e para cada um foram extraídos padrões. Os padrões baseiam-se no GQM e incluem definições operacionais para as medidas neles presentes. 9

MePPLa: A Measurement Planning Pattern Language Test Preparation Productivity Name: Test Preparation Productivity Process / Sub-process: Tests / Test Preparation Measurement Goal: Improve productivity in test preparation Information Needs: What is the productivity in tests preparation? Measures: Test Preparation Productivity, Number of Elaborated Test Cases, Test Preparation Effort. Operational Definition of Measures: Derived measure Test Preparation Productivity Mnemonic TPP Description Measure used to quantify productivity in the tests preparation, that is, the ratio between the number of test cases produced and the effort spent on test preparation. Entity Tests Preparation sub-process Property Productivity Scale Positive real numbers accurate to two decimal places Measurement unit Test Cases / Man-Hour Formula (NPTC/ TPE) Measurement Procedure Calculate productivity in test preparation using the formula for calculating the measure. Measurement Periodicity The measurement must be performed for each execution of the Test Preparation sub-process. Measurement Responsible <<indicate the role responsible for collecting data for the measure. It is recommended that the measurement responsible is the data provider (i.e., a role involved in tests preparation)>> Measurement Moment At the end of each execution of the Test Preparation sub-process. Measurement Analysis Procedure For process behavior analysis (organizational context): - Represent in a control chart values collected for the measure in several projects. - Obtain the process control limits and analyze the process behavior: (i) If the values pass in the stability tests, then the process is stable and a baseline can be established. Stability tests [WHEELER and CHAMBERS 2010]: Test 1: There is at least one point outside 3σ; Test 2: there are at least two out of three successive points at the same side and at more than 2σ from the central limit; Test 3: there are at least four out of five successive points at the same side and at more than 1σ from the central limit; Test 4: There are at least eight successive points at the same side. (ii) If the values do not pass in the stability tests, the process is unstable. It is necessary to investigate the special causes, identify corrective actions and execute them. For quantitative project management (project context): - Represent in a control chart values collected for the measure in the project. - Analyze the process behavior considering the organizational behavior expected for it (i.e., by using the process baseline as reference). (i) If the values pass in the stability tests considering the process baseline as reference, then the process behaved according to the behavior expected for it in the organization. (ii) If the values do not pass in the stability tests considering the process baseline as reference, then the process did not behave according to the behavior expected for it in the organization. It is necessary to investigate the causes, identify corrective actions and execute them. In the project context, the analysis must be performed once to each execution of the Test Preparation 10

process baseline as reference). (i) If the values pass in the stability tests considering the process baseline as reference, then the process behaved according to the behavior expected for it in the organization. MePPLa: A Measurement Planning Pattern Language Analysis Periodicity (ii) If the values do not pass in the stability tests considering the process baseline as reference, then the process did not behave according to the behavior expected for it in the organization. It is necessary to investigate the causes, identify corrective actions and execute them. In the project context, the analysis must be performed once to each execution of the Test Preparation sub-process. In the organizational context <<indicate the periodicity based on a time period (e.g., fortnightly) or on an amount of new data collected (e.g., each 4 new values collected)>> Analysis Responsible <<indicate the role responsible for analyze data collected for the measure>> In the project context, the analysis must be performed after each execution of the Test Preparation subprocess. Analysis Moment In the organizational context, analysis must be performed during the activity in which organizational process behavior analysis is done <<indicate which is the activity in your organization >>. Base Measure 1 Number of Prepared Test Cases Mnemonic NPTC Description Measure that quantifies the number of test cases elaborated in the test preparation. Entity Tests Preparation sub-process Property Number of test cases Scale Positive real numbers accurate to two decimal places Unit of measurement - Formula - Measurement Procedure Obtain and record the number of test cases prepared in the test preparation. ( ) ( ) Base Measure 2 Test Preparation Effort Mnemonic TPE Description Measure that quantifies the test preparation effort. Entity Tests Preparation sub-process Property Effort Scale Positive real numbers accurate to two decimal places Unit of measurement Man-hour Formula - Measurement Procedure Obtain and record the effort spent on the preparation of the tests, i.e., test cases preparation. ( ) ( ) Related Patterns: Test Preparation Efficiency. 11

MePPLa: A Measurement Planning Pattern Language MePPLa é representada utilizando OPL-ML (QUIRINO, 2016). Possui dois tipos de modelos: Estrutural: apresenta os padrões que compõem a linguagem e as relações estruturais entre eles. Comportamental (modelo de processo): descreve o processo de aplicação dos padrões. Possui dois formatos: caixa-preta e detalhado. Uso de MePPLa: i. Com base em seus objetivos estratégicos, a organização deve selecionar os processos que deseja submeter ao CEP. ii. Uma vez selecionados os processos, a organização deve navegar pelos fluxos do modelo de processo de MePPLa, selecionando os padrões de acordo com as condições apresentadas. O modelo estrutural auxilia na identificação de medidas correlatas que podem ser selecionadas para auxiliar na análise. iii. Selecionados os padrões, eles devem ser incorporados ao Plano de Medição da organização. 12

MePPLa: A Measurement Planning Pattern Language Modelo Estrutural do processo Testes 13

MePPLa: A Measurement Planning Pattern Language Modelo Comportamental (Formato Caixa Preta) 14

MePPLa: A Measurement Planning Pattern Language Modelo Comportamental do Processo Testes Formato Detalhado 15

MePPLa: A Measurement Planning Pattern Language Ferramenta de Apoio ao uso de MePPLa 16

Avaliação de MePPLa Um estudo foi conduzido para avaliar se MePPLa é útil no apoio ao planejamento de medição de software visando ao CEP e se seu uso é viável. Indicadores: Adequação dos resultados gerados pela linguagem de padrões Utilidade da linguagem de padrões Benefícios providos pelo uso da linguagem de padrões para planejamento de medição. 4 participantes com experiência/conhecimento em medição de software e CEP. Procedimento: Disponibilização de informações em um documento Uso da ferramenta pelos participantes Resposta a um questionário eletrônico 17

Avaliação de MePPLa Resultados Adequação dos resultados gerados a partir do uso de MePPLa 3 participantes consideraram os resultados adequados Utilidade de MePPLa 3 participantes consideraram MePPLa muito útil ou útil Benefícios providos pelo uso de MePPLa 3 participantes consideraram que MePPLa contribui para a qualidade dos planos de medição 3 participantes declararam ter sido guiados na seleção das medidas a serem inclusas no plano Todos os participantes consideraram fácil ou muito fácil usar MePPLa Todos os participantes consideraram que MePPLa contribui para reutilização 2 participantes consideraram que MePPLa contribui para tornar o planejamento de medição muito mais produtivo ou mais produtivo 18

Avaliação de MePPLa A avaliação inicial de MePPLa aponta que ela é um apoio útil ao planejamento de medição de software visando ao CEP e seu uso é viável. Analisando-se as justificativas apresentadas pelos participantes para suas respostas, notou-se que limitações da ferramenta influenciaram na avaliação de MePPLa. O estudo foi realizado com poucas pessoas, em curto prazo e fora do contexto organizacional (não foi usado em projetos reais), o que pode também ter influenciado os resultados. 19

Considerações Finais Lacunas identificadas em um mapeamento sistemático da literatura que investigou medidas usadas no CEP [Brito and Barcellos 2016]: (i) (ii) falta de abordagem para selecionar medidas adequadas ao CEP ausência das definições operacionais das medidas encontradas (iii) falta de preocupação com medidas correlatas. Essas lacunas são tratadas em MePPLa, uma vez que: (i) (ii) MePPLa fornece um fluxo que guia o usuário na seleção dos padrões contendo medidas MePPLa provê definições operacionais para as medidas que compõe os padrões (iii) MePPLa possui um modelo estrutural, no qual informações sobre as relações estruturais entre os padrões revelam as medidas correlatas e os objetivos que impactam em outros. 20

Considerações Finais Sendo uma LP, MePPLa pode estar em constante evolução. A versão atual é uma primeira versão e pode ser evoluída. Principal limitação: avaliação de MePPLa o Pequeno número de participantes o Pouco tempo para avaliação o Uso fora do contexto organizacional o Influência das limitações da ferramenta Trabalhos futuros: o Novos estudos para avaliar MePPLa o Evoluir MePPLa para tratar outros processos e incluir outros padrões o Realizar melhorias na ferramenta de apoio 21

Referências ANDRADE, T., SOUZA, J. Uma linguagem de Padrões de Estimativa de Software para Micro e Pequena Empresas, 7ª Conferência Latino-Americana em Linguagens de Padrões para Programação, 2008. BASILI, V. R., ROMBACH, H. D., CALDIERA, G. Goal Question Metric Paradigm, Encyclopedia of Software Engineering, 2 Volume Set, John Wiley & Sons, Inc, 1994. BRAGA, M.R.R., BEZERRA, C.I.M., MONTEIRO, J.M., ANDRADE, R. (2012). A pattern language for agile software estimation. Proc. of the 9th Latin-American Conference on Pattern Languages of Programming. Natal, RN, Brazil. BRITO, D. F., BARCELLOS, M. P. (2016). Measures Suitable for SPC: A Systematic Mapping. Proc. Of the XV Brazilian Symposium on Software Quality, Maceió AL, Brazil. QUIRINO, G. K. S. Uma Notação Visual para Representação de Linguagens de Padrões Ontológicos. Dissertação de Mestrado, UFES Universidade Federal do Espírito Santo, 2016. 22

Linguagem de Padrões para Planejamento de Medição de Software para o CEP Daisy F. Brito 1 Monalessa P. Barcellos 1 Gleison Santos 2 1 NEMO - PPGI - Universidade Federal do Espírito Santo 2 PPGI - Universidade Federal do Estado do Rio de Janeiro