Vous êtes sur la page 1sur 38

INF2921

Artigo: Rastreabilidade de Requisitos

01/06/08

Daniel Villela

Apresentao do Artigo
A qualidade no desenvolvimento de software baseada na rastreabilidade de requisitos. Nesse artigo ser mostrado como que as implicaes na rastreabilidade interferem na qualidade do produto a ser desenvolvido e associar os aspectos tcnicos com os gerenciais, alm de apresentar dois modelos de referncia para apoiar a equipe de desenvolvimento na definio do modelo de rastreabilidade e como esses modelos foram importantes para a identificao de problemas abertos nessa rea.

01/06/08

Daniel Villela

Introduo
O principal propsito apresentar ao leitor diferentes facetas desde tema, visando conscientiz-lo da importncia do rastreamento no processo de desenvolvimento de software. O artigo est dividido em 4 sees:

1 Seo: Aborta o aumento com a preocupao na qualidade de software recorrente crescente globalizao do mercado, a terceirizao no desenvolvimento de software e o desenvolvimento por equipes distribudas que foram pea chave nessa contribuio. Por causa dessa preocupao as empresas de desenvolvimento de software buscam modelos para a certificao da qualidade de software que ser brevemente apresentado. 2 Seo: Mostra que a validao do software junto ao cliente utilizam os rastros e elos de rastreabilidade para mostrar que todos os requisitos foram atendidos pelo software. Apresentaremos mtodos no processo de desenvolvimento de software e modelos de rastreabilidade.

01/06/08

Daniel Villela

Introduo

3 Seo: A efetiva aplicao da rastreabilidade no processo de desenvolvimento de software depende da definio de um modelo de rastreabialidade. Pontos a considerar na definio e na utilizao desse modelo, descries de algumas tcnicas e ferramentas auxiliares para apoiar o processo de rastreamento sero apresentados. 4 Seo: Apresenta concluses e contribuies desse trabalho e problemas que ainda esto em aberto no tema de rastreabilidade.

01/06/08

Daniel Villela

Qualidade de Software
A preocupao com a qualidade de software levou criao, no incio da dcada de 90, de um conjunto de conceitos visando medir a maturidade das empresas criadoras de software. Diversos modelos para avaliar o processo de desenvolvimento de software foram desenvolvidos, porm, o mais aplicados at hoje so CMM Capability Maturity Model [Paulk95] [Paulk93] e ISO 9001 [Weber97]. CMMI - Capability Maturity Model Integration surgiu visando integrao de diversos modelos de qualidade e apresenta uma nova verso para o SW-CMM, que se prope substituir. A CMM e a CMMI so as mais populares para as empresas que visam o mercado Americano e a ISO 9001 visa o mercado Europeu.

01/06/08

Daniel Villela

Qualidade de Software
Modelo CMM

01/06/08

Daniel Villela

Qualidade de Software
Modelo CMMI

01/06/08

Daniel Villela

Qualidade de Software

Semelhana

Podemos observar que o nvel 2 do CMM equivalente ao do CMMI. O propsito a Gerncia de Requisitos, identificao de inconsistncias entre requisitos e os planos de artefatos.

Diferena

A diferena trazida pelo CMMI em relao a requisitos est no nvel 3, denominado de Definido.
Esperamos que com os processos de qualidade mostrado acima, resulte em aumento de produtividade, reduo de custo, maior qualidade e competitividade no produto final.

01/06/08

Daniel Villela

Gerncia de Requisitos
Atualmente tem-se a convico que mudanas de requisitos ao longo do processo de desenvolvimento de software fazem parte do processo. Motivos que podem levar a alterao em requisitos no identificados inicialmente: Mudana no contexto onde o sistema ser inserido; Correo de erros detectados por processos de qualidade ou novas Perspectivas.
-

Essas alteraes podem implicar em mudanas em artefatos de desenho, de cdigo e de casos de testes. Todas estas mudanas devem ser acompanhadas, de forma a garantir que todos os artefatos afetados por uma alterao sejam corrigidos. Essas mudanas no processo de acompanhamento so denominadas de Gerncia de Requisitos. Para no haver certa confuso de conceitos, faremos uma distino importante entre Gerncia dos Requisitos e o que denominamos de Gerncia por Requisitos.
01/06/08

Daniel Villela

