Você está na página 1de 66

Universidade Federal de Pernambuco Graduao em Cincia da Computao Centro de Informtica

Estudo comparativo entre ferramentas de Gerncia de Requisitos _______________________________________________________________ Trabalho de Graduao

Aluno: Rafael Richa Teixeira Ananias Orientador: Prof. Dr. Alexandre Marcos Lins de Vasconcelos

Recife/2009

Rafael Richa Teixeira Ananias

Estudo comparativo entre ferramentas de Gerncia de Requisitos

Trabalho apresentado como requisito parcial obteno do ttulo de Bacharel em Cincia da Computao, pelo Centro de Informtica da Universidade Federal de Pernambuco, sob

orientao do Prof. Dr. Alexandre Marcos Lins de Vasconcelos.

Recife/2009

Agradecimentos

Primeiramente agradeo a Deus por me proporcionar fora e perseverana, no s neste trabalho, mas em toda a vida, mantendo-me firme diante dos obstculos. Agradeo minha famlia, meu pai Nilson Ananias, minha me Glaucia Ananias, meu irmo Cesar Ananias, minha noiva Cristeane Sampaio, meu av Widomar Teixeira, minhas avs Gloria Richa e Nilsa Ananias e a todos outros por todo amor, compreenso, apoio, carinho e dedicao dados a mim. Sem eles nada disso seria possvel. Meu amor de vocs. Ao meu orientador, Professor Doutor Alexandre Marcos Lins de Vasconcelos, por todo apoio, pacincia, prontido e dedicao dados a mim no decorrer deste trabalho. Sua ajuda foi fundamental. Agradeo a todos meus amigos que contriburam de alguma forma para o sucesso deste trabalho e do curso.

Resumo

Este trabalho tem como finalidade fazer um estudo comparativo entre ferramentas gratuitas de Gerncia de Requisitos, fortes aliadas no processo de desenvolvimento de sistemas. Pretende servir como apoio na escolha do programa mais apropriado ao ambiente dos interessados. Neste trabalho, so utilizadas trs normas internacionais, que propem um sistema de avaliao para que seja observada a qualidade dos produtos de software. As ferramentas selecionadas a serem submetidas ao estudo so: Jeremia, OSRMT, Tiger Pro e Xuse. Palavras-chave: Gerncia de Requisitos, ferramentas de Gerncia de Requisitos.

Sumrio

Agradecimentos .......................................................................................................................... 3 Resumo ....................................................................................................................................... 4 ndice de Figuras ........................................................................................................................ 8 ndice de Tabelas ........................................................................................................................ 9 1 Introduo .............................................................................................................................. 10 1.1 Objetivos ......................................................................................................................... 11 1.2 Estrutura do trabalho ....................................................................................................... 11 2 Gerncia de Requisitos .......................................................................................................... 12 2.1 Processo de Engenharia de Requisitos............................................................................ 12 2.2 Gerncia de Requisitos ................................................................................................... 14 2.2.1 Gerenciamento de mudanas .................................................................................... 15 2.3 Consideraes finais ....................................................................................................... 17 3 Gerncia de Requisitos em modelos de qualidade ................................................................ 18 3.1 CMMI ............................................................................................................................. 18 3.1.1 SG1 Gerenciar Requisitos ..................................................................................... 21 3.2 MPS-BR .......................................................................................................................... 22 3.3 Consideraes finais ....................................................................................................... 26 4 Modelos de qualidade de produto de software ...................................................................... 27 4.1 ISO/IEC 9126 ................................................................................................................. 27 4.1.1 ISO/IEC 9126-1........................................................................................................ 28 4.1.2 ISO/IEC 9126-2........................................................................................................ 31 4.1.3 ISO/IEC 9126-3........................................................................................................ 31 4.1.4 ISO/IEC 9126-4........................................................................................................ 32

6 4.2 ISO/IEC 14598 ............................................................................................................... 33 4.3 ISO/IEC 12119 ............................................................................................................... 36 4.3.1 Requisitos de Qualidade ........................................................................................... 36 4.3.2 Instrues para Testes .............................................................................................. 37 4.4 Consideraes finais ....................................................................................................... 38 5 Processo de avaliao ............................................................................................................ 39 5.1 Usurios .......................................................................................................................... 40 5.2 Caractersticas, sub-caractersticas e atributos ................................................................ 40 5.3 Distribuio dos pontos .................................................................................................. 43 5.4 Sistema de mtricas adotado ........................................................................................... 45 5.4.1 Clculo da nota final ................................................................................................ 45 5.5 Consideraes finais ....................................................................................................... 46 6 Anlise das ferramentas selecionadas.................................................................................... 47 6.1 Jeremia ............................................................................................................................ 47 6.2 OSRMT ........................................................................................................................... 48 6.3 Tiger Pro ......................................................................................................................... 49 6.4 Xuse ................................................................................................................................ 50 6.5 Anlise das ferramentas .................................................................................................. 51 6.5.1 Jeremia ..................................................................................................................... 52 6.1.2 OSRMT .................................................................................................................... 53 6.1.3 Tiger Pro ................................................................................................................... 54 6.1.4 Xuse.......................................................................................................................... 55 6.2 Comparao entre as ferramentas ................................................................................... 56 6.3 Anlise dos resultados .................................................................................................... 56

7 6.3.1 Jeremia ..................................................................................................................... 56 6.3.2 OSRMT .................................................................................................................... 57 6.3.3 TigerPro .................................................................................................................... 58 6.3.4 Xuse.......................................................................................................................... 59 6.4 Consideraes finais ....................................................................................................... 60 7 Concluso .............................................................................................................................. 61 7.1 Dificuldades encontradas ................................................................................................ 62 7.2 Trabalhos futuros ............................................................................................................ 62 8 Glossrio ................................................................................................................................ 63 9 Referncias bibliogrficas ..................................................................................................... 64

ndice de Figuras

Figura 1. Modelo de processo de Engenharia de Requisitos de alto nvel ............................... 13 Figura 2. Processo de Gerenciamento de Mudanas ................................................................ 15 Figura 3. Tipos de Rastreamento .............................................................................................. 16 Figura 4. Representao contnua do CMMI............................................................................ 19 Figura 5. Representao por estgios do CMMI ...................................................................... 20 Figura 6. Nveis do MPS-BR .................................................................................................... 23 Figura 7. ISO/IEC 9126-1 ........................................................................................................ 30 Figura 8. ISO/IEC 14598-1 ...................................................................................................... 33 Figura 9. Estrutura da ISO/IEC 12119 ..................................................................................... 36 Figura 10. Distribuio dos atributos e sub-caractersticas de uma caracterstica ................... 39 Figura 11. Tela inicial do Jeremia ............................................................................................ 48 Figura 12. Tela inicial do OSRMT ........................................................................................... 49 Figura 13. Tela inicial do Tiger Pro ......................................................................................... 50 Figura 14. Tela inicial do Xuse ................................................................................................ 51 Figura 15. Funcionamento do TigerPro .................................................................................... 59

ndice de Tabelas

Tabela 1. Distribuio dos pontos ............................................................................................ 44 Tabela 2. Tabela de anlise do Jeremia .................................................................................... 52 Tabela 3. Tabela de anlise do OSRMT ................................................................................... 53 Tabela 4. Tabela de anlise do Tiger Pro ................................................................................. 54 Tabela 5. Tabela de anlise do Xuse ........................................................................................ 55 Tabela 6. Tabela de comparao das ferramentas .................................................................... 56

10

1 Introduo

Aos requisitos esto associados os principais problemas do desenvolvimento de software. Requisitos que no refletem as reais necessidades dos usurios, incompletos e/ou inconsistentes, mudanas em requisitos j acordados e a dificuldade para conseguir um entendimento comum entre usurios e desenvolvedores so as principais dificuldades relatadas, provocando re-trabalho, atrasos no cronograma, custos ultrapassados e a insatisfao dos clientes e usurios de software (BLASCHEK, 2002, p.1). Os requisitos descrevem basicamente as caractersticas e propriedades de um sistema, o que o sistema deve ou no fazer, bem como suas restries. Elicitao, documentao, anlise e validao de requisitos fazem parte de um conjunto de atividades executadas pelos desenvolvedores, chamado de Processo de Engenharia de Requisitos. Uma organizao que deseja desenvolver sistemas de qualidade, respeitando prazos e custos, deve ter um processo de requisitos bem definido, entendido e utilizado pelos colaboradores.

Com o passar do tempo, mudanas ocorrem nos requisitos devido a diversos fatores como erros, inconsistncias, problemas organizacionais, evoluo do conhecimento dos stakeholders, alteraes legais, etc., exigindo um grande esforo das empresas para o controle e gerenciamento dos mesmos (GRANDE, s.d., p.1).

Visando apoiar os responsveis pelo desenvolvimento de software, foram criadas as ferramentas para gerncia de requisitos. Essas ferramentas basicamente tm a capacidade de coletar, armazenar, manter e gerenciar mudanas dos requisitos. Dentre as vrias solues, encontram-se tanto programas pagos quanto gratuitos, cada uma com suas caractersticas, que podem, de acordo com a realidade da empresa, se adaptar de forma mais amigvel s necessidades.

11

1.1 Objetivos

O objetivo deste Trabalho de Graduao fazer um estudo comparativo entre ferramentas de Gerncia de Requisitos, podendo servir de apoio aos interessados na escolha da ferramenta apropriada, de acordo com suas necessidades. Esta comparao ser feita com a observao e avaliao de critrios baseados em normas internacionais, visando de medir a qualidade dos softwares.

