• Nenhum resultado encontrado

MDM-DA: Um Método Dirigido por Modelos para Documentação e Análise de Requisitos de Sistemas

N/A
N/A
Protected

Academic year: 2021

Share "MDM-DA: Um Método Dirigido por Modelos para Documentação e Análise de Requisitos de Sistemas"

Copied!
8
0
0

Texto

(1)

MDM-DA: Um M´etodo Dirigido por Modelos para

Documentac¸˜ao e An´alise de Requisitos de Sistemas

Breno Lisi Romano1, Adilson Marques da Cunha1, Henrique Fernandes de Campos1 1Divis˜ao de Ciˆencia da Computac¸˜ao (IEC) – Instituto Tecnol´ogico de Aeron´autica (ITA)

12.228-900 – S˜ao Jos´e dos Campos – S˜ao Paulo – Brazil

{blromano,cunha,hfcampos}@ita.br

Abstract. This paper tackles the development of a Model-Driven Method for Documentation and Analysis (MDM-DA) of computer system requirements. This method is supported by Model-Driven Development (MDD) features to improve quality and efficiency for the fulfilment of Requirement Engineering activities. Besides, a Conceptual Model for applying MDM-DA was designed, by considering the theoretical concepts of Systems and Requirements Engineering. At the end, this method was successfully applied whithin a real project component providing requirement traceability from the beginning up to the end of the development process.

Resumo. Este artigo aborda o desenvolvimento de um M´etodo Dirigido por Modelos para a Documentac¸˜ao e An´alise (MDM-DA) de requisitos de Sistemas Computadorizados. Este m´etodo apoia-se nas caracter´ısticas do Desenvolvimento Dirigido por Modelos (Model-Driven Development - MDD), para melhorar a qualidade e a eficiˆencia para completar as atividades da Engenharia de Requisitos. Al´em disso, um Modelo Conceitual para aplicac¸˜ao do MDM-DA foi projetado, considerando-se os conceitos te´oricos de Engenharia de Sistemas e Engenharia de Requisitos. Ao final deste artigo, o m´etodo foi aplicado com sucesso no componente de um projeto real, propiciando rastreabilidade de requisitos, desde o in´ıcio at´e o final do processo de desenvolvimento.

1. Introduc¸˜ao

Existem consider´aveis esforc¸os de pesquisa e desenvolvimento com o objetivo de aperfeic¸oar o processo de produc¸˜ao de Sistemas Computadorizados - SC (compostos por hardware, software, firmware, entre outros), principalmente em relac¸˜ao `as atividades da Engenharia de Requisitos, consideradas ´areas cr´ıticas no desenvolvimento de um sistema. Por´em, n˜ao se pode esperar um elevado n´ıvel no desenvolvimento de SC, utilizando-se apenas das mesmas ferramentas convencionais. As tecnologias e linguagens de modelagem ficaram defasados com o progresso da computac¸˜ao [Weilkiens 2006].

A Engenharia de Sistemas representa uma abordagem multidisciplinar para desenvolver soluc¸˜oes para esses SC, em resposta as diversas necessidades dos stakeholders. Ela inclui a aplicac¸˜ao de processos t´ecnicos e de gest˜ao, buscando alcanc¸ar um desenvolvimento balanceado, reduzindo os riscos que impactam o sucesso de SC.

Com o objetivo de suportar os processos t´ecnicos da Engenharia de Sistemas, utilizados para especificar, projetar e verificar SC `a serem constru´ıdos, pode-se utilizar

(2)

a Linguagem de Modelagem de Sistemas (System Modeling Language - SysML), desenvolvida com o objetivo de preencher a lacuna semˆantica entre sistemas, software e outras disciplinas da engenharia. Por definic¸˜ao [OMG 2008], a SysML permite aos Engenheiros de Sistema, de diferentes dom´ınios, analisar, especificar, projetar, e verificar seus sistemas complexos, reforc¸ando a qualidade de SC.

A SysML permite tamb´em, de forma apropriada, a representac¸˜ao visual dos requisitos de um SC com a utilizac¸˜ao de modelos, representando o contrato entre os stakeholders e os Engenheiros de Sistemas. Contudo, n˜ao s˜ao contempladas pela SysMLespecificac¸˜oes mais aprofundadas dos requisitos dos SC e dos elementos que se relacionam com ele.