Gerncia de Requisitos
A Gerncia por Requisitos (ou Gerncia de Requisitos) trata de um aspecto fundamental e crtico em qualquer processo de software: estabelecer uma viso comum entre o cliente e a equipe de projeto em relao aos requisitos que sero atendidos pelo software . As metas a serem atingidas pela gerncia por requisitos so: (i) documentar e controlar os requisitos alocados para estabelecer uma baseline para uso gerencial e da engenharia de software. (ii) manter planos, artefatos e atividades de software consistentes com os requisitos alocados [Santander00]. Segundo Leite, deve-se incorporar descries em linguagem natural. Uma possvel estrutura composta de:
-

Modelo Modelo Modelo Modelo Modelo

de lxico Bsico de Cenrios de Hipertexto de Configurao


Daniel Villela

01/06/08

Gerncia de Requisitos
As atividades ligadas ao Gerenciamento por Requisitos incluem o controle de mudanas, identificao de relacionamentos entre requisitos, suas origens e componentes que os implementam, anlises de impacto, controle de verses dos diferentes artefatos e acompanhamento do estado dos requisitos. Indispensvel tarefa de Gerncia por Requisitos a disponibilidade de facilidades de rastreamento. Detalharemos o rastreamento de requisitos, que vital ao gerenciamento do processo [Jarke98]; requisitos no podem ser efetivamente gerenciados sem rastreabilidade. Um requisito rastrevel se possvel descobrir quem sugeriu o requisito (a fonte), por que o requisito existe (rationale), que outros requisitos esto relacionados a ele (dependncia entre requisitos) e como o requisito se relaciona com outras informaes tais como desenho do sistema, implementao e documentao do usurio [Sommerville98].

01/06/08

Daniel Villela

Gerncia de Requisitos

Rastreabilidade

O rastreamento de requisitos utilizado para prover relacionamentos entre requisitos, arquitetura e implementao final do sistema e possibilita uma adequada compreenso dos relacionamentos de dependncia entre requisitos e atravs dos artefatos de requisitos, de arquitetura e de implementao. A rastreabilidade pode ser implementada por um conjunto de elos ou ligaes (links) entre requisitos inter-relacionados, entre requisitos e suas fontes, e entre requisitos e os componentes que os implementam.
A rastreabilidade de requisitos tem sido identificada como fator de qualidade, caracterstica que um sistema pode possuir e incluir como requisito no funcional, alm de ser um dos mais importantes prrequisitos para desenvolvimento de software com qualidade.
01/06/08

Daniel Villela

Gerncia de Requisitos

Pr-rastreabilidade documenta a o contexto a partir do qual emergem os requisitos; Ps-rastreabilidade vincula os requisitos ao desenho do sistema e sua implementao [Davis93].

Temos a rastreabilidade forward-to (para frente),que liga documentos obtidos no processo de elicitao a requisitos relevantes, e a rastreabilidade backward-from (para trs), que liga requisitos s suas fontes. No segundo tipo temos rastreabilidade forward-from, que liga requisitos a artefatos de desenho e implementao e rastreabilidade backward-to, que liga artefatos de desenho e implementao de volta a requisitos.
01/06/08

Daniel Villela

Gerncia de Requisitos

Impactos da rastreabilidade num projeto de desenvolvimento de software

O primeiro modelo a ser proposto, conhecido por cascata (waterfall), apresentava o problema de no prever tratamento para alteraes nos requisitos durante o prprio processo de desenvolvimento.

01/06/08

Daniel Villela

Gerncia de Requisitos
-

Esse processo dinmico: segue-se o desenho do modelo; Existem relatos que projetos com estabilidades apresentam alteraes da ordem de 1% ao ms de acordo com Hammer e para Kotonya esse percentual de alterao sobe para 50% dos requisitos antes que o sistema seja colocado em produo. Outra fonte de alteraes so os problemas identificados quando tem incio a fase de implementao, sendo que podem surgir problemas na arquitetura do sistema e o processo de desenho ser retomado. O modelo deve evoluir de acordo com o sistema e o Universo de informao ( UDI).

Mostramos que uma baseline contextualizada num eixo com duas dimenses: Eixo Horizontal mostra a evoluo ao longo do processo de desenvolvimento, e o eixo longitudinal registra a evoluo em cada etapa do processo.
Daniel Villela

01/06/08

Gerncia de Requisitos