1.2 Estrutura do trabalho

Este trabalho est organizado da seguinte forma: o captulo 2 apresenta a Gerncia de Requisitos, onde discute conceitos do Processo de Engenharia de Requisitos. O captulo 3 aborda a Gerncia de Requisitos nos modelos de qualidade, mostrando o CMMI e o MPS-BR. No captulo 4 so discutidos os modelos de qualidade de produto de software, expondo a ISO/IEC 9126, a ISO/IEC 14598 e a ISO/IEC 12119. O captulo 5 demonstra o processo de avaliao das ferramentas selecionadas. No captulo 6 so apresentados os resultados do estudo dos softwares. Finalizando, o captulo 7 apresenta as concluses a respeito do trabalho realizado, dificuldades encontradas e trabalhos futuros.

12

2 Gerncia de Requisitos

Gerncia de Requisitos uma atividade que corre em paralelo com os processos da Engenharia de Requisitos. Assim, primeiramente ser abordado o processo de Engenharia de Requisitos para posteriormente expor a Gerncia de Requisitos propriamente dita. A Engenharia de Requisitos um grande processo que envolve todas as atividades que colaboram na produo de um Documento de Requisitos1 alm de sua manuteno com o decorrer do tempo. Este processo deve ser precedido de um estudo de viabilidade, que, de acordo com as restries do projeto em questo, determinar se vivel ou no dar continuidade ao projeto. O estudo de viabilidade envolve questes como: Viabilidade operacional: onde se mede o quo adequado o sistema para a organizao; Viabilidade tcnica: analisa-se se os recursos tcnicos esto disponveis e se vivel tecnicamente seguir com o projeto; Viabilidade de cronograma: estuda-se a razoabilidade do cronograma do projeto; Viabilidade econmica: onde se analisa o custo-benefcio do projeto. Aps esse estudo, com a concluso de que o projeto vivel, comea-se o processo de Engenharia de Requisitos.

2.1 Processo de Engenharia de Requisitos

A Engenharia de Requisitos tem como objetivo melhorar a modelagem de sistemas e a capacidade de analis-los, permitindo melhor entendimento de suas caractersticas antes da implementao.

Documento que contm os servios e funcionalidades que o sistema deve prover, restries, informaes sobre o domnio da aplicao, bem como restries no processo usado para desenvolver o sistema.

13 Vale ressaltar que no existe um processo nico e ideal de gerncia de requisitos. O processo varia de acordo com vrios fatores de uma organizao: maturidade tcnica, envolvimento em disciplinas, cultura organizacional, domnio da aplicao dentre outros. Basicamente esses processos tm os mesmos pilares: elicitao, anlise e negociao, documentao e validao de requisitos. A Figura 1 apresenta um exemplo de modelo de processo de engenharia de requisitos de alto nvel (KOTONOYA; SOMMERVILLE, 1998, p.32):

Figura 1. Modelo de processo de Engenharia de Requisitos de alto nvel

A Elicitao de Requisitos uma atividade onde os requisitos so descobertos consultando stakeholders2, muitas vezes chamada de aquisio de requisitos ou descoberta de requisitos. Na Anlise e Negociao dos Requisitos os requisitos so analisados detalhadamente e diferentes stakeholders negociam para definir quais requisitos sero aceitos. Essa atividade necessria, pois inevitavelmente ocorrem conflitos entre requisitos de diferentes fontes, requisitos incompletos e incompatibilidade de requisitos com o escopo do projeto. A Documentao de Requisitos a atividade onde os requisitos acordados so documentados de forma apropriada.
2

Todas as pessoas envolvidas direta e indiretamente com o projeto.

14 Na Validao de Requisitos os problemas do documento de requisitos so detectados, antes que sejam utilizados no desenvolvimento do sistema. Agora, a Gerncia de Requisitos, que como foi dito caminha em paralelo com os processos de Engenharia de Requisitos, ser abordada.

2.2 Gerncia de Requisitos

Em todos os estgios do desenvolvimento de sistemas, novos requisitos surgem e mudanas podem ocorrer nos que j existem. Segundo Kotonya e Sommerville (1998, p.113), geralmente essas mudanas ocorrem em 50% dos requisitos antes de serem colocados em atividade. Com isso, fica claro que essas mudanas podem provocar srios problemas aos desenvolvedores. Para minimizar os problemas que podem ocorrer, a Gerncia de Requisitos se faz necessria. Basicamente, um processo que permite compreender e controlar mudanas nos requisitos de sistemas. Um estudo europeu revela que o gerenciamento dos requisitos dos clientes um dos principais problemas no desenvolvimento e produo de sistemas (KOTONOYA; SOMMERVILLE, 1998, p.114). Os principais objetivos do gerenciamento de requisitos so (KOTONOYA; SOMMERVILLE, 1998, p.114): Gerenciar mudanas para requisitos acordados; Gerenciar o relacionamento entre requisitos; Gerenciar as dependncias entre documentos de requisitos e outros documentos produzidos no processo de Engenharia de Software.

15 2.2.1 Gerenciamento de mudanas

O gerenciamento de mudanas est relacionado a procedimentos, processos e padres que so usados para gerenciar mudanas nos requisitos do sistema (KOTONOYA; SOMMERVILLE, 1998, p. 116). Essas mudanas podem ocorrer por diversos fatores. Alguns deles so: Erros, conflitos e inconsistncia dos requisitos; Envolvimento do cliente; Problemas relacionados tcnica, cronograma e gastos; Mudana de prioridade dos clientes; Mudanas no ambiente onde funcionar o sistema; Mudanas organizacionais. O processo de gerncia de mudanas consiste em uma srie de atividades para documentar, reportar, analisar, definir custos e implementar mudanas de um conjunto de requisitos. A Figura 2 representa o processo (KOTONOYA; SOMMERVILLE, 1998, p. 124).

Figura 2. Processo de Gerenciamento de Mudanas

Os trs estgios da figura representam: Identifica-se algum problema de requisitos, que pode vir da anlise de requisitos, novas necessidades dos clientes ou de problemas operacionais do sistema. Com isso, os requisitos so analisados utilizando informaes do problema e as mudanas so propostas;

16 Analisam-se as mudanas propostas e se toma conhecimento da quantidade de requisitos que sero afetados. Assim, pode-se saber quanto s mudanas custaro (em termos de tempo e gastos financeiros); As mudanas so implementadas. Uma srie de alteraes ou uma nova verso do documento de requisitos produzida. Uma parte crtica do processo de gerncia de mudanas a anlise de impacto que as mudanas causam no resto do sistema. Para lidar com esse problema, tem-se o conceito de rastreabilidade, que une informaes justamente para poder haver uma anlise deste impacto. Davis (1993) definiu quatro tipos de rastreamento (KOTONOYA; SOMMERVILLE, 1998, p. 128): Rastreamento Backward-from: relaciona requisitos a suas fontes em outros documentos ou pessoas; Rastreamento Forward-from: relaciona requisitos ao projeto e componentes de implementao; Rastreamento Backward-to: relaciona o projeto e componentes de implementao aos requisitos. Rastreamento Forward-to: relaciona outros documentos (que possa ter precedido os documentos de requisito) aos requisitos relevantes. A Figura 3 resume os tipos citados acima (KOTONOYA; SOMMERVILLE, 1998, p. 129):

Figura 3. Tipos de Rastreamento

17

2.3 Consideraes finais

Este captulo abordou a Gerncia de Requisitos, atividade que ocorre em paralelo com os processos de Engenharia de Requisitos, que envolvem desde a elicitao at a validao dos requisitos. Tambm foi possvel visualizar o funcionamento do gerenciamento das mudanas bem como a questo da rastreabilidade. O prximo captulo abordar os modelos de qualidade CMMI e MPS-BR, mais especificamente o nvel de maturidade 2 Gerenciado e o nvel G Parcialmente Gerenciado, respectivamente. Neles, veremos a relao com a Gerncia de Requisitos.

18

3 Gerncia de Requisitos em modelos de qualidade

Neste captulo, sero abordados dois modelos de qualidade que envolvem a Gerncia de Requisitos. Primeiramente ser mostrado o CMMI, desenvolvido pela SEI (Software Engineering Institute), em particular o nvel de maturidade 2 - Gerenciado. Em seguida ser exposto o MPS-BR (Melhoria de Processo do Software Brasileiro), coordenado pela Associao para Promoo da Excelncia do Software Brasileiro (SOFTEX), mais especificamente o nvel G Parcialmente Gerenciado.

3.1 CMMI

O CMMI (Capability Maturity Model Integration), modelo reconhecido mundialmente por atestar a maturidade dos processos das organizaes, em seu nvel de maturidade dois Gerenciado, possui uma rea de processo chamada de Gesto de Requisitos, que visa satisfazer as necessidades das organizaes em relao forma de organizar os requisitos providos pelos clientes, de acordo com o progresso dos projetos. Com isso, pode-se entender claramente o que deve ser feito e o que se espera obter como resultado. O modelo possui duas representaes: contnua e por estgios. Com isso as organizaes podem optar por diferentes caminhos para alcanar sua maturidade. Em ambos os casos, o nvel dois Gerenciado. Na representao contnua, tm-se nveis de capacidade e o agrupamento das reas de processo se d por categorias. Visa avaliar a capacidade das reas de processo. A Figura 4 demonstra essa representao:

19

5 Otimizado

