Professional Documents
Culture Documents
Diviso de Ps-Graduao Instituto Tecnolgico de Aeronutica (ITA) Praa Marechal Eduardo Gomes, 50 Vila das Accias CEP: 12228-900 So Jos dos Campos, SP Brasil
Abstract. Many approaches to document frameworks have been suggested in the literature of framework reuse, some show how effective they may be in reducing the learning curve of using the former. However, there is still a lack of research to measure these documents quality. This article describes an approach of framework documentation denominated Guide Cooperation Framework (GCF) and a model of quality and issues, based on the Goal /Question/Metrics (GQM) model, whose aim is to help the interpretation of the quality measuring results of the framework documentation. The proposed model assesses the documentation ease of understanding and its usability. Resumo. Muitas abordagens para documentar frameworks tm sido sugeridas na literatura para o reso de framework, algumas mostram como podem ser efetivas na reduo da curva de aprendizagem de utilizao do mesmo. Entretanto, ainda h uma carncia de trabalhos de investigao para medir a qualidade destes documentos. Neste artigo apresentada uma abordagem de documentao de framework denominada Guia de Colaborao de Framework (GCF) e um modelo de qualidade e questes, baseadas no modelo Goal/Question/Metrics (GQM), com o objetivo de auxiliar na interpretao dos resultados da medio da qualidade desses. O modelo aqui proposto avalia a facilidade de entendimento da documentao e a sua usabilidade.
1. Introduo
Frameworks orientados a objetos so tcnicas poderosas de reutilizao de software capazes de oferecer nveis elevados de projeto e reso de cdigo. Os frameworks permitem uma produtividade mais elevada do desenvolvimento, um menor tempo de produo, e uma maior qualidade das aplicaes. No entanto, estes benefcios so adquiridos ao longo do tempo e requerem dedicao e esforo considervel na aprendizagem e compreenso dos detalhes essenciais da arquitetura do projeto e de como utiliz-lo. Uma boa documentao essencial para o sucesso do mesmo. Sem uma documentao clara, completa e precisa descrevendo como se utilizar o framework, como est projetado e a forma de se trabalhar com ele, ser muito difcil para entend-lo e utiliz-lo. Muitas abordagens de documentao tm sido sugeridas na literatura e algumas mostram como podem ser efetivas na reduo da curva do tempo de aprendizagem de utilizao, tais como Livro de Receitas (Cookbook) [Johnson 1992], Linguagem padro [Krasner 1988], e Meta padro [Pree 1995]. Grady Booch [1994]
358
afirma que A maior parte dos frameworks nunca ser reutilizada a menos que o custo de entend-lo e ento utilizar suas abstraes seja menor que o custo de compreenso dos programadores em escrev-las do zero. Neste artigo apresentamos um modelo de mtricas, que foi definido utilizando o Goal/Question/Metric [Basili 1994] para avaliar e, assim, apontar alguns resultados de uma nova abordagem de documentao de framework denominada GCF [Souza 2008]. Na seo 2 ser apresentada a abordagem de documentao denominada GCF, na seo 3 sero apresentados os conceitos referentes a mtricas de software. Na seo 4 ser apresentado o modelo de mtricas para avaliao do GCF atravs da aplicao da abordagem GQM. Na seo 5 sero definidas as mtricas, coleta e interpretao dos resultados obtidos atravs da aplicao prtica dessas mtricas. Finalmente, na seo 6 sero apresentadas as concluses deste trabalho.
Assim, o GCF aborda diversos requisitos, entre os quais se destacam os seguintes: Facilidade de uso pelos programadores, para que a atividade de documentao no constitua um obstculo atividade de programao; Flexibilidade para se adaptar s particularidades de cada ambiente de projeto; Capacidade de interligar os diferentes tipos de contedos produzidos;
359
3. Mtricas de software
Segundo Fenton e Pfleeger [1994] medio de software o processo atravs do quais nmeros e smbolos so atribudos ao mundo real de forma a tornar possvel caracterizar cada entidade atravs de regras claramente definidas. A medio se d atravs da aplicao de mtricas de processos, produtos e servios. Uma mtrica pode ser definida, por sua vez, com uma definio matemtica, algortmica ou funo usada para obter uma avaliao quantitativa de um produto ou processo. Segundo a norma ISO (International Organization for Standardization) [2001], mtrica a composio de mtodos para medio e escalas de medio. Essas escalas de medio so formas de mapeamento que permitem entender o comportamento das entidades por meio da manipulao de dados. Existem diferentes tipos de escalas [Fenton 1994]: Nominal: prov um nome ou um valor para um atributo, no entanto, a ordem dos valores no tem nenhum significado para a sua interpretao. Ordinal: os resultados esto em uma determinada ordem (ascendente ou descendente), mas a distncia entre os pontos dessa escala no tem significado. Intervalo: preserva a importncia da ordem dos resultados, e possui informaes sobre o tamanho dos intervalos que separaram os pontos da escala. Racional: semelhante escala de intervalo, no entanto ela representa tambm as propores entre as entidades, possui o marco zero (indicador da falta do atributo). Absoluta: feita atravs da contagem do nmero de elementos de uma entidade. Para que a medio seja efetiva, torna-se necessrio foc-la nos objetivos a serem alcanados com tais medies [Basili 1994]. Pfleeger [1994] destaca que necessrio deixar claras as necessidades para poder melhor conhecer os objetivos das medies. O uso de modelos pode guiar a definio de aplicao de medies a serem realizadas, um modelo comumente utilizado o GQM [Basili 1994] [SAGP 2008].
360
assim, estabelecer bases para comparao com trabalhos futuros [Soligen 1999]. O GQM baseia-se na suposio de que para se medir de maneira eficaz, alguns objetivos devem ser estabelecidos para que estes sirvam de rota para o estabelecimento de questes que orientaro a definio de mtricas em um contexto particular. muito importante para o sucesso da aplicao do GQM que os objetivos estejam bem traados, pois somente assim a escolha das mtricas e posterior avaliao dos dados ser bem sucedida [Gomes 2001]. Sendo assim o GQM considera um modelo com trs nveis de realizao: Conceitual Definio do escopo da avaliao, ou seja, do objeto a ser medido. (Processos, Produtos ou Recursos) Operacional Definio de um conjunto de questes que auxilie na caracterizao do objeto de estudo e como ele deve ser enxergada dentro do contexto da qualidade. Quantitativo Definio de um conjunto de dados a serem obtidos, relacionado a cada uma das questes definidas anteriormente, a fim de respond-las de forma quantitativa, ou seja, as mtricas.
A Figura 4 apresenta a forma como Solingen e Berghout [1999] definem as fases do mtodo GQM.
Planejamento nesta fase sero realizadas as seguintes atividades: relacionar a equipe que participar do GQM, selecionar a rea que se deseja melhorar, apontar os projetos que faro parte da aplicao do mtodo e treinamento da equipe nos conceitos necessrios para a aplicao do GQM. Definio nesta fase dever-se- definir os objetivos do GQM, produzir ou adaptar modelos de software, definir as questes a serem respondidas, definir e refinar as mtricas, alm de promover a reviso dos planos do GQM. Coleta de Dados Os dados so coletados, com base nas mtricas definidas. Interpretao Os dados coletados anteriormente so absorvidos e concluses acerca dos mesmos so extradas pela equipe de GQM. Com base neles as questes definidas podem ser respondidas.
361
Duas questes foram derivadas para atender esse objetivo: Questo 1.1: Qual o grau de compreenso da linguagem utilizada pela documentao do framework? Questo 1.2: Qual o grau de compreenso das ilustraes e exemplos utilizados na documentao? Para definir as mtricas que respondessem essas questes consideramos ento avaliar: as caractersticas gerais da documentao (Nome do framework, Propsito, Domnio, Contexto), itens da Documentao prescritiva (Pontos de Flexibilidade - Hotspot), itens da Documentao Descritiva (Diagramas, Padres de Projeto), caractersticas especficas (Exemplos, Caractersticas mais importantes, glossrio, Cdigo Fonte, Referncias, Restries) e Como utilizar o framework [Souza 2008]. Algumas mtricas foram definidas a partir da experincia do autor e outras foram selecionadas da literatura [Usability 2008] utilizando-se um tipo de escala especfico definidas na seo anterior. Para auxiliar na interpretao das medies, subjetivas, coletadas para as mtricas foi proposto quando necessrio uma escala ordinal que permita a melhor avaliao [Ramos 2004]. A tabela 2 representa a escala de avaliao das mtricas. As Tabelas 3 e 4 apresentam as mtricas definidas para as questes 1 e 2 respectivamente.
Tabela 2. Escala de avaliao das mtricas
Frmula X = A, Onde: A= (5) Muito Satisfeito (4) Mdia Interpretao (3) Satisfeito (2) Pouco Satisfeito (1) Insatisfeito
362
5.2. Avaliao da usabilidade da documentao de framework O segundo objetivo de medio definido usado para avaliar a usabilidade da documentao de framework. A Tabela 5 apresenta a formalizao desse objetivo segundo a estrutura proposta por [Soligen 1999].
Tabela 5. Objetivo de medio 2
Analisar a Com o propsito de Com respeito a Do ponto de vista No contexto do usabilidade da documentao do framework avaliar a usabilidade da documentao [Usability 2008] capacidade que a documentao tem de ser entendida, aprendida, utilizada e atraente para o usurio desenvolvedor de aplicaes desenvolvimento de aplicaes
Duas questes foram derivadas para atender esse objetivo: Questo 2.1: Qual o grau do nvel de detalhe da documentao de utilizao de framework? Questo 2.2: Qual o grau de satisfao do usurio aps utilizarem a documentao de framework? Para definir as mtricas que respondessem essas questes, consideramos ento avaliar: a capacidade da documentao ser inteligvel e colaborar para que o usurio possa entend-lo. As Tabelas 6 e 7 apresentam as mtricas definidas para as questes 1 e 2 respectivamente.
Tabela 6. Mtricas para Objetivo 2 Questo 1
Questo 2.1: Qual o grau do nvel de detalhe da documentao de utilizao do framework? M2.1.1) Grau de satisfao com a apresentao da documentao ? M2.1.2) Grau de integrao entre os assuntos da documentao ? M2.1.3) Grau de clareza da documentao ?
5.3.Coleta de Dados Para a coleta de dados foram definidas dez mtricas, inicialmente descritas nas Tabelas 3, 4, 6 e 7. Na fase da coleta de dados foi realizada atravs de questionrio distribudo em duas etapas, sendo elas no quinto e nono perodo, aos alunos do 5 ano de graduao do curso de engenharia eletrnica e computao do Instituto Tecnolgico de Aeronutica ITA, matria CES-26 (Tpicos Avanados em Orientao a Objetos). 5.4. Interpretao A etapa de interpretao da coleta de dados ocorreu ao final do semestre do curso de graduao do ITA. Esta etapa foi conduzida pelo autor deste artigo, onde o mesmo tem a conscincia de que no bastou apenas a definio de uma estrutura padronizada, mas tambm que a mesma esteja associada a contedos melhores elaborados pelos desenvolvedores de documentao de framework. Assim sendo, os resultados da coleta de dados so apresentados na Tabela 8, 9.
363
Para avaliar as documentaes de utilizao de framework foi utilizada a abordagem GQM que definiu os objetivos e questes que respondessem sobre o grau de compreenso da linguagem utilizada pela documentao, as ilustraes e exemplos, o nvel de detalhe e a satisfao do usurio aps utilizar a documentao oferecida, avaliando assim os resultados das opinies sobre a facilidade de entendimento da documentao e sua usabilidade. Conforme definido pela abordagem GQM, atravs dos dados obtidos pelas mtricas, constatou-se um alto grau de insatisfao na compreenso da linguagem utilizada pela documentao do framework (Questo 1.1) da estrutura de documentao definida pelos autores (Tabela 1) em relao estrutura sugerida pela GCF (Figura 2). E como destaque desse item, possvel citar que a facilidade para compreender e completar as tarefas de forma rpida e eficiente com o GCF obteve uma avaliao bastante significativa, 57% dos entrevistados responderam que estavam bastante satisfeitos. Em relao ao grau de compreenso das ilustraes e exemplos utilizados na documentao (Questo 1.2) os valores apresentam um elevado grau de satisfao dos alunos com a estrutura do GCF em relao estrutura definida por eles prprios. J o nvel de satisfao ficou elevado com a apresentao da documentao, a integrao entre os assuntos e a clareza dos itens no GCF comparados estrutura de documentao definida pelos alunos no que se referente ao grau do nvel de detalhe (Questo 2.1). Entretanto, o valor da mtrica em relao facilidade de manipulao entre as estrutura deixou evidente que a definio de uma estrutura padronizada, como a do GCF, pode trazer uma satisfao maior quanto questo de reuso do framework (Questo 2.2). Dos resultados apresentados (Tabelas 8 e 9) em relao aos objetivos de avaliar a facilidade de entendimento da documentao de utilizao de framework [Ramos 2004] e a usabilidade do mesmo [Usability 2008] o GCF demonstrou ser mais eficaz oferecendo resultados mais expressivos em relao a utilizada pelos alunos.
364
6. Concluso
A medio da qualidade dos documentos de utilizao de framework uma estratgia importante para ajudar a otimizar a curva de aprendizagem e aumentar o reso dos frameworks. Neste artigo foi apresentada uma proposta para avaliar documentos elaborados pelos alunos do 5 ano do curso de engenharia em relao GCF baseado no modelo GQM. Os resultados aqui apresentados demonstraram uma variao no grau de satisfao acentuada entre os alunos, principalmente em relao estrutura sugerida pelo GCF. Como lies aprendidas foram constatadas que: a) no basta apenas a definio de uma estrutura padronizada, mas que a mesma esteja associada a contedos melhores elaborados pelos usurios; b) O GQM mostrou ser um mtodo simples para avaliar e oferecer maior qualidade em relao documentao de utilizao de framework. Para as prximas atividades de avaliao, a abordagem ser aplicada em um ambiente real de desenvolvimento no controlado e sero estabelecidos novos objetivos e metas de verificao buscando se aproximar de um valor ideal definido pelos usurios. 7. Referncias Basili, V. e Rombach, H. (1994) Goal question metric paradigm, Encyclopedia of software engineering. Booch, G. Designing an Application Framework. (1994) Dr. Dobbs Journal 19. Fenton, N. E, Pfleeger, L., (1994) Software metrics a rigorous and practical approach, PWS Publishing Company. Gomes, A., Oliveira, K. M., Rocha, A. R. (2001) Mtricas para Medio e Melhoria de Processo de Software. Rio de Janeiro: COPPE/UFRJ. ISO 9126 (2001) International Organization for Standardization - Software engineering Product quality Part 1. Johnson, R. E., (1992) Documenting frameworks using patterns., SIGPLAN Notices, New York, v.27, n.10. Krasner, G.E., Pope, S.T., (1988) A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80, Journal of Object-Oriented Programming. Pree, W., (1995) Design Patterns for Object-Oriented Software Development, AddisonWesley Publishing Company. Ramos, C. S.; Oliveira, K. M (2004). Conhecendo Sistemas Legados atravs de Mtricas de Software. In: III Simpsio Brasileiro de Qualidade de Software. SAGP, (2008) Software Acquisition Gold Practice - Goal-Question-Metric (GQM) Approach, https://www.goldpractices.com/practices/gqm/. Souza, F M, (2008) GCF Uma Abordagem para o Desenvolvimento de uma Guia de Colaborao de Framework. So Jos dos Campos. Soligen, R. e Berghout, E., (1999) The goal/question/metric method A pratical guide for quality improvement of software development. Usability. Your Guide for Development Usable & Useful Web Sites (2008). Disponvel em: <http://usability.gov>
365