Dentro desse contexto, o Desenvolvimento Dirigido por Modelos (Model-Driven Development - MDD), que considera os modelos como principais artefatos durante o desenvolvimento dos SC, representa uma abordagem emergente que enderec¸a a complexidade no desenvolvimento de SC pelo uso intenso dos modelos [Soares and Vrancken 2008].

V´arios pesquisadores encontram-se trabalhando em abordagens MDD para transformar modelos em c´odigos-fonte visando aumentar o n´ıvel de produtividade no desenvolvimento. No entanto, poucos tˆem considerado os modelos como artefatos centrais da Engenharia de Requisitos, que se constitui no foco principal deste trabalho.

Sendo assim, este artigo tem por objetivo descrever o desenvolvimento de um M´etodo Dirigido por Modelos para a Documentac¸˜ao e An´alise (MDM-DA) de Requisitos de SC, visando a melhorar a qualidade e a eficiˆencia na realizac¸˜ao das atividades da Engenharia de Requisitos, e reduzir o desperd´ıcio de recursos nas atividades posteriores ao processo de desenvolvimento, principalmente quanto a priorizac¸˜ao e ao gerenciamento das rastreabilidades e das mudanc¸as de requisitos.

Este artigo encontra-se organizado da seguinte maneira: a Sec¸˜ao 2 descreve o Modelo Conceitual para aplicac¸˜ao do MDM-DA; a Sec¸˜ao 3 define o MDM-DA e a extens˜ao necess´aria da SysML para a sua aplicac¸˜ao; a Sec¸˜ao 4 apresenta a aplicac¸˜ao do MDM-DA em uma porc¸˜ao do Projeto de Integrac¸˜ao e Cooperac¸˜ao Amazˆonica para Modernizac¸˜ao do Monitoramento Hidrol´ogico - ICA-MMH (FINEP 5206/06); e, finalmente, a Sec¸˜ao 5 apresenta algumas conclus˜oes e trabalhos futuros. Os trabalhos de pesquisa com intersecc¸˜ao direta ao escopo deste artigo n˜ao foram inclu´ıdos devido `a limitac¸˜ao no n´umero de p´aginas.

2. Modelo Conceitual para aplicac¸˜ao do MDM-DA

Com os conceitos definidos pela Engenharia de Sistemas e pela Engenharia de Requisitos [Steiner 2008], pˆode-se conceber, na Figura 1, o Modelo Conceitual para aplicac¸˜ao do MDM-DA proposto neste artigo. As necessidades dos Stakeholders s˜ao identificadas e discutidas com o Engenheiro de Sistema, para que se encontrem as raz˜oes (rationales) e suposic¸˜oes (assumptions) assumidas para as mesmas, servindo como base para uma apropriada especificac¸˜ao de requisitos.

Note-se, na Figura 1, que o processo de “Especificac¸˜ao e Projeto de SC” foi complementado com as atividades propostas pela Engenharia de Requisitos, e os requisitos produzidos pela especificac¸˜ao de requisitos j´a englobam os requisitos

(3)

Figura 1. Modelo Conceitual concebido para aplicac¸ ˜ao do MDM-DA proposto

funcionais, n˜ao-funcionais e organizacionais.

Com a identificac¸˜ao dos requisitos dos SC, os mesmos devem ser categorizados nos seus diversos componentes, servindo como entrada do processo “Projeto, Implementac¸˜ao e Testes dos Componentes”. Uma vez verificados esses componentes, o processo “Integrac¸˜ao e Teste do SC” realiza suas atividades, considerando-o como um todo. Recomenda-se o envio de qualquer tipo de feedback ao processo anterior, para que este possa, atrav´es de um processo iterativo e incremental, aprimorar a especificac¸˜ao de requisitos do SC.

Observa-se que, ao se documentar, apropriadamente, a execuc¸˜ao dos processos apresentados no Modelo Conceitual, torna-se poss´ıvel definir as rastreabilidades entre as necessidades, requisitos e funcionalidades dos SC, sendo esta caracter´ıstica de definic¸˜ao de rastreabilidade contemplada pelo MDM-DA proposto.

3. O M´etodo Dirigido por Modelos para Documentac¸˜ao e An´alise

(MDM-DA)

Com o objetivo de documentar e analisar os requisitos de um SC, utilizando-se os conceitos de MDD, define-se na Figura 2 (A) o MDM-DA, como o m´etodo dirigido por modelos e concebido com um total de 12 passos. Este m´etodo deve ser aplicado no desenvolvimento de sistemas, de forma iterativa e incremental, pelo Engenheiro de Sistemas e pelos membros das equipes gerenciadas por ele.

Al´em da definic¸˜ao do MDM-DA, com o objetivo de suportar a sua aplicac¸˜ao, este artigo prop˜oe um perfil (profile) para a extens˜ao da SysML, focando-se nos aspectos contemplados pelo MDM-DA e ainda n˜ao previstos nesta linguagem. A extens˜ao da SysML´e apresentada na Figura 2 (B), com um detalhamento na Tabela 1, destacando-se

(4)

os elementos que eles estendem, bem como o estere´otipo criado aplicac¸˜ao no modelo. No primeiro passo do MDM-DA, deve-se definir o problema-alvo que o SC ir´a solucionar com o seu desenvolvimento. Para atingir a este objetivo, sugere-se a realizac¸˜ao de reuni˜oes peri´odicas entre as equipes do cliente e do Engenheiro de Sistemas, que devem ser documentadas em atas de reuni˜oes. Como o MDM-DA apoia-se no MDD, o modelo principal resultante deste passo utiliza o Diagrama de Definic¸˜ao de Blocos da SysML para definir o Diagrama de Contexto do SC, que representa o seu contexto dentro dos processos internos do cliente e tamb´em a sua interac¸˜ao com outros sistemas.

Figura 2. (A) MDM-DA: M ´etodo Dirigido por Modelos para Documentac¸ ˜ao e An ´alise de Requisitos. (B) Extens ˜ao da SysML para aplicac¸ ˜ao do MDM-DA

Com o problema-alvo j´a definido, deve-se identificar e documentar os stakeholders envolvidos com o SC em quest˜ao. Para cada stakeholder identificado, o segundo passo do MDM-DA prop˜oe o preenchimento das seguintes informac¸˜oes: um identificador; a categoria que o stakeholder pertence (usu´ario do sistema, gerente da corporac¸˜ao, cliente da corporac¸˜ao, entre outros); o nome e o contato da pessoa que representa o stakeholder na corporac¸˜ao; e a prioridade do stakeholder com relac¸˜ao ao SC em desenvolvimento, que impacta na prioridade dos requisitos levantados por ele.

Em fases iniciais de desenvolvimento de um SC, cada stakeholder possui diferentes necessidades que devem ser consideradas. Muitas vezes, estas necessidades j´a est˜ao documentadas em artefatos da empresa. O terceiro passo do MDM-DA prop˜oe a identificac¸˜ao e a documentac¸˜ao das necessidades dos stakeholders e de suas fontes de documentac¸˜ao. Cada necessidade levantada deve possuir um identificador e um texto para descric¸˜ao da mesma, e cada fonte de documentac¸˜ao deve possuir o nome do arquivo e o local onde o mesmo est´a armazenado. Vale ressaltar que existe um v´ınculo direto entre os

(5)

Tabela 1. Aspectos do MDM-DA estendidos para a SysML

Aspectos Elemento da UML Estere´otipo Stakeholders Ator <<Stakeholder>> Necessidades dos Stakeholders Classe <<Need>>

Fontes Externas (Documentac¸˜ao) Artefato <<SourceDocumentation>> Requisitos de Sistema Classe <<Requirement>>

Decomposic¸˜ao dos Requisitos Classe <<SoS>> <<System>> <<CSHU>> <<CSHC>> <<CSHI>>

Linhas de Produc¸˜ao do SC Classe <<ProductionLine>> Regras de Neg´ocios Classe <<BusinessRule>>

stakeholderse as necessidades, e entre as fontes de documentac¸˜ao e as necessidades. A partir das necessidades dos stakeholders, os requisitos de sistema devem ser identificados no quarto passo do MDM-DA, como tamb´em as suas assumptions e rationales. Os requisitos de sistema devem possuir: um identificador; uma descric¸˜ao; informac¸˜oes adicionais ou complementares sobre o mesmo; al´em de serem vinculados a cada necessidade que os originaram.

Antes de se definir a ordem de implementac¸˜ao dos requisitos de sistema no oitavo passo do MDM-DA, ou seja, definir as linhas de produc¸˜ao de desenvolvimento do SC, deve-se finalizar a classificac¸˜ao, priorizac¸˜ao e componentizac¸˜ao de cada requisito. O quinto passo do MDM-DA prop˜oe a classificac¸˜ao de cada requisito do SC em: funcional, n˜ao-funcional (usabilidade, desempenho, qualidade, manutenibilidade) e organizacional.

Para a priorizac¸˜ao dos requisitos do SC no sexto passo do MDM-DA, prop˜oe-se a aplicac¸˜ao do M´etodo de An´alise Kano, que considera duas importantes dimens˜oes dentro do contexto de priorizac¸˜ao e negociac¸˜ao de requisitos: o cumprimento (preenchimento) do requisito e o sentimento de satisfac¸˜ao do stakeholder [Berger et al. 1993]. Segundo esta an´alise, distinguem-se os requisitos de SC em trˆes tipos, que influenciam na satisfac¸˜ao do stakeholderde diferentes maneiras: necess´arios, normais e atrativos.

Com o objetivo de agrupar os requisitos do SC em componentes, visando a reduzir a complexidade do seu desenvolvimento, a integrar os requisitos similares ou que se relacionam, e a facilitar a definic¸˜ao das linhas de produc¸˜ao, o s´etimo passo do MDM-DA apoia-se na norma MIL-STD-498, que define quatro n´ıveis de integrac¸˜ao para o desenvolvimento de sistemas: Sistema de Software/Hardware de Computador (Computer Software/Hardware System); Item de Configurac¸˜ao de Software/Hardware de Computador (Computer Software/Hardware Configuration Items - CSHI); Componente de Software/Hardware de Computador (Computer Software/Hardware Components -CSHC); e Unidade de Software/Hardware de Computador (Computer Software/Hardware Units - CSHU) [DoD 1994]. Dependendo da complexidade do SC, prop˜oe-se a sua decomposic¸˜ao at´e um n´ıvel de integrac¸˜ao mais apropriado.

Com a definic¸˜ao das linhas de produc¸˜ao, inicia-se o desenvolvimento do SC, de forma iterativa e incremental. Para cada linha de produc¸˜ao, deve-se definir e documentar, no nono passo do MDM-DA, os casos de uso, as regras de neg´ocio, os casos de teste, e tamb´em os v´ınculos existentes entre estes elementos do modelo. Al´em disso, no d´ecimo passo do MDM-DA, prop˜oe-se a definic¸˜ao das rastreabilidades entre

(6)

os requisitos de sistema e os casos de uso e casos de testes, onde se possibilita o acompanhamento dos requisitos no d´ecimo segundo passo, verificando-se se os mesmos j´a foram implementados e testados.

Como alterac¸˜oes dos requisitos podem ocorrer ao longo do desenvolvimento de um SC, o d´ecimo primeiro passo do MDM-DA prop˜oe o controle destas alterac¸˜oes ocorridas, visando manter o seu hist´orico e monitorar os seus impactos no desenvolvimento. Desta forma, como as alterac¸˜oes de requisitos podem provocar alterac¸˜oes de assumptions, rationales, prioridades, linhas de produc¸˜oes, entre outros, existe um retorno do d´ecimo primeiro passo do MDM-DA para o quarto, permitindo assim rever as atividades anteriormente executadas.

A pr´oxima sec¸˜ao apresenta a aplicac¸˜ao do MDM-DA, de forma simplificada, em um estudo de caso do Projeto ICA-MMH.

4. Aplicac¸˜ao do MDM-DA no Proj. ICA-MMH

O desenvolvimento de um sistema nacional computadorizado para monitoramento dos recursos h´ıdricos da Bacia Amazˆonica re´une pesquisadores do Instituto Tecnol´ogico de Aeron´autica (ITA) e do Instituto de Pesquisas Hidr´aulicas (IPH), da Universidade Federal do Rio Grande do Sul. Visando atender a uma demanda da Agˆencia Nacional de ´Aguas (ANA), do Minist´erio do Meio Ambiente (MMA), teve in´ıcio em 2007 o “Projeto de Integrac¸˜ao e Cooperac¸˜ao Amazˆonica para a Modernizac¸˜ao do Monitoramento Hidrol´ogico”, que tem como objetivo obter o dom´ınio de tecnologias para o desenvolvimento de um sistema nacional computadorizado para monitoramento hidrometeorol´ogico da Bacia Amazˆonica, em tempo real [Romano et al. 2010].

O projeto abrange cinco macro-funcionalidades, onde cada uma ´e tratada por um sistema espec´ıfico: aquisic¸˜ao de dados hidrometeorol´ogicos e operacionais de diferentes origens; tratamento dos dados adquiridos; armazenamento e recuperac¸˜ao de informac¸˜oes hidrometeorol´ogicas de recursos h´ıdricos em um reposit´orio centralizado; monitoramento, controle e apoio `a decis˜ao sobre os recursos h´ıdricos da regi˜ao amazˆonica; e difus˜ao de dados e informac¸˜oes aos interessados.