4 Gerenciado Quantitativamente

3 Definido

2 Gerenciado

1 - Realizado

0 - Incompleto

Figura 4. Representao contnua do CMMI

A seguir, as definies segundo o Modelo de Qualidade CMMI (PENTEADO, 2007, p. 4): Nvel 0 Incompleto: um processo parcialmente realizado ou no realizado; Nvel 1 Realizado: um processo realizado satisfaz todos os objetivos especficos da rea de processo e produz algum trabalho; Nvel 2 Gerenciado: um processo realizado e tambm planejado e executado com polticas pr-definidas; Nvel 3 Definido: um processo gerenciado e ajustado para um conjunto padro de processos da organizao de acordo com suas polticas de conduta; Nvel 4 Gerenciado Quantitativamente: um processo definido e controlado com ajuda de tcnicas quantitativas e estatsticas; Nvel 5 Otimizado: um processo gerenciado quantitativamente, alterado e adaptado para atender aos objetivos de negcio atuais e projetados.

20 J a representao por estgios possui nveis de maturidade e o agrupamento das reas de processo se d por nveis. Visa avalia a organizao como um todo. A Figura 5 mostra essa representao:

5 Otimizado

4 Gerenciado Quantitativamente

3 Definido

2 Gerenciado

1 Realizado (Inicial)

Figura 5. Representao por estgios do CMMI

possvel observar que a representao por estgios, diferentemente da representao contnua no possui o nvel 0 Incompleto. Os requisitos gerados, includos ou impostos pelo projeto devem ser gerenciados de forma que sejam todos tratados. Assim, mudanas sero sempre atualizadas, permitindo o rastreamento desde a fase de elicitao at o produto final. Esta rea de processo (Gesto de Requisitos) possui um nico objetivo especfico, descrito a seguir:

21 3.1.1 SG1 Gerenciar Requisitos

Este SG (Specific Goal) tem como objetivo gerenciar os requisitos e identificar inconsistncias nos planos de projeto e quais produtos de trabalho tratados. Possui cinco prticas especficas:

SP1.1 Obter um entendimento dos requisitos Esta SP (Specific Pratice) se ocupa em saber os significados reais dos requisitos elicitados e visa desenvolver um entendimento com os fornecedores dos requisitos a respeito de seus significados. medida que o projeto amadurece e os requisitos vo sendo derivados, todas as atividades ou disciplinas recebero requisitos. Para impedir que os requisitos cresam indistintamente, critrios so estabelecidos para determinar canais apropriados ou fontes oficiais que devem receb-los. A admisso de requisitos deve ser analisada com os responsveis com a finalidade de assegurar um entendimento compatvel e compartilhado sobre o significado dos requisitos. Esta anlise resulta em um acordo sobre o conjunto de requisitos.

SP1.2 Obter comprometimento dos requisitos A segunda SP trata dos acordos e comprometimentos entre os responsveis por realizar as atividades necessrias para implementar os requisitos, assegurando que os participantes do projeto estejam comprometidos com os atuais requisitos acordados e com as alteraes necessrias nos planos de projeto, atividades e produtos de trabalho.

SP1.3 Gerenciar Mudanas de Requisitos A terceira SP trata de gerenciar as mudanas nos requisitos medida que evoluem no projeto, j que em seu andamento, os requisitos mudam, de modo que podem ser includos e as mudanas podem ocorrer nos que j existem. Faz-se necessrio gerenciar incluses e

22 mudanas de forma eficiente. Logicamente, a fonte de cada requisito deve ser conhecida e o fundamento lgico de qualquer mudana deve ser documentado para que se possa analisar efetivamente o impacto das alteraes.

SP1.4 Manter a Rastreabilidade Bidirecional dos Requisitos Quando se tem uma boa gerncia de requisitos, a rastreabilidade pode ser estabelecida desde a fonte at o menor nvel do requisito e vice-versa. Esta rastreabilidade bidirecional permite determinar se todos os requisitos de origem foram tratados e se todos os nveis de requisitos podem ser rastreados at um requisito de origem.

SP1.5 Identificar Inconsistncias Entre Trabalho de Projeto e Requisitos Com o objetivo de no ter inconsistncias entre trabalho de projeto e os requisitos, tem-se necessidade de que tais inconsistncias sejam identificadas, permitindo promover aes corretivas ao sistema, bem como manter a documentao, incluindo o fundamento lgico, origens e condies.

3.2 MPS-BR

O MPS-BR um modelo que busca adequar-se ao perfil de organizaes de diferentes tamanhos e tipos, mas d especial ateno s micro, pequenas e mdias empresas, de forma a atender as suas necessidades de negcio e ser reconhecido nacional e internacionalmente como um modelo aplicvel indstria de software. Este modelo define sete nveis de maturidade. Este trabalho abordar especificamente o nvel G Parcialmente Gerenciado, que possui como um de seus processos a Gerncia de Requisitos. A Figura 6 mostra os nveis do modelo:

23

Figura 6. Nveis do MPS-BR

A seguir so apresentadas as definies dos nveis segundo o Guia Geral do MPS-BR (ROCHA; MAGALHES, 2007, p. 23): Nvel G Parcialmente Gerenciado: Gerncia de Projetos: visa estabelecer e manter planos que definem atividades recursos e responsabilidades do projeto, bem como prover informaes sobre o andamento do projeto que permitam a realizao de correes quando houver desvios significativos no desempenho do projeto; Gerncia de Requisitos: gerenciar os requisitos dos produtos e componentes do produto do projeto e identificar inconsistncias entre requisitos, os planos do projeto e os produtos de trabalho do projeto.

24 Nvel F Gerenciado: Aquisio: gerenciar a aquisio de produtos e/ou servios que satisfaam a necessidade expressa pelo adquirente. Gerncia de configurao: estabelecer e manter a integridade de todos os produtos de trabalho de um processo ou projeto e disponibiliz-los a todos os envolvidos. Garantia da Qualidade: assegurar que os produtos de trabalho e a execuo dos processos estejam em conformidade com os planos e recursos predefinidos. Medio: coletar, analisar e relatar os dados relativos aos produtos desenvolvidos e aos processos implementados na organizao e em seus projetos, de forma a apoiar os objetivos organizacionais.

Nvel E Parcialmente Definido: Avaliao e Melhoria do Processo Organizacional: determinar o quanto os processos padro da organizao contribuem para alcanar os objetivos de negcio da organizao e para apoiar a organizao a planejar, realizar e implantar melhorias contnuas nos processos com base no entendimento de seus pontos fortes e fracos. Definio do Processo Organizacional: estabelecer e manter um conjunto de ativos de processo organizacional e padres do ambiente de trabalho usveis e aplicveis s necessidades de negcio da organizao. Gerncia de Recursos Humanos: prover a organizao e os projetos com os recursos humanos necessrios e manter suas competncias consistentes com as necessidades do negcio. Gerncia de Reutilizao: gerenciar o ciclo de vida dos ativos reutilizveis.

Nvel D Largamente Definido: Desenvolvimento de Requisitos: estabelecer os requisitos dos componentes do produto, do produto e do cliente. Integrao do Produto: compor os componentes do produto, produzindo um produto integrado consistente com o projeto, e demonstrar que os requisitos

25 funcionais e no-funcionais so satisfeitos para o ambiente alvo ou equivalente. Projeto e Construo do Produto: projetar, desenvolver e implementar solues para atender aos requisitos. Validao: confirmar que um produto ou componente do produto atender a seu uso pretendido quando colocado no ambiente para o qual foi desenvolvido. Verificao: confirmar que cada servio e/ou produto de trabalho do processo ou do projeto atende apropriadamente os requisitos especificados.

Nvel C Definido: Anlise de Deciso e Resoluo: analisar possveis decises usando um processo formal, com critrios estabelecidos, para avaliao das alternativas identificadas. Desenvolvimento para Reutilizao: identificar oportunidades de reutilizao sistemtica na organizao e, se possvel, estabelece um programa de reutilizao para desenvolver ativos a partir de engenharia de domnios de aplicao. Gerncia de Riscos: identificar, analisar, tratar, monitorar e reduzir continuamente os riscos em nvel organizacional e de projeto.

Nvel B Quantitativamente Gerenciado: composto pelos processos dos nveis de maturidade anteriores (G ao C), sendo que ao processo Gerncia de Projetos so acrescentados novos resultados.

Nvel A Em Otimizao: Anlise de Causas de Problemas e Resoluo: identificar causas de defeitos e de outros problemas e tomar aes para prevenir suas ocorrncias no futuro. O processo de Gerncia de Requisitos do nvel G do MPS-BR tem como objetivo gerenciar os requisitos e os componentes do produto do projeto e identificar inconsistncias entre os requisitos, planos do projeto e os produtos de trabalho do projeto. O processo atende a dois atributos do processo: AP1.1 O processo executado, que mede quanto o processo

26 atinge o seu propsito e AP2.1 O processo gerenciado, que mede quanto execuo do processo gerenciada. Como resultados esperados do processo de Gerncia de Requisitos tm-se: O entendimento dos requisitos obtido junto aos fornecedores de requisitos; Os requisitos de software so aprovados utilizando critrios objetivos; A rastreabilidade bidirecional entre os requisitos e os produtos de trabalho estabelecida e mantida; Revises em planos e produtos de trabalho do projeto so realizadas visando identificar e corrigir inconsistncias em relao aos requisitos; Mudanas nos requisitos so gerenciadas ao longo do projeto.

3.3 Consideraes finais