01/06/08

Daniel Villela

Gerncia de Requisitos
A principal fonte geradora de alterao o prprio conjunto de interessados, que inicialmente no possuem muita clareza nos objetivos a alcanar, e a medida que o desenvolvimento evolui vai descobrindo novas funcionalidades ou possibilidades para incluir no projeto. O gerenciamento de requisitos necessita da rastreabilidade dos requisitos para controlar e documentar as modificaes. A rastreabilidade pode auxiliar em vrias situaes, como por exemplo:
-

Verificao da alocao de requisitos a componentes do software; Verificao; Validao; Previso de custos e prazos; entre outras.
Daniel Villela

01/06/08

Gerncia de Requisitos

Meta-modelo proposto por Ramesh&Jarke

Propem um meta-modelo para a rastreabilidade que possibilita a captura de informaes relacionadas a agentes, fontes e objetos as trs dimenses dos modelos de rastreabilidade. Nesse meta-modelo os interessados so ligados atravs de estruturas de contribuio[Gotel94] aos objetos conceituais que eles influenciam e a documentos onde tais objetos so registrados.

01/06/08

Daniel Villela

Gerncia de Requisitos
A figura abaixo apresenta a viso geral desse meta-modelo: note que so apresentados objetos relacionados ao produto sendo elaborado e objetos (ou artefatos) relacionados ou gerados pelo prprio processo de desenvolvimento.

01/06/08

Daniel Villela

Gerncia de Requisitos
Ramesh&Jarke ponderam que mesmo existindo uma grande variedade de elos de rastreabilidade, eles podem ser agrupados em duas categorias bsicas: relacionados ao produto: elos que descrevem propriedades e relacionamentos dos objetos. Elos deste tipo so subdivididos em elos de satisfao e elos de dependncia;
-

relacionados ao processo: elos relacionados ao histrico de aes executadas no prprio processo. Elos deste tipo so subdivididos em elos de evoluo e elos de rationale.
-

Elos de Satisfao - assegurar que os requisitos sejam atendidos pelo sistema, ou seja, a cada requisito foi associado um componente que dever atend-lo. Elos de Evoluo - registrar relacionamentos que levam de objetos existentes para objetos novos ou modificados.
01/06/08

Daniel Villela

Gerncia de Requisitos
Elos de Rationale - representar as motivaes subjacentes aos objetos existentes ou documentar as razes para evoluo. Elos de Dependncia - tm por propsito apoiar o gerenciamento de dependncias entre objetos, freqentemente impostas por restries de recurso, de competncia ou de compatibilidade, sendo teis para registrar a composio e hierarquia dos objetos e apoiar o gerenciamento do impacto das alteraes num objeto sobre os objetos que dele dependem.

01/06/08

Daniel Villela

Gerncia de Requisitos

Meta-modelo proposto por Toranzo

A proposta de Toranzo para a rastreabilidade utiliza quatro estratgias de trabalho:


-

Apresentar uma classificao das informaes a serem rastreadas; Um meta-modelo para a rastreabilidade Um modelo intermedirio para o rastreamento de requisitos Um processo para guiar o engenheiro de requisitos na aplicao das outras trs estratgias.

01/06/08

Daniel Villela

Gerncia de Requisitos
As informaes a serem rastreadas seriam classificadas em quatro nveis: Ambiental - congrega informaes oriundas do contexto ambiental onde a organizao est inserida e que podem afetar o sistema sendo desenvolvido.
-

Organizacional - rene informaes relacionadas organizao (misso, objetivos, metas e padres) e que podem impactar os requisitos do sistema.
-

Gerencial - agrega informaes que permitem associar tarefas a requisitos, e que podem auxiliar a gerncia do projeto. Desenvolvimento - abarca informaes relacionadas aos diversos artefatos gerados no processo de desenvolvimento (documento de requisitos, diagramas, programas, casos de testes, ...)
Daniel Villela

01/06/08

Gerncia de Requisitos

01/06/08

Daniel Villela

Gerncia de Requisitos
Neste meta-modelo, o suporte rastreabilidade identifica os seguintes tipos de elos: Satisfao: indica que a classe de origem tem dependncia de satisfao com classe de destino; Recurso: indica que a classe de origem tem dependncia de recurso com classe de destino; Responsabilidade: registra a participao, responsabilidade e ao de pessoas sobre artefatos; Representao: captura a representao ou modelagem dos requisitos em outras linguagens; Alocado: classe de origem est relacionada classe de destino, que representa um subsistema; Agregao: indica composio de elementos.