Dentro desse contexto, este artigo ilustra a aplicac¸˜ao do MDM-DA no Sistema de Monitoramento, Controle e Apoio `a Decis˜ao (SMCAD). A Tabela 2 apresenta uma descric¸˜ao detalhada de exemplos de necessidade, requisito e regra de neg´ocio presentes no componente do SMCAD que deve propiciar o Monitoramento da Rede de Referˆencia (MRR) da Bacia Amazˆonica, intitulado ICSC-SMCAD-MRR.

A Figura 3 apresenta o resultado da aplicac¸˜ao dos passos 2, 3 e 4 do MDM-DA, no Componente de Monitoramento da Rede de Referˆencia do SMCAD. Por outro lado, a Figura 4 mostra o resultado da aplicac¸˜ao dos passos 9 e 10 no mesmo componente.

Constata-se assim que, o m´etodo MDM-DA foi aplicado com sucesso no componente de um projeto real, propiciando rastreabilidade de requisitos, desde o in´ıcio at´e o final do processo de desenvolvimento.

5. Conclus˜ao

Neste artigo, mostrou-se a consolidac¸˜ao dos conceitos das Engenharias de Sistemas e de Requisitos para documentac¸˜ao e an´alise de requisitos de SC, descrevendo-se o

(7)

Tabela 2. Exemplos de Necessidade, Requisito e Regra de Neg ´ocio do Componente de Monitoramento da Rede de Refer ˆencia (MRR)

Necessidade Identificador Descric¸˜ao

SMCAD-NEC005 Visualizar s´eries hist´oricas de dados hidrometeorol´ogicas e operacionais. Requisito de Sistema

Identificador Descric¸˜ao

SMCAD-RF067 O SMCAD dever´a ser capaz de propiciar a visualizac¸˜ao das informac¸˜oes estat´ısticas da utilizac¸˜ao dos meios de transmiss˜ao utilizados.

Regra de Negocio Identificador Descric¸˜ao

SMCAD-RN015 Devem ser contabilizados estatisticamente os resultados de coletas, de acordo com os parˆametros de entrada definidos pelo usu´ario.

Figura 3. Resultado da Aplicac¸ ˜ao dos Passos 2, 3 e 4 do MDM-DA no Componente de Monitoramento da Rede de Refer ˆencia do SMCAD

desenvolvimento do Modelo Conceitual de uma pesquisa, do m´etodo MDM-DA, bem como de todos os passos necess´arios para a sua aplicac¸˜ao em um projeto real. Este m´etodo foi proposto utilizando-se: de MDD para representar os requisitos graficamente, ao inv´es de somente por representac¸˜oes textuais; da SysML para modelagem, especificac¸˜ao e documentac¸˜ao de requisitos; e do M´etodo de An´alise Kano para priorizac¸˜ao dos requisitos.

Para tornar poss´ıvel a extens˜ao da SysML, visando contemplar os aspectos considerados no MDM-DA, necessitou-se implementar a especificac¸˜ao original da SysML, pois n˜ao se encontrou, na comunidade cient´ıfica e tecnol´ogica, um profile da SysMLdispon´ıvel como software livre. Sendo assim, os autores deste artigo consideram como uma importante contribuic¸˜ao, a implementac¸˜ao deste profile que contempla a especificac¸˜ao original da SysML, bem como dos aspectos considerados no MDM-DA. Este profile ser´a disponibilizado, como software livre, assim que o processo de direitos autorais for completado e o processo de patentes for depositado referente ao Projeto ICA-MMH, pois ambos se encontram em fase final de desenvolvimento.

Finalmente, como o Proj. ICA-MMH se encontra ainda em andamento, poss´ıveis ajustes no MDM-DA e na extens˜ao da SysML poder˜ao ocorrer. Note-se que, com a

(8)

Figura 4. Resultado da Aplicac¸ ˜ao dos Passos 9 e 10 do MDM-DA no Componente de Monitoramento da Rede de Refer ˆencia do SMCAD

utilizac¸˜ao do M´etodo MDM-DA e a extens˜ao da SysML no projeto ICA-MMH, percebeu-se um aumento da qualidade e da eficiˆencia na rastreabilidade dos requisitos do sistema, principalmente, por se propiciar a verificac¸˜ao, implementac¸˜ao e testes dos requisitos. Al´em disto, como o Projeto vem sendo desenvolvido utilizando-se de gerac¸˜ao autom´atica de c´odigos, tornou-se poss´ıvel manter a rastreabilidade, desde as necessidades levantadas pelos stakeholders, at´e os c´odigos-fonte gerados automaticamente.

6. Agradecimentos

Os autores deste artigo agradecem: ao Instituto Tecnol´ogico de Aeron´autica - ITA, pelo incentivo ao desenvolvimento cient´ıfico e tecnol´ogico; `a Agˆencia Nacional de ´Aguas -ANA, pela oportunidade de participac¸˜ao no desenvolvimento do Projeto ICA-MMH; `a Financiadora de Estudos e Projetos FINEP e `a Fundac¸˜ao Casimiro Montenegro Filho -FCMF, pelas bolsas concedidas e pela infra-estrutura dispon´ıvel.