Os dois modelos de qualidade vistos so de grande importncia para atestar a maturidade dos processos das organizaes. Nota-se a relevncia da gerncia de requisitos, onde cada modelo possui uma parte que trata especificamente desta rea. O prximo captulo ir expor os modelos de qualidade de produto de software, onde sero vistas as normas relacionadas com a avaliao de produtos de software.

27

4 Modelos de qualidade de produto de software

Atualmente, diversos softwares tm sido desenvolvidos a fim de atender a grande demanda das diversas reas da economia. Mas, muitos deles so produzidos sem seguir um padro ou norma, j que os fabricantes esto focados apenas em satisfazer as necessidades iniciais dos clientes, deixando em segundo plano fatores relacionados manuteno e durabilidade. Com isso, a qualidade desses produtos gera considerveis preocupaes. Visando a avaliao da qualidade do produto de software, a Organizao Internacional para Padronizao (ISO), juntamente com a Comisso Eletro-Tcnica Internacional (IEC), elaboraram um conjunto de normas a respeito da padronizao mundial. Este captulo abordar trs normas que abordam a avaliao da qualidade de produto de software: a ISO/IEC 9126, relacionada s caractersticas de qualidade de produto de software, a ISO/IEC 14598, que serve como guia para avaliao de produto de software e a ISO/IEC 12119, que trata da avaliao de pacotes de software.

4.1 ISO/IEC 9126

A norma ISO/IEC 9126 formada por um conjunto de aspectos que devem ser observados em um software para que seja verificada sua qualidade. Permite a avaliao do software antes de sua divulgao, observando se atende os requisitos durante seu ciclo de vida de desenvolvimento. Com isso, possvel verificar se o produto considerado um software de qualidade. Est dividida em quatro partes: ISO/IEC 9126-1 Modelo de Qualidade ISO/IEC 9126-2 Mtricas Externas; ISO/IEC 9126-3 Mtricas Internas; ISO/IEC 9126-4 Mtricas de Qualidade em Uso.

28 4.1.1 ISO/IEC 9126-1

O primeiro documento da ISO/IEC 9126 apresenta seis caractersticas com suas subcaractersticas para o modelo de qualidade de produto de software. So elas: Funcionalidade: capacidade de prover funes que, quando o software estiver sendo usado em determinadas condies, atendam as necessidades. Sub-caractersticas: Adequao: capacidade de prover funes apropriadas aos objetivos do cliente; Acurcia: capacidade de fornecer resultados com preciso adequada; Interoperabilidade: capacidade de interao com outros sistemas; Segurana de acesso: capacidade de proteger os dados contra acessos no permitidos; Conformidade: capacidade do produto de software de estar adequado a padres, normas ou convenes relativos funcionalidade. Confiabilidade: capacidade de manter o nvel de desempenho sob condies estabelecidas durante um perodo de tempo. Sub-caractersticas: Maturidade: capacidade do software de evitar falhas decorrentes de defeitos; Tolerncia a falhas: capacidade de manter o funcionamento mesmo na ocorrncia de defeitos; Recuperabilidade: capacidade de recuperao aps falhas; Conformidade: capacidade do produto de software de estar adequado a padres, normas ou convenes relativos confiabilidade.

29 Usabilidade: evidencia o esforo necessrio para utilizar o software por um conjunto de usurios. Sub-caractersticas: Inteligibilidade: capacidade de prover facilidade de

compreenso das funcionalidades por parte dos usurios; Apreensibilidade: capacidade de fazer o usurio entender o produto; Operacionalidade: capacidade do software de fazer com que o usurio o opere; Atratividade: capacidade de ser atraente para o cliente; Conformidade: capacidade do produto de software de estar adequado a padres, normas ou convenes relativos usabilidade. Eficincia: relaciona o nvel de desempenho do software e a quantidade de recursos utilizados sob condies pr-estabelecidas. Sub-caractersticas: Comportamento em relao ao tempo: capacidade de prover informaes em perodo de tempo adequado; Comportamento em relao aos recursos: capacidade de usar os recursos adequadamente; Conformidade: capacidade do produto de software de estar adequado a padres, normas ou convenes relativos eficincia; Manutenibilidade: evidencia o esforo necessrio para fazer modificaes necessrias no software. Sub-caractersticas: Analisabilidade: capacidade de reconhecer problemas causados por defeitos; Modificabilidade: capacidade de receber modificaes; Estabilidade: capacidade de manter-se estvel com modificaes; as

30 Testabilidade: capacidade de validar as modificaes do produto; Conformidade: capacidade do produto de software de estar adequado a padres, normas ou convenes relativos manutenibilidade; Portabilidade: capacidade do software de ser transferido transferido de um certo ambiente para outro. Sub-caractersticas: Adaptabilidade: capacidade de se adaptar a diferentes ambientes sem auxlio externo; Capacidade para ser instalado: capacidade de ser instalado em um certo ambiente; Co-existncia: capacidade de operar com outro sistema no mesmo ambiente; Capacidade para substituir: capacidade de substituir outro sistema com a mesma finalidade; Conformidade: capacidade do produto de software de estar adequado a padres, normas ou convenes relativos portabilidade. A Figura 7 d uma viso geral da primeira parte da ISO 9126 (KOSCIANSKI, et al, 1999, p.24):

Figura 7. ISO/IEC 9126-1

31 4.1.2 ISO/IEC 9126-2

A segunda parte da ISO define mtricas externas para fazer a medio de qualidade das caractersticas e sub-caractersticas da primeira parte da norma. Essas mtricas so aplicveis a um software executvel tanto na fase de teste quanto no incio da operao. A medio pode ser realizada em conformidade com os objetivos esperados do sistema a ser adquirido. A separao das caractersticas possibilita a atribuio de pesos, onde se pode definir o grau de importncia de certas caractersticas. As mtricas externas devem ser utilizadas tanto na avaliao do comportamento do sistema em situaes especficas quanto na avaliao e indicao de que o produto eficaz, levando em considerao as reais necessidades dos clientes em termos de operao. Alguns exemplos de mtricas externas: Em relao adequao: cobertura das funes implantadas; maturidade: resoluo de falhas; Inteligibilidade: entendimento das entradas e sadas.

4.1.3 ISO/IEC 9126-3

As mtricas internas dizem respeito s medies diretas ou indiretas de um produto de software levando em considerao suas prprias caractersticas internas, sem que haja necessidade da execuo do sistema. Por exemplo: linhas de cdigo, nmero de erros achados em revises dentre outros. Essas mtricas permitem ao usurio medir a qualidade dos executveis durante o processo de desenvolvimento, prevendo assim, a qualidade do produto final. Com isso, o usurio pode identificar problemas de qualidade, corrigindo-os durante o ciclo de desenvolvimento.

32 Como exemplo, pode-se citar: Em relao s mtricas de segurana: preveno da corrupo dos dados; Tolerncia a falhas: no permisso de operaes incorretas; Adaptabilidade: adaptabilidade ao ambiente de hardware.

4.1.4 ISO/IEC 9126-4

A quarta e ltima parte da norma diz respeito definio de mtricas de qualidade em uso, ou seja, valida a qualidade do produto em ambientes e tarefas comuns ao usurio. Os atributos desta parte so organizados pelas suas caractersticas. So eles: efetividade, produtividade, segurana e satisfao. Os usurios podem definir e aplicar mtricas para seus prprios ambientes de aplicao. Pro exemplo, em relao efetividade, pode-se definir a proporo de tarefas completadas. Neste trabalho, sero utilizadas a primeira e a segunda parte da norma, ou seja, o modelo de qualidade e as mtricas externas.

33

4.2 ISO/IEC 14598

A srie de normas ISO/IEC 14598, que deve ser utilizada juntamente com a ISO/IEC 9126, serve para definir o processo de avaliao de softwares e para fornecer orientaes para avaliao prtica. Esta avaliao direcionada tanto para softwares existentes como para os que ainda esto em fase de desenvolvimento. Em termos gerais, mantm o foco nas mtricas e no processo de aplicao das mesmas sobre as caractersticas e sub-caractersticas descritas na ISO/IEC 9126. A norma composta por seis documentos, descritos a seguir: ISO/IEC 14598-1 Viso Geral: fornece uma viso geral dessa srie e dos processos de avaliao, ou seja, define todo o funcionamento da norma. Nela tambm so definidos os termos utilizados no modelo, bem como conceitos e a execuo do processo de avaliao, para ser utilizado por clientes, avaliadores e desenvolvedores. A Figura 8 ilustra esta primeira parte da norma (KOSCIANSKI, et al, 1999, p. 5):

Figura 8. ISO/IEC 14598-1

34 Como se pode ver, existem vrias atividades que por sua vez so divididas em subatividades. Estabelecer o propsito da avaliao visa apoiar diretamente o desenvolvimento e a aquisio de produto de software que atenda as necessidades do cliente. Com isso, assegura-se que o produto possui a qualidade requerida. Identificar os tipos de produtos a serem avaliados determina o estgio do ciclo de vida que o produto se encontra, o que auxilia na definio de mtricas. Especificar o modelo de qualidade seleciona as caractersticas de qualidade relevantes, com isso a qualidade de produto de software desdobrada em diferentes caractersticas. As trs sub-atividades seguintes dizem respeito s mtricas, pontuao e critrios. Selecionar mtricas faz com que os atributos possam ser definidos com uma mtrica. Estabelecer nveis de pontuao para as mtricas proporciona um mapeamento em escala dos resultados. Por exemplo, os resultados podem ser satisfatrios ou insatisfatrios. Estabelecer critrios para julgamento define os critrios para as caractersticas de qualidade. Projetar o plano de avaliao descreve os mtodos de avaliao e cronograma das aes do avaliador. Em seguida tem-se a atividade de obter as medidas, onde as mtricas selecionadas so aplicadas ao produto de software e obtm-se os valores nas escalas das mtricas. Comparar com critrios compara o valor medido com os critrios pr-determinados. Finalmente a atividade de julgar os resultados gera como resultado a declarao de quanto o software atende os requisitos de qualidade.

