Escolar Documentos
Profissional Documentos
Cultura Documentos
Belm
2011
Talita Vieira Ribeiro
Belm
2011
ii
Talita Vieira Ribeiro
Banca Examinadora
vi
A sabedoria no alcanada quando se tem a
resposta, mas sim quando a resposta te trs
sede de aprender mais. (Autor
Desconhecido).
vii
RESUMO
viii
ABSTRACT
In the last years, software industry organizations are trying to increase their products quality,
develop them with a reasonable cost and time by adopting practices of software process
improvement (SPI). One of SPI practices is Measurement, a process by which quantitative
data are used to describe software process entities attributes. Based on data related to the
organization processes enacted is possible to perform different kinds of analysis in order to
characterize and compare products and projects and then realize weaknesses and improvement
opportunities. Although Measurement is widely recognized as an important practice, its
practical implementation in software industry has some difficulties due to its cost, complexity
and problems that arise when performing its activities, besides the lack of commitment of the
development team. With the purpose of offer support to Measurement implementation and
minimize some of its problems, this work proposes a set of solutions described as
requirements to a tool for measurement activities support and implemented as improvements
in a tool for measurement planning and analysis. The solutions proposed were designed from
observations of a real case of measurement implementation and from the study of
recommendations stated by models and patterns for Measurement in software process.
ix
LISTA DE FIGURAS
xii
LISTA DE QUADROS
xiii
LISTA DE ABREVIATURAS E SIGLAS
xiv
SUMRIO
1 INTRODUO ..........................................................................................................1
1.1 Motivao e Justificativa .....................................................................................2
1.2 Objetivo do Trabalho ...........................................................................................3
1.2.1 Objetivo Geral ....................................................................................................... 3
1.2.2 Objetivo Especfico................................................................................................ 3
1.3 Metodologia ...........................................................................................................4
1.4 Contexto de Desenvolvimento do Trabalho .......................................................5
1.5 Organizao do Texto ..........................................................................................6
xv
5 EVOLUO DE UMA FERRAMENTA DE APOIO AO PROCESSO DE
PLANEJAMENTO E ANLISE DE MEDIO ....................................................51
5.1 Anlise do Prottipo ...........................................................................................51
5.2 Melhorias Implementadas .................................................................................53
5.2.1 Projeto e Implementao de Operaes e Visualizaes ................................. 54
5.2.2 Gerao de Relatrios ......................................................................................... 58
5.2.3 Implementao de Novas Funcionalidades ....................................................... 63
5.3 Anlise de Ferramentas de Apoio Medio ..................................................65
REFERNCIAS ..........................................................................................................71
xvi
1 INTRODUO
Apesar das evidncias existentes do apoio que a Medio pode oferecer, muitas
organizaes de software analisam suas prticas como sendo complexas e difceis de serem
realizadas (GOPAL, et al., 2002). Assim, a complexidade de execuo da Medio, o esforo
despendido e os custos associados tornam-se empecilhos para a institucionalizao de suas
prticas dentro das empresas, o que ocasiona na realizao de suas atividades de forma pouco
frequente, produzindo dados inconsistentes, incompletos e, por conseguinte, inteis para
tomada de aes (FENTON e PFLEEGER, 1997).
Nesse sentido, diferentes abordagens de medio surgiram como forma de contornar
problemas de coleta de dados pouco teis gerncia. Abordagens que preconizam a seleo
de mtricas a partir de objetivos organizacionais so, ento, recomendadas por padres de
qualidade como forma de auxiliar no planejamento da Medio, dentre elas destacam-se
GQM Goal-Question-Metric (SOLINGEN e BERGHOUT, 1999) e GQ(I)M Goal-Driven
Software Measurement (PARK, et al., 1996).
Apesar de imprescindvel, somente orientar a Medio a partir dos objetivos de
negcio no suficiente para garantir o sucesso dos programas de Medio dentro das
empresas de software. Fatores como: i) identificao dos usurios da Medio; ii)
identificao e entendimento das metas desses usurios e das estratgias e riscos para o
sucesso do desenvolvimento do software; iii) definio e seleo de mtricas e de seus
procedimentos de acordo com as informaes levantadas; iv) definio e estabelecimento de
um programa de Medio que produza dados confiveis, tentando, sempre que possvel,
utilizar mecanismos automticos de coleta de dados; v) comprometimento da equipe de
desenvolvimento e de Medio com o programa de medio implantado e vi) definio de
2
mecanismos para relatar os resultados da medio e os problemas e melhorias no programa de
Medio estabelecido so alguns exemplos citados em (HALL e FENTON, 1997), (OFFEN e
JEFFEREY, 1997), (WESTFALL, 1999) e (GOPAL, et al., 2002) como sendo de
fundamental importncia para a obteno de um processo de Medio efetivo dentro das
organizaes.
Com o objetivo de auxiliar em algum desses fatores ditos como essenciais para o
sucesso da Medio e, assim, contornar alguns dos problemas que levam ao insucesso dos
programas de Medio, este trabalho apresenta um conjunto de solues em forma de
requisitos implementados em uma ferramenta de apoio ao planejamento e anlise de
Medio integrada em um Ambiente de Engenharia de Software Centrado em Processos. Os
requisitos foram extrados tanto da implantao prtica de uma estratgia de Medio em um
caso real de desenvolvimento de software quanto da anlise da literatura.
3
1.3 Metodologia
Na fase inicial deste trabalho houve a realizao de uma pesquisa exploratria dividida
em duas etapas: a primeira utilizando-se do procedimento de pesquisa em campo teve como
objetivo extrair informaes de problemas encontrados durante a implantao manual de
Medio em um caso real de desenvolvimento de software; a segunda utilizando-se do
procedimento de pesquisa documental teve como objetivo identificar recomendaes para
realizao de tarefas de Medio, extradas de normas e modelo de qualidade, possveis de
serem automatizadas.
Como o objetivo do trabalho era o de compreender e analisar os dados coletados
durante a pesquisa exploratria de forma a identificar requisitos para automao do processo
de Medio, a pesquisa deste trabalho foi ento caracterizada como sendo qualitativa. Os
resultados obtidos durante a anlise qualitativa dos dados a partir do mtodo indutivo foram
utilizados para a realizao das atividades da fase posterior deste trabalho que compreendeu a
evoluo de uma ferramenta de apoio ao processo de planejamento e anlise de Medio.
A Figura 1 a seguir exibe as atividades planejadas em cada uma das fases deste
trabalho.
4
i. implantao de uma estratgia de medio em um caso real de
desenvolvimento de software, na qual foram identificados problemas e
oportunidades de melhoria possveis de serem solucionados com um apoio
automatizado adequado; e
ii. anlise da literatura, a saber, de recomendaes consensuais descritas em
normas e modelos para apoiar o processo de Medio, na qual foram
identificadas tarefas possveis de serem automatizadas. Vale destacar que a
identificao de recomendaes para Medio que so consenso em normas e
modelos foi resultado de um trabalho de cooperao no contexto do projeto de
pesquisa ao qual este trabalho est vinculado (detalhes na subseo a seguir).
A fase posterior consistiu na evoluo de uma ferramenta de apoio ao planejamento e
anlise de Medio a partir da implementao de requisitos identificados e, at ento, no
implementados na ferramenta. Essa fase foi realizada com base em atividades j conhecidas
do ciclo de desenvolvimento de software: anlise, projeto, codificao e teste das
funcionalidades implementadas.
Este trabalho foi resultado de pesquisas realizadas pela aluna durante os seus projetos
de iniciao cientfica no Laboratrio de Engenharia de Software da UFPA. Importante
destacar ainda que alguns dos resultados alcanados neste foram conseguidos mediante a
anlise de resultados obtidos em um trabalho de cooperao no contexto do projeto de
pesquisa intitulado: Desafios do Aumento da Maturidade em Organizaes de
Desenvolvimento de Software: Integrao de Solues para Avanos em Qualidade de
Software.
O projeto em questo e ao qual este trabalho est vinculado tem em uma de suas
frentes de pesquisa a rea de Medio em Processos de Software em parceria entre
pesquisadores da Universidade Federal do Par juntamente com pesquisadores da
Universidade Federal do Esprito Santo. A pesquisa nessa rea visa desenvolver mecanismos
de apoio automatizado a atividades e tarefas de Medio para nveis iniciais e para alta
maturidade a partir dos resultados obtidos com a construo de uma arquitetura de referncia
para Medio. A arquitetura em questo construda a partir da anlise de um processo
consensual de Medio definido com base em um mapeamento de normas e modelos de
qualidade realizado pelo grupo de pesquisadores envolvidos no projeto. O mapeamento aqui
5
mencionado foi utilizado nesse trabalho para auxiliar na formulao de requisitos para apoiar
atividades de Medio de forma automatizada detalhes na seo 4.2.
6
2 MEDIO EM PROCESSOS DE SOFTWARE
7
Como j mencionado, na Medio valores numricos ou simblicos so atribudos a
atributos de entidades do processo. Entende-se por entidade qualquer objeto existente dentro
do processo de desenvolvimento que se deseja caracterizar, avaliar, predizer e melhorar; e por
atributos, caractersticas desses objetos possveis de serem mensuradas. A Figura 2 a seguir
identifica, dentro do processo de software, algumas entidades e seus possveis atributos
mensurveis.
A Figura 3 mostra ainda o relacionamento da unidade de uma mtrica com sua escala
que pode ser de 5 tipos: nominal, ordinal, intervalar, racional (KAN, 2002) e absoluta
(LAIRD e BRENNAN, 2006). Escalas definem propores entre medidas de mesma unidade,
variam em significado dos valores admitidos e operaes sobre esses valores como descrito a
seguir.
Nominal servem para categorizar entidades. Podem admitir qualquer valor,
objetivo ou no, porm no so aplicveis muitas operaes matemticas ou
mesmo ordenao. As operaes disponveis para esse tipo de escala so:
igualdade e moda.
Ordinal mesmo que nominal, porm acrescenta a idia de ordem, sendo que os
intervalos ainda no possuem qualquer significado. As operaes disponveis para
esse tipo de escala so: as mesmas da escala nominal mais a determinao de
maior, menor e mediana.
9
Intervalar apresenta significado entre valores a ponto de poder qualificar
intervalos com distancias maiores, menores ou iguais a outros intervalos. Algumas
operaes j so admitidas para esse tipo de escala como a soma e a subtrao,
porm o zero no um valor vlido aceitvel, nesse caso, operaes de
multiplicao no so significativas. As operaes disponveis para esse tipo de
escala so: as mesmas da escala ordinal mais a soma, subtrao, mdia e
comparao entre valores em intervalos.
Racional nessa escala o zero absoluto considerado um valor vlido, dessa
forma, clculos de comparao so aceitveis para valores desse tipo. As
operaes disponveis para esse tipo de escala so: as mesmas da escala intervalar
mais a multiplicao, diviso, mdia geomtrica e harmnica e comparao entre
valores das operaes em intervalos.
Absoluta essa escala um tipo especial de escala racional em que contado o
nmero de ocorrncias. Somente valores positivos e o zero so aceitos nessa
escala. As operaes disponveis para esse tipo de escala so: as mesmas da escala
racional mais a determinao de igualdade entre valores de outras escalas.
Como forma de auxiliar na visualizao das medidas coletadas, indicadores so
utilizados, sendo representaes grficas dos dados valores puros ou valores produzidos a
partir de operaes especficas que podem apresentar-se em diferentes formatos.
Para escolher as mtricas que iro compor a Medio dentro do processo de software,
critrios devem ser identificados e priorizados dentro da organizao de forma a auxiliar na
coleta de informaes que sejam representativas para a gerncia tomar decises e de forma a
guiar o planejamento da medio de acordo com objetivos conhecidos pela organizao.
Nesse sentido, diferentes abordagens de Medio existentes na literatura so utilizadas
na indstria como forma de guiar a escolha de mtricas a serem coletadas. Metodologias de
Medio como GQM Goal/Question/Metric (BASILI, 1992) e SQM Software Quality
Metrics Approach (BASILI e WEISS, 1984) so exemplos de abordagens que orientam a
escolha das mtricas a partir de metas estabelecidas dentro da organizao.
Nas subsees a seguir sero apresentados detalhes a respeito de dois paradigmas
relevantes para esse trabalho: o GQM e sua adaptao Goal-Driven Software Measurement
(PARK, et al., 1996).
10
2.2.1 Goal/Question/Metric
Na Figura 4 possvel ainda perceber que para a definio da Medio uma viso top-
down utilizada enquanto que para a sua interpretao uma viso bottom-up aplicada. Isso
particularmente vantajoso para a Medio uma vez que possibilita identificar mtricas teis a
serem coletadas e interpretar os dados de modo a responder questes que traduzam os
objetivos da organizao.
A abordagem permite ainda que uma mesma meta origine diferentes questes e cada
questo, diferentes mtricas. Assim, uma nica medida pode auxiliar a responder a mais de
uma questo e, por conseguinte, a atender a mais de um objetivo. Para montar o esquema
apresentado, a abordagem GQM estabelece 3 passos principais que so justamente os
relacionados com a formulao das metas, das questes e das mtricas que compem o
planejamento.
A abordagem estabelece ainda um formato padro de definio de metas, as seguintes
informaes devem conter na definio: entidade relacionada a algum propsito da
organizao; o propsito em si; o atributo da entidade a ser analisada; o ponto de vista e o
contexto a serem considerados no atendimento ao propsito ver Figura 5.
11
Figura 5 Modelo para definio da meta. Adaptado de (NASCIMENTO, 2007).
13
A norma ISO/IEC 12207 estabelece um arcabouo para o ciclo de vida de processos
de software, desde terminologia at a definio de atividades e tarefas aplicveis a diferentes
contextos de processos e a diferentes reas de processos de software.
A Figura 7 ilustra a diviso da norma em dois grandes grupos contendo reas de
processos aplicveis ou a sistemas de software ou a produtos ou servios de software
independentes, so eles: i) Processos de Contexto do Sistema; e ii) Processos de Software
Especficos. Cada grupo divide-se ainda em grupos menores ao todo sete que agrupam
reas de processo que estejam dentro do escopo especfico definido pelo grupo. A Medio de
Processos uma rea presente dentro do grupo de Processos do Projeto da macro diviso de
Processos de Contexto do Sistema. Todas as reas de processo definidas dentro do grupo de
Processos do Projeto destinam-se ao planejamento, avaliao e controle aplicveis a
diferentes reas da gerncia organizacional.
14
produzidos de forma a oferecer suporte efetivo ao gerenciamento dos processos e dos projetos
e a demonstrar objetivamente a qualidade dos produtos.
So trs as atividades bases da Medio na ISO/IEC 12207: Planejar a Medio,
Executar a Medio e Avaliar a Medio.
Durante a atividade de Planejar a Medio, caractersticas da unidade organizacional
que se deseja medir bem como as necessidades de informao desta devem ser identificadas;
mtricas que satisfaam as necessidades de informao e seus procedimentos de coleta,
anlise e comunicao devem ser documentados; critrios de avaliao das necessidades de
informao e dos produtos de trabalho produzidos devem ser elaborados; e o suporte
tecnolgico para as tarefas de medio deve ser identificado e fornecido a equipe envolvida.
Para Executar a Medio, os procedimentos das mtricas identificados no
planejamento devem ser inseridos dentro dos processos relevantes a serem medidos; as
medidas devem ser coletadas, armazenadas e verificadas; os dados devem ser analisados; e o
resultado da medio deve ser documentado e comunicado aos envolvidos.
Na ltima atividade de Avaliar a Medio o processo de medio e seus produtos de
trabalho devem ser avaliados, sendo as melhorias identificadas e comunicadas aos
interessados.
15
Figura 8 e a Figura 9 a seguir exibem os nveis de maturidade e capacidade e suas respectivas
reas de processo para os modelos CMMI-DEV e MR-MPS respectivamente.
16
Para a Medio, esses modelos estipulam prticas tanto em nveis iniciais de
maturidade e capacidade nvel 2 do CMMI-DEV e F do MR-MPS quanto em nveis mais
avanados 4 e 5 do CMMI-DEV e B e A do MR-MPS. Nos nveis iniciais dos modelos
possvel identificar recomendaes para duas atividades de Medio inferidas dos modelos e
presentes na ISO/IEC 12207: Planejar a Medio e Executar a Medio.
Para o planejamento da Medio, so propostas recomendaes para identificao de
objetivos organizacionais e mtricas relacionadas, bem como para a definio dos
procedimentos de coleta, armazenamento e anlise destas. Para a execuo da Medio, so
propostas recomendaes para coleta das medidas, armazenamento destas e de suas anlises e
para a comunicao dos resultados da Medio.
Nos nveis mais avanados a Medio utilizada para apoiar a predio de resultados
dos processos crticos da organizao, no se restringindo a apoiar a gerncia de projetos na
tomada de aes. Com o foco nos processos e no mais em apenas projetos, as recomendaes
para alta maturidade esto relacionadas com: i) a escolha de processos crticos da organizao
a serem gerenciados quantitativamente; ii) o estabelecimento de objetivos de qualidade para
esses processos; iii) a escolha de atributos desses processos, bem como mtricas relacionadas
que possam ser mensuradas estatisticamente; e iv) a definio de procedimentos, frequncia e
tcnicas a serem utilizadas para medir o desempenho dos processos da organizao.
17
Figura 10 Atividade e fluxo de informao da Medio. Adaptado de (ISO/IEC, 2002).
18
software, alm da coleta, armazenamento, anlise e comunicao dos dados. Para a realizao
dessas atividades, informaes da base histrica da organizao so utilizadas, caso
pertinente, como forma de melhor planejar e executar a Medio com base nas lies
aprendidas de outras implantaes.
Os produtos de informaes gerados no chamado cerne do processo de Medio
utilizado tanto para apoiar o gerenciamento de projetos que fornece feedback sobre novas
necessidades de informao, quanto para Avaliar a Medio, identificando melhorias para
esse processo e armazenando-as na base histrica da organizao.
O padro IEEE Std 1061 define um framework para apoiar a escolha de mtricas de
qualidade de software. O framework dividido em 3 principais nveis como pode ser
observado na Figura 11. No primeiro nvel devem ser estabelecidos requisitos de qualidade a
partir de atributos que permitam inferir a qualidade de determinado sistema. Esses atributos
devem ser mapeados a fatores de qualidade que representem as vises da gerncia e do
usurio para o sistema a ser analisado. O nvel posterior responsvel por agrupar subfatores
de qualidade associados aos fatores identificados no nvel anterior os subfatores so
opcionais, sendo utilizados caso haja necessidade de refinamento dos fatores de qualidade.
Relacionados com os subfatores de qualidade as mtricas so ento definidas no ltimo nvel.
Figura 11 Framework para apoiar escolha de mtricas de qualidade. Adaptado de (IEEE COMPUTER
SOCIETY, 1998).
19
Alm do framework, o padro define ainda uma metodologia para a implantao do
framework estabelecimento de requisitos de qualidade e identificao de mtricas de
qualidade bem como para a implementao, anlise e validao das mtricas de qualidade
identificadas.
Cinco atividades de Medio so identificadas a partir do padro: Estabelecer
Requisitos de Qualidade de Software; Identificar Mtricas de Qualidade de Software;
Implementar as Mtricas de Qualidade de Software; Analisar os Resultados das
Mtricas de Software e Validar as Mtricas de Software.
Para a realizao das duas primeiras atividades Estabelecer Requisitos e Identificar
Mtricas de Qualidade de Software o padro estabelece a utilizao do prprio framework
para a identificao das Mtricas. A atividade de Implementar as Mtricas compreende a
definio dos procedimento das Mtricas bem como a coleta e armazenamento destas. A
atividade de Analisar os Resultados compreende justamente a analisar os dados coletados
como forma de identificar e predizer a qualidade do software, bem como realizar o
rastreamento dos resultados obtidos com os requisitos de qualidade identificados no
planejamento. A ltima atividade compreende a aplicao da metodologia de validao das
mtricas conforme estabelecido pelo padro de forma a identificar mtricas que auxiliem na
predio de fatores de qualidade.
21
3 APOIO AO PLANEJAMENTO E ANLISE DE MEDIO
O prottipo a ser apresentado nesta seo foi evoludo ao longo deste trabalho aps o
levantamento de requisitos para o apoio automatizado de tarefas de Medio (detalhes no
captulo seguinte). O prottipo resultou do trabalho descrito em (NASCIMENTO, 2007) e
tem como objetivo servir de auxlio ao planejamento e anlise de Medio seguindo uma
abordagem baseada no Goal-Driven Software Measurement.
A proposta automatizada de apoio est integrada a um Ambiente de Engenharia de
Software Centrado em Processos o Ambiente WebAPSEE (LIMA, et al., 2006). Esse fato
possibilita que informaes de entidades j armazenadas no ambiente sejam utilizadas na
Medio sem haver a necessidade de se cadastrar novamente essas informaes, alm de
possibilitar que os resultados da medio sejam relacionados com demais informaes do
processo, o que facilita na anlise dos dados. As subsees a seguir detalham as
funcionalidades do ambiente WebAPSEE focando nas funcionalidades para Medio j
existentes no ambiente e do prottipo de apoio ao planejamento e anlise de Medio.
22
Figura 12 Cliente Manager Console.
23
Figura 13 Cliente Task Agenda Desktop (a) e Web (b).
24
Figura 14 Representao grfica da WebAPSEE-PML. Adaptado de (NASCIMENTO, 2007).
25
Figura 15 Formulrio de definio de mtricas.
26
3.2 O Prottipo Inicial de Apoio ao Planejamento e Anlise de Medio
28
Figura 18 Diagrama de estados do MIPModel. Adaptado de (NASCIMENTO, 2007).
O diagrama exibe os quatro estados que um MIPModel pode assumir: draft, quando
um MIPModel criado, podendo ser alterado enquanto estiver nesse estado; defined, quando
um MIPModel est estvel e pronto para compor planos de medio para projetos, nesse caso
no h mais possibilidade de alterao das informaes cadastradas a no ser que seja
solicitada sua evoluo; pending, quando h a evoluo de um MIPModel e este aguarda sua
nova verso tornar-se definida, nesse caso o MIPModel pendente ainda pode ser utilizado
para compor MIPs, porm a opo de criao de novas verses fica indisponvel; e outdated,
quando um MIPModel no pode mais ser utilizado para instanciar novos MIPs, servindo
apenas de referncia para os MIPs j formulados a partir dele.
Voltando Figura 17, o pacote GerenciarMIP compreende funcionalidades de
cadastro e alterao das informaes especficas do MIP. Destaque aqui para o cadastro de
informaes em relao s entidades a serem medidas integrao do plano de medio s
instncias das entidades modeladas no WebAPSEE. Enquanto no MIPModel s possvel
identificar em alto nvel as entidades que iro compor os indicadores atividades, agentes
29
dentre outros (Figura 19) , no MIP possvel identificar as instncias no processo do projeto
das entidades que tero seus dados coletados (Figura 20).
Figura 20 Tela a: indicadores de um MIP; Tela b: seleo de alvos especficos do projeto (NASCIMENTO,
2007).
30
Como mostrado na Figura 20, a seleo das instncias (alvos) que tero os dados
coletados pode ser feita de trs formas: All seleo de todas as instncias, que estejam no
escopo do projeto relacionado com o MIP, de uma dada entidade; ByType, seleo de tipos
especficos existentes para uma dada entidade, no WebAPSEE podem ser definidos diferentes
tipos para entidades do processo, por exemplo, a entidade atividade pode ser do tipo
requirements, design, coding dentre outros; e Selected, seleo de instncias especficas, que
estejam no escopo do projeto relacionado com o MIP, de uma dada entidade.
Finalizando o conjunto de funcionalidades do prottipo tm-se as funcionalidades para
apoiar a anlise e a comunicao dos resultados da Medio, representadas na Figura 17 pelos
pacotes GerenciarIndicadoresEAnalises e GerarRelatrios (casos de uso minimamente
implementados). Em linhas gerais, o prottipo previa a gerao de indicadores conforme o
planejado no MIP de um projeto. Para tanto, para gerar um indicador deveriam ser utilizadas
informaes relacionadas com o formato do indicador barra, linha, pizza ou tabela , com a
operao sobre os dados coletados desvio, distribuio ou listagem , as mtricas (relao
de mtricas definidas no WebAPSEE) e com os alvos de coleta das mtricas. Para a gerao
dos relatrios o prottipo previa a utilizao de informaes cadastradas durante o
planejamento, dos indicadores que iriam compor os relatrios e das informaes de anlise
armazenadas no prottipo para cada indicador a ser exibido no relatrio. A Figura 21
apresenta a tela de gerao de indicadores e relatrios planejados.
Figura 22 Atividades e tarefas de Medio apoiadas pelo ambiente (branco) e pelo prottipo (azul).
33
4 INVESTIGAO DE REQUISITOS PARA APOIO
AUTOMATIZADO DO PROCESSO DE MEDIO
35
Figura 23 Modelo de processo iterativo-incremental adotado pelo projeto (LEMOS, et al., 2009).
36
desenvolvimento do projeto quanto em relao ao prprio planejamento e processo de
Medio implantado.
Com o andamento do projeto, melhorias no processo de desenvolvimento foram
identificadas com o apoio da Medio e esse fato acabou modificando at mesmo o modo
como a Medio estava intervindo no processo de desenvolvimento, deixando de ser utilizada
meramente como apoio ao conhecimento do passado e passando a intervir de forma mais
proativa em relao a planejamentos futuros do projeto. Assim, as atividades de gerao de
indicadores, anlise, comunicao e melhoria da Medio foram intensificadas, ocorrendo
tanto no final de cada iterao do projeto como em cada momento em que a gerncia tinha
necessidade de visualizar dados do projeto para tomar decises. A Figura 24 exibe as
atividades definidas para compor cada iterao do processo e cada momento de necessidade
da gerente em obter visualizao das informaes do projeto.
Figura 24 Atividades de Medio definidas em cada iterao e em cada momento de necessidade da gerncia
37
planejamento e avaliao da Medio bem como possveis requisitos para apoio
ferramental durante essas fases so identificados na subseo 4.1.1; na subseo 4.1.2 so
destacados problemas e requisitos encontrados durante as fases de coleta e gerao de
indicadores; e, por fim, na subseo 4.1.3 problemas e requisitos so identificados para a fase
de anlise e comunicao dos resultados da Medio.
38
Figura 25 Plano de Medio metas de negcio e de Medio.
1
RFP: Requisito Funcional Anlise de Problemas
40
Com o andamento do projeto o volume de informaes crescia e dificultava a
manipulao dos dados, j que muitas vezes alm da anlise pura dos dados da iterao
finalizada era requerida uma anlise de comparao entre os dados de uma iterao com os de
iteraes passadas.
Uma grande dificuldade encontrada durante essa etapa foi a de manter os dados
sempre atualizados e de acordo com o que estava acontecendo no processo do projeto, j que
um replanejamento do projeto e de suas atividades impactava nas medidas que j tinham sido
coletadas para os alvos replanejados. Alm disso, encontrar um mecanismo de mapeamento
entre os dados e seus alvos foi um desafio, visto que este deveria ser de fcil entendimento e
manuteno, j que as mudanas no projeto e no planejamento da medio eram inevitveis e
iriam ocasionar em constantes alteraes dessas informaes.
Coletadas as medidas, estas eram organizadas e agrupadas em categorias relacionadas
com tipos de atividades (requisitos, arquitetura, codificao dentre outros), atividades do
processo, agentes do processo, tipos de artefatos (requisitos, arquitetura, codificao dentre
outros), artefatos do processo dentre outras categorias que serviam para auxiliar no momento
da gerao dos indicadores. Embora os dados estivessem organizados, os agrupamentos e as
operaes a serem realizados sobre eles para a composio dos indicadores demandavam
muito esforo e ateno para que os dados no fossem erroneamente manipulados e isso no
interferisse na anlise das informaes.
Outro problema identificado durante a coleta de dados e gerao de indicadores era o
controle das verses dos documentos mesmo problema que ocorreu no planejamento da
Medio com o agravante do volume de informaes modificadas e perdidas nessa fase. O
controle de verses era ainda mais fundamental nessa fase, pois as constantes modificaes no
planejamento da Medio e do projeto impactavam na forma como os dados eram agrupados
e operados para compor os indicadores, e caso algum indicador antigo fosse solicitado havia
retrabalho para reorganizar os dados.
Problemas relacionados com: o grande volume de informaes; o mapeamento de
medidas e seus alvos no contexto do volume de informaes armazenadas; a dificuldade e o
grande esforo empregado para realizar o agrupamento e a operao sobre as medidas
coletadas; e o retrabalho devido falta de controle das constantes mudanas no agrupamento
e operao dos dados fizeram parte da fase de coleta de dados e gerao de indicadores. O
Quadro 4.2 a seguir elenca requisitos que, se implementados em ferramentas de apoio a essas
tarefas de Medio, podem auxiliar no contorno dos problemas identificados ou mesmo
podem auxiliar na execuo dessas tarefas com maior preciso e menor esforo.
41
Quadro 4.2 Requisitos para coleta e gerao de indicadores da Medio Anlise de problemas.
42
tanto para corrigir problemas encontrados, evitando que estes voltassem a ocorrer, como
aes para repetir estratgias que deram certo no projeto.
Durante as reunies de anlise em equipe tambm era realizada uma avaliao de cada
meta de Medio e questo levantada no planejamento, fazendo a verificao se os
indicadores formulados eram teis para responder as questes e, assim, atender s metas. Em
caso de identificao de oportunidades de melhoria nas metas e/ou questes e/ou indicadores,
essas eram registradas para uma posterior avaliao e replanejamento da Medio. Vale
destacar que todas as informaes levantadas nas reunies de anlise da medio eram
documentadas em atas de reunio.
Os principais problemas na estratgia de anlise dos dados eram relacionados com o
armazenamento e a recuperao das informaes de anlise. Como estas ficavam
armazenadas em atas de reunio, no se tinha um controle rgido sobre as aes que haviam
sido identificadas e que deveriam ser tomadas ao longo do projeto. Esse fato era prejudicial
principalmente pelo fato de os dados no serem recuperados para apoiar resoluo de alguns
problemas j identificados.
Os problemas identificados nas atividades de anlise esto mais relacionados com o
armazenamento das anlises em si, com as novas informaes de contexto que possam ter
sido levantadas durante a anlise dos dados e com as tomadas de aes a serem realizadas ao
longo do projeto. O Quadro 4.3 evidencia requisitos que podem auxiliar a contornar os
problemas identificados ou mesmo auxiliar na execuo dessas tarefas.
Quadro 4.3 Requisitos para anlise e comunicao dos resultados da Medio Anlise de problemas.
43
4.2 Anlise da Literatura Normas e Modelos para Medio
44
Figura 26 Dados a serem armazenados durante a catalogao de informaes das normas e modelos
selecionados.
45
Figura 27 Exemplo do mapeamento das normas e modelos selecionados para a atividade de Estabelecer
objetivos de medio da fase de Planejar Medio.
46
Assim, as mtricas devem ser selecionadas estando de acordo com as metas, com as
necessidades e/ou com os fatores de qualidade da organizao e os seus procedimentos de
coleta, armazenamento, anlise e comunicao devem estar definidos.
Essas recomendaes so claras nas normas e nos modelos analisados como, por
exemplo, para a seleo de mtricas de acordo com os objetivos da organizao a prtica
especfica 1.2 do CMMI-DEV estabelece: Especificar mtricas para tratar os objetivos de
medio e a normativa 6.3.7.3.1.3 da ISO/IEC 12207 estabelece O projeto deve selecionar e
documentar as mtricas que satisfaam as necessidades de informao. Para a definio
formal dos procedimentos das mtricas o PSM preconiza Selecionar e especificar mtricas,
sendo que essas especificaes so justamente os procedimentos relacionados com as mtricas
definidas.
A partir dessas informaes, possveis requisitos para apoiar a realizao das tarefas
nessa fase ou mesmo para apoiar a auditoria sobre os dados podem ser encontrados no Quadro
4.4 a seguir. Os requisitos identificados a partir da anlise de normas e modelos foram
identificados como RFNM Requisitos Funcionais advindos da anlise de Normas e
Modelos.
Quadro 4.4 Requisitos para fase de planejar a medio Anlise de normas e modelos.
2
RFNM: Requisito Funcional Anlise de Normas e Modelos
47
armazenadas, analisadas e comunicadas de acordo com os respectivos procedimentos
anteriormente definidos.
Em todas as normas e modelos analisados foi possvel identificar pelo menos uma
prtica; resultado esperado; tarefa ou atividade que tenha relao com a coleta dos dados.
Como exemplo, a atividade 4.3.3 da IEEE Std. 1061-1998 dada por Coletar os dados e
computar os valores das mtricas. Importante nesse caso enfatizar que no somente essa, mas
outras normas orientam sobre a utilizao de ferramentas que possam de alguma forma
automatizar essa computao dos dados, tanto em relao realizao de operaes sobre os
dados como tambm em relao obteno/visualizao dos dados armazenados em uma fase
posterior, evitando assim problemas de dados incorretos e/ou perdidos.
Em relao anlise a ISO/IEC 15939 menciona no item 5.3.3 que os dados devem
ser analisados e os produtos de informao desenvolvidos, alm disso, previsto o
armazenamento dessas informaes como recomendado pelo MR-MPS atravs do MED 6
Os dados e os resultados das anlises so armazenados.. Os produtos de informao a que a
norma se refere so justamente os dados de anlise, as informaes de contexto e as aes de
melhorias a serem tomadas. Contudo, somente produzir esses artefatos e armazen-los pode
no ser suficiente para melhorar o processo de desenvolvimento da organizao, necessrio
que essas informaes sejam recuperadas e utilizadas ao longo do desenvolvimento do
software tanto para comunicao dos resultados aos envolvidos com a Medio
recomendao 6.3.7.3.2.4 da ISO/IEC 12207: O projeto deve documentar e comunicar os
resultados para os usurios da medio como para auxiliar na melhoria do processo.
O conjunto das recomendaes para a fase de execuo da Medio permite identificar
os seguintes requisitos de auxlio a atividades de coleta, anlise e comunicao dos resultados
da Medio Quadro 4.5.
Quadro 4.5 Requisitos para fase de executar a medio Anlise de normas e modelos.
48
RFNM-05 Fornecer um conjunto de visualizaes para exibio das Computar e processar
medidas coletadas, das estimativas realizadas e dos dados os dados.
operados.
RFNM-06 Permitir o armazenamento de anlises para os dados. Armazenar anlises.
RFNM-07 Emitir relatrios contendo os produtos de informao Documentar e
armazenados: dados de medidas, de estimativas e de comunicar os
anlises. resultados da
Medio.
49
Quadro 4.6 Requisitos para apoio a realizao de tarefas de Medio de forma automatizada.
50
5 EVOLUO DE UMA FERRAMENTA DE APOIO AO
PROCESSO DE PLANEJAMENTO E ANLISE DE
MEDIO
51
para atender amplamente os requisitos (RFP-07/ RFNM-06 e RFP-08/ RFNM-07) e embora
muitas funcionalidades no tivessem sido totalmente implementadas. Por se tratar de um
prottipo, muitas das funcionalidades j implementadas tiveram que ser descartadas e
desenvolvidas do incio seguindo padres de arquitetura da ferramenta e tambm do ambiente
WebAPSEE.
52
Alm das funcionalidades do prottipo destacadas no quadro, funcionalidades de
versionamento e criao de MIPModels a partir de modelos j cadastrados no prottipo
tinham sido planejadas para compor o prottipo, porm no foram completamente
implementadas. Outras funcionalidades j implementadas precisavam ser adaptadas para
melhor atender aos requisitos de gerao de indicadores, como foram o caso da
funcionalidade de seleo de mtricas a compor um indicador, que no permitia indicar a
unidade em que deveria ser coletada a medida e o caso da funcionalidade de seleo de alvos
de coleta que deveriam ser exibidos no indicador seleo das instncias das entidades
modeladas no processo de desenvolvimento do WebAPSEE.
Foi definido que todos os requisitos levantados e relacionados com o prottipo
deveriam ser implementados neste trabalho de TCC, mas que seriam priorizadas as
funcionalidades planejadas para compor o prottipo e os requisitos relacionados com essas
funcionalidades. Assim, as funcionalidades que j tinham sido iniciadas e que necessitavam
ser finalizadas ou melhoradas foram concludas para ento dar prosseguimento a
implementao das funcionalidades no implementadas.
53
5.2.1 Projeto e Implementao de Operaes e Visualizaes
Para atender ao que fora planejado, um projeto de arquitetura foi definido e ilustrado
atravs do diagrama de pacotes da Figura 28
Figura 28 Diagrama de pacotes estrutura projetada para extrao, operao e visualizao de medidas.
55
Figura 29 Fluxo de aes executadas para gerao de indicadores.
56
A Figura 30 apresenta o diagrama de classes para a extrao das medidas dos alvos
selecionados passo 1 da sequncia de comandos apresentados anteriormente. A arquitetura
foi planejada para se beneficiar do padro de projeto Strategy que concede maior
extensibilidade ao projeto atravs da definio de uma interface para garantir que mtodos
possam ser implementados de diferentes formas a depender de um contexto comum
(GAMMA, et al., 1994). No caso especfico do diagrama da Figura 30 a interface
ExtractorInterface define um comportamento abstrato de extrao de medidas a ser
concretamente realizado em cada uma das classes que implementa a referida interface. Cada
classe realiza a extrao de medidas segundo a sua prpria estratgia que no caso corresponde
a uma tcnica de extrao adequada para uma entidade especfica do processo.
Para a realizao das operaes sobre os dados passo 2 tambm foi aplicado o
padro Strategy (Figura 31), agora no contexto de definio de diferentes operaes possveis
de serem realizadas. A aplicao desse padro nesse contexto se mostra ainda mais efetiva
pelas facilidades oferecidas para a criao de novas operaes evoluo de funcionalidades
do prottipo.
58
Figura 33 Exemplo de relatrio de comunicao.
59
Figura 34 Exemplo de relatrio de dados do indicador.
Alm do novo relatrio contendo os dados de coleta, outro relatrio foi identificado
como importante para auxiliar na auditoria das informaes de Medio: o relatrio contendo
os dados de planejamento da Medio exemplo na Figura 35. Alm de auxiliar na auditoria,
o relatrio possibilita que a organizao tenha maior controle dos artefatos produzidos,
podendo control-los em algum repositrio de verses que esteja institucionalizado pela
organizao.
60
Figura 35 Exemplo do plano de Medio exportado.
62
5.2.3 Implementao de Novas Funcionalidades
63
Figura 38 Modelo de classes do prottipo, destacando as novas classes.
64
As classes no escopo do pacote gqim representam as classes do modelo do prottipo
enquanto as fora do escopo representam classes do ambiente WebAPSEE que so
referenciadas por este. As classes destacadas representam as includas e/ou alteradas para
auxiliar na implementao dos novos requisitos de controle de modificaes no plano de
Medio, de armazenamento de mais de uma anlise para um indicador e de armazenamento e
monitorao de aes a serem tomadas ao longo do projeto.
Em relao ao requisito de controle de modificaes no planejamento, foi definido um
modelo para armazenamento do log dos eventos que podem ocorrer em um Plano de Medio.
Para tanto, relacionado ao MIP tem-se a classe MIP_Log que armazena informaes
referentes a eventos que podem ocorrer em um Plano de Medio. As seguintes informaes
so armazenadas: data do evento, o tipo do evento (incluso/excluso), o tipo de item que
sofreu o evento (meta de negcio, meta de medio, questo, indicador ou relatrio) e o
identificador do item. No caso do item ser um relatrio, informaes adicionais deste devero
ser armazenadas na classe Report_Log, j que diferente dos outros itens, os relatrios so
especficos para um Plano de Medio e caso haja uma excluso de um relatrio do Plano de
Medio o mesmo excludo da base no havendo mais referncia a ser utilizada pelo log.
Para o armazenamento de mais de uma anlise para o indicador o antigo atributo
analysis da classe MIP_Indicator foi transformado em uma classe contendo informaes antes
tambm destacadas como atributos de MIP_Indicator: lies aprendidas e observaes. Alm
disso, para cada anlise possvel detalhar a data de sua realizao e os envolvidos com a
anlise.
Por fim, para o armazenamento e monitoramento das aes a serem tomadas, uma
classe Action foi definida, relacionando informaes de descrio, tipo de entidade que a ao
se refere, estado da ao (pendente, resolvida, invlida) e a data de formulao e
resoluo/invalidao da ao.
Como trabalhos menos relacionados, uma vez que no apresentam requisitos e sim
funcionalidades existentes, outras ferramentas de apoio a atividades de Medio foram
identificadas ao longo deste o que permitiu realizar uma anlise entre elas e a ferramenta aqui
concluda. A anlise foi realizada com base nas principais funcionalidades das ferramentas,
sendo considerado um conjunto restrito de ferramentas que oferecessem apoio a atividades de
Medio em todas as fases de seu processo: planejamento e execuo (coleta e anlise).
65
Assim, foram consideradas as seguintes ferramentas para a anlise: MedPlan e Metrics
(SCHNAIDER, et al., 2004), MetriFlame (VTT ELECTRONICS), Spago4Q
(ENGINEERING INGEGNERIA INFORMATICA S.P.A.) e SPIDER-MPlan (OLIVEIRA e
ESTACIO, 2010).
As ferramentas encontradas foram divididas em dois grupos: ferramentas que realizam
a coleta de medidas a partir da extrao de dados de repositrios externos e ferramentas que
mantm o controle dos dados na prpria base de dados. No primeiro grupo destacam-se
MetriFlame e Spago4Q, j no segundo esto MedPlan e Metrics (a serem analisadas como
uma s), SPIDER-MPlan e o Ambiente WebAPSEE.
Separada no primeiro grupo, a ferramenta MetriFlame possibilita a realizao do
planejamento da Medio com base no paradigma GQM. Ela disponibiliza ainda uma
interface para coleta de medidas de repositrios externos, permitindo assim a integrao da
ferramenta com demais fontes de dados, seja de documentos, de outras ferramentas ou mesmo
de base de dados. Alm disso, a MetriFlame disponibiliza um conjunto de operaes e
visualizaes a serem aplicados sobre as medidas como forma a dar suporte s anlises das
informaes coletadas. Embora a ferramenta permita a coleta automtica de medidas, essa
facilidade acaba limitando a definio de mtricas possveis de serem coletadas, limitando
tambm os tipos de informaes a serem analisadas. Outro ponto da ferramenta que ela no
oferece suporte ao cadastro de anlises e nem possui um mecanismo de exportao das
informaes cadastradas.
Pertencente ao mesmo grupo da ferramenta MetriFlame, a Spago4Q tambm permite o
planejamento da medio guiado por objetivos identificados pela organizao utilizao do
paradigma GQM. A extrao das medidas na ferramenta feita de forma totalmente
automtica uma vez que ela disponibiliza conectores de extrao de dados para diferentes
ferramentas, como Eclipse (THE ECLIPSE FOUNDATION), Bugzilla (MOZILLA
FOUNDATION), Subversion (THE APACHE SOFTWARE FOUNDATION) dentre outras.
Para auxiliar na anlise ela disponibiliza diferentes visualizaes e relatrios, se propondo
ainda a atender recomendaes de diferentes modelos de qualidade como o prprio CMMI. A
Spago4Q se mostra uma ferramenta bem completa para apoiar a Medio, contudo tambm
oferece as limitaes de tipos de mtricas possveis de serem coletadas.
No segundo grupo destacam-se ferramentas de apoio automatizado a realizao das
atividades de coleta de medidas. Embora no coletem nenhuma medida de forma automtica,
as ferramentas possibilitam a definio de qualquer tipo de mtrica existente no contexto de
desenvolvimento de software e permitem que os valores atribudos a elas possam ser
66
armazenados e posteriormente utilizados para compor visualizaes. Todas possibilitam o
planejamento da Medio seguindo alguma abordagem de Medio: GQM para a MedPlan e
SPIDER-MPlan e GQ(I)M para o WebAPSEE, mas somente o WebAPSEE mantm o
controle das modificaes realizados durante o planejamento da Medio.
Em relao ao apoio anlise de informaes, a MedPlan e a Metrics auxiliam na
avaliao post mordem de projetos enviando questionrios de avaliao aos participantes do
projeto e consolidando os resultados obtidos, alm disso permitem o armazenamento de
informaes de anlise e interpretaes dos dados calculados e de aes de tratamento a no
conformidades encontradas. Embora permita todo esse apoio ao cadastro de informaes, a
ferramenta no disponibiliza relatrios de comunicao dos dados, apenas permite que as
visualizaes possam ser impressas, alm disso, no foi identificado um apoio ao
acompanhamento das aes de tratamento armazenadas.
A ferramenta SPIDER-MPlan por sua vez permite o armazenamento de informaes
de anlises, exporta relatrios para a comunicao dos resultados da Medio e permite que
sejam ainda cadastradas apreciaes sobre as anlises feitas a partir dos relatrios. A
ferramenta se prope a auxiliar no atendimento de todos os resultados esperados para o nvel
F do modelo MR-MPS. Diferente do MedPlan e Metrics e do WebAPSEE, nenhuma
indicao de apoio ao cadastro e acompanhamento de aes corretivas foi identificada na
ferramenta.
Por fim, como apresentado ao longo do captulo 3 e ao longo deste captulo, o
WebAPSEE permite o cadastro de anlises, lies aprendidas e observaes acerca da
Medio alm de disponibilizar diferentes tipos de relatrios apoiando a comunicao e
auditoria dos dados. Alm disso, o ambiente permite o cadastro e monitoramente de aes a
serem tomadas pela gerncia ao longo do andamento do projeto, tendo como diferencial das
demais ferramentas apresentadas o registro das modificaes realizadas nos planos de
Medio. Exemplo de utilizao da ferramenta no Apndice B deste texto.
67
6 CONSIDERAES FINAIS
68
Outra contribuio do trabalho foi a prpria ferramenta de apoio ao planejamento e
anlise de Medio evoluda que permitiu avaliar a viabilidade dos requisitos levantados alm
de se mostrar uma soluo tecnolgica para apoiar a realizao desse processo. Alm disso, a
concluso da ferramenta possibilitou o surgimento de trabalhos relacionados com o tema no
grupo de pesquisa ao qual a aluna est inserida.
Apesar das contribuies, importante destacar algumas limitaes deste trabalho:
A identificao de problemas encontrados com a implantao manual de
Medio foi realizada somente em um caso real e em ambiente acadmico;
Os requisitos identificados esto relacionados com a execuo de tarefas da
Medio tradicional, no sendo levadas em considerao as tarefas de Medio
para alta maturidade;
Foi implementado um conjunto limitado de operaes e visualizaes na
ferramenta;
Os mecanismos para apoiar as atividades de Medio so para apoio
automatizado e no automticos.
Finalizando, este TCC trouxe para aluna algumas contribuies pessoais como:
Novos conhecimentos relacionados com o tema abordado o que permitiu que a
aluna pudesse ser convidada para apresentao de um mini-curso de Medio
na SEMINF Semana de Informtica da UFPA 2011.
Novos conhecimento de implementao, de arquitetura, de padres de projeto,
de tecnologias de persistncia de dados, de gerao de visualizaes e de
relatrios.
Maior interesse por parte da aluna pela rea da pesquisa, motivando a mesma a
continuar na academia.
Oportunidade de publicao em peridico (NASCIMENTO, et al., 2010) e em
conferncia (RIBEIRO, et al., 2011).
70
REFERNCIAS
71
ISO/IEC. ISO/IEC 15504-2:2003 Information Technology Process Assessment.
International Organization for Standardization and the International Electrotechnical
Commission. Geneva. 2003.
ISO/IEC. ISO/IEC 12207:2008 - Systems and Software Engineering - Software Life
Cycle Process. International Organization for Standardization and the International
Electrotechnical Commission. Geneva. 2008.
JAVA Remote Method Invocation - Distributed Computing for Java. Disponivel em:
<http://www.oracle.com/technetwork/java/javase/tech/index-jsp-138781.html>. Acesso em:
28 Novembro 2011.
JXLS TEAM. jXLS. Disponivel em: <http://jxls.sourceforge.net/>. Acesso em: 29 Novembro
2011.
KAN, S. H. Metrics and Models in Software Quality Engineering. Boston: Addison
Wesley, 2002.
KETTELERIJ, R. Designing a Measurement Programme for Software Development
Projects. Amsterdam: Master's Thesis. Universiteit van Amsterdam, 2006.
KITCHENHAM, B.; PFLEEGER, S. L. Towards a Framework for Software Measurement
Validation. IEEE Transactions on Software Engineering, Los Alamitos, v. 21, p. 929-944,
December 1995.
LAIRD, L. M.; BRENNAN, M. C. Software Measurement and Estimation: A Practical
Approach. New Jersey: IEEE CS Press, 2006.
LEMOS, A. M. et al. Uso de Prticas de Gerenciamento de Projetos no Desenvolvimento
de um Sistema de Apoio a Redes de Pesquisa no Estado do Par. II Workshop de
Gerenciamento de Projetos de Software. Ouro Preto: Simpsio Brasileiro de Qualidade de
Software. 2009.
LIMA REIS, C. A. Uma Abordagem Flexvel para Execuo de Processos de Software
Evolutivos. Tese de Doutorado. Porto Alegre: PPGCC-UFRGS. 2003.
LIMA, A. M. et al. WebAPSEE: Um Ambiente Livre e Flexvel Para Gerncia de Processos
de Software. VII Workshop de Software Livre. Porto Alegre: Workshop de Software Livre.
2006. p. 163-168.
MCGARRY, J. et al. Practical Software Measurement: Objective Information for Decision
Makers. Boston: Addison Wesley, 2002.
MILLS, E. E. Software Metrics. Carnegie Mellon University. Pittsburgh. 1988.
MOZILLA FOUNDATION. Bugzilla. Disponivel em: <http://www.bugzilla.org/>. Acesso
em: 29 Novembro 2011.
NASCIMENTO, L. M. A. Uma Abordagem Automatizada de Medio em Processos de
Software. Dissertao de Mestrado. Belm: PPGEE/UFPA. 2007.
NASCIMENTO, L. M. A. et al. Implantao de Medio no Processo de Desenvolvimento de
Software - Relato de Experincia e Lies Aprendidas. Revista de Informtica Terica e
Aplicada, 17, n. 3, 2010. 412-425.
OFFEN, R. J.; JEFFEREY, R. Establishing Software Measurement Programs. IEEE
Software. Los Alamitos: IEEE CS Press. 1997. p. 45-53.
72
OLIVEIRA, S. R. B.; ESTACIO, B. J. S. Spider-MPlan: Uma Ferramenta para Apoio ao
Processo de Medio do MPS.BR. Workshop de Software Livre. Porto Alegre: Anais do
Workshop de Software Livre de 2010. 2010.
PARK, R. E.; GOETHERT, W. B.; FLORAC, W. A. Goal-Driven Software Measurement -
A Guidebook. Pittsburgh: SEI Joint Program Office, 1996.
PRESSMAN, R. S. Software Engineering - A Practitioner's Approach. 7th. ed. New York:
McGraw-Hill Professional, 2010.
RIBEIRO, T. V. et al. Apoio Medio em um ADS Centrado em Processos. VII
Workshop Anual do MPS. Campinas: Anais do WAMPS 2011. 2011.
SCHNAIDER, L. et al. Uma abordagem para Medio e Anlise em Projetos de
Desenvolvimento de Software. III Simpsio Brasileiro de Qualidade de Software. Braslia:
Anais do SBQS 2004. 2004.
SEI. CMMI for Developmente (CMMI-DEV 1.3). Carnegie Mellon University. Pittsburgh.
2010.
SEI. CMMI - Overview, 2011. Disponivel em: <http://www.sei.cmu.edu/cmmi/>. Acesso em:
14 Nobembro 2011.
SOFTEX. MPS.BR: Melhoria de Processo do Software Brasileiro. Guia Geral, Junho 2011a.
Disponivel em:
<http://www.softex.br/mpsbr/_guias/guias/MPS.BR_Guia_de_Implementacao_Parte_2_2011.
pdf>. Acesso em: 18 Outubro 2011.
SOFTEX. MPS.BR: Melhoria de Processo do Software Brasileiro. Guia de Implementao -
Parte 2. Fundamentao para Implementao do Nvel F do MR-MPS., Julho 2011b.
Disponivel em:
<http://www.softex.br/mpsbr/_guias/guias/MPS.BR_Guia_de_Implementacao_Parte_2_2011.
pdf>. Acesso em: 04 Novembro 2011.
SOFTEX. MPS.BR: Melhoria de Processo do Software Brasileiro. Guia de Implementao -
Parte 6. Fundamentao para Implementao do Nvel B do MR-MPS., 2011c. Disponivel
em:
<http://www.softex.br/mpsbr/_guias/guias/MPS.BR_Guia_de_Implementacao_Parte_6_2011.
pdf>. Acesso em: 13 Novembro 2011.
SOFTEX. MPS.BR: Melhoria de Processo do Software Brasileiro. Guia de Implementao -
Parte 7. Fundamentao para Implementao do Nvel A do MR-MPS., 2011d. Disponivel
em:
<http://www.softex.br/mpsbr/_guias/guias/MPS.BR_Guia_de_Implementacao_Parte_7_2011.
pdf>. Acesso em: 13 Novembro 2011.
SOLINGEN, R.; BERGHOUT, E. The Goal/Question/Metric Method: A Practical Guide
for Quality Improvement of Software Development. London: McGraw-Hill Publishing
Company, 1999.
THE APACHE SOFTWARE FOUNDATION. Subversion. Disponivel em:
<http://subversion.apache.org/>. Acesso em: 29 Novembro 2011.
THE ECLIPSE FOUNDATION. Eclipse. Disponivel em: <http://www.eclipse.org/>. Acesso
em: 29 Novembro 2011.
VTT ELECTRONICS. MetriFlame. Disponivel em:
<http://virtual.vtt.fi/virtual/proj1/products/metriflame/>. Acesso em: 29 Novembro 2011.
73
WESTFALL, L. 12 Steps to Useful Software Metrics. Proceedings of the Seventeenth
Annual Pacific Northwest Software Quality Conference. Portland: Citeseer. 1999. p. 109-118.
74
APNDICE A DADOS DA MEDIO NO CASO REAL
75
Figura 40 Plano de Medio metas de Medio e questes.
76
Figura 41 Plano de Medio questes e indicadores.
77
Figura 42 Plano de Medio indicadores e mtricas.
78
Figura 43 Dados de Medio medidas coletadas para alvos do tipo atividade.
79
Figura 44 Dados de Medio dados agrupados e operados.
80
APNDICE B EXEMPLO DE UTILIZAO DA
FERRAMENTA DE APOIO MEDIO
Esse apndice tem como objetivo ilustrar como o ferramental de apoio ao processo de
Medio apresentado e evoludo ao longo deste trabalho pode ser utilizado para executar
tarefas do processo de Medio.
Inicialmente a alta gerncia da organizao deve realizar um planejamento genrico da
Medio cadastro de MIPModel. A organizao pode cadastrar um ou vrios modelos de
planos de Medio de acordo com os seus objetivos e critrios em relao Medio e seus
projetos, por exemplo, um nico modelo de plano de Medio pode ser criado com o objetivo
de ser utilizado por todos os projetos desenvolvidos na organizao ou vrios modelos podem
ser criados um para cada tipo de projeto projetos em que a qualidade essencial e projetos
em que o prazo um fator crtico.
A Figura 46 exibe a tela de cadastro de um MIPModel. Nela podem ser indicadas
informaes gerais do modelo de plano de Medio, alm de metas de negcio, de Medio,
questes, indicadores e relatrios genricos a serem utilizados por diferentes tipos de projetos.
Figura 46 Tela de planejamento do MIPModel, modelo genrico para Medio a ser utilizado por diferentes
projetos.
81
Aps ter definido pelo menos um modelo de plano de Medio possvel de ser
utilizado nos projetos da organizao possvel que sejam planejados planos de Medio
especficos para projetos. A Figura 47 ilustra os passos que um usurio da ferramenta de
apoio Medio deve seguir para ter a execuo do processo de Medio apoiada pela
ferramenta aqui apresentada.
Figura 47 Passos a serem executados pelos usurios da ferramenta para realizar as atividades do processo de
Medio.
82
Figura 48 Tela do Manager Console do WebAPSEE Modelagem de um processo de desenvolvimento de
software.
83
Figura 49 Formulrio do MIP para cadastro de metas de Medio.
84
Figura 50 Formulrio de definio de mtricas.
Figura 51 Tela de seleo de alvos para coleta de medidas exemplo de alvos da entidade atividade sendo
selecionados.
85
Aps ter selecionado os alvos, a coleta efetiva das estimativas e das medidas para os
alvos dever ser realizada atravs do formulrio exibido na Figura 52. Os dados coletados so
armazenados na base da ferramenta para a posterior recuperao.
86
Figura 53 Formulrio de armazenamento de anlises e aes e de gerao de indicadores e relatrios.
88
Figura 56 Exemplo de relatrio de comunicao da Medio gerado pela ferramenta.
89