Referˆencias

Berger, C., Blauth, R., Boger, D., and Bolster, C. (1993). Kano’s methods for understanding customer-defined quality. Center for Quality of Management Journal, 2:3–36.

DoD, U. D. o. D. (1994). Mil-std-498: Military standard software development and documentation. Technical report, U.S. Department of Defense.

OMG, O. M. G. (2008). Systems modeling language (omg sysml). Technical report, Object Management Group - OMG.

Romano, B. L., e Silva, G. B., da Cunha, A. M., and Mourao, W. I. (2010). Applying mda development approach to a hydrological project. Information Technology: New Generations, Third International Conference on, 0:1127–1132.

Soares, M. S. and Vrancken, J. L. M. (2008). Model-driven user requirements specification using sysml. JSW, 3(6):57–68.

Steiner, S. F. A. M. R. (2008). A Practical Guide to SysML: The Systems Modeling Language. Morgan Kaufmann.

Referências

Documentos relacionados

Para que o estudo seja possível, houve um levantamento bibliográfico sobre o cenário do sistema produtivo da saúde no Brasil, tendo em vista a proteção

Ainda segundo Gil (2002), como a revisão bibliográfica esclarece os pressupostos teóricos que dão fundamentação à pesquisa e às contribuições oferecidas por

Este artigo de revisão bibliográfica objetivou discutir o percurso histórico da loucura e do crime para entender como se deu o processo de constituição da unidade de saúde

Apresenta a Campanha Obra-Prima, que visa a mudança comportamental por meio da conscientização diante de algumas atitudes recorrentes nas bibliotecas da

Conforme mencionado anteriormente, os basidiomicetos de podridão branca são mais utilizados em processos de micorremediação mediado pela biodegradação enzimática, mas a

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

forficata recém-colhidas foram tratadas com escarificação mecânica, imersão em ácido sulfúrico concentrado durante 5 e 10 minutos, sementes armazenadas na geladeira (3 ± 1

Proeikon pode trabalhar sozinho ou em conjunto com duas outras bibliotecas: 1) FFMPEG para leitura e escrita de vídeos. Assim, pode-se escrever programas que usam: 1) Só funções