ISO/IEC

14598-2

Planejamento

Gerenciamento:

descreve

atividades

de

planejamento e gerenciamento do processo de avaliao apresentando recomendaes e orientaes para uma funo de suporte ao processo. Esse suporte diz respeito ao planejamento e gerenciamento de um processo de avaliao de produto de software bem como a tecnologia necessria neste processo.

35 ISO/IEC 14598-3 Processo para a equipe de desenvolvimento: descreve atividades de avaliao durante o processo de desenvolvimento e manuteno de software. Esta parte utilizada por organizaes que querem desenvolver um novo produto ou melhorar um j existente. Foca na seleo e no registro de indicadores que possam ser avaliados, a partir de produtos intermedirios, coletados nas fases de desenvolvimento do sistema, visando prever a qualidade do produto final.

ISO/IEC 14598-4 Processo para o comprador: fornece atividades de avaliao no processo de seleo e avaliao de softwares. Utilizada por clientes que desejam adquirir ou reutilizar produtos de software. Pode ser utilizado para observar a aceitao de um produto ou definir a escolha entre vrios produtos existentes.

ISO/IEC 14598-5 Processo para o avaliador: descreve o ciclo de vida da avaliao, com definio das atividades, incluindo relaes entre avaliador e requisitante. Basicamente segue o processo descrito na primeira parte da ISO e detalha as fases deste processo para a funo de avaliao.

ISO/IEC 14598-6 Mdulos de avaliao: fornece pacotes estruturados de mtodos e ferramentas para apoio das partes relacionadas. Orienta a documentao de mdulos de avaliao que devem conter o modelo de qualidade, as informaes e dados relativos aplicao prevista no modelo, bem como informaes sobre a real aplicao do modelo. Resumindo, esta norma permite uma avaliao padronizada das caractersticas de qualidade de um software. Diferente da ISO/IEC 9126, esta norma descreve detalhes mnimos, que inclui modelos para relatrios de avaliao, tcnicas para medir as caractersticas, documentos necessrios para avaliao e fases da avaliao.

36

4.3 ISO/IEC 12119

A ISO/IEC 12119 uma norma que foi publicada em 1994 e utilizada na avaliao de pacotes de software do jeito que so liberados para o mercado. Esses pacotes tambm so conhecidos como software de prateleira. Alm de estabelecer requisitos para esse tipo de software, a norma prov instrues para o teste dos pacotes. Pacote de software a expresso utilizada para referenciar o conjunto completo e documentado de programas fornecidos aos usurios. A Figura 9 representa a estrutura da norma (NASCIMENTO, et al, s.d., p. 4).

Figura 9. Estrutura da ISO/IEC 12119

4.3.1 Requisitos de Qualidade

Este item se refere existncia da Documentao do Pacote, ou seja, a Descrio do Produto, a Documentao do Usurio e Programas e Dados. A Descrio do Produto um documento que mostra as principais caractersticas de um pacote de software, visando auxiliar o cliente na adequao do produto aos seus interesses e servir como base de testes. Esse documento deve estar disponvel ao usurio atravs de algum meio (on-line, CD) independente da aquisio ou no do produto. A norma define aspectos que indicam o que deve estar contido na descrio e prope uma linguagem clara e compreensvel ao cliente.

37 A Documentao do Usurio um conjunto de documentos tambm disponveis por algum meio ao usurio, que se refere utilizao do produto. Deve incluir informaes sobre a instalao, o uso em si da aplicao e sobre a manuteno do software. Programas e Dados descreve em detalhes cada uma das funes do programa. Utiliza as mesmas definies da norma ISO/IEC 9126. Assim, inclui declaraes a respeito de Funcionalidade, Confiabilidade, Usabilidade, Eficincia, Manutenibilidade e Portabilidade, com destaque s trs primeiras.

4.3.2 Instrues para Testes

O item Instrues para Testes basicamente recomenda a forma com que o produto de software deve ser testado em relao aos requisitos de qualidade. Pr-requisitos de Teste possui trs componentes: presena de Itens, onde devem estar presentes, para execuo do teste, todos os componentes a serem entregues e os documentos de requisitos identificados na Descrio do Produto; Presena de Componentes do Sistema, que deve estar disponvel todo ambiente de hardware e software identificados na descrio do produto; Treinamento, onde se for mencionado na Descrio do Produto, o responsvel pelo teste deve ter acesso ao material e ao programa de treinamento. Atividades de Teste tambm possui trs componentes: Descrio do Produto, Documentao do Usurio e Programas e Dados, onde todo o requisito especificado em cada parte deve ser testado. Registros de Teste prope que os registros devem conter informaes suficientes para que se possa repetir o teste. No Relatrio de Teste deve ter um resumo com os objetivos e resultados dos testes realizados. O Teste de Acompanhamento afirma que todas as partes modificadas, quando o produto testado novamente, devem ser testadas como um produto novo.

38

4.4 Consideraes finais

Os modelos de qualidade expostos permitem avaliar com exatido a qualidade dos produtos de software, fornecendo poderosa ferramenta para esse fim. Primeiramente foi vista a ISO 9126 que fornece um conjunto de aspectos que devem ser observados em um software para que seja verificada sua qualidade. Posteriormente foi apresentada a ISO 14598, que serve para definir o processo de avaliao de softwares e para fornecer orientaes para avaliao prtica. Finalizando abordou-se a ISO 12119 que utilizada na avaliao de pacotes de software do jeito que so liberados para o mercado O captulo a seguir ir abordar o sistema de avaliao das ferramentas selecionadas.

39

5 Processo de avaliao

Este captulo apresenta o sistema de avaliao adotado para as ferramentas de Gerncia de Requisitos. Primeiramente foi feito um estudo na Internet a respeito das principais ferramentas gratuitas utilizadas na gerncia de requisitos. Esse estudo foi baseado em sites e fruns especializados em Engenharia de Software, que tm credibilidade reconhecida na rea. Aps o estudo inicial, as ferramentas selecionadas (que sero descritas mais a frente) foram baixadas e instaladas para anlise. No processo de avaliao foram definidas as caractersticas, sub-caractersticas e atributos que devem ser avaliados. A avaliao foi realizada atravs da adoo de mtricas pr-estabelecidas. Basicamente, cada caracterstica desmembrada em sub-caractersticas, e essas por sua vez so compostas por atributos. Assim, as sub-caractersticas tero suas notas quando todos seus atributos forem avaliados. Da mesma forma as caractersticas tero suas notas assim que o conjunto de sub-caractersticas forem avaliados. Este processo d idia de uma rvore invertida, onde as folhas so os atributos, os pais das folhas so as subcaractersticas e os pais das sub-caractersticas so as caractersticas, como mostra a Figura 10.

Figura 10. Distribuio dos atributos e sub-caractersticas de uma caracterstica

40 As notas finais da avaliao de cada software sero dadas pela soma das notas das caractersticas avaliadas. Quanto maior a nota final, maior ser a qualidade do produto.

5.1 Usurios

Este item tem como objetivo definir o perfil do usurio do software a ser avaliado. A ISO/IEC 9126 especifica trs tipos de usurios: gerentes de desenvolvimento, desenvolvedores e operadores. O perfil adotado neste trabalho do operador, ou seja, uma pessoa responsvel por operar a ferramenta, realizando atividades como insero de requisitos, modificao dentre outras.

5.2 Caractersticas, sub-caractersticas e atributos

Com a finalidade de avaliar as ferramentas, foi definido um modelo misto que une caractersticas e sub-caractersticas baseados na ISO/IEC 9126 com requisitos da ISO/IEC 12119. Um conjunto de atributos (representado pelas perguntas) foi definido para cada subcaracterstica. Da ISO/IEC 9126: Funcionalidade: Adequao: Todas as funes necessrias foram implementadas? Neste atributo analisa-se: importao e exportao de documentos, armazenamento, busca de requisitos, gerenciamento de mudanas, rastreamento e gerao de relatrios.

41 Todas as funes esto corretas? Verifica-se se as funes esto corretamente

implementadas e fornecem o resultado esperado. Acurcia: Os dados so representados de forma satisfatria? Analisa-se a apresentao dos resultados em termos estticos e de completude das informaes. Segurana de acesso: H acesso com login e senha? Verifica-se a segurana dos dados com autenticao dos usurios. Existe um controle de acesso a funes de acordo com cada usurio? Analisa-se a diferenciao entre os nveis de usurios e as aes permitidas a cada um deles. Confiabilidade: Maturidade: Mensagens alertam operaes perigosas? Verifica-se a presena de mensagens que mostram que alguma ao perigosa foi acionada. Por exemplo a excluso de artefatos. Mensagens de erro explicam claramente sua causa? As mensagens de erro explicam de forma suficiente e clara a ocorrncia de erros, como criao de requisitos com falta de informaes. Recuperabilidade: Existe a funo desfazer? Importante recurso de desfazer aes realizadas aps verificao de equvoco.