01/06/08

Daniel Villela

Gerncia de Requisitos
Toranzo ainda prope um modelo intermedirio de rastreamento, que consolida observaes da prtica, de estudo de caso e da aplicao das 2 estratgias.

Comparao das propostas de Ramesh&Jarke e Toranzo

Os modelos se coincidem em 2 elos:

Satisfao: Para Ramesh&Jarke indicam que requisitos so atendidos pelo sistema, correspondem ao que Toranzo denomina de alocado e que indica alocao de requisitos a sub-sistema, ou ainda Representao do requisito em outras linguagens;
Dependncia: Para Ramesh&Jarke, indicam que objetos dependem uns dos outros por restries de recursos, competncia ou compatibilidade, registrando a composio e hierarquia dos objetos. Toranzo denomina tais elos de recurso, satisfao ou de agregao.

01/06/08

Daniel Villela

Gerncia de Requisitos
O mrito maior da proposta de Ramesh&Jarke est na simplicidade do meta-modelo e na ateno colocada nos aspectos de evoluo, registrando alteraes sofridas pelos objetos rastreados, e as motivaes para tais mudanas. J a ateno colocada por Toranzo nos aspectos gerenciais do projeto uma de suas contribuies, dado que o Gerenciamento de Requisitos est intimamente ligado gerncia do projeto.

01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos


A rastreabilidade de requisitos permanece citada como problema-chave entre indstria e comunidade de engenharia de requisitos. Foi verificado o uso inadequado da pr-rastreabilidade como razo para problemas de rastreabilidade a longo prazo. O trabalho de Ramesh&Jarke apresenta o resultado de uma longa pesquisa de rastreabilidade como tema central e esse trabalho reforou a diviso entre usurios (desenvolvedores) sofisticados e normais (high-end e low-end users). Usurios normais utilizam esquemas simples de rastreabilidade: registro de dependncias entre requisitos, ligaes entre requisitos e componentes que os atendem e ligaes entre requisitos e procedimentos de verificao. Usurios deste tipo (low-end users) desconsideram importantes informaes relacionadas ao processo de Rastreabilidade. Estes usurios entendem a rastreabilidade como uma imposio dos responsveis pelo projeto.
01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos


O modelo de referncia de usurios sofisticados (high-end users) mostra que eles empregam esquemas de rastreabilidade mais ricos e que tambm utilizam as informaes de rastreabilidade de formas mais enriquecedoras, enfatizando aspectos relacionados ao processo. O meta-modelo destes usurios envolve atividades associadas ao gerenciamento de requisitos, ao desenho e alocao, verificao e validao e gerenciamento do rationale.

Em organizaes onde a preocupao com a qualidade, h dificuldades no registro e na manuteno dos elos de rastreabilidade.
Linscomb registra que nunca encontrou empresas certificadas ao nvel 2 do CMM onde fossem trabalhadas matrizes de rastreabilidade completas, indicando que cada requisito foi atendido por objetos de desenho, implementao e testes. Relatos que envolvem observaes de uma dcada, relatam o uso inadequado da rastreabilidade por parte dos desenvolvedores.
01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos

Tcnicas e ferramentas: suporte questo da rastreabilidade

Tcnicas de rastreabilidade mais comuns est relacionada ao foco principal: referncia cruzada ou documentos. Tcnicas centradas em referencias cruzadas so simples de entender e utilizar e podem ser suportadas pelo uso de hipertexto, esquemas de numerao, indexao ou uso de tags ou ainda por matrizes de rastreabilidade. Uma das tcnicas mais comuns, o uso de referncias cruzadas, pode utilizar uma matriz de rastreabilidade, implementada com uso de uma ferramenta de uso geral, como um editor de textos ou uma planilha eletrnica.

01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos


A mesma tcnica de referncias cruzadas com uso de matriz de rastreabilidade tambm pode indicar dependncias entre requisitos; a apresenta a ferramenta RequisitePro registrando, na matriz de rastreabilidade, interdependncias entre requisitos funcionais e no funcionais em um sistema de controle de imobilirias [Felicissimo02]. A tcnica de referncias cruzadas pode ainda ser implementada com o uso de elos de hipertexto, mostrando relacionamentos entre artefatos. Este tipo de rastreabilidade encontrado no software C&L - Cenrios e Lxico. Esta ferramenta, destinada a apoiar o trabalho do engenheiro de software nas atividades do processo de desenvolvimento, cria automaticamente elos de rastreabilidade entre smbolos do lxico e cenrios da aplicao.

01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos

RequisitePro
01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos


Existem outras ferramentas: DOORS - facilita a manipulao de requisitos para diferentes verses de um mesmo produto. IBM/Rational - Inclui o RequisitePro para o Processo de Requisitos e outras ferramentas como o AnalystStudio para o gerenciamento de Requisitos.

DOORS/ScenarioPlus - possibilita elos entre requisitos e casos de uso, em mltiplas verses, para diferentes configuraes de um mesmo sistema.

Informaes atualizadas sobre ferramentas para apoio ao registro de rastreabilidade pode ser encontrada no site do INCOSE
(http://www.incose.org/ProductsPubs/products/SEtools/tooltax/reqtrace_tools.html ).

01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos

Processo associado rastreabilidade

No desenvolvimento de um sistema de software encontramos atividades associadas rastreabilidade em quatro momentos: Definio dos objetos e artefatos a serem rastreados, e tambm dos tipos de elos que sero registrados.

Registro dos elos ocorre durante todo o processo de desenvolvimento, quando objetos e artefatos rastreveis sero relacionados atravs de elos, conforme os tipos j definidos.
Recuperao das entidades ligadas por meio desses elos dever ser realizada para atender necessidades dos interessados em diferentes atividades: resoluo de requisitos em conflito, identificao da origem de requisitos, alocao de requisitos a componentes, entre outros.

01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos


Evoluo compem o processo de atualizao dos elos de rastreabilidade, e so necessrias conforme surjam modificaes nas entidades relacionadas ou nos prprios relacionamentos estabelecidos entre elas.

01/06/08

Daniel Villela

Prtica da rastreabilidade de requisitos

Pontos a considerar na definio e aplicao de um modelo de rastreabilidade

Pontos que podem auxiliar o gerente de projeto e sua equipe na tarefa de definir e utilizar um modelo de rastreabilidade para o desenvolvimento de um software especfico. Estes pontos so relacionados e discutidos na seqncia:
Definir no incio do projeto, considerando a aplicao a ser desenvolvida, os objetos e artefatos a serem objeto de registro da rastreabilidade. Identificar as ferramentas que apoiaro o processo de rastreabilidade e verificar a necessidade de treinar a equipe no uso dessas ferramentas.

Conscientizar a equipe da importncia do processo de rastreabilidade. A falta de interesse dos desenvolvedores pode ser resultado do baixo comprometimento da organizao com a atividade de rastreabilidade.
Daniel Villela

01/06/08

Prtica da rastreabilidade de requisitos


Estabelecer os momentos de registro e de controle da rastreabilidade. Utilizar e avaliar o mecanismo de extrao de elos, em relao s expectativas realizadas. Analisar criticamente com a equipe, aps a liberao do software, a efetividade do modelo de rastreabilidade adotado, corrigindo possveis distores e possibilitando melhores escolhas para os prximos projetos.

01/06/08

Daniel Villela

Problemas em aberto
Um importante aspecto pouco trabalhado na literatura pesquisada e analisada a ligao entre evoluo dos requisitos e rastreabilidade: alguns poucos trabalhos, como os relatados em [Leite95] e [Ramesh01] endeream especificamente tipos de ligaes que so diretamente relacionados evoluo dos requisitos e dos artefatos. Tambm a maioria das ferramentas disponveis comercialmente pouco oferece em termos de apoio ao tratamento dos elos de evoluo e rationale, que so aqueles relacionados ao processo de desenvolvimento. Mostra um novo caminho para a rastreabilidade com a criao e evoluo automtica de elos entre requisitos expressos em linguagem natural e modelos de objetos expressos em UML. A baseline de requisitos em uso pelo projeto deve ter flexibilidade para propiciar no apenas o registro e evoluo dos elos, mas tambm a recuperao ou extrao das entidades associadas atravs de um dos tipos de elos de rastreabilidade estabelecidos para o projeto.

01/06/08

Daniel Villela

Vous aimerez peut-être aussi