42 Usabilidade: Inteligibilidade: Existem Assistentes para as funes? Verifica-se a presena de assistentes que guiam o uso das funes. Os menus esto bem organizados? Forma de prover melhor entendimento das funes.

Aprendibilidade: Existem menus pop-up com frases explicativas das funes? Presena de pequenos quadros que surgem na tela mostrando a funcionalidade referida. Os desenhos das funes esto de acordo com suas finalidades? Estuda-se se as gravuras das funes proporcionam um entendimento claro de sua finalidade. Atratividade: Objetos bem distribudos de acordo com a funo? Este item diz respeito organizao dos recursos na tela.

possvel customizar? Verifica a possibilidade de o usurio alterar a aparncia do sistema, conforme suas necessidades.

Portabilidade: Adaptabilidade: Roda em diferentes Sistemas Operacionais? Estuda-se a possibilidade de instalao em diferentes plataformas. Capacidade para ser instalado: A instalao automtica? Analisa-se se recursos externos foram necessrios durante a instalao.

43 Da ISO/IEC 12119: Documentao: Descrio do produto: Possui uma descrio do produto? Analisa-se a existncia de textos descrevendo o produto.

Documentao do usurio: Possui documentao do usurio (manual de instalao, manual de uso)? Verifica-se a existncia de manuais de instalao e de uso. Programas e dados: Possui descrio das funcionalidades? Verifica-se a existncia de um texto com a descrio das funcionalidades do sistema.

5.3 Distribuio dos pontos

Com a finalidade de fazer uma avaliao consistente e no-tendenciosa, foi feita a seguinte distribuio de pontos: para cada software foi definido uma pontuao total de 120 pontos. Esses 120 pontos foram distribudos entre as caractersticas que, como so cinco, cada uma ficou com 24 pontos. Da mesma forma, os 24 pontos foram distribudos igualmente entre as sub-caractersticas, que por sua vez foram distribudos igualmente entre os atributos. A Tabela 1 apresenta a diviso de notas:

44
Caracterstica, Sub-caracterstica e Atributo Funcionalidade: Adequao: Todas as funes necessrias foram implementadas? Todas as funes esto corretas? Acurcia: Os dados so representados de forma satisfatria? Segurana de acesso: H acesso com login e senha? Existe um controle de acesso a funes de acordo com cada usurio? Confiabilidade: Maturidade: Mensagens alertam operaes perigosas? Mensagens de erro explicam claramente sua causa? Recuperabilidade: Existe a funo desfazer? Usabilidade: Inteligibilidade: Existem Assistentes para as funes? Os menus esto bem organizados? Aprendibilidade: Existem menus pop-up com frases explicativas das funes? Os desenhos das funes esto de acordo com suas finalidades? Atratividade: Objetos bem distribudos de acordo com a funo? possvel customizar? Portabilidade: Adaptabilidade: Roda em diferentes Sistemas Operacionais? Capacidade para ser instalado: A instalao automtica? Documentao: Descrio do produto: Possui uma descrio do produto? Documentao do usurio: Possui documentao do usurio (manual de instalao, manual de uso)? Programas e dados: Possui descrio das funcionalidades?
Tabela 1. Distribuio dos pontos

Nota total por item 24 8 4 4 8 8 8 4 4 24 12 6 6 12 12 24 8 4 4 8 4 4 8 4 4 24 12 12 12 12 24 8 8 8 8 8 8

45

5.4 Sistema de mtricas adotado

A preciso de uma avaliao de qualidade depende em grande parte das mtricas escolhidas [6]. Com este pensamento e baseado nos requisitos de avaliao da ISO/IEC 14598-1 e da ISO/IEC 9126-1, o seguinte sistema de mtricas foi definido: 0 No possui: Significa que o atributo avaliado est completamente ausente; 0,5 Possui parcialmente: O atributo avaliado possui est presente parcialmente. Com isso, a Nota total por item ser dividida pela metade; 1 Possui totalmente: O atributo avaliado est totalmente presente; Vale ressaltar que esse sistema de mtricas utilizado na avaliao dos atributos, j que a nota das sub-caractersticas dada pela soma das notas dos atributos. Da mesma forma, a nota das caractersticas dada pela soma das notas das sub-caractersticas.

5.4.1 Clculo da nota final

Cada software ser primeiramente analisado separadamente dos outros. Assim, ser possvel observar as notas de cada item isoladamente. A nota final de cada software se dar da seguinte forma: Nota final = (Nota da caracterstica) Por sua vez, a nota de cada caracterstica ser dada por: Nota da caracterstica = (Nota da sub-caracterstica) Da mesma forma, a nota das sub-caractersticas ser dada por: Nota da sub-caracterstica = (Nota do atributo * Nota total por item) Como foi dito, quanto maior a nota final de cada software, maior ser sua qualidade, baseada nos quesitos levados em considerao. Com a nota final, ser possvel fazer a comparao entre os produtos analisados.

46

5.5 Consideraes finais

Com este captulo, pode-se ver como foi feito o sistema de avaliao dos programas selecionados. Aps definir o tipo de usurio, foram definidas as caractersticas, subcaractersticas e atributos a serem observados, seguidos da distribuio dos pontos. Finalizando foi explicado o sistema de mtricas adotado. O prximo captulo ir mostrar a avaliao em si das ferramentas.

47

6 Anlise das ferramentas selecionadas

Esta seo ir expor os softwares analisados. Como foi dito, os softwares foram selecionados aps pesquisas na Internet, onde foram observadas as ferramentas mais relevantes. Segue a lista de programas:

6.1 Jeremia

Jeremia uma ferramenta ajuda no desenvolvimento de sistemas com o rastreamento das mudanas de requisitos durante todo o ciclo de vida. Com ele, possvel capturar, analisar e classificar os requisitos. Tambm possvel fazer link entre os requisitos, o que permite ter um rastreamento eficaz. O software conta com um conjunto de templates padres orientados a processos. Os requisitos coletados so inseridos nesses templates automaticamente. possvel exportar documentao em formato XML-DOCBOOK. Utiliza como banco de dados o MYSQL ou ORACLE, onde armazena a documentao e os requisitos. O programa foi desenvolvido em Java e est sob a licena GPL General Public License. A Figura 11 mostra a tela principal do programa.

48

Figura 11. Tela inicial do Jeremia

6.2 OSRMT

O OSRMT (Open Source Requirements Management Tool) uma ferramenta que foi desenhada para permitir total rastreabilidade dos requisitos. Prov boa gerncia dos requisitos bem como dos componentes de produtos de trabalho. Para inici-lo, basta ativar o Servidor e depois o Cliente. Foi desenvolvido em Java e est sob a licena GPL General Public License. A Figura 12 apresenta a tela inicial da ferramenta:

49

Figura 12. Tela inicial do OSRMT

6.3 Tiger Pro

Desenvolvia pela SEEC (Systems Engineering & Evaluation Centre), TIGER PRO (Tool to InGest and Elucidate Requirements PROfessional) uma boa ferramenta Freeware que permite adicionar requisitos atravs de documentos ou diretamente no programa. Produz um sumrio de informaes na elucidao de requisitos, alocao de prioridades, definio de riscos e estimativa de custo em formato de texto ou grfico. Licenciado para uso educacional, mas, com autorizao do responsvel, possvel us-lo comercialmente. A Figura 13 mostra a tela inicial do programa:

50

Figura 13. Tela inicial do Tiger Pro

6.4 Xuse

Xuse uma ferramenta utilizada no browser e visa gerenciar requisitos, casos de uso e outros artefatos no design de softwares. Os comandos so executveis no em linhas de comando no prompt. Seu foco uma documentao e comunicao claras. Est sob a Licena Artstica. A Figura 14 mostra a tela inicial da aplicao:

51

Figura 14. Tela inicial do Xuse

6.5 Anlise das ferramentas

Esta seo tem como objetivo a anlise em si das ferramentas. Ressalta-se que primeiramente ser feito um estudo individual das ferramentas e posteriormente um estudo comparativo entre as ferramentas. O item 6.3 traz uma explicao detalhada do que foi observado em cada programa Primeiramente ser feito o estudo da ferramenta Jeremia, seguido pelos programas OSRMT, Tiger Pro e Xuse.

52 6.5.1 Jeremia

A Tabela 2 apresenta o estudo realizado sobre a ferramenta Jeremia.

Caracterstica, Sub-caracterstica e Atributo Funcionalidade: Adequao: Todas as funes necessrias foram implementadas? Todas as funes esto corretas? Acurcia: Os dados so representados de forma satisfatria? Segurana de acesso: H acesso com login e senha? Existe um controle de acesso a funes de acordo com cada usurio? Confiabilidade: Maturidade: Mensagens alertam operaes perigosas? Mensagens de erro explicam claramente sua causa? Recuperabilidade: Existe a funo desfazer? Usabilidade: Inteligibilidade: Existem Assistentes para as funes? Os menus esto bem organizados? Aprendibilidade: Existem menus pop-up com frases explicativas das funes? Os desenhos das funes esto de acordo com suas finalidades? Atratividade: Objetos bem distribudos de acordo com a funo? possvel customizar? Portabilidade: Adaptabilidade: Roda em diferentes Sistemas Operacionais? Capacidade para ser instalado: A instalao automtica? Documentao: Descrio do produto: Possui uma descrio do produto? Documentao do usurio: Possui documentao do usurio (manual de instalao, manual de uso)? Programas e dados: Possui descrio das funcionalidades? TOTAL
Tabela 2. Tabela de anlise do Jeremia

Nota total por item 24 8 4 4 8 8 8 4 4 24 12 6 6 12 12 24 8 4 4 8 4 4 8 4 4 24 12 12 12 12 24 8 8 8 8 8 8 120

Avaliao 24 8 1 1 8 1 8 1 1 9 9 1 0,5 0 0 16 4 0 1 8 1 1 4 1 0 18 12 1 6 0,5 16 8 1 8 1 0 0 83

53 6.1.2 OSRMT

A Tabela 3 mostra o resultado do estudo realizado sobre a ferramenta OSRMT.

Caracterstica, Sub-caracterstica e Atributo Funcionalidade: Adequao: Todas as funes necessrias foram implementadas? Todas as funes esto corretas? Acurcia: Os dados so representados de forma satisfatria? Segurana de acesso: H acesso com login e senha? Existe um controle de acesso a funes de acordo com cada usurio? Confiabilidade: Maturidade: Mensagens alertam operaes perigosas? Mensagens de erro explicam claramente sua causa? Recuperabilidade: Existe a funo desfazer? Usabilidade: Inteligibilidade: Existem Assistentes para as funes? Os menus esto bem organizados? Aprendibilidade: Existem menus pop-up com frases explicativas das funes? Os desenhos das funes esto de acordo com suas finalidades? Atratividade: Objetos bem distribudos de acordo com a funo? possvel customizar? Portabilidade: Adaptabilidade: Roda em diferentes Sistemas Operacionais? Capacidade para ser instalado: A instalao automtica? Documentao: Descrio do produto: Possui uma descrio do produto? Documentao do usurio: Possui documentao do usurio (manual de instalao, manual de uso)? Programas e dados: Possui descrio das funcionalidades? TOTAL
Tabela 3. Tabela de anlise do OSRMT

Nota total por item 24 8 4 4 8 8 8 4 4 24 12 6 6 12 12 24 8 4 4 8 4 4 8 4 4 24 12 12 12 12 24 8 8 8 8 8 8 120

Avaliao 24 8 1 1 8 1 8 1 1 12 12 1 1 0 0 16 4 0 1 8 1 1 4 1 0 24 12 1 12 1 24 8 1 8 1 8 1 100

54 6.1.3 Tiger Pro

A Tabela 4 apresenta a avaliao realizada sobre o programa Tiger Pro.

Caracterstica, Sub-caracterstica e Atributo Funcionalidade: Adequao: Todas as funes necessrias foram implementadas? Todas as funes esto corretas? Acurcia: Os dados so representados de forma satisfatria? Segurana de acesso: H acesso com login e senha? Existe um controle de acesso a funes de acordo com cada usurio? Confiabilidade: Maturidade: Mensagens alertam operaes perigosas? Mensagens de erro explicam claramente sua causa? Recuperabilidade: Existe a funo desfazer? Usabilidade: Inteligibilidade: Existem Assistentes para as funes? Os menus esto bem organizados? Aprendibilidade: Existem menus pop-up com frases explicativas das funes? Os desenhos das funes esto de acordo com suas finalidades? Atratividade: Objetos bem distribudos de acordo com a funo? possvel customizar? Portabilidade: Adaptabilidade: Roda em diferentes Sistemas Operacionais? Capacidade para ser instalado: A instalao automtica? Documentao: Descrio do produto: Possui uma descrio do produto? Documentao do usurio: Possui documentao do usurio (manual de instalao, manual de uso)? Programas e dados: Possui descrio das funcionalidades? TOTAL
Tabela 4. Tabela de anlise do Tiger Pro

Nota total por item 24 8 4 4 8 8 8 4 4 24 12 6 6 12 12 24 8 4 4 8 4 4 8 4 4 24 12 12 12 12 24 8 8 8 8 8 8 120

Avaliao 10 6 0,5 1 4 0,5 0 0 0 9 9 1 0,5 0 0 10 2 0 0,5 6 1 0,5 2 0,5 0 12 0 0 12 1 12 8 1 0 0 4 0,5 53

55 6.1.4 Xuse

A Tabela 5 mostra o estudo realizado sobre a ferramenta Xuse.

Caracterstica, Sub-caracterstica e Atributo Funcionalidade: Adequao: Todas as funes necessrias foram implementadas? Todas as funes esto corretas? Acurcia: Os dados so representados de forma satisfatria? Segurana de acesso: H acesso com login e senha? Existe um controle de acesso a funes de acordo com cada usurio? Confiabilidade: Maturidade: Mensagens alertam operaes perigosas? Mensagens de erro explicam claramente sua causa? Recuperabilidade: Existe a funo desfazer? Usabilidade: Inteligibilidade: Existem Assistentes para as funes? Os menus esto bem organizados? Aprendibilidade: Existem menus pop-up com frases explicativas das funes? Os desenhos das funes esto de acordo com suas finalidades? Atratividade: Objetos bem distribudos de acordo com a funo? possvel customizar? Portabilidade: Adaptabilidade: Roda em diferentes Sistemas Operacionais? Capacidade para ser instalado: A instalao automtica? Documentao: Descrio do produto: Possui uma descrio do produto? Documentao do usurio: Possui documentao do usurio (manual de instalao, manual de uso)? Programas e dados: Possui descrio das funcionalidades? TOTAL
Tabela 5. Tabela de anlise do Xuse

Nota total por item 24 8 4 4 8 8 8 4 4 24 12 6 6 12 12 24 8 4 4 8 4 4 8 4 4 24 12 12 12 12 24 8 8 8 8 8 8 120

Avaliao 14 6 0,5 1 8 1 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 4 0 1 24 12 1 12 1 24 8 1 8 1 8 1 66

56 Finalizado o estudo individual das ferramentas, mostrada uma tabela comparativa onde possvel verificar as diferenas entre as caractersticas, podendo servir de apoio na escolha da ferramenta mais adequada.

6.2 Comparao entre as ferramentas

A Tabela 6 faz uma comparao dos resultados obtidos considerando as caractersticas estudadas:

Funcionalidade Confiabilidade Usabilidade Portabilidade Documentao TOTAL

Jeremia 24 9 16 18 16 83

OSRMT 24 12 16 24 24 100

Tiger Pro 10 9 10 12 12 53

Xuse 14 0 4 18 24 66

Tabela 6. Tabela de comparao das ferramentas

6.3 Anlise dos resultados

Nesta seo so analisados os resultados obtidos na avaliao dos programas.

6.3.1 Jeremia

A ferramenta alcanou resultados satisfatrios na avaliao realizada. Na caracterstica funcionalidade pode-se notar que na ferramenta todas as funes consideradas neste trabalho e descritas no item 5.2 foram implementadas, apresentando resultados corretos e de forma satisfatria.

57 O programa possui sistema de login e senha, onde cada usurio, de acordo com suas atribuies, tem acesso a funes pertinentes. Foram observados trs tipos de usurios: administrador, que tem acesso a todas as funes do sistema; usurio geral, que tem acesso a vrias funes, menos gerencia usurios e alterar o setup; convidado, que apenas pode visualizar requisitos e documentos. Na caracterstica confiabilidade, foram observadas mensagens alertando operaes perigosas, como excluso de requisitos. No h o recurso de desfazer aes. Sobre a usabilidade, pode-se notar um bom foco no usurio, ou seja, menus bem organizados, com desenhos intuitivos e com frases com o nome dos recursos. A respeito da portabilidade, h necessidade de ter instalado o Java e o MySQL, bem como ter conhecimentos de alterao de variveis de ambiente do Windows. Vale destacar que uma ferramenta independente de plataforma, podendo ser instalada em diferentes sistemas operacionais. No site da ferramenta encontra-se a descrio do produto, manual de instalao e uso, mas no a descrio das funcionalidades.

6.3.2 OSRMT

Esta ferramenta alcanou timos resultados. Todas as funes descritas no item 5.2 foram implementadas, apresentando resultados corretos e bem apresentveis. Possui login e senha, onde cada usurio tem acesso a funes de acordo com suas atribuies. So eles: administrador, analista de negcio, quadro de controle de mudanas, desenvolvedores, documentadores, gerente de produto, regulador de qualidade e testadores de qualidade. Mensagens alertam para operaes perigosas, como excluso de artefatos e fornecem informaes suficientes ao entendimento. O recurso desfazer no foi observado. Da mesma forma que a ferramenta anterior, o produto foi desenvolvido com foco no usurio, onde os menus so bem organizados, com desenhos fceis de entender com frases explicando a funo.

58 A instalao foi automtica, necessitando de Java e do banco de dados. Da mesma forma que a ferramenta anterior, uma ferramenta independente de plataforma, podendo ser instalada em diferentes sistemas operacionais. Juntamente com a ferramenta encontra-se o manual de uso e instalao bem como a descrio das funes e do produto. Vale ressaltar que o projeto OSRMT est ativo e atualizaes so constantemente elaboradas, o que proporciona um software cada vez melhor.

6.3.3 TigerPro

A anlise do software TigerPro no obteve resultados to relevantes quanto das duas ferramentas anteriores. Como foi dito, um software com fins educativos, mas com a devida autorizao de seus idealizadores, pode ser utilizado para fins comerciais. Sobre a caracterstica funcionalidade, no foram observadas algumas funes definidas no item 5.2, como o gerenciamento de mudanas, recurso de busca de artefatos nem a rastreabilidade dos requisitos. Sendo assim, obteve nota 0,5 na avaliao da adequao. Porm, todas as funes presentes esto corretas. Devido grande quantidade de informaes na tela, a representao dos dados fica confusa. No possui login e senha, e no tem diferenciao de usurios, causando uma falha de segurana do programa. Apresenta mensagens indicando atividades perigosas, porm no informa muitos detalhes, recebendo assim a nota 0,5 neste atributo. O recurso desfazer no foi observado. A organizao dos menus deixou a desejar, pois h muita informao na tela. Da mesma forma, os desenhos das funes no so muito intuitivos, mas a presena de menus pop-up permitem seu entendimento. O excesso de informao na tela tambm prejudica a distribuio dos recursos de acordo com as finalidades, recebendo assim, nota 0,5. A Figura 16 d um exemplo do excesso. A instalao do programa foi automtica, no necessitando de recursos extras, porm, s aplicvel ao ambiente Windows.

59

Figura 15. Funcionamento do TigerPro

Em termos de documentao, foi observada a descrio do produto e uma breve descrio de algumas funcionalidades.

6.3.4 Xuse

O projeto da ferramenta Xuse est ativo e constantemente atualizaes so lanadas, adicionando funes ao sistema. Porm, atualmente no se apresenta como uma ferramenta dinmica para o mercado considerando os concorrentes. Em termos de funcionalidade, no foram observados os recursos de busca por requisitos prov gerenciamento de mudanas,

60 recebendo assim nota 0,5 no atributo adequao. Porm, todas as funes esto corretas e os dados tm representao clara e satisfatria. No foram observados os recursos de login e senha, nem a diferenciao de usurios, o que provoca uma falha de segurana do sistema. No foram observadas mensagens de alerta de operaes perigosas e no possui o recurso desfazer. No existem assistentes para as funes e como no h menus, recebeu nota 0 nesses atributos. Da mesma forma os atributos seguintes a respeito de atratividade. Tambm possvel utilizar em diferentes plataformas. A instalao foi automtica, no necessitando de recursos extras. Possui toda a documentao estudada.

6.4 Consideraes finais

Com a anlise dos programas selecionados pode-se notar a superioridade da ferramenta OSRMT. Como foi dito, o sistema est em constante melhoramento e possui uma comunidade grande de usurios e apoiadores. Nesta ferramenta se destacou a qualidade da documentao e a completude do sistema, proporcionando bom aproveitamento dos recursos. Porm, convm ressaltar que de acordo com as necessidades do usurio, os outros programas podem atender, levando em conta as diferenas entre as caractersticas analisadas, ou seja, pode-se escolher a ferramenta que mais prov portabilidade, ou ento que tenha uma documentao mais completa.

61

7 Concluso

As ferramentas de Gerncia de Requisitos do grande apoio ao processo de Engenharia de Software. Os sistemas atuais tm necessitado cada vez mais de novos recursos e com isso, um nmero maior de requisitos. Ento, um software para apoiar esse processo se torna um grande aliado aos responsveis pelos projetos. Este trabalho pretende servir como apoio escolha da ferramenta mais apropriada as necessidades dos interessados. Para isso, no captulo 2 foram introduzidos conceitos de Engenharia de Requisitos, onde seus processos caminham em paralelo com a atividade de Gerncia de Requisitos. No captulo 3, foi vista a Gerncia de Requisitos em Modelos de Qualidade, onde foi possvel ter uma viso mais detalhada do CMMI e do MPS-BR. Posteriormente, no captulo 4 foram expostas as normas ISO 9126, formada por um conjunto de aspectos que devem ser observados em um software para que seja verificada sua qualidade; ISO 14598, que define o processo de avaliao de softwares e fornece orientaes para avaliao prtica; e a ISO 12119, utilizada na avaliao de pacotes de software do jeito que so liberados para o mercado. O captulo 5 apresentou o processo de avaliao das ferramentas, onde foram definidas as caractersticas, sub-caractersticas e atributos a serem observados, bem como o sistema de mtricas utilizado. O captulo 6 mostrou o estudo em si das ferramentas, onde os programas selecionados foram apresentados e submetidos ao processo de avaliao.

62

7.1 Dificuldades encontradas

As principais dificuldades encontradas foram basicamente relacionadas ao entendimento do funcionamento das ferramentas, pois cada programa tem sua abordagem especfica para manipulao dos requisitos. Outro ponto crtico foi a definio das caractersticas, sub-caractersticas e atributos, que definiram o foco da anlise dos softwares selecionados.

7.2 Trabalhos futuros

O usurio selecionado para este trabalho foi a figura do operador, ou seja, a pessoa que de fato opera a ferramenta. Assim, como sugesto para trabalhos futuros, pode-se criar um estudo das ferramentas baseadas em diferentes vises, como a do gerente de desenvolvimento. Outra sugesto fazer uma anlise a respeito da aplicao de alguma das ferramentas em um ambiente real.

63

8 Glossrio

Elicitao: descobrir, identificar; Java: linguagem de programao; Link: ligao; Login: efetuar a autenticao para entrar no sistema; MySQL: banco de dados; Oracle: banco de dados; Otimizar: melhorar; Pop-up: pequenas janelas que se abrem na tela; Prompt: programa destinado digitao de comandos; Templates: formas pr-prontas;

64

9 Referncias bibliogrficas

Blaschek, J. R. Gerncia de Requisitos: O principal problema dos projetos de software. Disponvel em: http://www.bfpug.com.br/islig-rio/Downloads/. Acesso em 12 de agosto de 2009;

Grande, J. I. de, Martins, L. E., Sigerar: uma ferramenta para Gerenciamento de Requisitos. Programa de Mestrado em Cincia da Computao. Disponvel em: http://wer.inf.puc-rio.br/WERpapers/artigos/artigos_WER06. Acesso em: 12 de agosto de 2009;

Kotonya, G., Sommerville I. Requirements Engineering: Process and Techniques. Wiley, 1998;

Iam, W., Loomes, M. E. Shankararaman, V., Managing Requirements Change Using Metrics and Action Planning, Third European on Software Maintenance, mar. 1999, Amsterdan, Netherlands;

Sommerville, I., Sawyer, P. Requirements Engineering: A good practice guide. Wiley, 1999;

Manera, A, F., et al, Modelo de Qualidade CMMI, 2007;

Boas, A. V., Gonalves, J. M., CMMI para desenvolvimento, 2006;

Rocha, A. R., Magalhes A. L., MPS.BR - Melhoria de Processo do Software Brasileiro, 2007;

Koscianski, A. et al, Guia para utilizao das normas sobre avaliao de qualidade de produto de software ISO/IEC 9126 e ISO/IEC 14598. 1999;

65 Nascimento, A. L., Costa, M. V., Cunha, M. B., Garantia da Qualidade de Produtos de Software, s.d.;

Dantas, M. C., Qualidade e Avaliao de Produto de Software Jurdico, Trabalho de Graduao, Universidade Federal de Pernambuco, Recife, 2004;

Ribeiro, D. A., Processo de Avaliao da Qualidade de Arquitetura de Software, Trabalho de Graduao, Universidade Federal de Pernambuco, Recife, 2005;

Guerra, A. C., Colombo, R. M., Qualidade de produto de software;

Filho, M. J., Um Processo de Avaliao da Qualidade de Arquitetura de Software, Trabalho de Graduao, Universidade Federal de Pernambuco, Recife, 2005;

Teles, F. S., Um Processo para Anlise de Desempenho de Produtos de Software, Trabalho de Graduao, Universidade Federal de Pernambuco, Recife, 2005;

Batista, R. M., Ferramenta de gerncia de requisitos de Software integrada com enterprise architect, Blumenau, 2007;

Lima, A. C., Anlise comparativa de ferramentas livres para adequao s reas de processo do nvel 2 do modelo CMMI, Passo Fundo, 2009;

Filho, C. V., Controla: ferramenta de apoio ao processo de desenvolvimento de software em pequenas empresas, Viosa, s.d.;

Grings, C. L., Sayo, M., OpenReq: uma Ferramenta para Auxlio Gerncia de Requisitos, Rio Grande do Sul, s.d.;

Pereira, S. C., et al, Um Estudo Emprico sobre Prticas de Engenharia de Requisitos junto a Empresas de Pacotes de Software, Recife, s.d.;

66 Castro, J. F., Gerenciamento de Requisitos. Disponvel em: http://www.cin.ufpe.br/ ~if119/aulas. Acesso em: 25 de setembro de 2009;

Websites:

Jeremia. Disponvel em: http://jeremia.sourceforge.net/, Acesso em: 18 de setembro de 2009;

OSRMT. Disponvel em: http://sourceforge.net/projects/osrmt/develop. Acesso em: 19 de setembro de 2009;

SEEC. Disponvel em: http://www.seecforum.unisa.edu.au/SEECTools.html. Acesso em: 20 de setembro de 2009;

Requirements Management Tools. Disponvel em: http://www.laatuk.com/tools. Acesso em: 05 de outubro de 2009;

INCOSE. Disponvel em: http://www.incose.org/. Acesso em: 10 de outubro de 2009;

StickyMinds. Disponvel em: http://www.stickyminds.com. Acesso em 10 de outubro de 2009;

Ferramentas open source gratuitas. Disponvel em: http://www.mindomo.com. Acesso em: 15 de outubro de 2009;

Xuse. Disponvel em: http://xuse.sourceforge.net/. Acesso em: 15 de outubro de 2009;

Você também pode gostar