12.07.2015 Views

Avaliando Técnicas de Modelagem Organizacional ... - INF-Unioeste

Avaliando Técnicas de Modelagem Organizacional ... - INF-Unioeste

Avaliando Técnicas de Modelagem Organizacional ... - INF-Unioeste

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

FERNANDO LUIZ GRANDOAVALIANDO TÉCNICAS DE MODELAGEM ORGANIZACIONAL NOCONTEXTO DE DESENVOLVIMENTO DE SISTEMASCOMPUTACIONAISMonografia apresentada como requisito parcialpara obtenção do grau <strong>de</strong> Bacharel em Ciênciada Computação, do Centro <strong>de</strong> Ciências Exatase Tecnológicas da Universida<strong>de</strong> Estadual doOeste do Paraná - Campus <strong>de</strong> Cascavel.Orientador: Prof. Dr. Victor Francisco ArayaSantan<strong>de</strong>rCASCAVEL2010


FERNANDO LUIZ GRANDOAVALIANDO TÉCNICAS DE MODELAGEM ORGANIZACIONAL NOCONTEXTO DE DESENVOLVIMENTO DE SISTEMASCOMPUTACIONAISMonografia apresentada como requisito parcial para obtenção do Título <strong>de</strong> Bacharel em Ciência daComputação, pela Universida<strong>de</strong> Estadual do Oeste do Paraná, Campus <strong>de</strong> Cascavel, aprovada pela Comissãoformada pelos professores:Prof. Dr. Victor Francisco Araya Santan<strong>de</strong>r(Orientador)Colegiado <strong>de</strong> Ciência da Computação,UNIOESTEProf. Msc. Anibal Mantovani DinizColegiado <strong>de</strong> Ciência da Computação,UNIOESTEProf. Dr. Clodis BoscarioliColegiado <strong>de</strong> Ciência da Computação,UNIOESTECascavel, 03 <strong>de</strong> Dezembro <strong>de</strong> 2010.


DEDICATÓRIAAos meus pais e minha irmã, que sempre meincentivaram, me apoiaram, acreditaram nosmeus sonhos e me <strong>de</strong>ram forças para continuaro meu caminho. Sem vocês eu nada seria.Muito obrigado!


“Seu tempo é limitado, então não percam tempovivendo a vida <strong>de</strong> outro. Não sejamaprisionados pelo dogma – que é viver com osresultados do pensamento <strong>de</strong> outras pessoas.Não <strong>de</strong>ixe o barulho da opinião dos outrosabafar sua voz interior. E mais importante,tenha a coragem <strong>de</strong> seguir seu coração e suaintuição. Eles <strong>de</strong> alguma forma já sabem o quevocê realmente quer se tornar. Tudo o mais ésecundário”.Steve Paul Jobs.


AGRADECIMENTOSA Deus, pela saú<strong>de</strong> e disposição, permitindo mais esta evolução pessoal e profissional nacaminhada da vida.Aos meus pais, Agemiro Grando e Semilda Maria Huppers, pelo amor, incentivo e<strong>de</strong>dicação em todos os momentos da minha vida. Agra<strong>de</strong>ço eternamente a vocês pela alegria ecuidados que me proporcionaram.A minha irmã, Deisy Daniella Grando, que nunca mediu esforços para me ajudar. Soumuito grato pelo carinho, amiza<strong>de</strong> e constante apoio que me <strong>de</strong>dicou ao longo dos anos.A minha namorada, Adrieli Tailini Lothermann, pela compreensão, compartilhando dasminhas angústias e alegrias, pelo seu amor e carinho incondicionais. Agra<strong>de</strong>ço por ser essaluz que sempre brilha na minha vida. É com quem quero compartilhar essa e outrasconquistas.Aos meus amigos, Alessandro Rodrigo Franco, Daniel Bordignon Cassanelli, FernandoMartins, Marco Antonio da Rosa, Pedro Patitucci Finamore e Rafael Almeida <strong>de</strong> Oliveira,pela convivência, amiza<strong>de</strong> e companheirismo, tendo a certeza <strong>de</strong> que me ajudaram a evoluircomo ser humano e também como profissional.Ao professor Victor Francisco Araya Santan<strong>de</strong>r, pelo gran<strong>de</strong> apoio, confiança, estímulo evaliosa orientação neste trabalho. Meus sinceros agra<strong>de</strong>cimentos.Aos professores Anibal Mantovani Diniz e Clodis Boscarioli, membros da banca,responsáveis por importantes comentários e sugestões, contribuindo para melhorar estetrabalho.A empresa Tecinco – Tecnologia em Informática Coorporativa, pelo estágio fornecido,disponibilizando <strong>de</strong>ssa maneira subsídios tecnológicos e estudo <strong>de</strong> caso para a realização<strong>de</strong>sta monografia.Enfim, lembro e sou grato a todos aqueles que direta ou indiretamente contribuíram para arealização <strong>de</strong>ste trabalho, não havendo aqui, infelizmente, condições <strong>de</strong> a todos nominar. QueDeus retribua a cada um com saú<strong>de</strong> e paz.


Lista <strong>de</strong> Figuras2.1: Entradas e Saídas do Processo <strong>de</strong> Engenharia <strong>de</strong> Software .......................................... 142.2: O processo principal da abordagem GQM ................................................................... 223.1: Submo<strong>de</strong>los que compõem o Mo<strong>de</strong>lo <strong>Organizacional</strong> ................................................. 283.2: Parte <strong>de</strong> um MO <strong>de</strong> uma Biblioteca .............................................................................. 303.3: Parte <strong>de</strong> uma interação entre o MRN e componentes do MO ...................................... 313.4: O processo <strong>de</strong> verificação do en<strong>de</strong>reço do cliente não <strong>de</strong>composto ............................. 333.5: O processo <strong>de</strong> verificação do en<strong>de</strong>reço do cliente <strong>de</strong>composto ................................... 333.6: Exemplo <strong>de</strong> MAR <strong>de</strong> uma Biblioteca ........................................................................... 343.7: Exemplo <strong>de</strong> parte <strong>de</strong> um MRCT <strong>de</strong> uma Biblioteca ..................................................... 363.8: Exemplo <strong>de</strong> subprocesso <strong>de</strong> forma “fechada” .............................................................. 393.9: Exemplo <strong>de</strong> subprocesso <strong>de</strong> forma “aberta”................................................................. 393.10: Exemplo <strong>de</strong> utilização <strong>de</strong> pools .................................................................................. 403.11: Exemplo <strong>de</strong> utilização <strong>de</strong> lanes .................................................................................. 413.12: Exemplo <strong>de</strong> segmento <strong>de</strong> processo utilizando artefatos ............................................. 423.13: Exemplo <strong>de</strong> Processo Interno ..................................................................................... 423.14: Exemplo <strong>de</strong> Processo Abstrato ................................................................................... 433.15: Exemplo <strong>de</strong> Processo <strong>de</strong> Colaboração ........................................................................ 433.16: Relacionamentos <strong>de</strong> <strong>de</strong>pendência entre atores em i* ................................................. 453.17: Notação gráfica dos elementos e ligações em i* ........................................................ 473.18: Mo<strong>de</strong>lo <strong>de</strong> Dependências Estratégicas para Agendamento <strong>de</strong> Reuniões ................... 473.19: Mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas para Agendamento <strong>de</strong> Reuniões .............................. 493.20: Metamo<strong>de</strong>lo <strong>de</strong> Workflow ........................................................................................... 513.21: Exemplo <strong>de</strong> Workflow representando um sistema <strong>de</strong> atendimento on-line ................ 533.22: O ambiente <strong>de</strong> Regras <strong>de</strong> Negócio .............................................................................. 563.23: Exemplo <strong>de</strong> Map ......................................................................................................... 58vi


3.24: Notações básicas para Casos <strong>de</strong> Uso em UML .......................................................... 593.25: Exemplo <strong>de</strong> Caso <strong>de</strong> Uso <strong>de</strong> Negócio ......................................................................... 594.1: Ciclo <strong>de</strong> vida <strong>de</strong> projeto da empresa <strong>de</strong>senvolvedora <strong>de</strong> software ............................... 664.2: Diagrama BPMN para o módulo Cotação <strong>de</strong> Compras ................................................ 724.3: Diagrama SD para o módulo Cotação <strong>de</strong> Compras ...................................................... 734.4: Diagrama SR para o módulo Cotação <strong>de</strong> Compras ...................................................... 744.5: Diagrama SD para o módulo Cotação <strong>de</strong> Compras, com a inclusão do Sistema ......... 754.6: Diagrama SR para o módulo Cotação <strong>de</strong> Compras, com a inclusão do Sistema .......... 764.7: Diagrama Map para o módulo Cotação <strong>de</strong> Compras .................................................... 784.8: Diagrama Map para o objetivo Analisar Preços dos Itens ............................................ 794.9: Diagrama <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Negócio para o módulo Cotação <strong>de</strong> Compras ............. 804.10: Diagrama <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Sistema para o módulo Cotação <strong>de</strong> Compras ............ 814.11: MO e MRN para o módulo Cotação <strong>de</strong> Compras ....................................................... 814.12: MC para o módulo Cotação <strong>de</strong> Compras .................................................................... 824.13: MPN para o módulo Cotação <strong>de</strong> Compras ................................................................. 824.14: MAR para o módulo Cotação <strong>de</strong> Compras ................................................................. 834.15: MRCT para o módulo Cotação <strong>de</strong> Compras ............................................................... 83vii


Lista <strong>de</strong> Tabelas2.1: Entradas e Saídas do Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos ....................................... 132.2: Comparação das estratégias experimentais .................................................................. 192.3: Estrutura para <strong>de</strong>finição das metas GQM ..................................................................... 213.1: Objetos <strong>de</strong> Fluxo ........................................................................................................... 383.2: Objetos <strong>de</strong> Conexão ...................................................................................................... 393.3: Swimlanes ..................................................................................................................... 403.4: Artefatos ....................................................................................................................... 414.1: Características das técnicas ........................................................................................... 84viii


Lista <strong>de</strong> Abreviaturas e SiglasB2BBPDBPELBPMIBPMNBPMN-WGBRGDRPECAECAAEKDERESESEIEEEISOMALMARMCMOMPNMPS.BRMRCTMRNOCLBusiness to BusinessBusiness Process DiagramBusiness Process Execution LanguageBusiness Process Management InitiativeBusiness Process Mo<strong>de</strong>ling NotationBusiness Process Mo<strong>de</strong>ling Notation Working GroupBusiness Rules GroupDocumento <strong>de</strong> Requisitos <strong>de</strong> ProjetoEvento/Condição/AçãoEvento/Condição/Então-Ação/Senão-AçãoEnterprise Knowledge DevelopmentEngenharia <strong>de</strong> RequisitosEngenharia <strong>de</strong> SoftwareEngenharia <strong>de</strong> Software ExperimentalInstitute of Electrical and Electronics EngineersInternational Standards OrganizationModal Action LogicMo<strong>de</strong>lo <strong>de</strong> Atores e RecursosMo<strong>de</strong>lo <strong>de</strong> ConceitosMo<strong>de</strong>lo <strong>de</strong> ObjetivosMo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> NegócioMelhoria <strong>de</strong> Processos do Software BrasileiroMo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes TécnicosMo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> NegócioObject Constraint Languageix


OMGQGMQIPRFRNFRUPSDSISRTAUMLWFWFMCXPDLObject Management GroupGoal/Question/MetricQuality Improvement ParadigmRequisito FuncionalRequisito Não FuncionalRational Unified ProcessStrategic Depen<strong>de</strong>ncySistema <strong>de</strong> InformaçãoStrategic RationaleTeoria da Ativida<strong>de</strong>Unified Mo<strong>de</strong>ling LanguageWorkflowWorkflow Management CoalitionXML Process Definition Languagex


SumárioLista <strong>de</strong> Figuras .................................................................................................................................... viLista <strong>de</strong> Tabelas .................................................................................................................................. viiiLista <strong>de</strong> Abreviaturas e Siglas ............................................................................................................. ixSumário ................................................................................................................................................. xiResumo ................................................................................................................................................ xiii1 Introdução ............................................................................................................................................11.1 Contexto .........................................................................................................................................11.2 Motivações......................................................................................................................................41.3 Proposta ..........................................................................................................................................61.4 Contribuições Esperadas .................................................................................................................71.5 Estrutura do Trabalho .....................................................................................................................72 A Engenharia <strong>de</strong> Requisitos e a Engenharia <strong>de</strong> Software Experimental .......................................92.1 Engenharia <strong>de</strong> Requisitos ...............................................................................................................92.1.1 Classificação <strong>de</strong> Requisitos ....................................................................................................112.1.2 Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos ...................................................................................132.1.3 Problemas na área <strong>de</strong> Engenharia <strong>de</strong> Requisitos ....................................................................152.2 Engenharia <strong>de</strong> Software Experimental .........................................................................................172.2.1 Objetivos da Experimentação ................................................................................................182.2.2 Tipos <strong>de</strong> Experimentos ..........................................................................................................192.2.3 Metodologia e Experimentação .............................................................................................202.3 Consi<strong>de</strong>rações Finais ....................................................................................................................233 Mo<strong>de</strong>lagem <strong>Organizacional</strong> ..............................................................................................................253.1 Introdução .....................................................................................................................................253.2 A Técnica EKD ............................................................................................................................283.2.1 O Mo<strong>de</strong>lo <strong>de</strong> Objetivos (MO)................................................................................................293.2.2 O Mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio (MRN) ..............................................................................303.2.3 O Mo<strong>de</strong>lo <strong>de</strong> Conceitos (MC)................................................................................................313.2.4 O Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio (MPN) ..........................................................................32xi


3.2.5 O Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos (MAR)................................................................................333.2.6 O Mo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes Técnicos (MRCT).................................................353.3 Business Process Mo<strong>de</strong>ling Notation (BPMN) ............................................................................363.3.1 Business Process Diagram (BPD) .........................................................................................373.3.2 Tipos <strong>de</strong> submo<strong>de</strong>los BPMN .................................................................................................423.4 A Técnica i*..................................................................................................................................443.4.1 O Mo<strong>de</strong>lo <strong>de</strong> Dependências Estratégicas (SD) ......................................................................453.4.2 O Mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas (SR) .................................................................................483.5 Fluxos <strong>de</strong> Trabalho (workflows) ...................................................................................................503.6 Regras <strong>de</strong> Negócio ........................................................................................................................533.6.1 Representação <strong>de</strong> Regras <strong>de</strong> Negócio ....................................................................................543.7 Maps .............................................................................................................................................573.8 Casos <strong>de</strong> Uso <strong>de</strong> Negócio .............................................................................................................583.9 Análise das Técnicas ....................................................................................................................613.10 Consi<strong>de</strong>rações Finais ..................................................................................................................634 Estudo Comparativo e Avaliação dos Mo<strong>de</strong>los Organizacionais ..................................................644.1 Estudo Comparativo .....................................................................................................................644.1.1 Contexto do Estudo <strong>de</strong> Caso – Cotação <strong>de</strong> Compras .............................................................654.1.2 Utilizando a Engenharia <strong>de</strong> Software Experimental ..............................................................684.1.3 Utilizando as Técnicas <strong>de</strong> Mo<strong>de</strong>lagem <strong>Organizacional</strong> .........................................................714.1.4 Resultados Obtidos ................................................................................................................834.2 Avaliação ......................................................................................................................................854.3 Consi<strong>de</strong>rações Finais ....................................................................................................................895 Consi<strong>de</strong>rações Finais .........................................................................................................................92Referências Bibliográficas ...................................................................................................................95xii


ResumoHoje em dia, o <strong>de</strong>senvolvimento <strong>de</strong> softwares complexos e <strong>de</strong> baixo custo é um gran<strong>de</strong><strong>de</strong>safio para a Computação, em especial para a área <strong>de</strong> Engenharia <strong>de</strong> Software. Geralmenteos requisitos <strong>de</strong> software são mal analisados e especificados, o que resulta em programas <strong>de</strong>baixa qualida<strong>de</strong>. No entanto, observa-se que o trabalho da Engenharia <strong>de</strong> Requisitos po<strong>de</strong> sermelhorado se mo<strong>de</strong>larmos aspectos organizacionais visando enten<strong>de</strong>r melhor as intenções emotivações organizacionais que incorporam o <strong>de</strong>sejo do <strong>de</strong>senvolvimento <strong>de</strong> um sistemacomputacional. Verifica-se nesse contexto a necessida<strong>de</strong> <strong>de</strong> realizar um estudo comparativoentre técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional existentes, <strong>de</strong> forma a apresentar uma avaliaçãodas mesmas, <strong>de</strong>stacando as suas principais características e qualida<strong>de</strong>s no processo <strong>de</strong>elicitação <strong>de</strong> requisitos <strong>de</strong> software. Para tanto, neste trabalho realiza-se uma avaliação <strong>de</strong>stastécnicas utilizando princípios da Engenharia <strong>de</strong> Software Experimental. Como resultado,obtém-se uma análise crítica dos mo<strong>de</strong>los organizacionais estudados, visando apoiarengenheiros <strong>de</strong> requisitos em uma melhor escolha da técnica a ser aplicada. A técnica i* po<strong>de</strong>ser consi<strong>de</strong>rada a que mais se <strong>de</strong>stacou na avaliação realizada, permitindo, <strong>de</strong> formaabrangente, representar vários aspectos do contexto organizacional, além <strong>de</strong> possibilitar aalocação <strong>de</strong> responsabilida<strong>de</strong>s ao sistema computacional inserido como um novo ator namo<strong>de</strong>lagem da organização.Palavras-chave: Engenharia <strong>de</strong> Requisitos, Mo<strong>de</strong>lagem <strong>Organizacional</strong>, Desenvolvimento <strong>de</strong>Software.xiii


Capítulo 1IntroduçãoEsse capítulo tem como objetivo a apresentação do trabalho, indicando as motivações parao seu <strong>de</strong>senvolvimento, bem como a sua estruturação. Inicialmente, na Seção 1.1, a proposta écontextualizada no escopo da Engenharia <strong>de</strong> Software, <strong>de</strong>stacando a importância do processo<strong>de</strong> Engenharia <strong>de</strong> Requisitos na obtenção <strong>de</strong> produtos <strong>de</strong> software <strong>de</strong> qualida<strong>de</strong>. Na Seção 1.2,são <strong>de</strong>scritas as principais motivações que levaram a execução <strong>de</strong>ste estudo. Na Seção 1.3, aproposta em si é explanada, bem como seus principais objetivos. Já na Seção 1.4, sãorelatadas as contribuições esperadas com o <strong>de</strong>senvolvimento do presente trabalho. Por fim, naSeção 1.5 a organização <strong>de</strong>sse documento é apresentada.1.1 ContextoAtualmente, o <strong>de</strong>senvolvimento <strong>de</strong> softwares cada vez mais complexos, passíveis <strong>de</strong>certificação e com menor custo possível, é um <strong>de</strong>safio constante para a comunida<strong>de</strong> <strong>de</strong>Engenharia <strong>de</strong> Software (ES) (Santan<strong>de</strong>r e Silva, 2006).Nota-se que muitas pessoas envolvidas na área <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software ainda nãoestão amadurecidas o suficiente para lidar com sistemas complexos e <strong>de</strong> gran<strong>de</strong> porte,utilizando muitas vezes técnicas que não são apropriadas para esses tipos <strong>de</strong> sistemas. Comoresultado, obtém-se uma série <strong>de</strong> problemas, que vão <strong>de</strong>s<strong>de</strong> a estimativa equivocada doscustos envolvidos e cronogramas mal planejados, até a baixa produtivida<strong>de</strong> e, principalmente,a baixa qualida<strong>de</strong> dos produtos.Diversas técnicas e ferramentas vêm sendo propostas com o intuito <strong>de</strong> suportar e auxiliar aprodução <strong>de</strong> software <strong>de</strong> qualida<strong>de</strong>.Neste contexto, uma das etapas mais críticas está relacionada à Engenharia <strong>de</strong> Requisitos(ER), cujo processo é <strong>de</strong>finido por (Kotonya e Sommerville, 1998), como sendo “um1


conjunto estruturado <strong>de</strong> ativida<strong>de</strong>s que são seguidas para <strong>de</strong>rivar, validar e manter umdocumento <strong>de</strong> requisitos <strong>de</strong> sistema”.Para se realizar um bom trabalho <strong>de</strong> Engenharia <strong>de</strong> Requisitos, faz-se necessário oentendimento dos aspectos sociais, organizacionais, técnicos, econômicos e jurídicosenvolvidos no domínio do <strong>de</strong>senvolvimento, <strong>de</strong> forma a minimizar riscos e custos (Alencar,1999).Frequentemente, requisitos <strong>de</strong> software são ina<strong>de</strong>quadamente elicitados, analisados eespecificados, sendo estes fatores <strong>de</strong>cisivos para o <strong>de</strong>senvolvimento <strong>de</strong> softwares <strong>de</strong> baixaqualida<strong>de</strong>. Desta forma, boa parte da atenção da comunida<strong>de</strong> acadêmica e industrial em nívelnacional e internacional está concentrada em encontrar caminhos que permitam <strong>de</strong>senvolversoftwares que consi<strong>de</strong>rem a<strong>de</strong>quadamente os requisitos organizacionais, funcionais e nãofuncionais (Santan<strong>de</strong>r e Silva, 2006).Quando usuários precisam ou <strong>de</strong>sejam um <strong>de</strong>terminado software, em gran<strong>de</strong> parte doscasos não existe uma i<strong>de</strong>ia concreta do que se espera que esse sistema computacional faça.Geralmente, o que se tem, são intenções e <strong>de</strong>sejos <strong>de</strong> facilitar a execução <strong>de</strong> ativida<strong>de</strong>s noambiente organizacional.Por outro lado, no processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software, atenta-se inicialmente ànecessida<strong>de</strong> <strong>de</strong> se elicitar os requisitos do sistema junto ao usuário, procurando obter o que omesmo <strong>de</strong>seja do sistema. Para tanto, faz-se necessário uma compreensão mais ampla,procurando enfocar todos os atores (com suas especializações em agentes, posições e papéis)e objetos que se inter-relacionam <strong>de</strong>ntro da empresa on<strong>de</strong> o sistema a ser <strong>de</strong>senvolvido selocalizará.A mo<strong>de</strong>lagem dos processos <strong>de</strong> negócio é essencial, pois são ativida<strong>de</strong>s previamenteestabelecidas que tem como objetivo <strong>de</strong>terminar a forma como o trabalho é realizado numaorganização. Constituem um conjunto <strong>de</strong> ações, relacionadas entre si <strong>de</strong> forma lógica ecoerente a fim <strong>de</strong> promover uma saída favorável à organização, tanto em nível interno comoexterno. Uma estrutura <strong>de</strong> processos <strong>de</strong> negócio mal concebida po<strong>de</strong> por em risco a eficiênciae a eficácia <strong>de</strong> uma empresa.A finalida<strong>de</strong> <strong>de</strong> mo<strong>de</strong>lar um negócio é criar uma abstração, que é uma visão simplificadado negócio (Eriksson e Penker, 2000). Um mo<strong>de</strong>lo <strong>de</strong> negócio mostra qual é o ambiente da2


organização e como a organização age em relação a este ambiente 1 (Jacobson, Ericson eJacobson, 1994).Já a mo<strong>de</strong>lagem organizacional, em um sentido mais amplo, é a representação da estrutura,das ativida<strong>de</strong>s, dos processos, das informações, dos recursos, do pessoal, do comportamento,dos objetivos e das restrições das empresas comerciais, governamentais ou <strong>de</strong> outra natureza.Esse mo<strong>de</strong>lo ajuda a compreen<strong>de</strong>r as complexas interações entre as organizações e as pessoas.Muitos dos problemas associados ao <strong>de</strong>senvolvimento <strong>de</strong> software po<strong>de</strong>m iniciar nestafase, pois <strong>de</strong>tectar o que é realmente relevante para o usuário levando-se em consi<strong>de</strong>ração osobjetivos organizacionais, não é uma tarefa trivial.É fato que os mo<strong>de</strong>los tradicionalmente utilizados, consi<strong>de</strong>rando a Ciência da Computação,são intimamente ligados com aspectos das funcionalida<strong>de</strong>s dos sistemas, ou seja, estãopreocupados com o “que” e “como” fazer, permitindo apenas <strong>de</strong>scrições <strong>de</strong> entida<strong>de</strong>s eativida<strong>de</strong>s envolvidas nos processos. Já sob o ponto <strong>de</strong> vista da Administração, as técnicasvisam mo<strong>de</strong>lar a estrutura interna da organização, evi<strong>de</strong>nciando suas funções, dados eestratégias, <strong>de</strong>screvendo assim o “porque” <strong>de</strong> realizar <strong>de</strong>terminado processo (Alencar, 1999).Neste sentido, a mo<strong>de</strong>lagem organizacional permite não só melhor enten<strong>de</strong>r requisitosorganizacionais que interferirão nos sistemas, mas também i<strong>de</strong>ntificar alternativas para osvários processos da organização, facilitando os esforços durante o <strong>de</strong>senvolvimento dosistema computacional e permitindo que a análise organizacional seja mais bem integrada aosprocessos <strong>de</strong> <strong>de</strong>senvolvimento do sistema. O entendimento dos aspectos sociais,organizacionais, técnicos, jurídicos e econômicos é fundamental para a realização <strong>de</strong> um bomtrabalho <strong>de</strong> Engenharia <strong>de</strong> Requisitos.Segundo Yu (1995a), são necessários mo<strong>de</strong>los capazes <strong>de</strong> reconhecer motivações,intenções e razões sobre as características dos processos existentes, a fim <strong>de</strong> que, ao final doprocesso <strong>de</strong> <strong>de</strong>senvolvimento, tenha-se uma documentação apropriada que permita maisfacilmente a compreensão das características essenciais do sistema.Desta forma, este trabalho tem como foco estudar as técnicas atuais utilizadas para mo<strong>de</strong>larorganizações, porém, com uma visão voltada para sua utilização juntamente com mo<strong>de</strong>losfuncionais. Uma expectativa e necessida<strong>de</strong> <strong>de</strong> engenheiros <strong>de</strong> requisitos e engenheiros <strong>de</strong>software é que estes mo<strong>de</strong>los organizacionais que já possuem necessida<strong>de</strong>s expressas na1 Por ambiente enten<strong>de</strong>-se tudo que a organização interage para realizar os seus processos <strong>de</strong> negócio, como clientes,empregados e parceiros.3


forma <strong>de</strong> satisfação <strong>de</strong> objetivos, realização <strong>de</strong> tarefas e obtenção <strong>de</strong> recursos, possam servir<strong>de</strong> base para capturar a funcionalida<strong>de</strong> <strong>de</strong> sistemas computacionais pretendidos pelaorganização. Tipicamente <strong>de</strong>seja-se capturar essa funcionalida<strong>de</strong> utilizando elementosintegrantes da UML (Unified Mo<strong>de</strong>ling Language) (Booch, Jacobson e Rumbaugh, 1999),como casos <strong>de</strong> uso, diagrama <strong>de</strong> classes e outros diagramas da orientação a objetos.A próxima seção apresenta as principais motivações para a realização <strong>de</strong>sse trabalho.1.2 MotivaçõesObserva-se na literatura (Yu, 1995a), (Castro, Kolp e Mylopoulos, 2002), (Castro et al.,2010), que o trabalho da ES, mais especificamente da ER, po<strong>de</strong> ser melhorado se os aspectosorganizacionais forem mo<strong>de</strong>lados visando enten<strong>de</strong>r melhor as intenções e motivações daorganização que incorporam o <strong>de</strong>sejo do <strong>de</strong>senvolvimento <strong>de</strong> um software.Neste sentido, várias propostas objetivando a mo<strong>de</strong>lagem organizacional têm sidoapontadas, como a Técnica i* (Yu, 1995a), a Técnica EKD (Enterprise KnowledgeDevelopment) (Bubenko Jr., Stirna e Brash, 1998), Fluxos <strong>de</strong> Trabalho (Workflows) (Estradaet al., 2001), Regras <strong>de</strong> Negócio (Rosca et al., 1997), Notação <strong>de</strong> Mo<strong>de</strong>lagem <strong>de</strong> Processos <strong>de</strong>Negócios (Business Process Mo<strong>de</strong>ling Notation - BPMN) (BPMN, 2010a), Maps (Rolland,Prakash e Benjamen, 1999), (Rolland, 2007), Casos <strong>de</strong> Uso <strong>de</strong> Negócio (Jacobson, Booch eRumbaugh, 1999), (Jacobson, 1992).Contudo, poucos são os estudos a fim <strong>de</strong> comparar essas técnicas visando avaliar suascaracterísticas e qualida<strong>de</strong>s no processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software. Assim, é bastantemotivador o fato <strong>de</strong> po<strong>de</strong>r realizar um estudo comparativo entre técnicas <strong>de</strong> mo<strong>de</strong>lagemorganizacional existentes com a finalida<strong>de</strong> <strong>de</strong> apresentar uma avaliação crítica das mesmas,<strong>de</strong>stacando as suas características, proprieda<strong>de</strong>s, comportamentos e qualida<strong>de</strong>s no que dizrespeito ao processo <strong>de</strong> elicitação e especificação <strong>de</strong> requisitos para o sistema computacionalpretendido pela organização.Cabe ressaltar que alguns estudos como (Santan<strong>de</strong>r e Castro, 2002), (Vicente et al., 2009) e(Castro et al., 2010) apontam algumas vantagens da técnica <strong>de</strong> mo<strong>de</strong>lagem organizacional i*em relação às <strong>de</strong>mais, pois a mesma permite expressar além da <strong>de</strong>scrição das ativida<strong>de</strong>s <strong>de</strong>processos <strong>de</strong> negócio, os aspectos intencionais, motivações e possíveis alternativas a seremconsi<strong>de</strong>radas em processos <strong>de</strong> negócio apoiados por sistemas computacionais. Entretanto,outras técnicas como BPMN e Maps vêm recebendo atenção especial na área <strong>de</strong> engenharia4


<strong>de</strong> software, em parte pela simplicida<strong>de</strong> que ambas as técnicas oferecem para mo<strong>de</strong>larambientes organizacionais, bem como pela rápida assimilação das técnicas por engenheiros <strong>de</strong>software.Deve-se consi<strong>de</strong>rar o fato <strong>de</strong> a gran<strong>de</strong> maioria das empresas <strong>de</strong>senvolvedoras <strong>de</strong> softwareem nível nacional consi<strong>de</strong>rarem a adoção do programa para Melhoria <strong>de</strong> Processos doSoftware Brasileiro (MPS.BR) como fundamental para sobrevivência no mercado. Nestecontexto, a mo<strong>de</strong>lagem organizacional é consi<strong>de</strong>rada como uma ativida<strong>de</strong> essencial para obtermaiores níveis <strong>de</strong> maturida<strong>de</strong> nos processos <strong>de</strong> <strong>de</strong>senvolvimento adotados, bem como para<strong>de</strong>senvolver produtos <strong>de</strong> qualida<strong>de</strong>. Mais especificamente, observando o MPS.BR verifica-seque não se po<strong>de</strong> gerenciar requisitos e/ou gerenciar projetos se não se po<strong>de</strong> estabelecer umarelação clara e direta entre as metas organizacionais expressas em mo<strong>de</strong>los organizacionais emetas associadas aos sistemas computacionais pretendidos. Além disso, requisitos são muitomais facilmente elicitados, analisados, validados e rastreados a partir da análise <strong>de</strong> mo<strong>de</strong>losorganizacionais.É importante frisar que para a realização <strong>de</strong>ste trabalho, serão utilizados princípios daEngenharia <strong>de</strong> Software Experimental (ESE), pois a mesma fornece mecanismos para o<strong>de</strong>senvolvimento <strong>de</strong> experimentos reais abordando as técnicas organizacionais estudadas.Uma gran<strong>de</strong> percentagem da pesquisa em Engenharia <strong>de</strong> Software exibe uma recorrentelimitação, a validação insuficiente das propostas dos pesquisadores.Frequentemente apenas são fornecidas provas <strong>de</strong> conceito elementares, mas não evidênciasconcretas <strong>de</strong> que as propostas permitem reduzir os problemas i<strong>de</strong>ntificados. A ESE vemmitigar esta situação, através da aplicação do método científico, que é uma abordagemfundamental usada por cientistas <strong>de</strong> todas as áreas do conhecimento para testar hipóteses esustentar teorias. É uma abordagem que inclui uma série <strong>de</strong> passos, on<strong>de</strong> é possível i<strong>de</strong>ntificarrelações <strong>de</strong> causa-efeito.Ressalta-se que somente por meio <strong>de</strong> estudos <strong>de</strong> caso reais é que se po<strong>de</strong> <strong>de</strong>stacar asdificulda<strong>de</strong>s vividas nas empresas inerentes ao processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software(Wohlin et al., 2000).Não se po<strong>de</strong> evoluir com qualida<strong>de</strong> em direção às <strong>de</strong>mais etapas do processo <strong>de</strong><strong>de</strong>senvolvimento <strong>de</strong> software se o ambiente organizacional no qual o sistema computacional5


será inserido não foi mo<strong>de</strong>lado e a<strong>de</strong>quadamente entendido pelos stakehol<strong>de</strong>rs 2 . Nestesentido, cabe <strong>de</strong>stacar os diversos relatos na literatura associados a gran<strong>de</strong>s perdas <strong>de</strong>investimentos no <strong>de</strong>senvolvimento <strong>de</strong> sistemas <strong>de</strong> software que não atentaram a<strong>de</strong>quadamentea este aspecto e por isso não aten<strong>de</strong>ram as expectativas dos seus clientes e usuários (Kotonyae Sommerville, 1998).Na seção seguinte será apresentada a proposta e os objetivos do presente trabalho.1.3 PropostaNesse trabalho, primeiramente será realizado um estudo entre diferentes técnicas <strong>de</strong>mo<strong>de</strong>lagem organizacional, com intuito <strong>de</strong> compreendê-las tanto do ponto <strong>de</strong> vista teóricoquanto prático.Após esse estudo inicial, será <strong>de</strong>senvolvido um estudo comparativo entre essas técnicas, afim <strong>de</strong> avaliar as características e qualida<strong>de</strong>s existentes no processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong>software. Para este fim, serão utilizados princípios da Engenharia <strong>de</strong> Software Experimental.O estudo <strong>de</strong> caso adotado envolve o <strong>de</strong>senvolvimento <strong>de</strong> um novo módulo para o sistema <strong>de</strong>compras <strong>de</strong> um software para gerenciamento comercial e <strong>de</strong> concessionárias, disponibilizadopor uma empresa <strong>de</strong>senvolvedora <strong>de</strong> software da região oeste do Paraná.Com base nesse experimento, será realizada uma avaliação a respeito das técnicas <strong>de</strong>mo<strong>de</strong>lagem organizacional estudadas, consi<strong>de</strong>rando suas características e qualida<strong>de</strong>si<strong>de</strong>ntificadas no processo <strong>de</strong> experimentação.Entre os trabalhos relacionados, po<strong>de</strong>-se citar o trabalho realizado por Pádua, Cazarini eInamasu (2004), on<strong>de</strong> os autores apresentam a mo<strong>de</strong>lagem organizacional como uma forma<strong>de</strong> capturar requisitos organizacionais para melhorar a compreensão do domínio, interagircom usuários, para que eles entendam o que o sistema po<strong>de</strong> fazer para melhorar o negócio, eadquirir conhecimento da estrutura organizacional e estratégica. Nesse sentido, algumastécnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional foram apresentadas, um breve estudo comparativoentre elas foi realizado e o mo<strong>de</strong>lo EKD foi <strong>de</strong>talhado.Na seção seguinte são relatadas as contribuições esperadas com o <strong>de</strong>senvolvimento <strong>de</strong>ssetrabalho.2 Em português, parte interessada ou interveniente. É um termo usado para se referir a qualquer pessoa ouentida<strong>de</strong> que afeta ou é afetada pelas ativida<strong>de</strong>s <strong>de</strong> uma organização.6


1.4 Contribuições EsperadasEspera-se com este trabalho contribuir com a pesquisa na área <strong>de</strong> Engenharia <strong>de</strong> Requisitosatravés <strong>de</strong> um estudo comparativo entre diversas técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacionalexistentes.A partir da avaliação das técnicas estudadas via experimento realizado em uma empresa <strong>de</strong><strong>de</strong>senvolvimento <strong>de</strong> software <strong>de</strong> médio porte, apresenta-se uma avaliação crítica dos pontospositivos e negativos das respectivas técnicas. Cabe salientar que a análise crítica realizadatambém po<strong>de</strong> ser utilizada em contextos <strong>de</strong> empresas <strong>de</strong> maior porte, auxiliando engenheiros<strong>de</strong> requisitos a realizar uma melhor escolha da técnica a ser aplicada.De maneira complementar, <strong>de</strong>seja-se que o estudo <strong>de</strong>senvolvido facilite a obtenção ecaptura das funcionalida<strong>de</strong>s <strong>de</strong> sistemas computacionais pretendidos pela organização através<strong>de</strong> diagramas orientados a objetos. Inclusive, este aspecto é consi<strong>de</strong>rado na <strong>de</strong>finição dasmétricas adotadas para avaliar as diferentes características <strong>de</strong> cada mo<strong>de</strong>lo estudado.1.5 Estrutura do TrabalhoEste trabalho se divi<strong>de</strong> em quatro capítulos além do presente, estruturados da maneiraapresentada a seguir.No Capítulo 2 são abordados os principais conceitos da Engenharia <strong>de</strong> Requisitos e daEngenharia <strong>de</strong> Software Experimental. Com relação à Engenharia <strong>de</strong> Requisitos, éapresentada uma introdução ao tema, a Classificação <strong>de</strong> Requisitos <strong>de</strong> Software, o Processo<strong>de</strong> Engenharia <strong>de</strong> Requisitos e os problemas atuais da área. Da mesma forma, uma introduçãoà Engenharia <strong>de</strong> Software Experimental é apresentada, citando posteriormente os principaisObjetivos da Experimentação, os Tipos <strong>de</strong> Experimentos e a Metodologia utilizada napresente proposta.O Capítulo 3 apresenta uma visão geral a respeito da importância da mo<strong>de</strong>lagem <strong>de</strong>requisitos organizacionais no contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> sistemas computacionais. Sãoapresentadas também diversas técnicas atuais <strong>de</strong> mo<strong>de</strong>lagem organizacional, tais como:técnica EKD, notação BPMN, técnica i*, Fluxos <strong>de</strong> trabalho (workflows), Regras <strong>de</strong> Negócio,Maps, Casos <strong>de</strong> Uso <strong>de</strong> Negócio.7


Já no Capítulo 4 o estudo comparativo das técnicas é <strong>de</strong>scrito, auxiliado pelos princípios daEngenharia <strong>de</strong> Software Experimental. Posteriormente, uma avaliação a respeito dos mo<strong>de</strong>losestudados é apresentada.Por fim, o Capítulo 5 relata as conclusões obtidas no <strong>de</strong>senvolvimento <strong>de</strong>ste trabalho,assim como as principais contribuições que ele fornece para Engenharia <strong>de</strong> Software,particularmente ao Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos. Ao final, possíveis trabalhosfuturos são apresentados.8


Capítulo 2A Engenharia <strong>de</strong> Requisitos e a Engenharia<strong>de</strong> Software ExperimentalPrimeiramente, esse capítulo aborda os principais conceitos com relação a Engenharia <strong>de</strong>Requisitos, ressaltando a importância da elicitação e análise dos requisitos organizacionais nocontexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> sistemas. Uma introdução à Engenharia <strong>de</strong> Requisitos éapresentada na Seção 2.1. De forma complementar, esse capítulo apresenta uma introdução àEngenharia <strong>de</strong> Software Experimental, que servirá <strong>de</strong> apoio aos estudos comparativosrealizados no Capítulo 4. A Seção 2.2 introduz o conceito <strong>de</strong> Engenharia <strong>de</strong> SoftwareExperimental. Por fim, a Seção 2.3 contém as consi<strong>de</strong>rações finais.2.1 Engenharia <strong>de</strong> RequisitosA Engenharia <strong>de</strong> Requisitos (ER) tem sido reconhecida como uma das mais importantesfases do processo <strong>de</strong> Engenharia <strong>de</strong> Software (ES). Este reconhecimento <strong>de</strong>corre da<strong>de</strong>scoberta que geralmente a maior parte dos problemas no <strong>de</strong>senvolvimento <strong>de</strong> software éoriginada nas etapas iniciais do <strong>de</strong>senvolvimento. Estas etapas constituem o processo <strong>de</strong>Engenharia <strong>de</strong> Requisitos, a qual tem como principais ativida<strong>de</strong>s: elicitação, análise,negociação, especificação, gerenciamento e validação <strong>de</strong> requisitos (Kotonya e Sommerville,1998).No processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software, estabelecer requisitos que sejamcompreensíveis por todas as partes envolvidas é um fator básico, ao tempo que é, também, umproblema <strong>de</strong> difícil solução. Dessa forma, faz-se necessária uma abordagem sistemática <strong>de</strong>obtenção dos requisitos que assegure a compreensão dos requisitos do usuário e a produção <strong>de</strong>um sistema utilizável a um bom custo/benefício (Alencar, 1999).9


Uma incorreta i<strong>de</strong>ntificação <strong>de</strong> requisitos <strong>de</strong> um software po<strong>de</strong> levar ao <strong>de</strong>senvolvimento<strong>de</strong> um produto que não aten<strong>de</strong> aos reais objetivos para o qual foi planejado, resultando em umsoftware <strong>de</strong> baixa qualida<strong>de</strong>.A literatura possui várias <strong>de</strong>finições para requisitos <strong>de</strong> software. Sommerville (2001)<strong>de</strong>fine requisitos <strong>de</strong> software como “um conjunto <strong>de</strong> ativida<strong>de</strong>s que o software <strong>de</strong>ve<strong>de</strong>sempenhar, com suas limitações e restrições, além <strong>de</strong> características não ligadasdiretamente às funções <strong>de</strong>sempenhadas pelo software”.De acordo com (Sommerville e Sawyer, 1997), um requisito po<strong>de</strong> <strong>de</strong>screver uma:a) facilida<strong>de</strong> no nível do usuário: por exemplo, um corretor <strong>de</strong> gramática e ortografia;b) proprieda<strong>de</strong> muito geral do sistema: por exemplo, o sigilo <strong>de</strong> informações;c) restrição específica no sistema: por exemplo, o tempo <strong>de</strong> varredura <strong>de</strong> um sensor;d) restrição no <strong>de</strong>senvolvimento do sistema: por exemplo: a linguagem C++ <strong>de</strong>verá serutilizada para o <strong>de</strong>senvolvimento do sistema.A IEEE (1997) <strong>de</strong>fine requisito como sendo:a) uma condição ou uma capacida<strong>de</strong> <strong>de</strong> que o usuário necessita para solucionar umproblema ou alcançar um objetivo;b) uma condição ou uma capacida<strong>de</strong> que <strong>de</strong>ve ser alcançada ou possuída por um sistemaou componente do sistema para satisfazer um contrato, um padrão, uma especificaçãoou outros documentos impostos formalmente;c) uma representação documentada <strong>de</strong> uma condição ou capacida<strong>de</strong>, conforme os itens(a) e (b).Macaulay (1996) possui uma <strong>de</strong>finição bastante simples, na qual ele diz que requisito ésimplesmente algo que o cliente necessita. A visão <strong>de</strong> requisitos, segundo Davis (1993), nãose restringe a apenas o "quê" o sistema <strong>de</strong>va fazer, mas também a "como" <strong>de</strong>va fazer. Paraesse autor, a <strong>de</strong>finição do IEEE não é muito boa, pois só trata da visão do “quê”.Já a IEEE (1984) <strong>de</strong>fine a Engenharia <strong>de</strong> Requisitos como “um processo <strong>de</strong> aquisição,refinamento e verificação das necessida<strong>de</strong>s do cliente para um sistema <strong>de</strong> software,objetivando-se ter uma especificação completa e correta dos requisitos <strong>de</strong> software”.Segundo Boehm (1989), a Engenharia <strong>de</strong> Requisitos po<strong>de</strong> ser <strong>de</strong>finida como “umaativida<strong>de</strong> que objetiva <strong>de</strong>senvolver uma especificação completa, consistente, não ambígua ecorreta dos requisitos, que sirva, inclusive, <strong>de</strong> base para um acordo entre as partes10


envolvidas no processo <strong>de</strong> <strong>de</strong>senvolvimento do software, on<strong>de</strong> se pactue, <strong>de</strong> forma concisa, "oque" o produto irá fazer”.Segundo Castro (1995), Engenharia <strong>de</strong> Requisitos é um campo amplo que compreen<strong>de</strong>todas as ativida<strong>de</strong>s necessárias para criar e manter a documentação <strong>de</strong> requisitos. Sua funçãoprincipal é aperfeiçoar os processos para o gerenciamento do ciclo <strong>de</strong> vida dos requisitos eaborda um ponto fundamental do <strong>de</strong>senvolvimento <strong>de</strong> software: a <strong>de</strong>finição do que produzir.Para Kotonya e Sommerville (1998), a Engenharia <strong>de</strong> Requisitos é um termo relativamentenovo que foi criado para cobrir todas as ativida<strong>de</strong>s envolvidas em <strong>de</strong>scobrimento,documentação e manutenção <strong>de</strong> um conjunto <strong>de</strong> requisitos para um sistema baseado emcomputador.A obtenção dos requisitos <strong>de</strong> software é uma tarefa complexa, visto que <strong>de</strong>manda <strong>de</strong> umconjunto <strong>de</strong> i<strong>de</strong>ias que po<strong>de</strong>m estar incompletas, sendo necessário transformar essas i<strong>de</strong>ias emuma elaboração completa e consistente <strong>de</strong> técnicas <strong>de</strong> requisitos para um sistema <strong>de</strong> software.Dificilmente as especificações permanecem inalteradas durante o processo. Esta volatilida<strong>de</strong>po<strong>de</strong> ocasionar um custo e tempo maior.Segundo Kotonya e Sommerville (1998), erros nos requisitos são responsáveis pelosseguintes problemas:a) pelo atraso na entrega do sistema e pelo aumento do custo do <strong>de</strong>senvolvimento dosistema;b) pela insatisfação do cliente e dos usuários finais com o sistema. Eles po<strong>de</strong>m não usarsuas facilida<strong>de</strong>s ou po<strong>de</strong>m ainda <strong>de</strong>scartar por completo o sistema;c) pela falta <strong>de</strong> confiabilida<strong>de</strong> no uso do sistema, <strong>de</strong>vido a erros regulares do sistema efalhas que levam à interrupção da operação normal do sistema;d) pelo aumento do custo <strong>de</strong> manutenção e evolução do sistema.Na seção seguinte, os diferentes tipos <strong>de</strong> requisitos <strong>de</strong> software serão classificados.2.1.1 Classificação <strong>de</strong> RequisitosDurante a fase <strong>de</strong> especificação dos requisitos, surge a necessida<strong>de</strong> <strong>de</strong> se estabelecer o tipo<strong>de</strong> requisito <strong>de</strong> que se esteja tratando, a fim <strong>de</strong> melhorar a compreensão das necessida<strong>de</strong>s docliente, bem como melhor mo<strong>de</strong>la-las. Numa visão mais tradicional, os requisitos sãoclassificados como funcionais e não funcionais, conforme apresentado por Sommerville(2001):11


a) Requisitos Funcionais (RF): são as <strong>de</strong>clarações das funções que o sistema <strong>de</strong>veoferecer, como ele se comporta com entradas particulares e como o sistema <strong>de</strong>ve secomportar em situações específicas. O termo “função” é usado no sentido genérico daoperação que po<strong>de</strong> ser realizada pelo sistema, seja por meio <strong>de</strong> comandos dosusuários, seja pela ocorrência <strong>de</strong> eventos internos ou externos ao sistema. Em algunscasos, os requisitos funcionais po<strong>de</strong>m também, explicitamente, <strong>de</strong>finir o que o sistemanão <strong>de</strong>ve fazer;b) Requisitos Não-Funcionais (RNF): são as restrições nas funções oferecidas pelosistema. Incluem restrições <strong>de</strong> tempo; restrições no processo <strong>de</strong> <strong>de</strong>senvolvimento;padrões; e <strong>de</strong> qualida<strong>de</strong>s globais <strong>de</strong> um software, como custo, confiabilida<strong>de</strong>,manutenibilida<strong>de</strong>, portabilida<strong>de</strong>, usabilida<strong>de</strong>, <strong>de</strong>sempenho, <strong>de</strong>ntre outras. Alguns<strong>de</strong>sses requisitos são provavelmente traduzidos em funções (operacionalizados), aolongo do processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software (Chung et al., 2000).Resumidamente, os requisitos funcionais <strong>de</strong>screvem “o que” o sistema <strong>de</strong>ve fazer,enquanto que os requisitos não funcionais fixam restrições sobre “como” os requisitosfuncionais serão implementados.Entretanto, <strong>de</strong>vido às novas concepções a respeito <strong>de</strong> estratégias na gestão dasorganizações, vários estudiosos afirmam que a classificação tradicional não mais apresentarespostas à compreensão <strong>de</strong> todas as facetas que compõem o ambiente das atuaisorganizações. Para melhor compreensão da organização, é necessário não analisar somenterequisitos funcionais, mas também os aspectos organizacionais e sociais.Dessa maneira, a classificação mais mo<strong>de</strong>rna <strong>de</strong> requisitos agrega a conceituação <strong>de</strong>requisitos organizacionais (Loucopoulos e Karakostas, 1995), (Kotonya e Sommerville,1998), (Davis, 1993):c) Requisitos Organizacionais: dizem respeito às metas da empresa, suas políticasestratégicas adotadas, os relacionamentos entre os seus atores junto com seusrespectivos objetivos.Segundo essa nova visão, a Engenharia <strong>de</strong> Requisitos po<strong>de</strong> ser dita como a área doconhecimento preocupada na comunicação com agentes organizacionais, com respeito a suasvisões, intenções e ativida<strong>de</strong>s relativas às suas necessida<strong>de</strong>s <strong>de</strong> suporte <strong>de</strong> computadores,<strong>de</strong>senvolvimento e manutenção <strong>de</strong> uma especificação <strong>de</strong> requisitos a<strong>de</strong>quada a um sistema(Loucopoulos e Karakostas, 1995).12


Po<strong>de</strong>-se afirmar que os requisitos na visão mo<strong>de</strong>rna não se preocupam apenas com "como"o sistema <strong>de</strong>ve fazer, mas sim com "o que" o sistema <strong>de</strong>ve fazer, associado com "o porque"fazer, compreen<strong>de</strong>ndo a intencionalida<strong>de</strong> dos fatos organizacionais.A inter<strong>de</strong>pendência entre as organizações, entre as unida<strong>de</strong>s internas <strong>de</strong> uma organização eentre os membros <strong>de</strong> uma equipe <strong>de</strong> trabalho é cada vez maior no atual estágio <strong>de</strong><strong>de</strong>senvolvimento da socieda<strong>de</strong>. A principal razão para se consi<strong>de</strong>rar os requisitosorganizacionais, está na ajuda à compreensão <strong>de</strong> interações complexas entre as organizações eas pessoas envolvidas, on<strong>de</strong> projetistas e <strong>de</strong>senvolvedores <strong>de</strong>vem dar atenção especial aoscomponentes organizacionais (razões, motivações, porquês) no <strong>de</strong>senvolvimento <strong>de</strong> seusprodutos.2.1.2 Processo <strong>de</strong> Engenharia <strong>de</strong> RequisitosSegundo a ISO (1988), processo é <strong>de</strong>finido como "um grupo <strong>de</strong> ativida<strong>de</strong>s interrelacionadasque se caracterizam por uma série <strong>de</strong> entradas específicas que agregam valor efornecem uma série <strong>de</strong> saídas específicas para clientes externos e internos".O Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos, segundo Sommerville e Sawyer (1997), é umconjunto estruturado <strong>de</strong> ativida<strong>de</strong>s para extrair, validar e manter um documento <strong>de</strong> requisitos.Uma completa <strong>de</strong>scrição do processo po<strong>de</strong>rá incluir quais ativida<strong>de</strong>s são realizadas, aestruturação ou particionamento, quem é responsável, as entradas e saídas <strong>de</strong>sta ativida<strong>de</strong> e asferramentas usadas para suportar a engenharia <strong>de</strong> requisitos.Tabela 2.1: Entradas e Saídas do Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos. (Kotonya e Sommerville, 1998)ENTRADAInformações dossistemas existentesNecessida<strong>de</strong>s dosstakehol<strong>de</strong>rsPadrões organizacionaisNormas e regulamentosInformações do domínioSAÍDARequisitos <strong>de</strong>finidosEspecificação do sistemaMo<strong>de</strong>los do sistema13DESCRIÇÃOInformação sobre a funcionalida<strong>de</strong> dos sistemas a serem substituídos ou <strong>de</strong>outros sistemas que interagem com o sistema que está sendo especificado.Descrição do que os stakehol<strong>de</strong>rs necessitam do sistema para suportar seustrabalhos.Padrões usados na organização relativos às práticas <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong>sistemas, gerenciamento da qualida<strong>de</strong>, etc.Regulamentações externas tais como regulamentações <strong>de</strong> saú<strong>de</strong> esegurança que se aplicam ao sistema.Informações gerais sobre o domínio da aplicação do sistema.DESCRIÇÃOUma <strong>de</strong>scrição dos requisitos do sistema que seja entendida pelosstakehol<strong>de</strong>rs e que tenha sido acordado por estes.Esta é uma especificação mais <strong>de</strong>talhada da funcionalida<strong>de</strong> do sistema.Um conjunto <strong>de</strong> mo<strong>de</strong>los, tais como, mo<strong>de</strong>lo <strong>de</strong> fluxo <strong>de</strong> dados, mo<strong>de</strong>lo <strong>de</strong>objeto, mo<strong>de</strong>lo <strong>de</strong> processo, etc., que <strong>de</strong>screve o sistema sob diferentesperspectivas.


Kotonya e Sommerville (1998) <strong>de</strong>screvem as principais entradas e saídas do processo <strong>de</strong>Engenharia <strong>de</strong> Requisitos na Tabela 2.1. Com o objetivo <strong>de</strong> enten<strong>de</strong>r melhor o processo <strong>de</strong>Engenharia <strong>de</strong> Requisitos, recorre-se à Figura 2.1.Po<strong>de</strong>-se notar na Figura 2.1 que os autores consi<strong>de</strong>ram como relevante não só buscarinformações sobre a funcionalida<strong>de</strong> dos sistemas ou <strong>de</strong>screver as necessida<strong>de</strong>s dos usuáriosdo sistema a ser <strong>de</strong>senvolvido, mas enten<strong>de</strong>r melhor o domínio da aplicação, consi<strong>de</strong>rar osaspectos relativos à própria estrutura da organização (padrões adotados, gerenciamento <strong>de</strong>qualida<strong>de</strong>, metas, estratégias, etc.) e inclusive consi<strong>de</strong>rar os aspectos legais (regulamentaçõesexternas) que se apliquem ao sistema a ser produzido. Desse ponto <strong>de</strong> vista, não cabe só aoadministrador mo<strong>de</strong>lar os requisitos organizacionais, mas também ao <strong>de</strong>senvolvedor dosistema a ser adotado pela organização.A Engenharia <strong>de</strong> Requisitos é um processo que envolve todas essas ativida<strong>de</strong>s para criar emanter o documento <strong>de</strong> requisitos do sistema. O Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos possuibasicamente as seguintes ativida<strong>de</strong>s:a) Elicitação <strong>de</strong> requisitos: requisitos são <strong>de</strong>scobertos através da consulta com as partesinteressadas;b) Análise e negociação <strong>de</strong> requisitos: requisitos são analisados e os conflitos resolvidosatravés <strong>de</strong> negociação;c) Documentação e mo<strong>de</strong>lagem <strong>de</strong> requisitos: um documento <strong>de</strong> requisitos é produzido;d) Validação <strong>de</strong> requisitos: é checada a consistência do documento <strong>de</strong> requisitos;e) Gerenciamento <strong>de</strong> requisitos: envolve a coleta, armazenamento e manutenção <strong>de</strong>gran<strong>de</strong> quantida<strong>de</strong> <strong>de</strong> informação.Figura 2.1: Entradas e Saídas do Processo <strong>de</strong> Engenharia <strong>de</strong> Software. (Kotonya e Sommerville, 1998)14


2.1.3 Problemas na área <strong>de</strong> Engenharia <strong>de</strong> RequisitosApesar <strong>de</strong> todos os esforços da Engenharia <strong>de</strong> Requisitos, o que se vê atualmente sãousuários insatisfeitos com softwares que não se adéquam às suas reais necessida<strong>de</strong>s, o queresulta no aumento dos custos em correções <strong>de</strong> problemas associados a requisitos malespecificados. Tendo em vista esse panorama, Castro, Kolp e Mylopoulos (2002) citam osseguintes problemas na área:a) Aspectos organizacionais não são consi<strong>de</strong>rados: a maior preocupação da ER é emtorno da obtenção das características técnicas referentes ao sistema que se <strong>de</strong>sejaespecificar. Deixando <strong>de</strong> lado os aspectos relacionados com as organizações, <strong>de</strong>ixa-se<strong>de</strong> compreen<strong>de</strong>r amplamente as reais necessida<strong>de</strong>s e intenções <strong>de</strong>ssas organizações,resultando em requisitos que não satisfazem as reais necessida<strong>de</strong>s do cliente.Santan<strong>de</strong>r (2002) afirma que isso implica em avaliar objetivos e metas organizacionaise apontar <strong>de</strong> que forma sistemas <strong>de</strong> software po<strong>de</strong>m satisfazer estes objetivos;b) Pouco envolvimento das partes participantes: apesar dos esforços da ER naobtenção das necessida<strong>de</strong>s dos clientes, quando não há envolvimento completo e totaldos participantes no contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> um sistema, as chances dosrequisitos serem mal formulados e especificados são gran<strong>de</strong>s;c) Problemas <strong>de</strong> comunicação com as partes participantes: quando o número <strong>de</strong>pessoas envolvidas é elevado, as partes po<strong>de</strong>m não se comunicar eficientemente.Dessa forma, o resultado é a elaboração <strong>de</strong> um documento <strong>de</strong> requisitos que não écompreendido por todos, além da possibilida<strong>de</strong> <strong>de</strong> haver requisitos incompletos oumesmo incorretos.O presente trabalho está relacionado com a <strong>de</strong>ficiência apresentada no item (a), on<strong>de</strong> váriostrabalhos na área já foram propostos. Santan<strong>de</strong>r (2002) mostra a viabilida<strong>de</strong> e as vantagens <strong>de</strong>integrar a técnica <strong>de</strong> mo<strong>de</strong>lagem organizacional i* e com uma técnica baseada em cenários, osCasos <strong>de</strong> Uso em UML (Unified Mo<strong>de</strong>ling Language). Tipicamente, Diagramas <strong>de</strong> Casos <strong>de</strong>Uso têm sido usados para capturar requisitos funcionais do sistema a ser <strong>de</strong>senvolvido.Infelizmente, a UML e técnicas baseadas em cenários em geral não estão equipadas paramo<strong>de</strong>lar os requisitos organizacionais. Através da proposta em (Santan<strong>de</strong>r, 2002), engenheiros<strong>de</strong> requisitos po<strong>de</strong>m <strong>de</strong>senvolver Diagramas <strong>de</strong> Caso <strong>de</strong> Uso em UML a partir dos mo<strong>de</strong>losorganizacionais propostos na técnica i*.15


Já Alencar (1999), propõe diretrizes para o mapeamento dos mo<strong>de</strong>los organizacionais, queexplicitam os requisitos organizacionais, em componentes estruturais das linguagens <strong>de</strong>especificação precisas. Dessa forma, o objetivo é acrescentar às especificações precisas oscomponentes organizacionais que lhes faltem. Na proposta, a autora utiliza a técnica <strong>de</strong>mo<strong>de</strong>lagem i*, para levantar os aspectos organizacionais, e as linguagens Structured MAL(Structured Modal Action Logic) e OCL (Object Constraint Language) associada com UML,para a mo<strong>de</strong>lagem precisa.No trabalho <strong>de</strong> Teixeira (2009), é apresentado um conjunto <strong>de</strong> diretrizes que auxiliam oprocesso <strong>de</strong> construção <strong>de</strong> mo<strong>de</strong>los organizacionais i* para a fase <strong>de</strong> requisitos <strong>de</strong>talhados<strong>de</strong>rivando-os a partir <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> ativida<strong>de</strong>s usando a Teoria da Ativida<strong>de</strong> (TA).Consi<strong>de</strong>ra-se como base a proposta apresentada em Cruz Neto (2008), direcionando o focopara a especificação dos requisitos do sistema computacional pretendido e seu impacto noambiente organizacional.No estudo <strong>de</strong> Estrada et al. (2001), é ressaltado a importância <strong>de</strong> incorporar informaçõessobre os processos <strong>de</strong> negócio na especificação <strong>de</strong> requisitos, on<strong>de</strong> o software é parte ativa<strong>de</strong>ste mo<strong>de</strong>lo <strong>de</strong> negócio. Estrada et al. (2001) apresentam uma abordagem para criação <strong>de</strong>mo<strong>de</strong>los <strong>de</strong> fluxos <strong>de</strong> trabalho (como ponto <strong>de</strong> partida para o <strong>de</strong>senvolvimento <strong>de</strong> mo<strong>de</strong>losorganizacionais i*) a partir <strong>de</strong> um mo<strong>de</strong>lo <strong>de</strong> requisitos, o qual permite <strong>de</strong>screver e modificarum processo <strong>de</strong> negócio sem consi<strong>de</strong>rar os <strong>de</strong>talhes da implementação. O autor cita que váriostrabalhos têm tentado utilizar técnicas <strong>de</strong> mo<strong>de</strong>lagem conceitual <strong>de</strong> sistemas <strong>de</strong> software, taiscomo a UML, para mo<strong>de</strong>lar processos <strong>de</strong> negócios, o que consi<strong>de</strong>ra uma abordagemineficiente, visto que essas técnicas não permitem especificar <strong>de</strong> forma clara relaçõesorganizacionais entre seus atores.No entanto, os trabalhos mencionados estão focados em <strong>de</strong>terminadas técnicas <strong>de</strong>mo<strong>de</strong>lagem organizacional, não se preocupando em realizar um estudo comparativo entre astécnicas existentes e, a partir <strong>de</strong>ssa análise, propor uma solução melhorada. Assim, acredita-seque a presente avaliação possa auxiliar nas ativida<strong>de</strong>s <strong>de</strong> elicitação, análise e documentação<strong>de</strong> requisitos, visto que engenheiros <strong>de</strong> requisitos po<strong>de</strong>rão compreen<strong>de</strong>r melhor o ambienteorganizacional e seus relacionamentos, bem como consi<strong>de</strong>rar os requisitos e objetivosorganizacionais previamente estabelecidos.Nota-se que a motivação para pesquisas na área <strong>de</strong> Engenharia <strong>de</strong> Requisitos tem crescidoconsi<strong>de</strong>ravelmente nos últimos anos. A causa disso é o fato <strong>de</strong> que a maioria dos problemas16


atribuídos a sistemas computacionais que não satisfazem clientes a<strong>de</strong>quadamente sãooriginados nas ativida<strong>de</strong>s realizadas nesta fase.2.2 Engenharia <strong>de</strong> Software ExperimentalA experimentação é uma disciplina muito importante para diversas áreas <strong>de</strong> pesquisa, queinclui a Engenharia <strong>de</strong> Software. Há uma compreensão cada vez maior na comunida<strong>de</strong> <strong>de</strong> ESque os estudos empíricos são necessários para avaliar, <strong>de</strong>senvolver ou melhorar processos,métodos e ferramentas para <strong>de</strong>senvolvimento <strong>de</strong> software e manutenção dos mesmos.Os experimentos são o centro do processo científico, pois somente os experimentos po<strong>de</strong>mvalidar as teorias ou explorar os fatores críticos para que as teorias possam ser formuladas ecorrigidas. Novos métodos, técnicas, linguagens e ferramentas não <strong>de</strong>veriam ser apresentadaspara venda sem experimentação e validação. É necessário que as novas invenções sejamavaliadas em comparação com as existentes. É importante ressaltar que experimentos nãoprovam nada, nenhum experimento oferece prova com certeza, eles apenas verificam aprevisão da teoria junto à realida<strong>de</strong> (Travassos, Gurov e Amaral, 2002).Segundo Travassos, Gurov e Amaral (2002), a Engenharia <strong>de</strong> Software possui aspectosexplícitos <strong>de</strong> produção, pois consi<strong>de</strong>ra o processo <strong>de</strong> criação do software. Por outro lado,características relacionadas à competição e ao time-to-market exigem a melhoria contínua daqualida<strong>de</strong> do processo e do produto, apresentando a parte científica da Engenharia <strong>de</strong>Software.Wohlin et al. (2000) afirmam que existem quatro métodos relevantes para a condução <strong>de</strong>experimentos na área da Engenharia <strong>de</strong> Software: o método científico, o método <strong>de</strong>engenharia, o método experimental e o método analítico.Travassos, Gurov e Amaral (2002) supõem que a abordagem mais aceita para aexperimentação na Engenharia <strong>de</strong> Software seja o método experimental, que consi<strong>de</strong>ra aproposição e avaliação do mo<strong>de</strong>lo com os estudos experimentais. O método experimental, queserá utilizado nesse trabalho, sugere o mo<strong>de</strong>lo, após <strong>de</strong>senvolve o método qualitativo e/ouquantitativo, aplica um experimento, me<strong>de</strong> e analisa, avalia o mo<strong>de</strong>lo e repete o processo.Dessa forma, essa abordagem é consi<strong>de</strong>rada orientada à melhoria revolucionária. Os autorescitam que os outros métodos po<strong>de</strong>m ser utilizados para a resolução <strong>de</strong> problemas naEngenharia <strong>de</strong> Software.17


Informações mais completas a respeito da Engenharia <strong>de</strong> Software Experimental po<strong>de</strong>mser encontradas nos trabalhos (Wohlin et al., 2000), (Basili, Selby e Hutchens, 1986), (Basili,1992), (Fenton, 1993), (Basili et al., 2006), (Basili, 1996).2.2.1 Objetivos da ExperimentaçãoConradi et al. (2001) listam algumas <strong>de</strong>finições dos objetivos da experimentação emEngenharia <strong>de</strong> Software. São elas:a) Para compreen<strong>de</strong>r a natureza dos processos da informação, os pesquisadores <strong>de</strong>vemobservar o fenômeno, encontrar explicação, formular a teoria, e verificá-la;b) A experimentação po<strong>de</strong> ajudar a construir uma base <strong>de</strong> conhecimento confiável,reduzindo assim incertezas sobre quais teorias, ferramentas e metodologias sãoa<strong>de</strong>quadas;c) A observação e experimentação po<strong>de</strong>m levar a novos e úteis meios da introspecção, eabrir novas áreas <strong>de</strong> investigação. A experimentação po<strong>de</strong> encontrar novas áreas on<strong>de</strong> aengenharia age lentamente;d) A experimentação po<strong>de</strong> acelerar o processo eliminando abordagens inúteis esuposições errôneas. A experimentação ajuda também a orientar a engenharia e a teorianas direções promissoras <strong>de</strong> pesquisa;e) Os experimentos po<strong>de</strong>m ser custosos, mas um experimento significativo geralmentepo<strong>de</strong> se encaixar no orçamento <strong>de</strong> um pequeno laboratório. Por outro lado, umexperimento caro po<strong>de</strong> valer a pena muito mais do que seu custo e, por exemplo,oferecer à companhia li<strong>de</strong>rança <strong>de</strong> três, quatro ou cinco anos sobre a competição;f) O crescimento do número <strong>de</strong> trabalhos científicos com uma validação empíricasignificativa possui a boa chance <strong>de</strong> acelerar o processo <strong>de</strong> formação da Engenharia <strong>de</strong>Software como ciência. As i<strong>de</strong>ias duvidosas serão rejeitadas mais rapidamente e ospesquisadores po<strong>de</strong>rão concentrar-se nas abordagens promissoras;g) A tecnologia vem se modificando rapidamente. As mudanças sempre trazem oueliminam as suposições. Os pesquisadores <strong>de</strong>vem então antecipar as mudanças nassuposições e aplicar os experimentos para explorar as consequências <strong>de</strong>ssas mudanças.Já Travassos, Gurov e Amaral (2002) dizem que os principais objetivos para a execução <strong>de</strong>experimentos na área <strong>de</strong> Engenharia <strong>de</strong> Software, com respeito a produtos, processos,recursos, mo<strong>de</strong>los, teorias, entre outros, são:18


a) Caracterização: “o que está acontecendo?”;b) Avaliação: “quão bom é isto?”;c) Previsão: “posso estimar algo no futuro?”;d) Controle: “posso manipular o evento?”;e) Melhoria: “posso melhorar o evento?”.Os principais tipos <strong>de</strong> experimentos são <strong>de</strong>scritos na próxima seção, no intuito <strong>de</strong> estudarqual é mais aplicável em <strong>de</strong>terminada situação experimental.2.2.2 Tipos <strong>de</strong> ExperimentosExistem atualmente inúmeros tipos <strong>de</strong> classificação dos experimentos. Acredita-se queesse gran<strong>de</strong> número é <strong>de</strong>vido ao fato <strong>de</strong> que a experimentação ainda é uma abordagem novana área <strong>de</strong> Engenharia <strong>de</strong> Software. Um tipo <strong>de</strong> experimento é mais apropriado para<strong>de</strong>terminada situação <strong>de</strong> acordo com, por exemplo, os objetivos do estudo, ou os resultadosfinais esperados.A princípio, <strong>de</strong>stacam-se três estratégias experimentais, as quais po<strong>de</strong>m ser diferenciadas<strong>de</strong> acordo com o controle <strong>de</strong> execução, o controle <strong>de</strong> medição, o custo <strong>de</strong> investigação e afacilida<strong>de</strong> <strong>de</strong> repetição. São elas: survey, estudo <strong>de</strong> caso e experimento. Uma comparaçãoentre as estratégias se encontra na Tabela 2.2.Tabela 2.2: Comparação das estratégias experimentais. (Travassos, Gurov e Amaral, 2002)Fator Survey Estudo <strong>de</strong> caso ExperimentoO controle da execução Nenhum Nenhum TemO controle da medição Nenhum Tem TemO controle da investigação Baixo Médio AltoFacilida<strong>de</strong> da repetição Alta Baixa AltoCusto Baixo Médio AltoO survey é uma pesquisa conduzida quando algumas técnicas ou ferramentas já tenhamsido utilizadas. O principal meio para coletar as informações, sejam elas qualitativas ouquantitativas, é o questionário. Essa estratégia experimental possui os seguintes objetivos:<strong>de</strong>scritivo, explanatório e explorativo.O experimento normalmente é realizado em laboratório, oferecendo o maior nível <strong>de</strong>controle. O principal objetivo <strong>de</strong>ssa estratégia é manipular uma ou mais variáveis e manter asoutras fixas, medindo o efeito do resultado. Geralmente os experimentos são utilizados para19


confirmar teorias ou validar medidas. Esses experimentos po<strong>de</strong>m ser in-vitro (sob condições<strong>de</strong> laboratório) ou in-vivo (sob condições normais).Já o estudo <strong>de</strong> caso, que será o tipo <strong>de</strong> experimento utilizado na proposta do trabalho, éempregado para monitorar os projetos, ativida<strong>de</strong>s e atribuições. Essa estratégia tem comoobjetivo observar um atributo específico e estabelecer o relacionamento entre atributosdiferentes. O nível <strong>de</strong> controle em um estudo <strong>de</strong> caso é baixo, porém, <strong>de</strong> maneira contrária aosurvey, o estudo <strong>de</strong> caso possui o controle sobre a medição das variáveis do experimento.Na seção a seguir, será estudada uma metodologia <strong>de</strong> experimentação, o Paradigma daMelhoria da Qualida<strong>de</strong> (QIP), e uma abordagem relacionada, chamada Goal/Question/Metric(GQM).2.2.3 Metodologia e ExperimentaçãoCom o propósito <strong>de</strong> que um experimento forneça resultados válidos, o mesmo <strong>de</strong>ve serorganizado e controlado ou, pelo menos, acompanhado. Um bom exemplo <strong>de</strong> metodologia <strong>de</strong>experimentação avançada é o Paradigma da Melhoria da Qualida<strong>de</strong> (Quality ImprovementParadigm – QIP) (Basili, Cal<strong>de</strong>ira e Rombach, 1994). Essa metodologia possui seis passos,resultando em um ciclo da melhoria do processo completo. O ponto forte da metodologia estána melhoria contínua do processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software. Os seis passos são<strong>de</strong>scritos a seguir:a) 1º Passo: caracterização do processo <strong>de</strong> negócio necessária para a compreensão doambiente e a <strong>de</strong>finição dos objetivos básicos;b) 2º Passo: os objetivos quantitativos são estabelecidos com o propósito <strong>de</strong> <strong>de</strong>monstraras expectativas da experimentação;c) 3º Passo: com base nos passos anteriores, o processo <strong>de</strong> melhoria apropriado éescolhido, tomando em consi<strong>de</strong>ração a consistência entre os objetivos;d) 4º Passo: o processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software oferece o feedback do projetoque representa a informação recolhida;e) 5º Passo: a informação do passo anterior serve como base para análise, <strong>de</strong>s<strong>de</strong> aavaliação das práticas atuais, a <strong>de</strong>terminação <strong>de</strong> problemas, até a proposição damelhoria futura;f) 6º Passo: toda informação relevante está empacotada para utilização futura.20


Uma abordagem ligada ao QIP e que será utilizada neste trabalho, é aGoal/Question/Metric (GQM) (Solingen e Berghout, 1999), que é uma abordagem orientada ametas e utilizada em Engenharia <strong>de</strong> Software para a medição <strong>de</strong> produtos e processos <strong>de</strong>software. O GQM é baseado no requisito <strong>de</strong> que toda a coleta dos dados <strong>de</strong>ve ser baseadanum fundamento lógico, em um objetivo ou meta, que é documentado explicitamente.O paradigma GQM se apresenta como um mecanismo muito bom para planejamento,<strong>de</strong>finição <strong>de</strong> objetivos da medição e avaliação. O objetivo do método GQM é caracterizar efornecer um melhor entendimento dos processos, produtos, recursos e ambientes e, assim,estabelecer bases para comparação com trabalhos futuros (Basili, Cal<strong>de</strong>ira e Rombach, 1994).O GQM se baseia na suposição <strong>de</strong> que para se medir <strong>de</strong> maneira eficaz, alguns objetivos<strong>de</strong>vem ser estabelecidos para que estes sirvam <strong>de</strong> rota para o estabelecimento <strong>de</strong> questões queorientarão a <strong>de</strong>finição <strong>de</strong> métricas em um contexto particular. É muito importante para osucesso da aplicação do GQM que os objetivos estejam bem traçados, pois somente assim aescolha das métricas e posterior avaliação dos dados serão bem sucedidas (Gomes, Oliveira eRocha, 2001).O primeiro passo nessa abordagem é <strong>de</strong>finir metas (objetivos) a serem alcançadas noprograma <strong>de</strong> medição. Após a i<strong>de</strong>ntificação das metas, um plano GQM é elaborado para cadameta selecionada. O plano consiste, para cada meta, em um conjunto <strong>de</strong> questõesquantificáveis que especificam as medidas a<strong>de</strong>quadas para sua avaliação (Basili e Rombach,1988). As questões i<strong>de</strong>ntificam a informação necessária para atingir a meta e as medidas<strong>de</strong>finem operacionalmente os dados a serem coletados para respon<strong>de</strong>r as perguntas. As metasGQM <strong>de</strong>vem ser formuladas da forma apresentada na Tabela 2.3.Tabela 2.3: Estrutura para <strong>de</strong>finição das metas GQM. (Gresse e Hoisl, 1995)Analisar o... → I<strong>de</strong>ntifica o que será analisado. Ex: processo <strong>de</strong>software, projeto, documento, sistema, etc.com a finalida<strong>de</strong> <strong>de</strong>... → Porque o objeto será analisado. Ex: avaliar,melhorar, monitorar, controlar, etc.com respeito a... → I<strong>de</strong>ntifica o atributo que será analisado. Ex:confiabilida<strong>de</strong>, custos, correção, etc.do ponto <strong>de</strong> vista <strong>de</strong>... → I<strong>de</strong>ntifica quem utilizará as métricas coletadas. Ex:equipe <strong>de</strong> <strong>de</strong>senvolvimento, gerente <strong>de</strong> projeto, etc.no contexto <strong>de</strong>... → I<strong>de</strong>ntifica o ambiente on<strong>de</strong> o programa <strong>de</strong> mediçãoestá localizado. Ex: projeto A, <strong>de</strong>partamento X.21


Sendo o GQM orientado a objetivos ou metas, po<strong>de</strong>-se enumerar seus passos nos trêsníveis <strong>de</strong> realização:a) Conceitual: <strong>de</strong>finição do escopo da avaliação, ou seja, do objeto a ser medido(processos, produtos ou recursos);b) Operacional: <strong>de</strong>finição <strong>de</strong> um conjunto <strong>de</strong> questões que auxiliem na caracterização doobjeto <strong>de</strong> estudo e como ele <strong>de</strong>ve ser enxergado <strong>de</strong>ntro do contexto da qualida<strong>de</strong>;c) Quantitativo: <strong>de</strong>finição <strong>de</strong> um conjunto <strong>de</strong> dados a serem obtidos, relacionado a cadauma das questões <strong>de</strong>finidas anteriormente, a fim <strong>de</strong> respondê-las <strong>de</strong> forma quantitativa,ou seja, as métricas.Dessa forma, Solingen e Berghout (1999) <strong>de</strong>finem as fases do método GQM da seguinteforma (Figura 2.2):a) Planejamento - nesta fase são realizadas as seguintes ativida<strong>de</strong>s: relacionar a equipeque participará do GQM, selecionar a área que se <strong>de</strong>seja melhorar, apontar os projetosque farão parte da aplicação do método e treinamento da equipe nos conceitosnecessários para a aplicação do GQM;b) Definição - nesta fase <strong>de</strong>vem-se <strong>de</strong>finir os objetivos do GQM, produzir ou adaptarmo<strong>de</strong>los <strong>de</strong> software, <strong>de</strong>finir as questões a serem respondidas, <strong>de</strong>finir e refinar asmétricas, além <strong>de</strong> promover a revisão dos planos do GQM;c) Coleta <strong>de</strong> Dados - nesta fase os dados são coletados, com base nas métricas <strong>de</strong>finidas;d) Interpretação - os dados coletados anteriormente são absorvidos e conclusões acercados mesmos são extraídas pela equipe <strong>de</strong> GQM. Com base neles as questões <strong>de</strong>finidaspo<strong>de</strong>m ser respondidas.Figura 2.2: O processo principal da abordagem GQM. (Solingen e Berghout, 1999)22


2.3 Consi<strong>de</strong>rações FinaisNeste capítulo, apresentou-se uma breve retrospectiva dos principais conceitos daEngenharia <strong>de</strong> Requisitos, subárea da Engenharia <strong>de</strong> Software, e foram introduzidas algumas<strong>de</strong>finições a respeito da Engenharia <strong>de</strong> Software Experimental.Primeiramente uma seção introdutória apresentou as principais <strong>de</strong>finições <strong>de</strong> Engenharia<strong>de</strong> Requisitos, resumindo-se em uma disciplina que está inserida no contexto da Engenharia<strong>de</strong> Software e está relacionada com o estudo da elicitação, análise, documentação, validação egerenciamento <strong>de</strong> requisitos.Logo após foi apresentada a Classificação <strong>de</strong> Requisitos, on<strong>de</strong> foram estudados osRequisitos Funcionais, Requisitos Não-Funcionais e Requisitos Organizacionais.Em seguida, foi apresentado o Processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos, citando as principaisativida<strong>de</strong>s envolvidas.Posteriormente, foram apresentados alguns problemas atuais na área <strong>de</strong> Engenharia <strong>de</strong>Requisitos, tais como a falta <strong>de</strong> consi<strong>de</strong>ração dos aspectos organizacionais durante a fase <strong>de</strong>coleta e especificação <strong>de</strong> requisitos <strong>de</strong> software.Com relação à Engenharia <strong>de</strong> Software Experimental, po<strong>de</strong>-se dizer que a experimentaçãoé uma disciplina muito importante para a Engenharia <strong>de</strong> Software, havendo uma compreensãocada vez maior na comunida<strong>de</strong> <strong>de</strong> ES que os estudos empíricos são necessários para avaliar,<strong>de</strong>senvolver ou melhorar processos, métodos e ferramentas para <strong>de</strong>senvolvimento <strong>de</strong> softwaree manutenção dos mesmos.De forma resumida, tem-se que os principais objetivos da experimentação, com respeito aprodutos, processos, recursos, mo<strong>de</strong>los, teorias, entre outros, são: caracterização, avaliação,previsão, controle e melhoria.De acordo com a literatura, <strong>de</strong>stacam-se três principais tipos <strong>de</strong> experimentos, os quaispo<strong>de</strong>m ser diferenciados <strong>de</strong> acordo com o controle <strong>de</strong> execução, o controle <strong>de</strong> medição, ocusto <strong>de</strong> investigação e a facilida<strong>de</strong> <strong>de</strong> repetição. São eles: survey, estudo <strong>de</strong> caso (utilizado napresente proposta) e experimento.A metodologia <strong>de</strong> experimentação GQM (Goal/Question/Metric), que será utilizada nestetrabalho, é uma abordagem orientada a metas e utilizada em Engenharia <strong>de</strong> Software para amedição <strong>de</strong> produtos e processos <strong>de</strong> software. Essa abordagem apresenta um mecanismomuito bom para planejamento, <strong>de</strong>finição <strong>de</strong> objetivos da medição e avaliação.23


No próximo capítulo são apresentadas técnicas para a mo<strong>de</strong>lagem <strong>de</strong> requisitosorganizacionais. A mo<strong>de</strong>lagem serve para enten<strong>de</strong>r melhor a organização e os seus requisitose permitir a construção <strong>de</strong> sistema <strong>de</strong> software com melhor qualida<strong>de</strong>. Assim, serão <strong>de</strong>scritasalgumas das principais técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional, tais como: técnica EKD,notação BPMN, técnica i*, Fluxos <strong>de</strong> Trabalho (workflows), Regras <strong>de</strong> Negócio, Maps, Casos<strong>de</strong> Uso <strong>de</strong> Negócio. A compreensão das técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional apresentadasno Capítulo 3 é essencial para a elaboração da nossa proposta.24


Capítulo 3Mo<strong>de</strong>lagem <strong>Organizacional</strong>O presente capítulo fornece uma visão geral a respeito da importância da análise, elicitaçãoe mo<strong>de</strong>lagem <strong>de</strong> requisitos organizacionais no contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software. Estavisão geral é apresentada na Seção introdutória 3.1. A Seção 3.2 aborda a técnica EKD,apresentando suas principais características. Da mesma forma, a Seção 3.3 estuda a notaçãoBPMN, seguida pela técnica i*, na Seção 3.4. Na Seção 3.5, o assunto estudado é o mo<strong>de</strong>lo <strong>de</strong>Fluxos <strong>de</strong> Trabalho (workflows). Já na Seção 3.6, o foco é as Regras <strong>de</strong> Negócio, seguida pelatécnica Maps (Seção 3.7) e os Casos <strong>de</strong> Uso <strong>de</strong> Negócio (Seção 3.8). Uma análise crítica dastécnicas estudadas é realizada na Seção 3.9. Por fim, a Seção 3.10 é <strong>de</strong>stinada àsconsi<strong>de</strong>rações finais.3.1 IntroduçãoA importância da informação para as organizações é universalmente aceita, constituindo,senão o mais importante, pelo menos um dos recursos cuja gestão e aproveitamento estãodiretamente relacionados com o sucesso <strong>de</strong>sejado. É fato comprovado que os processos <strong>de</strong>negócios sempre estarão presentes sob a estrutura organizacional das empresas. A principaldiferença entre uma empresa <strong>de</strong> sucesso e uma empresa com sérios problemas, na maioria doscasos, po<strong>de</strong> estar relacionada ao gerenciamento dos processos <strong>de</strong> negócios (Trova, 2004).O objetivo principal <strong>de</strong> um sistema <strong>de</strong> informação é automatizar tarefas ou ativida<strong>de</strong>s <strong>de</strong>um processo <strong>de</strong> negócio, permitindo que os atores da organização atinjam os seus objetivosespecíficos e, consequentemente, as metas gerais da empresa. Esta é a razão pela qual oestudo do ambiente organizacional em que o software será introduzido tem sido reconhecidocomo parte fundamental da Engenharia <strong>de</strong> Requisitos (Anton, 1996).25


Essa análise <strong>de</strong>ve ser conduzida antes da aquisição do sistema, pois o resultado terá reflexoem todo o processo <strong>de</strong> implantação, tendo consequências no tempo <strong>de</strong> duração daimplantação, na contratação <strong>de</strong> consultoria externa, nas customizações a serem realizadas, naprofundida<strong>de</strong> da mudança, no treinamento dos usuários e, principalmente, no custo final doprojeto (Trova, 2004).Neste contexto, existem pesquisas que <strong>de</strong>stacam a importância do uso das metas donegócio para impulsionar o <strong>de</strong>senvolvimento <strong>de</strong> um produto <strong>de</strong> software (Estrada et al.,2002).Muitas técnicas tradicionalmente aplicadas no <strong>de</strong>senvolvimento <strong>de</strong> software tratam <strong>de</strong>aspectos relacionados à funcionalida<strong>de</strong> do sistema, à <strong>de</strong>scrição <strong>de</strong> ativida<strong>de</strong>s e entida<strong>de</strong>s, àsentradas que <strong>de</strong>verão ser transformadas e às saídas que <strong>de</strong>verão ser produzidas. Porém, nãoconsi<strong>de</strong>ram aspectos mais amplos como: os objetivos da organização, as regras <strong>de</strong> negócio, asrestrições, os aspectos não funcionais relacionados à qualida<strong>de</strong>, à confiabilida<strong>de</strong> e àusabilida<strong>de</strong> (Pádua, Cazarini e Inamasu, 2004).De acordo com Alencar (1999), essas técnicas não ajudam, portanto, a buscar soluçõesalternativas para problemas da organização, não adicionam valor ao negócio e, na maioria dasvezes, os processos manuais são automatizados sem nenhuma modificação. Esses mo<strong>de</strong>lostêm como objetivo a <strong>de</strong>scrição <strong>de</strong> sistemas técnicos, em vez <strong>de</strong> fornecer <strong>de</strong>scrições mais ricassobre as organizações sócio humanas.Dessa forma, o que se tem são técnicas capazes <strong>de</strong> obter requisitos funcionais <strong>de</strong> umsistema, <strong>de</strong> <strong>de</strong>screver ativida<strong>de</strong>s e entida<strong>de</strong>s, porém, sem consi<strong>de</strong>rar aspectos importantes daorganização, como os seus objetivos, suas estratégias, sua política, suas restrições, etc. Assim,faz-se necessário uma abordagem mais rica, que facilite os esforços da Engenharia <strong>de</strong>Requisitos para obter uma melhor compreensão sobre os relacionamentos da organizaçãoentre os vários atores do sistema, e enten<strong>de</strong>r as razões envolvidas nos processos <strong>de</strong> <strong>de</strong>cisões.O analista <strong>de</strong> sistemas tem habilida<strong>de</strong> para <strong>de</strong>screver a empresa em termos <strong>de</strong> estrutura <strong>de</strong>dados que esta utiliza e a organização das funções que realiza, mas ten<strong>de</strong>m a negligenciar asrestrições com as quais a organização opera (BRG, 1997). Os requisitos organizacionais não<strong>de</strong>vem ser consi<strong>de</strong>rados como uma simples <strong>de</strong>scrição da funcionalida<strong>de</strong> do sistema, poistratam do domínio no qual o sistema está inserido e das restrições que po<strong>de</strong>m existir noambiente, no sistema e no <strong>de</strong>senvolvimento, diminuindo ambiguida<strong>de</strong>s e incertezas.26


Para garantir que os sistemas cumpram com sua finalida<strong>de</strong>, os <strong>de</strong>senvolvedores <strong>de</strong>vempossuir uma compreensão mais aprofundada sobre a organização. O mo<strong>de</strong>lo organizacional éuma representação da estrutura, das ativida<strong>de</strong>s, dos processos, das informações, dos recursos,do pessoal, do comportamento, dos objetivos e das restrições das empresas comerciais,governamentais ou <strong>de</strong> outra natureza (Pádua, Cazarini e Inamasu, 2004).Segundo Santan<strong>de</strong>r e Castro (2000), a i<strong>de</strong>ia é subsidiar os engenheiros <strong>de</strong> requisitos commetas estratégicas <strong>de</strong> negócios na organização as quais <strong>de</strong>vem ser analisadas e pon<strong>de</strong>radas nomomento do <strong>de</strong>senvolvimento <strong>de</strong> um sistema computacional. Além disso, também permitirque engenheiros <strong>de</strong> requisitos, a partir <strong>de</strong> uma observação mais <strong>de</strong>talhada dos mo<strong>de</strong>losorganizacionais, possam optar pela melhor alternativa para o <strong>de</strong>senvolvimento do software.Para Bubenko Jr. e Wangler (1993), um bom sistema <strong>de</strong> informação <strong>de</strong>ve aten<strong>de</strong>r àsnecessida<strong>de</strong>s do negócio, caso contrário, o sistema estará impedindo o <strong>de</strong>senvolvimento donegócio. Este é o motivo do início <strong>de</strong> um novo paradigma, que muda da engenharia dainformação orientada à tecnologia e abordagens orientadas a objetos, para estruturas quefocam em mo<strong>de</strong>lagem <strong>de</strong> regras do negócio.Segundo Alencar (1999), o principal obstáculo à captura correta dos requisitos <strong>de</strong> umsistema tem sido a dificulda<strong>de</strong> em se obter uma compreensão mais aprofundada do domínioda aplicação. Neste contexto, a mo<strong>de</strong>lagem organizacional facilita a compreensão doambiente empresarial e é reconhecida como ativida<strong>de</strong> valiosa pela Engenharia <strong>de</strong> Requisitos.Para a autora, a mo<strong>de</strong>lagem organizacional possui o objetivo <strong>de</strong>:a) fornecer um objeto, que seja uma representação compartilhável e reusável da ca<strong>de</strong>ia <strong>de</strong>fornecimento <strong>de</strong> informação e conhecimento;b) suportar tarefas da ca<strong>de</strong>ia <strong>de</strong> fornecimento, pela habilitação <strong>de</strong> respostas aquestionamentos, que não estão explicitamente representados no mo<strong>de</strong>lo;c) <strong>de</strong>finir os objetos <strong>de</strong> maneira precisa, <strong>de</strong> forma que sejam consistentemente aplicados,por meio dos domínios e interpretados pelos usuários;d) suportar visualização do mo<strong>de</strong>lo, <strong>de</strong> forma intuitiva, simples e consistente.Existem diversas técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional. Algumas <strong>de</strong>las são realizadascom múltiplas visões, analisando metas e objetivos da organização (Bubenko Jr. e Kirikova,1994). A organização, segundo os autores, é representada por meio <strong>de</strong> mo<strong>de</strong>los, que facilitama realização <strong>de</strong> especificações <strong>de</strong> requisitos mais próximas à realida<strong>de</strong> da organização.27


Nas seções seguintes, serão apresentadas algumas técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional,suas características, qualida<strong>de</strong>s e restrições.3.2 A Técnica EKDSegundo Rolland, Nurcan e Grosz (2000), o EKD (Enterprise Knowledge Development) éuma metodologia que fornece uma forma sistemática e controlada <strong>de</strong> analisar, enten<strong>de</strong>r,<strong>de</strong>senvolver e documentar uma organização e seus componentes, usando a mo<strong>de</strong>lagemorganizacional. Os autores enfatizam que o objetivo ao se usar o EKD é prover uma <strong>de</strong>scriçãoclara e não ambígua <strong>de</strong>: como a organização funciona atualmente; quais são os requisitos e asrazões para a mudança; quais alternativas <strong>de</strong>veriam ser criadas para encontrar esses requisitos;quais são os critérios e argumentos para avaliação <strong>de</strong>ssas alternativas.O mo<strong>de</strong>lo organizacional contém um número <strong>de</strong> submo<strong>de</strong>los inter-relacionados. Cada umrepresenta algum aspecto da organização. Os submo<strong>de</strong>los são: Mo<strong>de</strong>lo <strong>de</strong> Objetivos (MO),Mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio (MRN), Mo<strong>de</strong>lo <strong>de</strong> Conceitos (MC), Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong>Negócio (MPN), Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos (MAR), e Mo<strong>de</strong>lo <strong>de</strong> Requisitos eComponentes Técnicos (MRCT) (Bubenko Jr., Stirna e Brash, 1998).Figura 3.1: Submo<strong>de</strong>los que compõem o mo<strong>de</strong>lo organizacional. (Bubenko Jr., Stirna e Brash, 1998)28


Cada um <strong>de</strong>sses submo<strong>de</strong>los inclui um número <strong>de</strong> componentes que <strong>de</strong>screve diferentesaspectos da organização. Por exemplo, o Mo<strong>de</strong>lo <strong>de</strong> Objetivos contém objetivos do negócio,problemas do negócio que são divididos em tratamento, fraquezas, causas, oportunida<strong>de</strong>s donegócio e restrições. Os componentes dos submo<strong>de</strong>los são relacionados entre si(relacionamento intramo<strong>de</strong>lo) e com componentes <strong>de</strong> outros submo<strong>de</strong>los (relacionamentointermo<strong>de</strong>los). A Figura 3.1 mostra o relacionamento entre mo<strong>de</strong>los. Cada um <strong>de</strong>ssessubmo<strong>de</strong>los será <strong>de</strong>scrito e exemplificado nas próximas seções.3.2.1 O Mo<strong>de</strong>lo <strong>de</strong> Objetivos (MO)O Mo<strong>de</strong>lo <strong>de</strong> Objetivos é usado para <strong>de</strong>screver os objetivos da organização e todas asquestões associadas para atingi-los. O Mo<strong>de</strong>lo <strong>de</strong> Objetivos <strong>de</strong>screve essencialmente a razão,ou a motivação para ativida<strong>de</strong>s e entida<strong>de</strong>s <strong>de</strong> outros submo<strong>de</strong>los. As entida<strong>de</strong>s <strong>de</strong>sse mo<strong>de</strong>losão relacionadas à organização e à sua razão <strong>de</strong> existir. Os componentes do mo<strong>de</strong>lo <strong>de</strong>objetivos são:a) Objetivos: são usados para expressar intenções;b) Restrições: são restrições em componentes e ligações existentes na organização;c) Problemas: expressam que a organização está, ou po<strong>de</strong> ficar em um estado não<strong>de</strong>sejado;d) Causas: expressam razões <strong>de</strong> problemas;e) Oportunida<strong>de</strong>s: expressam possíveis situações que não são consi<strong>de</strong>radas objetivos,mas que po<strong>de</strong>m ser vantajosas;f) Pontos Fracos: são situações que não contribuem positivamente para a satisfação dosobjetivos da organização.As ligações <strong>de</strong>ntro do Mo<strong>de</strong>lo <strong>de</strong> Objetivos po<strong>de</strong>m ser:a) Relacionamento <strong>de</strong> Apoio: usado para refinar ou <strong>de</strong>compor objetivos e outroscomponentes;b) Relacionamento <strong>de</strong> Impedimento: usado para mostrar influências negativas entrecomponentes do Mo<strong>de</strong>lo <strong>de</strong> Objetivos, e po<strong>de</strong> ser consi<strong>de</strong>rado como o oposto doRelacionamento <strong>de</strong> Apoio;c) Relacionamento <strong>de</strong> Conflito: usado para <strong>de</strong>finir situações que ao alcançar umobjetivo haverá um conflito com outro.A seguir, um exemplo <strong>de</strong> parte <strong>de</strong> um Mo<strong>de</strong>lo <strong>de</strong> Objetivos <strong>de</strong> uma Biblioteca (Figura 3.2).29


Figura 3.2: Parte <strong>de</strong> um MO <strong>de</strong> uma Biblioteca. (Bubenko Jr., Stirna e Brash, 1998)3.2.2 O Mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio (MRN)O Mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio, <strong>de</strong> acordo com Bubenko Jr., Stirna e Brash (1998), éusado para <strong>de</strong>finir e manter explicitamente regras do negócio formuladas, consistentes com oMo<strong>de</strong>lo <strong>de</strong> Objetivos. Regras do Negócio po<strong>de</strong>m ser vistas como operacionalizações oulimites dos objetivos. Regras do Negócio são regras que controlam a organização no sentido<strong>de</strong> <strong>de</strong>finir e restringir quais ações po<strong>de</strong>m ser executadas em várias situações. Po<strong>de</strong>m sercategorizadas em:a) Regras Derivadas: são expressões que <strong>de</strong>finem componentes <strong>de</strong>rivados da estrutura dainformação em termos <strong>de</strong> entida<strong>de</strong>s que já estão presentes na base <strong>de</strong> informação domo<strong>de</strong>lo da organização.b) Regras <strong>de</strong> Evento-Ação: estão relacionadas com a invocação <strong>de</strong> ativida<strong>de</strong>s.Expressam condições sobre as quais as ativida<strong>de</strong>s <strong>de</strong>vem ser realizadas;30


c) Regras <strong>de</strong> Restrição: estão relacionadas à integrida<strong>de</strong> da informação, à estrutura doscomponentes, ou às ativida<strong>de</strong>s e comportamentos permitidos na organização.Os relacionamentos po<strong>de</strong>m ser do tipo:a) Relacionamento <strong>de</strong> apoio: usado para refinar ou <strong>de</strong>compor regras;b) Relacionamento <strong>de</strong> impedimento: usado para mostrar influências negativas entrecomponentes do Mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio.A seguir, um exemplo <strong>de</strong> parte <strong>de</strong> um Mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio <strong>de</strong> uma Biblioteca(Figura 3.3).Figura 3.3: Parte <strong>de</strong> uma interação entre o MRN e componentes do MO. (Bubenko Jr., Stirna e Brash, 1998)3.2.3 O Mo<strong>de</strong>lo <strong>de</strong> Conceitos (MC)De acordo com Bubenko Jr., Stirna e Brash (1998), o Mo<strong>de</strong>lo <strong>de</strong> Conceitos é utilizadoestritamente para <strong>de</strong>finir “coisas” e “fenômenos” que estão em outros mo<strong>de</strong>los, além <strong>de</strong><strong>de</strong>finir entida<strong>de</strong>s e dados da aplicação em um nível conceitual, servindo como um dicionáriopara os stakehol<strong>de</strong>rs.O Mo<strong>de</strong>lo <strong>de</strong> Conceitos inclui componentes tais como:31


a) Entida<strong>de</strong>: é alguma coisa do domínio <strong>de</strong> interesse e aplicação que <strong>de</strong>ve ser entendida,caracterizada e <strong>de</strong>finida usando relacionamento para outras entida<strong>de</strong>s;b) Atributo: é uma entida<strong>de</strong> usada apenas para caracterizar outra entida<strong>de</strong>;c) Grupos <strong>de</strong> Componentes <strong>de</strong> Mo<strong>de</strong>lo <strong>de</strong> Conceitos: é uma visão <strong>de</strong> uma parte <strong>de</strong> ummo<strong>de</strong>lo <strong>de</strong> conceitos, e inclui um subconjunto <strong>de</strong> entida<strong>de</strong>s do Mo<strong>de</strong>lo <strong>de</strong> Conceitos,relacionamentos e atributos.Os relacionamentos po<strong>de</strong>m ser do tipo:a) Relacionamento binário: é uma relação semântica entre duas entida<strong>de</strong>s;b) Relacionamento ISA: expressa generalização;c) Relacionamento Parte-<strong>de</strong>: expressa agregação.Um exemplo <strong>de</strong> Mo<strong>de</strong>lo <strong>de</strong> Conceitos será mostrado no Capítulo 4, quando o assunto for acomparação das técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional.3.2.4 O Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio (MPN)O Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio <strong>de</strong>stina-se a analisar o processo e fluxo <strong>de</strong> informaçãoe material da organização, on<strong>de</strong> processos po<strong>de</strong>m ser <strong>de</strong>compostos em subprocessos. OMo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio <strong>de</strong>screve as ativida<strong>de</strong>s organizacionais (funções e processosda organização). Os componentes do Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio são (Bubenko Jr.,Stirna e Brash, 1998):a) Processos: uma coleção <strong>de</strong> ativida<strong>de</strong>s que consome entradas e produz saídas em termos<strong>de</strong> informação ou material;b) Processos Externos: coleção <strong>de</strong> ativida<strong>de</strong>s que são localizadas fora do escopo da áreada ativida<strong>de</strong> organizacional;c) Conjunto <strong>de</strong> materiais ou informações: é um conjunto <strong>de</strong> informação ou materialenviado <strong>de</strong> um Processo ou Processo Externo para outro.A seguir, um exemplo <strong>de</strong> processo não <strong>de</strong>composto para verificação do en<strong>de</strong>reço do cliente(Figura 3.4).32


Figura 3.4: O processo <strong>de</strong> verificação do en<strong>de</strong>reço do cliente não <strong>de</strong>composto. (Bubenko Jr., Stirna e Brash,1998)3.5).O próximo exemplo <strong>de</strong>compõe o processo da Figura 3.4 em quatro subprocessos (FiguraFigura 3.5: O processo <strong>de</strong> verificação do en<strong>de</strong>reço do cliente <strong>de</strong>composto. (Bubenko Jr., Stirna e Brash, 1998)3.2.5 O Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos (MAR)O Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos <strong>de</strong>fine que tipo <strong>de</strong> atores e recursos, ou quais atoresindividuais estão envolvidos nas ativida<strong>de</strong>s organizacionais. Esse mo<strong>de</strong>lo <strong>de</strong>screve: comodiferentes atores e recursos são relacionados entre si e como são relacionados com33


componentes do Mo<strong>de</strong>lo <strong>de</strong> Objetivos; <strong>de</strong> que forma os objetivos estão relacionados aosprocessos do Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio. Ator e Recurso po<strong>de</strong>m ser:a) Indivíduos: são pessoas da organização;b) Recursos não humanos: são máquinas ou equipamentos;c) Unida<strong>de</strong>s Organizacionais: representam divisões da organização, como:<strong>de</strong>partamentos, projetos e grupos <strong>de</strong> trabalho;d) Papel: indivíduos e unida<strong>de</strong>s organizacionais po<strong>de</strong>m <strong>de</strong>sempenhar papéis diferentesem contextos diferentes; recursos não humanos po<strong>de</strong>m <strong>de</strong>sempenhar um papel também.Figura 3.6: Exemplo <strong>de</strong> MAR <strong>de</strong> uma Biblioteca. (Bubenko Jr., Stirna e Brash, 1998)Os relacionamentos po<strong>de</strong>m ser do tipo:a) Relação Binária: expressa relação entre dois atores;b) Relação ISA: expressa generalização entre tarefas do Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos;c) Relação Parte-<strong>de</strong>: expressa relação <strong>de</strong> agregação.34


Um exemplo <strong>de</strong> Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos <strong>de</strong> uma Biblioteca po<strong>de</strong> ser visualizado naFigura 3.6.3.2.6 O Mo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes Técnicos (MRCT)O Mo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes Técnicos é uma tentativa inicial <strong>de</strong> se <strong>de</strong>finir asestruturas e proprieda<strong>de</strong>s do sistema <strong>de</strong> informação para apoiar as ativida<strong>de</strong>s do negócio,como <strong>de</strong>finido no Mo<strong>de</strong>lo <strong>de</strong> Processo do Negócio. Primeiramente, é necessário <strong>de</strong>senvolverum conjunto <strong>de</strong> requisitos ou objetivos <strong>de</strong> alto nível para o sistema computacional como umtodo. Baseado nesse conjunto, o sistema <strong>de</strong> informação é estruturado em um número <strong>de</strong>subsistemas ou componentes técnicos. Para cada subsistema, é necessário <strong>de</strong>finir um conjunto<strong>de</strong> objetivos e requisitos que são mais específicos. Esses objetivos e requisitos <strong>de</strong>vem ser<strong>de</strong>rivados e consistentes com os outros submo<strong>de</strong>los <strong>de</strong>scritos anteriormente.De acordo com Bubenko Jr., Stirna e Brash (1998), os componentes presentes no Mo<strong>de</strong>lo<strong>de</strong> Requisitos e Componentes Técnicos são:a) Objetivos do Sistema <strong>de</strong> Informação: usados para expressar o alto nível <strong>de</strong> objetivosem relação ao sistema <strong>de</strong> informação e/ou subsistema ou componentes;b) Problemas do Sistema <strong>de</strong> Informação: usados para expressar estados não <strong>de</strong>sejáveisdo negócio ou do ambiente, ou fatos problemáticos;c) Requisitos do Sistema <strong>de</strong> Informação: expressam requisitos a serem <strong>de</strong>signados paraproprieda<strong>de</strong>s do sistema <strong>de</strong> informação, po<strong>de</strong>ndo ser funcional ou não funcional.A seguir, um exemplo <strong>de</strong> parte <strong>de</strong> um Mo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes Técnicos <strong>de</strong>uma Biblioteca (Figura 3.7).35


Figura 3.7: Exemplo <strong>de</strong> parte <strong>de</strong> um MRCT <strong>de</strong> uma Biblioteca. (Bubenko Jr., Stirna e Brash, 1998)3.3 Business Process Mo<strong>de</strong>ling Notation (BPMN)Mo<strong>de</strong>los <strong>de</strong> processos <strong>de</strong> negócios <strong>de</strong>sempenham um papel fundamental na gestão <strong>de</strong>organizações (Smith e Fingar, 2003), (Hammer e Champy, 1993) e nas empresas <strong>de</strong><strong>de</strong>senvolvimento <strong>de</strong> sistemas <strong>de</strong> informação (Dumas, Aalst e Hofste<strong>de</strong>, 2005). Muitasnotações <strong>de</strong>senvolvidas para a tarefa <strong>de</strong> mo<strong>de</strong>lagem <strong>de</strong> processos <strong>de</strong> negócio têm o seupróprio foco <strong>de</strong> aplicação e público a<strong>de</strong>quado (Bi<strong>de</strong>r e Johannesson, 2002), (Kavakli eLoucopoulos, 1999).Mo<strong>de</strong>los conceituais <strong>de</strong> alto nível proporcionam a compreensão da organização a partir <strong>de</strong>uma perspectiva intencional e social para apoiar o raciocínio durante o <strong>de</strong>senvolvimento (Yu,36


1995a). Em comparação, mo<strong>de</strong>los técnicos <strong>de</strong> baixo nível são especialmente a<strong>de</strong>quados paraaplicações na <strong>de</strong>scrição, execução e simulação <strong>de</strong> processos <strong>de</strong> negócios (Yu, 1995b).Com o objetivo <strong>de</strong> criar padrões e uma arquitetura comum para gerenciamento <strong>de</strong>processos <strong>de</strong> negócio, foi criada a BPMI (Business Process Management Initiative) (BPMI,2010), uma organização sem fins lucrativos, iniciada pela Intalio Inc. em 2000 e que recebeuo suporte <strong>de</strong> gigantes da indústria como a IBM, SAP, BEA, Fujitsu, WebMethods e IDSScheer.Em agosto <strong>de</strong> 2001, um grupo <strong>de</strong> trabalho (Business Process Mo<strong>de</strong>ling Notation WorkingGroup - BPMN-WG) da BPMI.org foi formado por 35 empresas e iniciou os trabalhos paracriar a BPMN, uma Notação <strong>de</strong> Mo<strong>de</strong>lagem <strong>de</strong> Processos <strong>de</strong> Negócio.A versão 1.0 da especificação escrita por Stephen White da IBM surgiu em maio <strong>de</strong> 2004 ese estabeleceu como notação padrão para mo<strong>de</strong>lar processos executáveis <strong>de</strong> negócio. Emjunho <strong>de</strong> 2005, a BPMI anunciou sua junção a OMG (Object Management Group), associaçãosem fins lucrativos que <strong>de</strong>s<strong>de</strong> 1989 <strong>de</strong>senvolve e mantém padrões e especificações, <strong>de</strong>ntreelas, a notação UML.Segundo Koliadis et al. (2007), a BPMN é essencialmente uma técnica orientada amo<strong>de</strong>lagem <strong>de</strong> processos <strong>de</strong> negócio que suporta o controle <strong>de</strong> execução da ativida<strong>de</strong> <strong>de</strong>entida<strong>de</strong>s <strong>de</strong> <strong>de</strong>ntro <strong>de</strong> uma organização através <strong>de</strong> swimlanes (raias). Essa notação tem acapacida<strong>de</strong> <strong>de</strong> mapear diretamente as linguagens <strong>de</strong> execução <strong>de</strong> processo, incluindo XPDL(XML Process Definition Language) (Fischer, 2005) e BPEL (Business Process ExecutionLanguage), <strong>de</strong>finidas em (White, 2004) e (Ouyang et al., 2006).O principal objetivo da BPMN é fornecer uma notação que seja facilmente compreensívelpor todos os usuários <strong>de</strong> negócios, <strong>de</strong>s<strong>de</strong> os analistas <strong>de</strong> negócio até os clientes. Assim, aintenção da BPMN é padronizar a notação para mo<strong>de</strong>lagem <strong>de</strong> processos <strong>de</strong> negócios em facedas muitas notações <strong>de</strong> mo<strong>de</strong>lagem existentes <strong>de</strong> diferentes pontos <strong>de</strong> vista.A BPMN oferece um Diagrama <strong>de</strong> Processos <strong>de</strong> Negócio (Business Process Diagram -BPD), que é um diagrama <strong>de</strong>senvolvido para uso por pessoas que projetam e gerenciamprocessos <strong>de</strong> negócios.3.3.1 Business Process Diagram (BPD)Deve ser enfatizado que um dos condutores para o <strong>de</strong>senvolvimento da BPMN é a criação<strong>de</strong> um mecanismo simples para a criação <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> processos <strong>de</strong> negócios, mas que ao37


mesmo tempo seja capaz <strong>de</strong> lidar com a complexida<strong>de</strong> inerente aos processos <strong>de</strong> negócio. Aabordagem para lidar com essas duas exigências conflitantes foi organizar os aspectosgráficos da notação em categorias específicas. Isto fornece um pequeno conjunto <strong>de</strong>categorias <strong>de</strong> notação, <strong>de</strong> modo que o leitor <strong>de</strong> BPD possa facilmente reconhecer os tiposbásicos <strong>de</strong> elementos e compreen<strong>de</strong>r o diagrama (BPMN, 2010b).A lista dos elementos gráficos em um BPD é apresentada em dois grupos. Primeiro, há alista dos principais elementos que irão apoiar a exigência <strong>de</strong> uma notação simples. Estes sãoos elementos básicos que <strong>de</strong>finem a BPMN. A maioria dos processos <strong>de</strong> negócio é mo<strong>de</strong>lada<strong>de</strong> forma a<strong>de</strong>quada com esses elementos. Por outro lado, há toda a lista <strong>de</strong> elementos,incluindo os elementos do núcleo, que ajudam no <strong>de</strong>senvolvimento <strong>de</strong> uma notação maispo<strong>de</strong>rosa, on<strong>de</strong> se lida com situações <strong>de</strong> mo<strong>de</strong>lagem mais avançadas. Neste trabalho sãoapresentadas apenas as categorias básicas <strong>de</strong> elementos, <strong>de</strong>stacadas a seguir.Objetos <strong>de</strong> Fluxo (Tabela 3.1): são os principais elementos gráficos para <strong>de</strong>finir ocomportamento <strong>de</strong> um processo <strong>de</strong> negócio;Tabela 3.1: Objetos <strong>de</strong> Fluxo. (BPMN, 2010b)Objeto Descrição FiguraEventoAtivida<strong>de</strong> 1,2GatewayÉ algo que acontece durante um processodo negócio. Estes eventos afetam o fluxo doprocesso e tem geralmente uma causa(trigger) ou um impacto (result). Há trêstipos <strong>de</strong> eventos, baseados sobre quandoafetam o fluxo: início (start), intermediário(intermediate) e fim (end).É um termo genérico para um trabalhoexecutado. Os tipos <strong>de</strong> ativida<strong>de</strong>s são:tarefa 1 e subprocesso 2 . O subprocesso édistinguido por uma pequena cruz no centroinferior da figura.É usado para controlar a divergência e aconvergência da sequência <strong>de</strong> um fluxo.Assim, <strong>de</strong>terminará <strong>de</strong>cisões tradicionais,como unir ou dividir trajetos.Nota 1 – Tarefa: a tarefa é a menor unida<strong>de</strong> <strong>de</strong> um processo, geralmente atômica (nãopo<strong>de</strong> ser dividida em mais objetos).38


Nota 2 – Subprocesso: um subprocesso, <strong>de</strong>ntro <strong>de</strong> um BPD, é como uma ativida<strong>de</strong>composta por uma série <strong>de</strong> outras ativida<strong>de</strong>s, formando um novo fluxo; o subprocesso po<strong>de</strong>ser exibido <strong>de</strong> duas formas: “aberta” (Figura 3.8) ou “fechada” (Figura 3.9).Figura 3.8: Exemplo <strong>de</strong> subprocesso <strong>de</strong> forma “fechada”. (Santos, 2010)Figura 3.9: Exemplo <strong>de</strong> subprocesso <strong>de</strong> forma “aberta”. (Santos, 2010)Observação: para representar um subprocesso aberto, foi utilizada a representação gráfica<strong>de</strong> uma ativida<strong>de</strong>, contudo com o <strong>de</strong>senho do novo processo internamente. No caso <strong>de</strong> umsubprocesso aberto, o <strong>de</strong>senho completo <strong>de</strong>verá estar sempre no mesmo pool.Objetos <strong>de</strong> Conexão (Tabela 3.2): são utilizados para conectar os objetos <strong>de</strong> fluxoentrei si ou outras informações;Tabela 3.2: Objetos <strong>de</strong> Conexão. (BPMN, 2010b)Objeto Descrição FiguraFluxo <strong>de</strong>SequênciaFluxo <strong>de</strong>MensagemAssociaçãoÉ usado para mostrar a or<strong>de</strong>m (sequência)com que as ativida<strong>de</strong>s serão executadas emum processo.É usado para mostrar o fluxo dasmensagens entre dois participantesdiferentes que os emitem e recebem.É usada para associar dados, texto e outrosartefatos com os objetos <strong>de</strong> fluxo. Asassociações são usadas para mostrar asentradas e as saídas das ativida<strong>de</strong>s.39


Swimlanes (raias) (Tabela 3.3): funcionam como um mecanismo <strong>de</strong> organização dasativida<strong>de</strong>s em categorias visuais separadas;Tabela 3.3: Swimlanes. (BPMN, 2010b)Objeto Descrição FiguraPoolLaneO pool representa um participante emum processo. Ele po<strong>de</strong> ser usado pararepresentar uma unida<strong>de</strong> funcional.Exemplo: Vendas. Ele atua como umcontainer gráfico para dividir umconjunto <strong>de</strong> ativida<strong>de</strong>s <strong>de</strong> outros pools,geralmente no contexto <strong>de</strong> situações <strong>de</strong>B2B.Lane é uma subdivisão <strong>de</strong>ntro <strong>de</strong> umpool. Usado para organizar ecategorizar as ativida<strong>de</strong>s.Pools são utilizados quando o diagrama envolve duas entida<strong>de</strong>s <strong>de</strong> negócio ouparticipantes que estão separados fisicamente no diagrama. Especifica o "que faz o que"colocando os eventos e os processos em áreas protegidas, chamados <strong>de</strong> pools. A Figura 3.10mostra um exemplo da utilização <strong>de</strong> pools.Figura 3.10: Exemplo <strong>de</strong> utilização <strong>de</strong> pools. (Santos, 2010)40


Os objetos do tipo lanes são utilizados para separar as ativida<strong>de</strong>s associadas para umafunção ou papel específico. Um pool representa uma organização e um lane representatipicamente um <strong>de</strong>partamento <strong>de</strong>ntro <strong>de</strong>ssa organização. A Figura 3.11 mostra um exemplo <strong>de</strong>utilização <strong>de</strong> lanes.Figura 3.11: Exemplo <strong>de</strong> utilização <strong>de</strong> lanes. (Santos, 2010)Artefatos (Tabela 3.4): são usados para fornecer informações adicionais, ilustrando asentradas e as saídas das ativida<strong>de</strong>s no processo.Tabela 3.4: Artefatos. (BPMN, 2010b)Objeto Descrição FiguraObjetos <strong>de</strong>dadosObjeto <strong>de</strong> Dados é consi<strong>de</strong>rado comoArtefato e não como Fluxo <strong>de</strong> Objeto. Elenão afeta o fluxo <strong>de</strong> mensagem e nem ofluxo <strong>de</strong> sequência <strong>de</strong> um processo, masfornece informação sobre o que o processofaz. É utilizado para representardocumentos, como: fatura, nota fiscal,or<strong>de</strong>m <strong>de</strong> serviço, requisição, email e etc.GrupoUm grupo é representado por um retângulo.É utilizado para agrupamento <strong>de</strong> ativida<strong>de</strong>se tarefas.AnotaçõesAs anotações fornecem informaçõesadicionais e comentários para o leitor <strong>de</strong>um diagrama BPMN.41


Um exemplo <strong>de</strong> segmento <strong>de</strong> processo utilizando artefatos po<strong>de</strong> ser visto na Figura 3.12.Figura 3.12: Exemplo <strong>de</strong> segmento <strong>de</strong> processo utilizando artefatos. (Santos, 2010)3.3.2 Tipos <strong>de</strong> submo<strong>de</strong>los BPMNExistem três tipos básicos <strong>de</strong> submo<strong>de</strong>los <strong>de</strong>ntro <strong>de</strong> um mo<strong>de</strong>lo BPMN (2010b):a) Processos Internos (Figura 3.13): são os processos internos a uma organizaçãoespecífica. Definem ativida<strong>de</strong>s que não são geralmente visíveis ao público. O Fluxo <strong>de</strong>Sequência do processo é contido <strong>de</strong>ntro do pool, e não po<strong>de</strong> cruzar os limites do pool.Fluxos <strong>de</strong> Mensagem po<strong>de</strong>m cruzar a fronteira exterior para mostrar as interações queexistem entre os diferentes processos <strong>de</strong> negócio internos;Figura 3.13: Exemplo <strong>de</strong> Processo Interno. (Santos, 2010)42


) Processos abstratos (Figura 3.14): muitas vezes, o processo inclui ativida<strong>de</strong>s que sãorealizadas fora da empresa e não tem-se gerência sobre a execução <strong>de</strong>stas ativida<strong>de</strong>s.Utiliza-se um mo<strong>de</strong>lo abstrato para representar uma “entida<strong>de</strong>” in<strong>de</strong>pen<strong>de</strong>nte, comprocessos próprios, mas que não se po<strong>de</strong> mo<strong>de</strong>lar. No exemplo, o Fornecedor faz obeneficiamento da matéria prima, entretanto, é um processo interno do Fornecedor, oqual não é conhecido, ele <strong>de</strong>ve ser mo<strong>de</strong>lado como um processo abstrato;Figura 3.14: Exemplo <strong>de</strong> Processo Abstrato. (Santos, 2010)c) Processos <strong>de</strong> Colaboração (Figura 3.15): <strong>de</strong>screvem processos B2B (business-tobusiness)e as interações entre duas ou mais entida<strong>de</strong>s <strong>de</strong> negócio. Os diagramasprocessos são geralmente <strong>de</strong> um ponto <strong>de</strong> vista global. No exemplo, o Autorizador faza autorização <strong>de</strong> pagamento por cartão <strong>de</strong> crédito, neste caso este processo interessa aEmpresa 1 (que realiza a venda), logo ele <strong>de</strong>verá ser mo<strong>de</strong>lado explicitamente.Figura 3.15: Exemplo <strong>de</strong> Processo <strong>de</strong> Colaboração. (Santos, 2010)43


3.4 A Técnica i*A técnica i*, proposta em (Yu, 1995a), permite <strong>de</strong>screver aspectos <strong>de</strong> intencionalida<strong>de</strong> emotivações envolvendo atores em um ambiente organizacional. Sendo assim, ela é capaz <strong>de</strong>reconhecer e <strong>de</strong>screver motivações, intenções e raciocínios sobre as características <strong>de</strong> umprocesso, oferecendo uma <strong>de</strong>scrição mais rica, que facilita os esforços da Engenharia <strong>de</strong>Requisitos.Segundo o framework i* (Yu, 1995a), as organizações consistem <strong>de</strong> unida<strong>de</strong>ssemiautônomas chamadas atores, cujo comportamento <strong>de</strong>stes não é totalmente controlável ouprevisível, mas regulamentado por relacionamentos sociais. Esses atores possuem a liberda<strong>de</strong><strong>de</strong> ação, mas <strong>de</strong>pen<strong>de</strong>m um dos outros para alcançarem seus objetivos, executarem tarefas efornecerem recursos.Diferentemente <strong>de</strong> outras técnicas <strong>de</strong> mo<strong>de</strong>lagem, que <strong>de</strong>screvem tipicamente um processoem termos <strong>de</strong> etapas <strong>de</strong> ativida<strong>de</strong>s e fluxos entre entida<strong>de</strong>s, a técnica i* se <strong>de</strong>staca porpreocupar-se com as razões ou motivações que estão associadas a aspectos comportamentaisdo processo.A técnica se baseia na premissa que um entendimento maior do processo po<strong>de</strong> ser obtidoatravés <strong>de</strong> uma visão das intenções e estratégias. Dessa maneira, o ator é a unida<strong>de</strong> central aser mo<strong>de</strong>lada. Um ator intencional não só executa ativida<strong>de</strong>s e produz ou consome entida<strong>de</strong>s,mas tem motivações, intenções e razões associadas a suas ações (Chichinelli, 2002).Segundo Yu (1995a), a técnica i* é utilizada para:a) obter uma melhor compreensão sobre os relacionamentos da organização, entre osvários atores do sistema;b) enten<strong>de</strong>r as razões envolvidas nos processos <strong>de</strong> <strong>de</strong>cisões; ec) ilustrar as várias características <strong>de</strong> mo<strong>de</strong>lagem que po<strong>de</strong>m ser apropriadas à Engenharia<strong>de</strong> Requisitos, principalmente, na fase inicial da especificação dos requisitos (Yu, Bois eMylopoulos, 1995), (Yu, 1997).Para <strong>de</strong>screver o ambiente organizacional, i* propõe dois mo<strong>de</strong>los: o Mo<strong>de</strong>lo <strong>de</strong>Dependências Estratégicas (SD), que <strong>de</strong>screve as relações <strong>de</strong> <strong>de</strong>pendências externas entre osatores da organização, e o Mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas (SR), que <strong>de</strong>screve interesses econceitos dos participantes e as direções que po<strong>de</strong>m seguir. Os dois mo<strong>de</strong>los são <strong>de</strong>scritos aseguir.44


3.4.1 O Mo<strong>de</strong>lo <strong>de</strong> Dependências Estratégicas (SD)O Mo<strong>de</strong>lo <strong>de</strong> Dependência Estratégica é uma re<strong>de</strong> <strong>de</strong> relacionamentos <strong>de</strong> <strong>de</strong>pendênciaentre atores, e é composto por nós e ligações. Os nós representam os atores no ambiente e asligações são as <strong>de</strong>pendências entre os mesmos. Segundo o framework i*, um ator é umaentida<strong>de</strong> que realiza ações para obter objetivos no contexto do ambiente organizacional.Assim, atores <strong>de</strong>pen<strong>de</strong>m uns dos outros para obter objetivos, realizar tarefas, etc. O ator que<strong>de</strong>pen<strong>de</strong> <strong>de</strong> alguma forma <strong>de</strong> outro ator é chamado <strong>de</strong> Depen<strong>de</strong>r, e o ator que satisfaz oDepen<strong>de</strong>r é <strong>de</strong>nominado <strong>de</strong> Depen<strong>de</strong>e. O objeto <strong>de</strong> <strong>de</strong>pendência entre Depen<strong>de</strong>r e Depen<strong>de</strong>e é<strong>de</strong>nominado <strong>de</strong> Dependum. Resumidamente, haverá relacionamentos do tipoDepen<strong>de</strong>r→Dependum→Depen<strong>de</strong>e.Neste mo<strong>de</strong>lo, distinguem-se quatro tipos <strong>de</strong> <strong>de</strong>pendências (Figura 3.16): recursos, tarefas,objetivos, objetivos-soft. As três primeiras <strong>de</strong>pendências são relacionadas à existência <strong>de</strong>intenções, e a quarta é associada com a i<strong>de</strong>ia <strong>de</strong> requisitos não funcionais.Na <strong>de</strong>pendência <strong>de</strong> recurso, o Depen<strong>de</strong>r <strong>de</strong>pen<strong>de</strong> do Depen<strong>de</strong>e em relação àdisponibilida<strong>de</strong> <strong>de</strong> um recurso, seja uma entida<strong>de</strong> física ou <strong>de</strong> uma informação. Recurso,nesse caso, é o produto final <strong>de</strong> alguma ação, em um processo, que estará ou não disponível.Uma <strong>de</strong>pendência <strong>de</strong> recurso po<strong>de</strong> ser vista na Figura 3.18, on<strong>de</strong> o ator “Participante <strong>de</strong>Reunião” <strong>de</strong>pen<strong>de</strong> do ator “Agendador <strong>de</strong> Reunião” para obter o recurso “Data Proposta”.Figura 3.16: Relacionamentos <strong>de</strong> <strong>de</strong>pendência entre atores em i*. (Yu, 1995a)45


Na <strong>de</strong>pendência <strong>de</strong> tarefa, o Depen<strong>de</strong>r <strong>de</strong>pen<strong>de</strong> do Depen<strong>de</strong>e para executar uma ativida<strong>de</strong>,porém é responsabilida<strong>de</strong> do Depen<strong>de</strong>r mostrar o caminho <strong>de</strong> como isto será feito. Ou seja,um agente informa ao outro o que <strong>de</strong>ve ser feito, sem haver preocupação em se informar o“porque” fazer. A <strong>de</strong>scrição <strong>de</strong> uma tarefa em i* não tem por intenção ser uma completaespecificação dos passos necessários à execução <strong>de</strong>ssa tarefa, ela relaciona-se com asativida<strong>de</strong>s a serem realizadas. Na Figura 3.18, o ator “Agendador <strong>de</strong> Reunião” <strong>de</strong>pen<strong>de</strong> doator “Participante <strong>de</strong> Reunião” para executar a tarefa “Entrar Datas Disponíveis”.Na <strong>de</strong>pendência <strong>de</strong> objetivo, o Depen<strong>de</strong>r <strong>de</strong>pen<strong>de</strong> do Depen<strong>de</strong>e para modificar um estadodo mundo, ou seja, um agente <strong>de</strong>pen<strong>de</strong> <strong>de</strong> outro para que uma <strong>de</strong>terminada intenção sua sejasatisfeita, não importando a maneira como a mesma foi alcançada. O Depen<strong>de</strong>e tem comopapel satisfazer/alcançar um objetivo para o Depen<strong>de</strong>r. Por objetivo se enten<strong>de</strong> uma condição(ou estado do mundo) que um ator gostaria <strong>de</strong> alcançar. Tem-se na Figura 3.18 três<strong>de</strong>pendências <strong>de</strong> objetivo, sendo uma <strong>de</strong>las entre o ator “Iniciador <strong>de</strong> Reunião” que <strong>de</strong>pen<strong>de</strong>do ator “Participante Importante” para alcançar o objetivo “Comparecer reunião”.A <strong>de</strong>pendência <strong>de</strong> objetivo-soft, também referenciada como requisito não funcional na ER,é similar à <strong>de</strong>pendência <strong>de</strong> objetivo, exceto pelo fato <strong>de</strong> que a condição <strong>de</strong> sucesso não éprecisamente <strong>de</strong>finida a priori, ou seja, a realização <strong>de</strong> um objetivo-soft é bastante subjetiva eo seu significado inicialmente não é claramente conhecido. Um bom exemplo é citado porAlencar (1999): o Cliente para voltar à Loja espera ser bem atendido, portanto atendimentobom é um objetivo-soft, pois não se consegue <strong>de</strong>finir precisamente o que é ser bem atendido.Na Figura 3.18, uma <strong>de</strong>pendência <strong>de</strong> objetivo-soft é “Assegurado Comparecer Reunião” entreos atores “Iniciador <strong>de</strong> Reunião” e “Participante Importante”.Tem-se nos mo<strong>de</strong>los SD, além das ligações <strong>de</strong> <strong>de</strong>pendência, ligações IS-A, que <strong>de</strong>screvemuma ligação entre atores que caracterizam generalização, na qual um ator herda ocomportamento (neste caso <strong>de</strong>pendências) do ator pai. A notação gráfica, tanto para oselementos, quanto para as ligações em i*, po<strong>de</strong> ser vista na Figura 3.17.46


Figura 3.17: Notação gráfica dos elementos e ligações em i*. (Yu, 1995a)Figura 3.18: Mo<strong>de</strong>lo <strong>de</strong> Dependências Estratégicas para Agendamento <strong>de</strong> Reuniões. (Yu, 1995a)Tendo como base estes elementos <strong>de</strong>finidos para o mo<strong>de</strong>lo <strong>de</strong> SD, tanto as intençõesquanto motivações e objetivos organizacionais po<strong>de</strong>m ser mo<strong>de</strong>lados e alternativas para o<strong>de</strong>senvolvimento <strong>de</strong> sistemas computacionais po<strong>de</strong>m ser avaliadas, optando-se por aquela quemelhor satisfaça os objetivos <strong>de</strong> todos os stakehol<strong>de</strong>rs (Santan<strong>de</strong>r, 2002).A seguir, o Mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas (SR) será <strong>de</strong>scrito resumidamente.47


3.4.2 O Mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas (SR)O mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas (SR) po<strong>de</strong> ser consi<strong>de</strong>rado como um mo<strong>de</strong>locomplementar ao mo<strong>de</strong>lo <strong>de</strong> SD. O mo<strong>de</strong>lo SD fornece um nível <strong>de</strong> abstração, no qual sãomo<strong>de</strong>lados apenas os relacionamento externos entre os atores. Através do mo<strong>de</strong>lo SR, épossível compreen<strong>de</strong>r e mo<strong>de</strong>lar mais <strong>de</strong>talhadamente as razões estratégicas associadas comcada ator e suas <strong>de</strong>pendências, auxiliando assim no processo <strong>de</strong> Engenharia <strong>de</strong> Requisitos(Yu, 1995a). De maneira geral, o mo<strong>de</strong>lo SR é utilizado para:a) <strong>de</strong>screver os interesses, relacionamentos e motivações dos participantes do processo;b) possibilitar a avaliação <strong>de</strong> possíveis alternativas na <strong>de</strong>finição do processo; ec) investigar com mais <strong>de</strong>talhes as razões existentes atrás das <strong>de</strong>pendências entre váriosatores.O mo<strong>de</strong>lo SR também é composto por nós e ligações. Nesse mo<strong>de</strong>lo, os nós têm como baseos tipos <strong>de</strong> Dependum. Os elementos intencionais (objetivos, tarefas, recursos e objetivossoft)aparecem no mo<strong>de</strong>lo SR como elementos internos ligados por elementos meio-fim e<strong>de</strong>composição <strong>de</strong> tarefas, representando explicitamente as razões por <strong>de</strong>trás das <strong>de</strong>pendênciasentre os atores e quais são as alternativas dos processos.Os relacionamentos meio-fim indicam um relacionamento entre um fim – que po<strong>de</strong> ser umobjetivo a ser alcançado, uma tarefa a ser realizada, um recurso a ser produzido, ou umobjetivo-soft a ser satisfeito – e um meio, para se aten<strong>de</strong>r a esse fim. Este caminho ou meiopara obter a meta é geralmente <strong>de</strong>finido em termos <strong>de</strong> tarefas que são necessárias para atingila.Nos relacionamento <strong>de</strong> <strong>de</strong>composição <strong>de</strong> tarefa, uma tarefa é mo<strong>de</strong>lada em termos <strong>de</strong> sua<strong>de</strong>composição em subcomponentes, exprimindo o que <strong>de</strong>ve ser feito para se ter a tarefarealizada. Assim, é possível a <strong>de</strong>composição em unida<strong>de</strong>s menores <strong>de</strong> um nó tarefarepresentando <strong>de</strong> forma mais <strong>de</strong>talhada as razões associadas com a realização da tarefa.No mo<strong>de</strong>lo SR, uma rotina representa um subgrafo incluindo todas as razões, bem como osmeios para se atingir um fim do ponto <strong>de</strong> vista <strong>de</strong> um ator. Através <strong>de</strong>ste mo<strong>de</strong>lo, po<strong>de</strong>-semo<strong>de</strong>lar alternativas (meios) para se obter fins estratégicos para um ator (Santan<strong>de</strong>r, 2002).Com respeito aos relacionamentos que envolvem objetivos-soft, um atributo adicional éutilizado para <strong>de</strong>signar o tipo <strong>de</strong> contribuição relacionada com esses objetivos (Yu, 1995a). Acontribuição e seus respectivos atributos po<strong>de</strong>m ser:a) Positiva (+): o objetivo-soft contribuirá positivamente;48


) Negativa (-): o objetivo-soft contribuirá negativamente;c) Bastante (sup): objetivo-soft contribuirá <strong>de</strong> forma suficiente;d) Não bastante (sub): o objetivo-soft contribuirá <strong>de</strong> forma não suficiente;e) Desconhecida/in<strong>de</strong>finida (?): não se sabe qual será a influência do objetivo-soft emquestão.A seguir, a Figura 3.19 apresenta um exemplo <strong>de</strong> mo<strong>de</strong>lo SR, nesse caso para oAgendamento <strong>de</strong> Reuniões. Um exemplo <strong>de</strong> ligação meio-fim po<strong>de</strong> ser visualizado no ator“Iniciador <strong>de</strong> Reunião” entre o objetivo “Reunião Agendada” e a tarefa “Agendar Reunião”.Um exemplo <strong>de</strong> ligação <strong>de</strong> <strong>de</strong>composição po<strong>de</strong> ser visualizado no ator “Iniciador <strong>de</strong> Reunião”entre a tarefa “Organizar Reunião” e o objetivo-soft “Rápido”.Figura 3.19: Mo<strong>de</strong>lo <strong>de</strong> Razões Estratégicas para Agendamento <strong>de</strong> Reuniões. (Yu, 1995a)Em um caráter amplo, a técnica i* é consi<strong>de</strong>rada <strong>de</strong> fácil entendimento pelos mais variadosstakehol<strong>de</strong>rs. Quanto aos recursos gráficos, os mesmos são apontados como capazes esuficientes para representar as características mais relevantes do ambiente organizacional(Alencar, 1999).No entanto, Santan<strong>de</strong>r (2002) verifica que observando a técnica mais <strong>de</strong>talhadamente, amesma po<strong>de</strong> contribuir e ser utilizada <strong>de</strong> forma mais efetiva no processo <strong>de</strong> Engenharia <strong>de</strong>Requisitos. Para isso, os requisitos organizacionais representados em i* <strong>de</strong>vem serrelacionados aos requisitos funcionais dos sistemas pretendidos. Neste aspecto, o autor49


observa nas <strong>de</strong>pendências do tipo objetivo, recurso, tarefa e objetivo-soft, estabelecidas entreos atores em i*, uma rica fonte <strong>de</strong> informações para <strong>de</strong>screver requisitos funcionais e <strong>de</strong>tectaralguns requisitos não funcionais.3.5 Fluxos <strong>de</strong> Trabalho (workflows)O conceito <strong>de</strong> workflow (WF) foi <strong>de</strong>senvolvido a partir da noção <strong>de</strong> processo em sistemas<strong>de</strong> manufatura e <strong>de</strong> automação <strong>de</strong> escritórios. Segundo a WFMC (Workflow ManagementCoalition) (WFMC, 2010), entida<strong>de</strong> criada em 1993 que visa o estabelecimento e a adoção <strong>de</strong>padrões para a área <strong>de</strong> workflow, um processo é "um conjunto coor<strong>de</strong>nado <strong>de</strong> ativida<strong>de</strong>s(sequenciais ou paralelas) que são interligadas com o objetivo <strong>de</strong> alcançar uma metacomum", sendo ativida<strong>de</strong> conceituada como "uma <strong>de</strong>scrição <strong>de</strong> um fragmento <strong>de</strong> trabalho quecontribui para o cumprimento <strong>de</strong> um processo".Dessa maneira, a WFMC (2010) <strong>de</strong>fine workflow como “a automação total ou parcial <strong>de</strong>um processo <strong>de</strong> negócio, durante a qual documentos, informações e tarefas são passadasentre os participantes do processo”. Sendo assim, um workflow po<strong>de</strong> ser <strong>de</strong>finido comosendo um conjunto <strong>de</strong> ativida<strong>de</strong>s (<strong>de</strong>scrição <strong>de</strong> um fragmento <strong>de</strong> trabalho) processadas aomesmo tempo (ou não) com uma possível especificação <strong>de</strong> controle e fluxo <strong>de</strong> dados entreativida<strong>de</strong>s relacionadas.Segundo Georgakopoulos, Hornick e Sheth (1995), um workflow po<strong>de</strong> <strong>de</strong>screver tarefas <strong>de</strong>processos <strong>de</strong> negócio em um nível conceitual necessário para compreen<strong>de</strong>r, avaliar ereprojetar o processo <strong>de</strong> negócio.Um workflow também <strong>de</strong>fine a or<strong>de</strong>m <strong>de</strong> execução e as condições pelas quais cada tarefa éiniciada e é capaz <strong>de</strong> representar a sincronização das tarefas e o fluxo <strong>de</strong> informações. Alémdisso, o conceito <strong>de</strong> workflow está relacionado com o conceito <strong>de</strong> reengenharia eautomatização <strong>de</strong> processos <strong>de</strong> negócios e <strong>de</strong> informação.Alguns trabalhos, como (Canós, Penadés e Carsí, 1999), afirmam que muitos dosprincípios da Engenharia <strong>de</strong> Software po<strong>de</strong>m ser aplicados ao processo <strong>de</strong> <strong>de</strong>senvolvimento<strong>de</strong> WF. Em particular, técnicas, métodos e ferramentas utilizadas na Engenharia <strong>de</strong> Requisitospo<strong>de</strong>m ser aplicadas na mo<strong>de</strong>lagem do WF, ajudando na construção <strong>de</strong> mo<strong>de</strong>los completos ecorretos.Um sistema <strong>de</strong> gerência <strong>de</strong> workflow, segundo a WFMC (2010), é um software quepermite a <strong>de</strong>finição, criação e gerência da execução <strong>de</strong> workflows, sendo capaz <strong>de</strong> interpretar50


a <strong>de</strong>finição do processo, <strong>de</strong> interagir com os participantes (responsável pela execução parcialou total <strong>de</strong> uma ativida<strong>de</strong>) do workflow e, quando necessário, invocar ferramentas eaplicativos.Atualmente não existe ainda uma classificação consensual para os tipos <strong>de</strong> workflows esistemas <strong>de</strong> gerência <strong>de</strong> workflows. Georgakopoulos, Hornick e Sheth (1995) propõem aseguinte classificação:a) Workflows ad hoc: <strong>de</strong>screvem processos simples on<strong>de</strong> é difícil encontrar um esquemapara a coor<strong>de</strong>nação e cooperação <strong>de</strong> tarefas, on<strong>de</strong> não há um padrão fixo para o fluxo<strong>de</strong> informações entre as pessoas envolvidas. Exemplo: processos <strong>de</strong> escritório,documentação <strong>de</strong> produtos e propostas <strong>de</strong> vendas;b) Workflows administrativos: envolvem ativida<strong>de</strong>s fracamente estruturadas, repetitivas,previsíveis e com regras simples <strong>de</strong> coor<strong>de</strong>nação <strong>de</strong> tarefa. Exemplo: processamento <strong>de</strong>or<strong>de</strong>ns <strong>de</strong> compras e autorização <strong>de</strong> férias e viagens;c) Workflows <strong>de</strong> produção: envolvem ativida<strong>de</strong>s altamente estruturadas que <strong>de</strong>screvemprocessos <strong>de</strong> informação complexos. Normalmente, sua execução exige um alto nível<strong>de</strong> transações que acessam múltiplos sistemas <strong>de</strong> informação. Exemplo: processamento<strong>de</strong> requisição <strong>de</strong> seguros, processamento <strong>de</strong> faturas bancárias e <strong>de</strong> cartão <strong>de</strong> crédito.A Figura 3.20 apresenta a <strong>de</strong>finição <strong>de</strong> um metamo<strong>de</strong>lo <strong>de</strong> WF, o qual está especificadoem notação UML (Booch, Jacobson e Rumbaugh, 1999).Figura 3.20: Metamo<strong>de</strong>lo <strong>de</strong> Workflow. (Penadés, Canós e Sánchez, 2001)51


Os principais elementos do mo<strong>de</strong>lo são:a) Processo: um processo é composto por ativida<strong>de</strong>s e/ou subprocessos e/ou condições <strong>de</strong>transição. O controle <strong>de</strong> fluxo conecta esses elementos e estabelece a or<strong>de</strong>m correta daexecução do processo. Cada processo tem um i<strong>de</strong>ntificador, um nome, uma <strong>de</strong>scrição,uma condição <strong>de</strong> início, uma condição e um estado final;b) Ativida<strong>de</strong>: é qualquer peça atômica <strong>de</strong> trabalho que constitui um passo lógico <strong>de</strong>ntro<strong>de</strong> um processo. Como um processo, cada ativida<strong>de</strong> tem um i<strong>de</strong>ntificador, um nome,uma <strong>de</strong>scrição, uma condição <strong>de</strong> início, uma condição <strong>de</strong> fim, um estado e um conjunto<strong>de</strong> ações específicas associadas. Uma ativida<strong>de</strong> po<strong>de</strong> ser manual ou automática; atoreshumanos executam ativida<strong>de</strong>s manuais (por exemplo, tomando uma <strong>de</strong>cisão), enquantoque as automáticas são executadas por um computador e, normalmente, consistem nainvocação <strong>de</strong> um aplicativo externo;c) Subprocesso: um subprocesso é um processo que faz parte <strong>de</strong> outro processo, isto é,constitui um passo em um processo complexo. Isto permite a introdução <strong>de</strong>modularida<strong>de</strong> em mo<strong>de</strong>los <strong>de</strong> WF;d) Condição <strong>de</strong> Transição: é possível incluir as condições <strong>de</strong> transição a seguir no fluxo<strong>de</strong> controle <strong>de</strong> um processo: junção E; junção OU; divisão E; divisão OU;e) Dados: são todas as informações necessárias para a execução do processo (ou ativida<strong>de</strong><strong>de</strong> entrada/saída ou na avaliação das condições <strong>de</strong> transição). Normalmente, eles sãopersistentes (armazenada em um banco <strong>de</strong> dados). Quando começa uma ativida<strong>de</strong>,consultam-se os dados <strong>de</strong> entrada a partir do repositório; quando a ativida<strong>de</strong> termina,ele armazena os dados <strong>de</strong> saída no mesmo repositório;f) Ator: representa a participação humana no WF.A Figura 3.21 mostra um exemplo <strong>de</strong> workflow que representa um sistema <strong>de</strong> suporte “online”para usuários. Este workflow, como po<strong>de</strong> ser visto, executa acesso a bases <strong>de</strong> dados,armazenando os dados gerados em uma ativida<strong>de</strong> para o uso nas ativida<strong>de</strong>s seguintes.52


Figura 3.21: Exemplo <strong>de</strong> Workflow representando um sistema <strong>de</strong> atendimento on-line. (Duarte, 2010)Um dos maiores problemas da mo<strong>de</strong>lagem <strong>de</strong> sistemas <strong>de</strong> workflow é o fato quepraticamente cada sistema <strong>de</strong> gerência <strong>de</strong> workflow utiliza sua própria técnica <strong>de</strong> mo<strong>de</strong>lagem.Porém, a introdução da BPMN nesse contexto objetiva sanar essa problemática, pois trata-se<strong>de</strong> uma notação gráfica padronizada para <strong>de</strong>senhar processos <strong>de</strong> workflow. Antes dosurgimento da BPMN, várias formas <strong>de</strong> mo<strong>de</strong>lagens eram encontradas na literatura e nossoftwares. Por isso a necessida<strong>de</strong> <strong>de</strong> se ter um padrão <strong>de</strong> mo<strong>de</strong>lagem para os processos <strong>de</strong>negócio. Apoiada pela OMG, a BPMN está cada vez mais se consolidando como um padrão.Percebe-se que a cada dia cresce o número <strong>de</strong> empresas que suportam esse tipo <strong>de</strong> notação.3.6 Regras <strong>de</strong> NegócioAs Regras <strong>de</strong> Negócio são uma forma <strong>de</strong> ajudar a resolver o problema da má <strong>de</strong>finição <strong>de</strong>requisitos, mostrando que elas representam um importante conceito na fase <strong>de</strong> <strong>de</strong>finição <strong>de</strong>requisitos organizacionais, facilitando modificações no sistema <strong>de</strong> informação quando asregras mudam, e proporcionam oportunida<strong>de</strong> para as pessoas do negócio avaliarem aexecução <strong>de</strong> cada processo.Segundo Rosca et al. (1997), regras <strong>de</strong> negócio são uma nova categoria <strong>de</strong> requisitos dosistema que representam <strong>de</strong>cisões sobre como executar o negócio, e são caracterizadas pelaorientação do negócio e sua tendência às mudanças.Leite e Leonardi (1998) enten<strong>de</strong>m regras <strong>de</strong> negócio diferente <strong>de</strong> requisitos. Para osautores, regras <strong>de</strong> negócio são <strong>de</strong>clarações sobre a forma <strong>de</strong> a empresa fazer negócio. Essas53


egras refletem políticas do negócio. Organizações têm políticas para satisfazer os objetivosdo negócio, satisfazer clientes, fazer bom uso dos recursos, e obe<strong>de</strong>cer às leis ou convençõesgerais do negócio. Regras <strong>de</strong> negócio tornam-se requisitos, ou seja, po<strong>de</strong>m ser implementadosem um sistema <strong>de</strong> software como uma forma <strong>de</strong> requisitos <strong>de</strong> software <strong>de</strong>sse sistema.Gottesdiener (1997) afirma que regras <strong>de</strong> negócio po<strong>de</strong>m oferecer muitos benefícios,como:a) rapi<strong>de</strong>z no <strong>de</strong>senvolvimento <strong>de</strong> software;b) melhor qualida<strong>de</strong> dos requisitos;c) facilida<strong>de</strong> <strong>de</strong> mudança;d) balanceamento entre flexibilida<strong>de</strong> e controle centralizado.Ao permitir que regras <strong>de</strong> negócio sejam <strong>de</strong>finidas e gerenciadas separadamente, fazendouma ligação com a Engenharia <strong>de</strong> Software, gerando e mantendo aplicações das regras donegócio, tem-se um excelente potencial para evoluir a qualida<strong>de</strong> do <strong>de</strong>senvolvimento <strong>de</strong>Sistemas <strong>de</strong> Informação (SI).A proprieda<strong>de</strong> essencial <strong>de</strong> regras <strong>de</strong> negócio é que elas são expressas em termos <strong>de</strong> ummo<strong>de</strong>lo organizacional, em vez <strong>de</strong> em termos <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> dados. Isso é <strong>de</strong>vido ao fato queessas regras <strong>de</strong>vem ser capturadas por pessoas orientadas ao negócio, não sendonecessariamente <strong>de</strong>senvolvedores <strong>de</strong> software. Outra importante proprieda<strong>de</strong> <strong>de</strong> regras <strong>de</strong>negócio é que estas mudam frequentemente <strong>de</strong>vido à natureza dos fatores que as influenciam,como: regulamentos governamentais, tendências do mercado, tomada <strong>de</strong> <strong>de</strong>cisão. Mudançasnas regras do negócio necessitam ser apoiadas <strong>de</strong>ntro dos processos <strong>de</strong> negócio para aorganização reagir a essas influências (Rosca e Wild, 1996).3.6.1 Representação <strong>de</strong> Regras <strong>de</strong> NegócioSegundo Herbst (1996), regras <strong>de</strong> negócio po<strong>de</strong>m ser representadas <strong>de</strong> acordo com asregras das bases <strong>de</strong> dados ativas, usando três componentes básicos: Eventos, Condição e Ação(ECA). Alguns estudos <strong>de</strong> caso para extrair regras do negócio foram aplicados em sistemas <strong>de</strong>informação e revelam a necessida<strong>de</strong> da extensão <strong>de</strong>ssa estrutura para ECAA (Evento,Condição, Então-Ação, Senão-Ação). O evento <strong>de</strong>ve ser conhecido quando a regra do negóciotem que ser processada. Na condição é importante saber o que <strong>de</strong>ve ser verificado, o que temque ser feito se caso a condição for verda<strong>de</strong>ira ou falsa. O autor afirma que a estrutura ECAA54


permite especificar regras <strong>de</strong> negócio individuais e a <strong>de</strong>finição <strong>de</strong> processos completos. ParaRosca et al. (1997), ECA tem uma melhor <strong>de</strong>finição <strong>de</strong> semântica operacional.Na pesquisa <strong>de</strong> Herbst (1996) é <strong>de</strong>monstrado um estudo <strong>de</strong> caso <strong>de</strong> uma seguradora. A fim<strong>de</strong> mostrar o escopo e o potencial do uso <strong>de</strong> regras <strong>de</strong> negócio, o autor exemplifica o registro<strong>de</strong> sinistros em nível geral. O processo se inicia quando uma pessoa faz contato com acompanhia <strong>de</strong> seguros, a primeira regra <strong>de</strong> negócio executa uma verificação, se a pessoa é umassegurado e se o assegurado quer informar um sinistro.Regra do Negócio 1: „PESSOA-CONTATA-NOS‟‟ON (chamada telefônica) ou (carta da pessoa)IF (pessoa é um assegurado) e (assegurada relata um sinistro)THEN inicia o registro do sinistrochama evento „SINISTRO DECLARADO‟O processamento da próxima regra leva para o registro provisório <strong>de</strong> sinistro se oassegurado já forneceu todas as informações sobre o sinistro, se não ele recebe um formuláriopara completar.Regra do Negócio 2: „REGISTRO-PROV-SINISTRO‟ON sinistro <strong>de</strong>claradoIF (informação sobre o sinistro foi avaliada)THEN registra sinistro provisoriamentedata-registro := hoje()chama o evento „SINISTRO-REGISTRADO‟ELSE manda formulário para o asseguradochama o evento „FORMULÁRIO DE SINISTRO ENVIADO‟O registro <strong>de</strong> informação incompleta sobre o sinistro é seguido pela checagem preliminarno caso do sinistro ser coberto pela apólice do assegurado. Depen<strong>de</strong>ndo do resultado, opedido do assegurado po<strong>de</strong> ser rejeitado e um formulário é enviado ao assegurado paracompletar as informações.Regra do Negócio 3: „ACEITA-PROV-SINISTRO‟ON sinistro provisório registrado55


IFTHENELSE(sinistro é assegurado pela apólice)aceito sinistro provisoriamenteenvia formulário para o asseguradochama evento „FORM-SINISTRO-ENVIADO‟chama evento „SINISTRO-PROV-ACEITO‟rejeita sinistrochama evento „SINISTRO-REJEITADO‟Herbst (1996) enfatiza que esses exemplos mostram o uso potencial <strong>de</strong> regras <strong>de</strong> negóciopara especificar dinâmicas relevantes nos conceitos <strong>de</strong> gerenciamento <strong>de</strong> workflow ereengenharia <strong>de</strong> processos <strong>de</strong> negócio. A seguir é apresentado um metamo<strong>de</strong>lo no contextodas regras <strong>de</strong> negócio (Figura 3.22). O ambiente consiste <strong>de</strong> três submo<strong>de</strong>los: Mo<strong>de</strong>lo<strong>Organizacional</strong>, <strong>de</strong> Regras <strong>de</strong> Negócio e o <strong>de</strong> Espaço <strong>de</strong> Decisão.Figura 3.22: O ambiente <strong>de</strong> Regras <strong>de</strong> Negócio. (Rosca et al., 1997)O Mo<strong>de</strong>lo <strong>Organizacional</strong> representa o “mundo” on<strong>de</strong> as regras do negócio se aplicam.Isso <strong>de</strong>fine os conceitos <strong>de</strong> domínio sobre quais regras são expressadas. O submo<strong>de</strong>lo Espaço<strong>de</strong> Decisão oferece informações sobre os objetivos organizacionais que compreen<strong>de</strong> a origemdas regras do negócio e captura o raciocínio principal da seleção e última geração <strong>de</strong> regras donegócio.Regras do Negócio ajudam a integrar a dinâmica da organização aos sistemascomputacionais, trazendo gran<strong>de</strong> vantagem competitiva. Porém, essa vantagem só será real seo software se adaptar à dinâmica do ambiente. As regras <strong>de</strong> negócio permitem diminuir adistância tradicional entre os aspectos funcionais dos sistemas e os requisitos organizacionais,permitindo assim, complementar as especificações, apontando estratégias, alternativas eobjetivos a serem seguidos. Essa forma <strong>de</strong> compreen<strong>de</strong>r o domínio do sistema faz com que as56


pessoas do negócio entendam o que o sistema po<strong>de</strong> fazer para melhorar a qualida<strong>de</strong> <strong>de</strong> seusnegócios e rever os processos atuais.3.7 MapsUm Map é um mo<strong>de</strong>lo <strong>de</strong> processo, expresso em termos intencionais. Ele oferece umsistema <strong>de</strong> representação baseado em uma or<strong>de</strong>nação não <strong>de</strong>terminística das intenções(objetivos) e estratégias (Rolland, Prakash e Benjamen, 1999). Um Map permite <strong>de</strong> formasimples, porém expressiva, representar os processos em termos <strong>de</strong> objetivos e estratégias.Engenheiros <strong>de</strong> requisitos utilizam Maps <strong>de</strong>vido à sua fácil compreensão e simplicida<strong>de</strong>(Rolland, 2007). Os usuários são capazes <strong>de</strong> compreen<strong>de</strong>r a técnica Map através <strong>de</strong> conceitossimples e uma mo<strong>de</strong>lagem gráfica <strong>de</strong> fácil entendimento. Consi<strong>de</strong>ra-se que o Map é muito útilpara explorar e mo<strong>de</strong>lar os objetivos e estratégias do sistema pretendido, apesar <strong>de</strong> nãofornecer a compreensão dos “porquês”, que sustentam os requisitos organizacionais dosistema.Map é uma abordagem dirigida a objetivos cuja meta é capturar os objetivos <strong>de</strong> umaempresa ou sistema e <strong>de</strong>terminar as estratégias que possam contribuir para o cumprimento<strong>de</strong>stes objetivos. No contexto da Engenharia <strong>de</strong> Requisitos, Map i<strong>de</strong>ntifica os objetivos <strong>de</strong>negócio, fornecendo uma representação baseada em uma or<strong>de</strong>nação não <strong>de</strong>terminística dasintenções e estratégias. Diagramas Map (MD) consistem em um grafo (chamado Map) cujosnós são os objetivos e as arestas são as estratégias.Um exemplo <strong>de</strong> Map para o processo <strong>de</strong> reserva <strong>de</strong> quarto é mostrado na Figura 3.23. Osnós do grafo i<strong>de</strong>ntificam as diferentes intenções que os stakehol<strong>de</strong>rs po<strong>de</strong>m querer alcançar.As arestas i<strong>de</strong>ntificam as estratégias que po<strong>de</strong>m ser utilizadas para alcançar esses objetivos.Uma aresta que aponta para um <strong>de</strong>terminado nó indica um caminho para alcançar o objetivocorrespon<strong>de</strong>nte, e várias arestas que apontam para o mesmo nó indicam caminhos alternativospara alcançar o mesmo objetivo. Cada Map tem dois objetivos especiais, “Iniciar” e “Parar”,associados ao estado inicial e final, respectivamente. Esses objetivos, assim como qualqueroutro objetivo, po<strong>de</strong>m aparecer apenas uma vez em um <strong>de</strong>terminado Map.A natureza da direção em um grafo Map especifica a relação <strong>de</strong> precedência entre osobjetivos alcançados enquanto o Map for percorrido. Por exemplo, a Figura 3.23 mostra que,a partir do objetivo-fonte “Fazer Reserva <strong>de</strong> Quarto”, existem duas estratégias possíveis para57


alcançar o objetivo-alvo “Realizar Pagamento”: “Por transferência eletrônica” ou “Por cartão<strong>de</strong> crédito”.A agregação <strong>de</strong> um objetivo-fonte, um objetivo-alvo, e uma estratégia, é chamada <strong>de</strong>“Seção”. Seções alternativas fornecem rotas alternativas para o alcance dos objetivos dosstakehol<strong>de</strong>rs. Seções po<strong>de</strong>m ser refinadas a um nível mais <strong>de</strong>talhado em outro Map.A abordagem do Map é consi<strong>de</strong>rada vantajosa sobre as tradicionais técnicas <strong>de</strong> mo<strong>de</strong>lagem<strong>de</strong> objetivos, pois Map consegue capturar a variabilida<strong>de</strong> através da análise <strong>de</strong> requisitos.Enten<strong>de</strong>-se por variabilida<strong>de</strong> a capacida<strong>de</strong> <strong>de</strong> mudar, personalizar ou configurar sistemas <strong>de</strong>softwares <strong>de</strong> acordo com os requisitos do usuário.Figura 3.23: Exemplo <strong>de</strong> Map. (Rolland, 2007)Outra vantagem importante do Map é que essa abordagem incentiva a participação dosstakehol<strong>de</strong>rs e ajuda a resolver problemas <strong>de</strong> comunicação entre as pessoas do negócio e osanalistas <strong>de</strong> sistema. Esses são dois dos problemas atuais na área da Engenharia <strong>de</strong> Requisitos,os quais foram apresentados no Capítulo 2.Alguns estudos propõem a integração das técnicas Map e i*, <strong>de</strong> forma a reduzir a lacunaentre a mo<strong>de</strong>lagem organizacional e a funcional. Além disso, a integrida<strong>de</strong> <strong>de</strong> ambos osmo<strong>de</strong>los pu<strong>de</strong>ram ser melhorados quando analisadas as novas estratégias e objetivos naobservação dos dois mo<strong>de</strong>los. Essa proposta também ajuda a resolver um inconveniente doMap, que é a falta <strong>de</strong> um processo sistemático para construí-los. Na proposta, são gerados eexplorados Maps através <strong>de</strong> mo<strong>de</strong>los i*, on<strong>de</strong> os objetivos mais importantes e as estratégiaspara o Map são <strong>de</strong>correntes dos mo<strong>de</strong>los i *.3.8 Casos <strong>de</strong> Uso <strong>de</strong> NegócioCasos <strong>de</strong> Uso é uma maneira simples e natural <strong>de</strong> i<strong>de</strong>ntificar os processos <strong>de</strong> negócio. Ocliente é um “usuário” da organização, usando a organização por meio do processo <strong>de</strong>negócio. Um Caso <strong>de</strong> Uso <strong>de</strong> Negócio é um conjunto <strong>de</strong> cenários (instâncias), on<strong>de</strong> cadacenário é uma sequência <strong>de</strong> ações feitas pelo negócio que produzem um resultado para um58


ator <strong>de</strong> negócio. Devem focar na interação entre o ator <strong>de</strong> negócio e o processo como onegócio é percebido externamente por quem o utiliza. Portanto, <strong>de</strong>talhes internos que não sãovistos externamente não <strong>de</strong>vem ser mostrados em <strong>de</strong>talhes (Jacobson, Ericson e Jacobson,1994).Do ponto <strong>de</strong> vista da organização, um caso <strong>de</strong> uso <strong>de</strong> negócio está associado aos objetivose resultados organizacionais. Dessa maneira, um caso <strong>de</strong> uso do negócio:a) <strong>de</strong>ve ser iniciado por um ator do negócio, embora haja exceções;b) <strong>de</strong>screve uma funcionalida<strong>de</strong> completa <strong>de</strong> um processo do negócio conforme percebidapor um ator do negócio;c) gera como resultado algo <strong>de</strong> valor tangível para um ator do negócio (usuário);d) expressam os requisitos do negócio.A Figura 3.24 apresenta as notações básicas para <strong>de</strong>screver Casos <strong>de</strong> Uso.Figura 3.24: Notações básicas para Casos <strong>de</strong> Uso em UML. (Santan<strong>de</strong>r, 2002)A seguir, tem-se um exemplo <strong>de</strong> Caso <strong>de</strong> Uso <strong>de</strong> Negócio (Figura 3.25). Nesse exemplo, ocandidato realiza a inscrição para o vestibular.Figura 3.25: Exemplo <strong>de</strong> Caso <strong>de</strong> Uso <strong>de</strong> Negócio.59


A especificação <strong>de</strong> um caso <strong>de</strong> uso do negócio po<strong>de</strong> ser feita através da <strong>de</strong>scrição <strong>de</strong>sequências <strong>de</strong> eventos em formato <strong>de</strong> texto. Deve <strong>de</strong>screver como o ator do negócio e o caso<strong>de</strong> uso interagem, consi<strong>de</strong>rando:a) como e quando o caso <strong>de</strong> uso inicia e termina;b) quando o caso <strong>de</strong> uso interage com um ator envolvido;c) a sequência padrão (cenário <strong>de</strong> sucesso principal);d) as sequências alternativas ou <strong>de</strong> exceções (extensões).Essas extensões caracterizam situações em que existem duas ou mais opções <strong>de</strong>continuida<strong>de</strong> no fluxo <strong>de</strong> uma <strong>de</strong>terminada seção. Dentro do Cenário <strong>de</strong> Sucesso Principal <strong>de</strong>uma seção são indicados os <strong>de</strong>svios para subseções. Cada <strong>de</strong>svio <strong>de</strong>verá ter uma subseçãousando novamente um Cenário <strong>de</strong> Sucesso Principal.A título <strong>de</strong> exemplificação, para o caso <strong>de</strong> uso <strong>de</strong> negócio “Preencher formulário <strong>de</strong>inscrição”, da Figura 3.25, tem-se a seguinte <strong>de</strong>scrição <strong>de</strong>talhada do mesmo, proposta porJacobson (1992):Nome do Caso <strong>de</strong> Uso: Preencher formulário <strong>de</strong> inscrição.Atores participantes: Candidato.Objetivos: Preencher o formulário <strong>de</strong> inscrição para o vestibular.Pré-condições: O formulário <strong>de</strong> inscrição <strong>de</strong>verá ser retirado na Instituição <strong>de</strong> EnsinoSuperior.Fluxo Principal:1. O candidato preenche os dados pessoais necessários no formulário.2. O candidato preenche os dados do curso pretendido no formulário.3. O candidato preenche no formulário em qual campus <strong>de</strong>seja estudar.Fluxos alternativos:1a. O candidato <strong>de</strong>siste e <strong>de</strong>volve o formulário <strong>de</strong> inscrição sem o preenchimento para aaten<strong>de</strong>nte.2a. A Instituição <strong>de</strong> Ensino Superior não oferece o curso pretendido pelo candidato.Pós-condições: Formulário <strong>de</strong> inscrição para o vestibular preenchido.Santan<strong>de</strong>r (2002) apresenta as vantagens <strong>de</strong> integrar a técnica <strong>de</strong> mo<strong>de</strong>lagemorganizacional i* e os Casos <strong>de</strong> Uso em UML. Infelizmente, a UML e técnicas baseadas emcenários em geral não estão equipadas para mo<strong>de</strong>lar os requisitos organizacionais. Através da60


proposta do autor, engenheiros <strong>de</strong> requisitos po<strong>de</strong>m <strong>de</strong>senvolver Diagramas <strong>de</strong> Caso <strong>de</strong> Usoem UML a partir dos mo<strong>de</strong>los organizacionais propostos na técnica i*.3.9 Análise das TécnicasNesta seção, preten<strong>de</strong>-se apresentar algumas características percebidas (ou <strong>de</strong>sejáveis) nosmo<strong>de</strong>los estudados e a sua importância na mo<strong>de</strong>lagem eficiente <strong>de</strong> diferentes organizações.A princípio, nota-se que os processos <strong>de</strong> negócios sempre estarão presentes sob a estruturaorganizacional das empresas. A principal diferença entre uma empresa <strong>de</strong> sucesso e umaempresa com sérios problemas, na maioria dos casos, po<strong>de</strong> estar relacionada aogerenciamento dos processos <strong>de</strong> negócios. Sendo assim, um mo<strong>de</strong>lo que consiga representar,gerenciar, ou até automatizar, eficientemente os processos <strong>de</strong> negócio torna-se muitoimportante nesse contexto.As técnicas aplicadas no <strong>de</strong>senvolvimento <strong>de</strong> software <strong>de</strong>vem tratar <strong>de</strong> aspectosrelacionados à funcionalida<strong>de</strong> do sistema, à <strong>de</strong>scrição das ativida<strong>de</strong>s e entida<strong>de</strong>s. Porém, não<strong>de</strong>vem se restringir a isso. Esses mo<strong>de</strong>los <strong>de</strong>vem ser capazes <strong>de</strong> buscar soluções alternativaspara problemas da organização, através da representação dos objetivos da mesma, as razõesenvolvidas no processo, as regras <strong>de</strong> negócio, as restrições, os aspectos não funcionais, asestratégias, políticas, ou seja, fornecer <strong>de</strong>scrições mais ricas sobre as organizações sóciohumanas.Um aspecto a ser consi<strong>de</strong>rado é o grau <strong>de</strong> complexida<strong>de</strong> <strong>de</strong> um <strong>de</strong>terminado mo<strong>de</strong>lo. É<strong>de</strong>sejável a representação <strong>de</strong> uma organização através <strong>de</strong> mo<strong>de</strong>los fáceis <strong>de</strong> seremvisualizados, com notações gráficas intuitivas, simples e consistentes. Os diversosstakehol<strong>de</strong>rs <strong>de</strong>vem ser capazes <strong>de</strong> apren<strong>de</strong>r e compreen<strong>de</strong>r o mo<strong>de</strong>lo <strong>de</strong> forma natural, semesforços excessivos.Quando trata-se <strong>de</strong> uma organização <strong>de</strong> gran<strong>de</strong> porte, é inevitável um sistema com certacomplexida<strong>de</strong>. Dessa maneira, mo<strong>de</strong>los que permitam representar os <strong>de</strong>partamentos daorganização com diferentes interesses po<strong>de</strong>m ser mais aplicáveis a essa situação, pois seutilizam <strong>de</strong> múltiplas visões permitindo uma melhor compreensão da estrutura organizacional.A construção <strong>de</strong>sses mo<strong>de</strong>los <strong>de</strong>ve ser apoiada por ferramentas computacionais eficientes,como forma <strong>de</strong> automatizar o processo e diminuir o tempo necessário para gerar os mo<strong>de</strong>losorganizacionais.61


Analisando brevemente algumas das técnicas estudadas, nota-se que o mo<strong>de</strong>lo EKD ébastante rico em informações organizacionais. O mo<strong>de</strong>lo consegue representar os objetivos daorganização, os principais conceitos, as regras e processos <strong>de</strong> negócio, os atores e recursosenvolvidos, e os requisitos da organização. Para tanto, a técnica utiliza vários submo<strong>de</strong>lospara representar a estrutura organizacional <strong>de</strong> diferentes pontos <strong>de</strong> vista, facilitando acompreensão <strong>de</strong> sistemas mais complexos. Porém, esse mo<strong>de</strong>lo po<strong>de</strong> não ser apropriadoquando ocorrem muitas mudanças na organização, visto que isso requer a alteração <strong>de</strong>diferentes elementos em diversos submo<strong>de</strong>los, resultando em um esforço adicional aoanalista.Já o mo<strong>de</strong>lo i* se resume em uma abordagem mais simples e que permite mo<strong>de</strong>lar asintenções, os relacionamentos e as motivações entre membros <strong>de</strong> uma organização. Essatécnica possui dois mo<strong>de</strong>los, o mo<strong>de</strong>lo <strong>de</strong> Dependências Estratégicas (SD) e o mo<strong>de</strong>lo <strong>de</strong>Razões Estratégicas (SR). O primeiro (SD) fornece uma <strong>de</strong>scrição intencional <strong>de</strong> um processoem termos <strong>de</strong> uma re<strong>de</strong> <strong>de</strong> relacionamentos <strong>de</strong> <strong>de</strong>pendência entre atores. O segundo mo<strong>de</strong>lo(SR) possui uma representação e uma racionalização mais explícita sobre os interesses dosatores, e <strong>de</strong> como estes interesses po<strong>de</strong>m ser atendidos ou afetados pelos diversos sistemas.Percebe-se que a técnica i* é <strong>de</strong>ficiente quando se trata <strong>de</strong> processos <strong>de</strong> negócio, pois amo<strong>de</strong>lagem <strong>de</strong>sses elementos é realizada apenas em alto nível, <strong>de</strong>sprezando a sequencialida<strong>de</strong>das ativida<strong>de</strong>s inerentes ao processo.Com relação à notação BPMN, fica claro que o mo<strong>de</strong>lo é capaz <strong>de</strong> representar os processos<strong>de</strong> negócio <strong>de</strong> forma simples e consistente, através <strong>de</strong> notações gráficas <strong>de</strong> fácil entendimento.Contudo, a técnica <strong>de</strong>sconsi<strong>de</strong>ra aspectos intencionais, não representando os objetivos e metaspresentes na organização. Outro fator negativo é quando se <strong>de</strong>seja uma mo<strong>de</strong>lagem maisabrangente da organização, sendo necessária a representação <strong>de</strong> todos os elementos presentesna mesma, e não apenas os processos <strong>de</strong> negócio.Uma expectativa e necessida<strong>de</strong> <strong>de</strong> engenheiros <strong>de</strong> requisitos é que estes mo<strong>de</strong>losorganizacionais que já possuem necessida<strong>de</strong>s expressas na forma <strong>de</strong> satisfação <strong>de</strong> objetivos,realização <strong>de</strong> tarefas e obtenção <strong>de</strong> recursos, possam servir <strong>de</strong> base para capturar afuncionalida<strong>de</strong> <strong>de</strong> sistemas computacionais pretendidos pela organização. Dessa forma,também são consi<strong>de</strong>radas interessantes as técnicas que já possuam estudos publicados na áreaon<strong>de</strong> o foco é a integração do mo<strong>de</strong>lo organizacional a mo<strong>de</strong>los funcionais.62


3.10 Consi<strong>de</strong>rações FinaisEste capítulo apresentou uma visão geral a respeito da fase <strong>de</strong> mo<strong>de</strong>lagem organizacionalno contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> sistemas computacionais. Foram apresentadas diversastécnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional, citando suas principais características. As técnicasabordadas foram EKD, BPMN, i*, Workflows, Regras <strong>de</strong> Negócio, Maps e Casos <strong>de</strong> Uso <strong>de</strong>Negócio.Estas técnicas estudadas apresentam diferentes métodos e mo<strong>de</strong>los para representar oconhecimento sobre processos organizacionais e sobre os relacionamentos entre os membros<strong>de</strong> uma instituição. A representação <strong>de</strong>stas informações é muito útil para uma a<strong>de</strong>quadacompreensão da organização, resultando na elicitação mais efetiva e consistente dos requisitos<strong>de</strong> sistemas computacionais pretendidos.A partir da compreensão da estrutura e ambiente organizacional, os engenheiros <strong>de</strong>requisitos são capazes <strong>de</strong> <strong>de</strong>finir como o sistema computacional pretendido conseguirásatisfazer os objetivos da empresa, por que ele é necessário, quais as alternativas existentes,quais as implicações das alternativas para as várias partes interessadas, entre outros aspectos.Além disso, vários elementos nos mo<strong>de</strong>los estudados po<strong>de</strong>m ser utilizados e mapeados pararequisitos funcionais e não funcionais do sistema pretendido.63


Capítulo 4Estudo Comparativo e Avaliação dos Mo<strong>de</strong>losOrganizacionaisNeste capítulo, tendo como base os estudos realizados sobre as técnicas <strong>de</strong> mo<strong>de</strong>lagemorganizacional, é apresentado um estudo voltado à necessida<strong>de</strong> <strong>de</strong> comparação <strong>de</strong>ssesmo<strong>de</strong>los, a fim <strong>de</strong> capturar as principais características e qualida<strong>de</strong>s dos mesmos que sãointeressantes e <strong>de</strong>sejáveis no contexto da Engenharia <strong>de</strong> Requisitos. Para tanto, umexperimento utilizando as diversas técnicas é conduzido (Seção 4.1). Como forma <strong>de</strong> apoiaressa experimentação, são utilizados princípios da Engenharia <strong>de</strong> Software Experimental. Umaavaliação a respeito dos resultados obtidos nesse experimento é realizada na Seção 4.2,seguida pelas consi<strong>de</strong>rações finais (Seção 4.3).4.1 Estudo ComparativoComo forma <strong>de</strong> diminuir a lacuna entre negócios e tecnologia da informação, éapresentado um estudo comparativo entre as técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional mostradasno Capítulo 3. Para tanto, utiliza-se um estudo <strong>de</strong> caso real (<strong>de</strong>talhado na Seção 4.1.1),fornecido por uma empresa <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software da região oeste do Paraná, o qualé mo<strong>de</strong>lado a partir <strong>de</strong> cada técnica anteriormente estudada. Assim, através das diferentesrepresentações do contexto organizacional <strong>de</strong> on<strong>de</strong> o software será inserido, po<strong>de</strong>-se extrair naprática as características das técnicas e apontar suas principais qualida<strong>de</strong>s.Com o propósito <strong>de</strong> que um experimento forneça resultados válidos, o mesmo <strong>de</strong>ve serorganizado, controlado e acompanhado. Dessa forma, a Engenharia <strong>de</strong> SoftwareExperimental, introduzida no Capítulo 2, serve <strong>de</strong> apoio para a realização do estudocomparativo, e a sua utilização é apresentada na Seção 4.1.2.64


4.1.1 Contexto do Estudo <strong>de</strong> Caso – Cotação <strong>de</strong> ComprasNa área <strong>de</strong> concessionárias <strong>de</strong> veículos e implementos agrícolas, a empresa fornecedora doestudo <strong>de</strong> caso ajuda a gerenciar revendas Volkswagen, Ford, Fiat, Iveco, Agrale, Honda,Peugeot, Toyota, Massey Ferguson, New Holland, EFFA, Sinus truck, entre outras, em quasetodo o Brasil. A intimida<strong>de</strong> com o negócio <strong>de</strong> veículos transformou a organização em umaespecialista na gestão <strong>de</strong> concessionárias e relacionamento gerencial com fornecedores econsumidores.Na área comercial, a organização é parceira <strong>de</strong> distribuidoras, auto-centers, materiaiselétricos, auto-peças, revendas <strong>de</strong> veículos multimarcas, entre outros, fornecendo ferramentaságeis para o controle gerencial, compra, venda, custos e estoque.O ciclo <strong>de</strong> vida <strong>de</strong> projeto na empresa consiste em cinco fases: concepção, planejamento,produção, implantação e encerramento. Nessas fases são <strong>de</strong>finidas ativida<strong>de</strong>s <strong>de</strong> acordo com oescopo dos requisitos, as estimativas para os recursos e a natureza do projeto, <strong>de</strong> forma apossibilitar o maior controle gerencial.O objetivo principal da fase <strong>de</strong> concepção é estabelecer o escopo do software do projeto eas condições limite, incluindo o que <strong>de</strong>ve ou não estar no produto e a elaboração da propostacomercial <strong>de</strong> projeto.A meta da fase <strong>de</strong> planejamento é criar o plano <strong>de</strong> projeto a fim <strong>de</strong> fornecer uma baseestável para o esforço da fase <strong>de</strong> construção. O plano <strong>de</strong> projeto se <strong>de</strong>senvolve a partir dodocumento <strong>de</strong> escopo construído na fase <strong>de</strong> concepção e da avaliação dos riscos.O fase <strong>de</strong> produção é responsável por implementar os requisitos especificados nodocumento <strong>de</strong> requisitos <strong>de</strong> projeto. A fase <strong>de</strong> construção é <strong>de</strong> certa forma um processo <strong>de</strong>manufatura, em que a ênfase está no gerenciamento <strong>de</strong> recursos e controle <strong>de</strong> operações paraotimizar custos, programações e qualida<strong>de</strong>. Esta fase está dividida em duas etapas iterativas:<strong>de</strong>senvolvimento e teste.Na fase <strong>de</strong> implantação o ambiente do usuário é preparado para o recebimento do produtofinal, ou seja, a instalação do software.A fase <strong>de</strong> encerramento marca o fim do projeto. Nela <strong>de</strong>vem-se analisar os artefatosgerados, incluindo as atas das reuniões, a fim <strong>de</strong> verificar se houveram falhas ou atrasos nocronograma. Com o <strong>de</strong>correr do processo a empresa po<strong>de</strong> analisar os resultados obtidos eaplicar correções em setores/ativida<strong>de</strong>s específicas.O ciclo <strong>de</strong> vida <strong>de</strong> projeto citado acima po<strong>de</strong> ser visualizado na Figura 4.1.65


Figura 4.1: Ciclo <strong>de</strong> vida <strong>de</strong> projeto da empresa <strong>de</strong>senvolvedora <strong>de</strong> software.Uma das maiores dificulda<strong>de</strong>s da organização se concentra na fase <strong>de</strong> concepção doprojeto. Nem sempre é fácil atingir o consenso entre todos os envolvidos sobre os objetivosdo projeto. Segundo o analista <strong>de</strong> processos da empresa, a fase <strong>de</strong> iniciação tem muitaimportância principalmente para os esforços dos novos <strong>de</strong>senvolvimentos, nos quais hámuitos riscos <strong>de</strong> negócios e <strong>de</strong> requisitos que precisam ser tratados para que o projeto possaprosseguir. Para projetos que visam melhorias em um sistema existente, a fase <strong>de</strong> iniciação émais rápida, mas ainda se concentra em assegurar que o projeto seja compensatório e que sejapossível realizá-lo.Um dos artefatos gerados na fase <strong>de</strong> concepção é o Documento <strong>de</strong> Requisitos <strong>de</strong> Projeto(DRP), on<strong>de</strong> <strong>de</strong>vem estar <strong>de</strong>scritos textualmente os requisitos funcionais e não funcionais dosistema a ser <strong>de</strong>senvolvido. Porém, como já foi dito, i<strong>de</strong>ntificar e especificar requisitos <strong>de</strong> umsistema computacional não é uma tarefa trivial, sendo necessária a utilização <strong>de</strong> técnicas <strong>de</strong>levantamento <strong>de</strong> requisitos para facilitar essa elicitação.Atualmente, a organização utiliza apenas questionários e entrevistas para a i<strong>de</strong>ntificaçãodos requisitos. Embora seja uma técnica simples <strong>de</strong> utilizar e bastante eficaz numa fase inicial<strong>de</strong> obtenção <strong>de</strong> dados (e mesmo <strong>de</strong> esclarecimento <strong>de</strong> algumas dúvidas), está condicionada aalguns fatores:a) influência do entrevistador nas respostas do cliente: convém que o entrevistador dêmargem ao entrevistado para expor as suas i<strong>de</strong>ias, sem ser ten<strong>de</strong>ncioso;66


) relação pessoal entre os intervenientes na entrevista;c) predisposição do entrevistado: caso, por exemplo, o papel do entrevistado venha a serafetado negativamente pela introdução <strong>de</strong> um sistema na organização, este po<strong>de</strong>propositadamente dificultar o acesso à informação;d) capacida<strong>de</strong> <strong>de</strong> seguir um “plano” para a entrevista: na ausência <strong>de</strong>stes planos é naturalque haja tendência para que os intervenientes se dispersem um pouco, levando a que aentrevista <strong>de</strong>more mais tempo do que seria suposto. Caso a entrevista se torne<strong>de</strong>masiado longa, as pessoas po<strong>de</strong>m cair na tentação <strong>de</strong> "querer <strong>de</strong>spachar", sendo osúltimos pontos da entrevista abordados <strong>de</strong> forma superficial (ou po<strong>de</strong>m nem chegar aser abordados).Dessa forma, o DRP algumas vezes possui certas inconsistências, não representando asreais necessida<strong>de</strong>s da organização que preten<strong>de</strong> introduzir o software. Isso resulta em esforçosadicionais <strong>de</strong> <strong>de</strong>senvolvimento nas próximas fases do ciclo <strong>de</strong> vida do projeto. Exemplo dissoé que, frequentemente, o próprio setor <strong>de</strong> <strong>de</strong>senvolvimento fica responsável por entrar emcontato com o cliente para esclarecer possíveis dúvidas que surgem no <strong>de</strong>correr do processo<strong>de</strong> construção do software.Uma forma <strong>de</strong> sanar essa dificulda<strong>de</strong> da empresa e contribuir com a satisfação do cliente éintroduzir técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional para facilitar a etapa <strong>de</strong> i<strong>de</strong>ntificação <strong>de</strong>requisitos organizacionais e requisitos associados ao sistema computacional pretendido. Destaforma, po<strong>de</strong>ríamos diminuir consi<strong>de</strong>ravelmente os custos <strong>de</strong> <strong>de</strong>senvolvimento nas fases doprojeto posteriores a essa.Hoje em dia, um dos principais produtos da organização é o Sistema <strong>de</strong> GerenciamentoComercial e <strong>de</strong> Concessionárias, o qual fornece, em ambiente gráfico, um sistema ágil, seguroe fácil <strong>de</strong> usar. Esse software é responsável pelas seguintes funcionalida<strong>de</strong>s: Controle <strong>de</strong> custos; Controle <strong>de</strong> estoques (entrada e saída); Controle <strong>de</strong> vendas (salários, comissões).O problema é que o supracitado software não disponibiliza, no seu sistema <strong>de</strong> compras (nocontexto <strong>de</strong> controle <strong>de</strong> estoques), uma função para auxiliar na <strong>de</strong>terminação do menor preçopara efetuar a compra <strong>de</strong> itens.Essa nova funcionalida<strong>de</strong> foi solicitada por um cliente da empresa, e, através <strong>de</strong> entrevistascom o mesmo, os analistas pu<strong>de</strong>ram i<strong>de</strong>ntificar alguns requisitos, sugerindo a seguinte67


solução: <strong>de</strong>senvolver um sistema <strong>de</strong> lançamento <strong>de</strong> orçamentos, a fim <strong>de</strong> facilitar a escolha domenor preço para <strong>de</strong>terminado item, através das cotações passadas pelos fornecedores. Oprocesso proposto para a resolução do problema, intitulado Cotação <strong>de</strong> Compras, é <strong>de</strong>scrito aseguir.Primeiramente, o funcionário cadastrará uma nova cotação no sistema, inserindo o número<strong>de</strong> controle interno, a <strong>de</strong>scrição, a data, os fornecedores e os itens envolvidos para essacotação.Após o cadastro, o funcionário irá gerar relatórios <strong>de</strong> pedidos <strong>de</strong> cotação, um para cadafornecedor, contendo todos os itens cadastrados na cotação. Esses relatórios <strong>de</strong>verão serpreenchidos pelos fornecedores, informando o custo <strong>de</strong> cada item, e <strong>de</strong>volvidos a empresa.De posse dos relatórios preenchidos, o funcionário cadastrará as propostas dosfornecedores para cada item daquela cotação. Dessa maneira, o sistema po<strong>de</strong>rá realizar aanálise dos preços <strong>de</strong> um <strong>de</strong>terminado item, comparando-os e informando qual o menor preçoe seu respectivo fornecedor. Um relatório contendo essa análise po<strong>de</strong>rá ser gerado.Com base nessa análise, é possível gerar um pedido <strong>de</strong> compra, po<strong>de</strong>ndo ser apresentadotambém em forma <strong>de</strong> relatório.Desta forma, observando esta problemática, é essencial enten<strong>de</strong>r inicialmente todos oselementos estratégicos organizacionais que estão envolvidos na realização <strong>de</strong>ste novo módulopara o sistema <strong>de</strong> compras. A partir <strong>de</strong>ste entendimento, po<strong>de</strong>-se então elicitar <strong>de</strong> forma maisconfiável e completa os requisitos <strong>de</strong>talhados <strong>de</strong>ste novo módulo.4.1.2 Utilizando a Engenharia <strong>de</strong> Software ExperimentalComo o estudo realizado tem como objetivo a comparação das características <strong>de</strong> técnicas<strong>de</strong> mo<strong>de</strong>lagem organizacional distintas, po<strong>de</strong>-se representar a estrutura da experimentação,através da abordagem GQM apresentada no Capítulo 2, da seguinte forma: Objetivo global: estudar as técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional EKD, BPMN, i*,Workflows, Regras <strong>de</strong> Negócio, Maps e Casos <strong>de</strong> Uso <strong>de</strong> Negócio, objetivandocompreen<strong>de</strong>r e comparar as suas características no contexto da Engenharia <strong>de</strong>Requisitos.68


Objetivo do estudo:Analisar →Com a finalida<strong>de</strong> <strong>de</strong> →Com respeito a →Do ponto <strong>de</strong> vista dos →No contexto <strong>de</strong> →as técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacionalcomparar as suas característicasrepresentativida<strong>de</strong> dos requisitos organizacionais efutura integração com mo<strong>de</strong>los funcionaisstakehol<strong>de</strong>rspequenas e médias organizações, representadas pelaorganização escolhida. Questões (Q)/Métricas (M):Q01: A técnica possui múltiplas visões?M01: O(s) elemento(s) da técnica que permite(m) múltiplas visões.Q02: A técnica consegue representar diferentes aspectos da organização?M02: O(s) elemento(s) da técnica que permite(m) representar diferentes aspectos daorganização.Q03: A técnica consegue representar os objetivos da organização?M03: O(s) elemento(s) da técnica que permite(m) representar os objetivos daorganização.Q04: A técnica consegue representar as regras <strong>de</strong> negócio?M04: O(s) elemento(s) da técnica que permite(m) representar as regras <strong>de</strong> negócio.Q05: A técnica consegue representar os processos <strong>de</strong> negócio?M05: O(s) elemento(s) da técnica que permite(m) representar os processos <strong>de</strong> negócio.Q06: A técnica consegue representar os atores da organização?M06: O(s) elemento(s) da técnica que permite(m) representar os atores daorganização.Q07: A técnica consegue representar os recursos da organização?M07: O(s) elemento(s) da técnica que permite(m) representar os recursos daorganização.Q08: A técnica consegue representar as tarefas da organização?M08: O(s) elemento(s) da técnica que permite(m) representar as tarefas daorganização.Q09: A técnica possui uma notação gráfica facilmente compreensível pelos stakehol<strong>de</strong>rs?69


M09: As respostas coletadas <strong>de</strong> um grupo <strong>de</strong> usuários com diferentes perfis queutilizaram a técnica.Q10: A técnica permite <strong>de</strong>compor um processo em subprocessos?M10: O(s) elemento(s) da técnica que permite(m) <strong>de</strong>compor um processo emsubprocessos.Q11: A técnica possui uma <strong>de</strong>scrição textual do(s) seu(s) mo<strong>de</strong>lo(s)?M11: O(s) elemento(s) da técnica que permite(m) representar textualmente o(s) seu(s)mo<strong>de</strong>lo(s).Q12: A técnica possui apoio em ferramentas computacionais?M12: A(s) ferramenta(s) computacional(is) que fornece(m) apoio a técnica.Q13: A técnica possui trabalhos já publicados on<strong>de</strong> a mesma é integrada a mo<strong>de</strong>losfuncionais?M13: O(s) trabalho(s) publicado(s) on<strong>de</strong> o foco do estudo é a integração da técnica amo<strong>de</strong>los funcionais.Q14: A técnica é <strong>de</strong> fácil aprendizado pelos stakehol<strong>de</strong>rs?M14: As respostas coletadas <strong>de</strong> um grupo <strong>de</strong> usuários com diferentes perfis queutilizaram a técnica.Q15: A técnica é <strong>de</strong> fácil entendimento pelos stakehol<strong>de</strong>rs?M15: As respostas coletadas <strong>de</strong> um grupo <strong>de</strong> usuários com diferentes perfis queutilizaram a técnica.Q16: A técnica consegue representar as relações <strong>de</strong> <strong>de</strong>pendência entre os atores daorganização?M16: O(s) elemento(s) da técnica que permite(m) representar as <strong>de</strong>pendências entre osatores da organização.Q17 A técnica permite inserir (graficamente ou textualmente) um sistema computacionalna mo<strong>de</strong>lagem da organização?M17: O(s) elemento(s) da técnica que permite(m) a inserção <strong>de</strong> um sistemacomputacional na mo<strong>de</strong>lagem da organização.Q18: A técnica permite representar (graficamente ou textualmente) as responsabilida<strong>de</strong>salocadas ao novo sistema computacional introduzido na organização?M18: O(s) elemento(s) da técnica que permite(m) representar as responsabilida<strong>de</strong>s donovo sistema computacional introduzido na organização.70


Q19: A técnica propõe um processo específico, através <strong>de</strong> diretrizes, para a inserção <strong>de</strong> umsistema computacional no mo<strong>de</strong>lo organizacional?M19: As diretrizes que orientam o processo <strong>de</strong> inserção <strong>de</strong> um sistema computacionalno mo<strong>de</strong>lo organizacional.Q20: A técnica permite relacionar requisitos não funcionais ao sistema computacionalsendo inserido?M20: O(s) elemento(s) da técnica que permite(m) relacionar requisitos não funcionaisao sistema computacional sendo inserido.4.1.3 Utilizando as Técnicas <strong>de</strong> Mo<strong>de</strong>lagem <strong>Organizacional</strong>A partir do estudo <strong>de</strong> caso do novo módulo Cotação <strong>de</strong> Compras, apresentado na Seção4.1.1, o mesmo é mo<strong>de</strong>lado utilizando cada uma das técnicas apresentadas no Capítulo 3,tendo como objetivo extrair as características mais relevantes e <strong>de</strong>sejáveis (no contexto daER) <strong>de</strong> cada mo<strong>de</strong>lo. Porém, como citado anteriormente, a BPMN é uma notação gráficapadronizada para <strong>de</strong>senhar processos <strong>de</strong> Workflows, sendo assim, optou-se pela ocultação damo<strong>de</strong>lagem <strong>de</strong>ssa última. A seguir, inicia-se a mo<strong>de</strong>lagem através da técnica BPMN.BPMNA seguir tem-se a mo<strong>de</strong>lagem do estudo <strong>de</strong> caso Cotação <strong>de</strong> Compras utilizando BPMN,através do diagrama apresentado na Figura 4.2.Foram i<strong>de</strong>ntificadas duas unida<strong>de</strong>s organizacionais, o “Departamento <strong>de</strong> Compras” e os“Fornecedores”, as quais trocam informações com <strong>de</strong>terminada sequencialida<strong>de</strong> através <strong>de</strong>processos específicos. Objetos <strong>de</strong> dados, como a “Lista <strong>de</strong> itens necessários”, também sãotransferidos entre as unida<strong>de</strong>s organizacionais. No diagrama abaixo existem dois subprocessos<strong>de</strong> forma fechada, “Analisar preços dos itens” e “Processar pedido”, os quais são compostospor uma série <strong>de</strong> outras ativida<strong>de</strong>s que não são relevantes nessa fase da análise. Um gatewaytambém foi utilizado para controlar a divergência da sequência do fluxo após o processo“Analisar preços dos itens”.71


Figura 4.2: Diagrama BPMN para o módulo Cotação <strong>de</strong> Compras.72


Técnica i*A mo<strong>de</strong>lagem do novo módulo Cotação <strong>de</strong> Compras através da técnica i* po<strong>de</strong> servisualizada na Figura 4.3 (diagrama SD) e na Figura 4.4 (diagrama SR).Os atores i<strong>de</strong>ntificados foram: “Departamento <strong>de</strong> Compras”, “Fornecedores” e “Setor”.Esse último foi incluído <strong>de</strong>vido ao fato <strong>de</strong> a técnica i* realizar uma ampla análise da<strong>de</strong>pendência entre os atores no contexto organizacional, sugerindo <strong>de</strong>ssa forma a inclusão <strong>de</strong>um <strong>de</strong>terminado setor da organização que solicita a compra <strong>de</strong> itens. Uma <strong>de</strong>pendência <strong>de</strong>recurso po<strong>de</strong> ser i<strong>de</strong>ntificada entre os atores “Departamento <strong>de</strong> Compras” e “Setor”, na qual oprimeiro <strong>de</strong>pen<strong>de</strong> do recurso “Lista <strong>de</strong> itens para compra” fornecido pelo segundo. Entre osatores “Departamento <strong>de</strong> Compras” e “Fornecedores” existem quatro <strong>de</strong>pendências do tipoobjetivo, uma <strong>de</strong>las sendo a “Cotação <strong>de</strong> compra e pedido realizados”.Figura 4.3: Diagrama SD para o módulo Cotação <strong>de</strong> Compras.No diagrama SR pu<strong>de</strong>ram ser i<strong>de</strong>ntificadas diversas tarefas e subtarefas internas aos atores.Exemplo disso é a tarefa “Disponibilizar serviços <strong>de</strong> orçamentos e pedidos” do ator“Fornecedores” na Figura 4.4, a qual é <strong>de</strong>composta nas subtarefas “Disponibilizar preços dositens da lista <strong>de</strong> compra” e “Receber pedido”.73


Figura 4.4: Diagrama SR para o módulo Cotação <strong>de</strong> Compras.Técnica i*, com a inclusão do SistemaAtravés dos diagramas i* apresentados anteriormente (SD - Figura 4.3 e SR – Figura 4.4),po<strong>de</strong>-se inserir um sistema computacional em sua mo<strong>de</strong>lagem, <strong>de</strong>legando responsabilida<strong>de</strong>sao novo software introduzido na organização. Os diagramas i* com essa nova abordagem sãoapresentados a seguir nas Figuras 4.5 (SD) e 4.6 (SR). Agora são percebidas as <strong>de</strong>pendênciasentre os atores “Departamento <strong>de</strong> Compras” e “Sistema”.74


Figura 4.5: Diagrama SD para o módulo Cotação <strong>de</strong> Compras, com a inclusão do Sistema.No diagrama SR po<strong>de</strong>m ser visualizadas as tarefas internas que o Sistema será responsávelem realizar para a satisfação das <strong>de</strong>pendências com o Departamento <strong>de</strong> Compras, o quefacilita <strong>de</strong>ssa forma a i<strong>de</strong>ntificação e especificação dos requisitos <strong>de</strong> software para essesistema computacional.75


Figura 4.6: Diagrama SR para o módulo Cotação <strong>de</strong> Compras, com a inclusão do Sistema.76


Regras <strong>de</strong> NegócioA utilização <strong>de</strong> Regras <strong>de</strong> Negócio para a mo<strong>de</strong>lagem do estudo <strong>de</strong> caso é apresentada aseguir. Essa técnica é composta apenas por uma <strong>de</strong>scrição textual, não possuindorepresentação gráfica. Foram i<strong>de</strong>ntificadas quatro principais regras do negócio: “SolicitarCompras <strong>de</strong> Itens”, “Solicitar Preços aos Fornecedores”, “Analisar Preços dos Fornecedores”,“Realizar Pedido <strong>de</strong> Compra”. Essa mo<strong>de</strong>lagem se baseia na ocorrência <strong>de</strong> um <strong>de</strong>terminadoevento para a regra <strong>de</strong> negócio ser processada. Uma condição então é verificada e com basenela ativida<strong>de</strong>s são executadas.Regra <strong>de</strong> Negócio 01: SOLICITAR COMPRAS DE ITENSON(itens indisponíveis no estoque) e (necessita dos itens)IF(não possui a lista <strong>de</strong> preços dos fornecedores)THEN (cria uma lista com os itens necessários)(solicita a lista <strong>de</strong> preços aos fornecedores)chama o evento SOLICITAR PREÇOSRegra <strong>de</strong> Negócio 02: SOLICITAR PREÇOS AOS FORNECEDORESONSOLICITAR PREÇOSIF(fornecedores disponíveis) e (lista <strong>de</strong> itens necessários criada)THEN (envia a lista <strong>de</strong> itens necessários aos fornecedores)(aguarda o recebimento das listas dos preços <strong>de</strong> todos fornecedores)chama o evento ANALISAR PREÇOSRegra <strong>de</strong> Negócio 03: ANALISAR PREÇOS DOS FORNECEDORESONANALISAR PREÇOSIF(listas <strong>de</strong> preços <strong>de</strong> todos fornecedores recebidas)THEN (cria um relatório contendo os menores preços e os respectivosfornecedores para os itens necessários)(realiza pedido <strong>de</strong> compra com base no relatório criado)chama o evento REALIZAR PEDIDO77


Regra <strong>de</strong> Negócio 04: REALIZAR PEDIDO DE COMPRAONREALIZAR PEDIDOIF(fornecedores possuem os itens disponíveis)THEN (envia pedido <strong>de</strong> compra aos fornecedores com base no relatório <strong>de</strong>análise <strong>de</strong> preços criado)(aguarda recebimento dos itens adquiridos)MapsO diagrama Map contendo a mo<strong>de</strong>lagem do estudo <strong>de</strong> caso po<strong>de</strong> ser visualizada na Figura4.7. É importante <strong>de</strong>stacar que, na abordagem utilizada, quando uma <strong>de</strong>terminada estratégiapara atingir certo objetivo é composta por um sistema computacional, um novo diagrama Map<strong>de</strong>verá ser <strong>de</strong>senvolvido contendo as estratégias e objetivos internos ao software quepossibilitam o alcance da meta pretendida.Na mo<strong>de</strong>lagem abaixo pu<strong>de</strong>ram ser i<strong>de</strong>ntificadas diversas estratégias para a obtenção dosrespectivos objetivos. Um exemplo são as estratégias “Consultando o sistema” ou“Consultando o estoque” para a realização do objetivo “Selecionar itens para compra”.(cont)Figura 4.7: Diagrama Map para o módulo Cotação <strong>de</strong> Compras.78


Maps, com a inclusão do SistemaObservando o diagrama Map inicialmente <strong>de</strong>senvolvido (Figura 4.7), po<strong>de</strong>-se <strong>de</strong>stacar autilização <strong>de</strong> um sistema computacional como estratégia para atingir o objetivo <strong>de</strong> analisar ospreços dos itens. Dessa forma, um novo diagrama Map (Figura 4.8) po<strong>de</strong> ser criado pararepresentar esse sistema computacional, exibindo as estratégias e objetivos internos aosoftware no processo <strong>de</strong> comparação dos preços informados pelos fornecedores.Figura 4.8: Diagrama Map para o objetivo Analisar Preços dos Itens.Casos <strong>de</strong> Uso <strong>de</strong> NegócioO diagrama apresentado na Figura 4.9 representa a mo<strong>de</strong>lagem do sistema Cotação <strong>de</strong>Compras através <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Negócio.Nessa técnica também foram i<strong>de</strong>ntificados dois atores principais, o Departamento <strong>de</strong>Compras e os Fornecedores. Entre os casos <strong>de</strong> uso <strong>de</strong> negócio “Selecionar itens necessários” e“Solicitar preços dos itens aos fornecedores” há um relacionamento <strong>de</strong> inclusão, significandoque quando o primeiro caso <strong>de</strong> uso for realizado, o segundo também <strong>de</strong>verá ser. Já entre oscasos <strong>de</strong> uso <strong>de</strong> negócio “Analisar preços dos itens” e “Realizar pedido” existe umrelacionamento <strong>de</strong> extensão, o que significa que após a realização do primeiro caso <strong>de</strong> uso,opcionalmente o segundo também po<strong>de</strong>rá ser realizado.79


Figura 4.9: Diagrama <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Negócio para o módulo Cotação <strong>de</strong> Compras.Casos <strong>de</strong> Uso <strong>de</strong> Negócio, com a inclusão do SistemaAo inserir um sistema computacional no diagrama <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Negócioapresentado anteriormente (Figura 4.9), o mesmo sofrerá alterações apenas em seu atorDepartamento <strong>de</strong> Compras, pois os processos utilizados pelos Fornecedores não serãoimplementados no novo sistema. Dessa forma, um diagrama <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Sistema(Figura 4.10), mostrado a seguir, representa as responsabilida<strong>de</strong>s do novo sistema no contextodo Departamento <strong>de</strong> Compras da organização.80


Figura 4.10: Diagrama <strong>de</strong> Casos <strong>de</strong> Uso <strong>de</strong> Sistema para o módulo Cotação <strong>de</strong> Compras.EKDA seguir é apresentada uma série <strong>de</strong> mo<strong>de</strong>los que compõem a abordagem utilizada natécnica EKD para a mo<strong>de</strong>lagem do estudo <strong>de</strong> caso da Cotação <strong>de</strong> Compras. O mo<strong>de</strong>lo <strong>de</strong>Objetivos e o mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócio foram integrados na Figura 4.11. Já o mo<strong>de</strong>lo <strong>de</strong>Conceitos po<strong>de</strong> ser visualizado na Figura 4.12, seguido pelo mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio(Figura 4.13) e o mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos (Figura 4.14). Por fim, o mo<strong>de</strong>lo <strong>de</strong> Requisitose Componentes Técnicos é apresentado na Figura 4.15.Po<strong>de</strong>-se visualizar no Mo<strong>de</strong>lo <strong>de</strong> Objetivos integrado com o mo<strong>de</strong>lo <strong>de</strong> Regras <strong>de</strong> Negócioque a regra “Só <strong>de</strong>ve ser realizado pedido <strong>de</strong> compra se o item for o <strong>de</strong> menor preço entre osfornecedores” colabora positivamente para a obtenção do objetivo “Realizar pedido <strong>de</strong>compra”. Já o ponto fraco i<strong>de</strong>ntificado “Difícil acesso às informações atualizadas dosfornecedores” dificulta a obtenção do objetivo “Analisar preços dos itens dos fornecedores”.Figura 4.11: MO e MRN para o módulo Cotação <strong>de</strong> Compras.81


No Mo<strong>de</strong>lo <strong>de</strong> Conceitos po<strong>de</strong>m ser visualizados os significados do atributo “Item” e daentida<strong>de</strong> “Fornecedor”. O mo<strong>de</strong>lo também representa que o atributo “Item” faz parte daentida<strong>de</strong> “Fornecedor”.Figura 4.12: MC para o módulo Cotação <strong>de</strong> ComprasNo Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio foram i<strong>de</strong>ntificados três principais processos:“Solicitar preços dos itens necessários”, “Analisar preços dos itens” e “Realizar pedido <strong>de</strong>compra”. Para esses processos várias informações, tanto <strong>de</strong> entrada como <strong>de</strong> saída, po<strong>de</strong>m servisualizadas. Um exemplo, para o processo “Solicitar preços dos itens necessários”, é aentrada da informação “Lista <strong>de</strong> itens necessários” e a posterior saída da informação “Lista <strong>de</strong>preços dos itens”.Figura 4.13: Mo<strong>de</strong>lo <strong>de</strong> Processos <strong>de</strong> Negócio para o módulo Cotação <strong>de</strong> ComprasNo Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos po<strong>de</strong>-se visualizar que a unida<strong>de</strong> organizacional“Empresa” consiste <strong>de</strong> um “Departamento <strong>de</strong> Compras”, e que o “Funcionário” trabalha paraa “Empresa”, no “Departamento <strong>de</strong> Compras”, e realiza compras com o “Fornecedor”.82


Figura 4.14: Mo<strong>de</strong>lo <strong>de</strong> Atores e Recursos para o módulo Cotação <strong>de</strong> Compras.No Mo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes Técnicos vários objetivos para o sistema <strong>de</strong>informação foram i<strong>de</strong>ntificados, os quais possuem diversos requisitos. O objetivo global que é“Manter todas as informações para a realização <strong>de</strong> compras” é apoiado pelo sub-objetivo“Manter uma lista <strong>de</strong> itens necessários”, que por sua vez é apoiado pelo requisito “Geração <strong>de</strong>relatório a partir da lista <strong>de</strong> itens necessários”.Figura 4.15: Mo<strong>de</strong>lo <strong>de</strong> Requisitos e Componentes Técnicos para o módulo Cotação <strong>de</strong> Compras.4.1.4 Resultados ObtidosApós a fase <strong>de</strong> planejamento e <strong>de</strong>finição dos objetivos, questões e métricas, a coleta <strong>de</strong>dados da experimentação foi realizada. Adicionalmente, um analista <strong>de</strong> processos da empresaque forneceu o estudo <strong>de</strong> caso para a experimentação respon<strong>de</strong>u algumas das questões83


formuladas, com o intuito <strong>de</strong> fornecer um feedback a respeito da representativida<strong>de</strong> dosrequisitos computacionais a partir das técnicas estudadas.Finalizada a coleta <strong>de</strong> dados, a próxima etapa foi a interpretação. Nela, os dados foramabsorvidos, as questões <strong>de</strong>finidas pu<strong>de</strong>ram ser respondidas e as conclusões extraídas. Deposse das características <strong>de</strong> cada técnica, como mostra a Tabela 4.1, as mesmas foramanalisadas e uma avaliação crítica foi elaborada (Seção 4.2).Tabela 4.1: Características das técnicas.CARACTERÍSTICA EKD BPMN i*Regras<strong>de</strong>NegócioMapsCasos <strong>de</strong>Uso <strong>de</strong>NegócioM01 - Possui múltiplas visões A N A N N NM02 - Representa diferentes aspectos daorganizaçãoA P A N N NM03 - Representa os objetivos da organização A N A N A NM04 - Representa as regras <strong>de</strong> negócio A A N A P NM05 - Representa os processos <strong>de</strong> negócio A A P N P AM06 - Representa os atores da organização A A A N N AM07 - Representa os recursos da organização A A A N N NM08 - Representa as tarefas da organização A A A P P AM09 - Notação gráfica facilmentecompreensívelM10 - Permite <strong>de</strong>compor um processo emsubprocessosM11 - Possui <strong>de</strong>scrição textual do(s) seu(s)mo<strong>de</strong>lo(s)M12 - Possui apoio em ferramentascomputacionaisM13 - Possui trabalhos já publicados on<strong>de</strong> amesma é integrada a mo<strong>de</strong>los funcionaisA A A - A AA A A N P AN N N A N AN A A N N AN A A N A AM14 - É <strong>de</strong> fácil aprendizado P A A A A AM15 - É <strong>de</strong> fácil entendimento P A P P A AM16 - Representa as relações <strong>de</strong> <strong>de</strong>pendênciaentre os atores da organizaçãoM17 - Permite inserir (graficamente outextualmente) um sistema computacional namo<strong>de</strong>lagem da organizaçãoM18 - Permite representar (graficamente outextualmente) as responsabilida<strong>de</strong>s alocadasao novo sistema computacional introduzido naorganizaçãoM19 - Possui um processo específico, através<strong>de</strong> diretrizes, para a inserção <strong>de</strong> um sistemacomputacional no mo<strong>de</strong>lo organizacionalM20 - Permite relacionar requisitos nãofuncionais ao sistema computacional sendoinseridoA P A N N NN N A N P AN N A N P AN N P N N NN N A N N NLegenda: A: Aplica-se N: Não Aplica-se P: Parcialmente aplicável - : Ausente84


Com base nos resultados obtidos neste estudo comparativo, na próxima seção é realizadauma avaliação das técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional estudadas, a fim <strong>de</strong> expressar suasprincipais características e qualida<strong>de</strong>s no contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> sistemascomputacionais, consi<strong>de</strong>rando a representativida<strong>de</strong> dos requisitos <strong>de</strong> software para pequenas emédias organizações.4.2 AvaliaçãoObservando os resultados alcançados no estudo comparativo realizado na Seção 4.1,conclusões acerca das técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional introduzidas na experimentaçãopu<strong>de</strong>ram ser obtidas.A técnica EDK é orientada a objetivos, dispondo <strong>de</strong> múltiplas visões através <strong>de</strong> diferentessubmo<strong>de</strong>los que a compõe, o que permite representar diferentes aspectos da organização,como seus objetivos, as regras <strong>de</strong> negócio, os processos <strong>de</strong> negócio (permitindo <strong>de</strong>comporprocessos em subprocessos), os atores envolvidos (e suas <strong>de</strong>pendências), os recursos e tarefasda organização.Segundo o analista entrevistado, os elementos gráficos utilizados em EKD po<strong>de</strong>m serconsi<strong>de</strong>rados bastante simples, porém, quando se tratando <strong>de</strong> gran<strong>de</strong>s organizações, on<strong>de</strong>muitos fatores e aspectos estão envolvidos, a construção e entendimento dos seus submo<strong>de</strong>lospo<strong>de</strong> não ser uma tarefa trivial, <strong>de</strong>vido à complexida<strong>de</strong> das inúmeras relações entre eles.O aprendizado da técnica po<strong>de</strong> ser facilitado utilizando-se diretrizes que orientam todo oprocesso <strong>de</strong> mo<strong>de</strong>lagem, incluindo um conjunto <strong>de</strong> questões que apoiam a verificação dasligações entre componentes <strong>de</strong> todos os submo<strong>de</strong>los.Infelizmente a técnica EKD não possui apoio em ferramentas computacionais específicas,dificultando a automação do processo <strong>de</strong> construção dos seus submo<strong>de</strong>los, nem possui uma<strong>de</strong>scrição textual para melhor compreensão pelos stakehol<strong>de</strong>rs.Apesar <strong>de</strong> ser uma técnica consi<strong>de</strong>rada bastante completa, EKD não permite inserir umsistema computacional na mo<strong>de</strong>lagem da organização, o que dificulta a <strong>de</strong>tecção e alocaçãodas responsabilida<strong>de</strong>s do sistema introduzido na mesma. Também não foram encontrados naliteratura trabalhos on<strong>de</strong> a técnica EKD é integrada a mo<strong>de</strong>los funcionais.A técnica BPMN é conceitualmente orientada a mo<strong>de</strong>lagem <strong>de</strong> processos <strong>de</strong> negócio,permitindo representar as unida<strong>de</strong>s organizacionais envolvidas (e implicitamente suas<strong>de</strong>pendências), os recursos, tarefas e regras <strong>de</strong> negócio <strong>de</strong> um <strong>de</strong>terminado processo,85


possibilitando também a divisão <strong>de</strong>sse processo em subprocessos. Porém, a técnica não écapaz <strong>de</strong> representar os objetivos da organização, nem fornecer diferentes visões da mesma.Do ponto <strong>de</strong> vista do analista entrevistado, as categorias <strong>de</strong> elementos básicos da técnicaBPMN possuem uma notação gráfica simples, sendo consi<strong>de</strong>rada uma técnica <strong>de</strong> fácilaprendizado e entendimento por sustentar a noção <strong>de</strong> fluxogramas, mesmo sem possuir uma<strong>de</strong>scrição textual dos seus diagramas. Além do mais, existem várias ferramentascomputacionais específicas que auxiliam no processo <strong>de</strong> construção dos seus diagramas.Alguns trabalhos, como em Vara et al. (2009), propõem integrar a técnica BPMN amo<strong>de</strong>los funcionais. Nesse contexto, os requisitos funcionais são elicitados e especificadosatravés <strong>de</strong> diagramas <strong>de</strong> processos <strong>de</strong> negócio.No entanto, a técnica BPMN também não permite a inserção <strong>de</strong> um sistema computacionalna mo<strong>de</strong>lagem da organização, resultando em uma maior dificulda<strong>de</strong> na i<strong>de</strong>ntificação dasfuncionalida<strong>de</strong>s que vão ser alocadas ao novo software sendo inserido.A técnica i* é orientada a atores, tratando o relacionamento <strong>de</strong> <strong>de</strong>pendência entre osmesmos. É composta por dois mo<strong>de</strong>los, on<strong>de</strong> po<strong>de</strong>m ser representados, além dos atores, osobjetivos, as tarefas e os recursos da organização. A técnica não consi<strong>de</strong>ra as regras <strong>de</strong>negócio envolvidas e representa apenas parcialmente os processos <strong>de</strong> negócio, faltando-lheuma característica que atribua uma <strong>de</strong>terminada sequencialida<strong>de</strong> das ativida<strong>de</strong>s na execuçãodas suas tarefas e subtarefas.O analista entrevistado <strong>de</strong>stacou que a notação gráfica empregada em i* é bastante simplese <strong>de</strong> fácil aprendizado. No entanto, o entendimento dos seus mo<strong>de</strong>los po<strong>de</strong> não ser uma tarefatão simples assim, <strong>de</strong>vido ao fato <strong>de</strong> os mesmos possuírem diversas ligações e não fornecerema i<strong>de</strong>ia <strong>de</strong> fluxo <strong>de</strong> tarefas.Os mo<strong>de</strong>los em i* não possuem <strong>de</strong>scrição textual, porém existem diversas ferramentascomputacionais específicas que apoiam a construção dos mesmos. Além do mais, existemvários trabalhos on<strong>de</strong> a técnica i* é integrada a mo<strong>de</strong>los funcionais. Yu et al. (2011)apresentam a proposta original da técnica i*, bem como trabalhos que aplicam, adaptam,esten<strong>de</strong>m ou avaliam a sua abordagem.O gran<strong>de</strong> diferencial da técnica i* perante as outras é a possibilida<strong>de</strong> <strong>de</strong> inserção <strong>de</strong> umsistema computacional na sua mo<strong>de</strong>lagem. Dessa forma, o sistema passa a ser mo<strong>de</strong>lado comoum novo ator <strong>de</strong>ntro da organização, po<strong>de</strong>ndo ser alocadas a ele responsabilida<strong>de</strong>s específicasnesse contexto, facilitando a i<strong>de</strong>ntificação tanto <strong>de</strong> requisitos funcionais como não funcionais.86


A mo<strong>de</strong>lagem através <strong>de</strong> Regras <strong>de</strong> Negócio é bem restrita. A técnica não possui diversascaracterísticas que são <strong>de</strong>sejáveis no contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software, conseguindorepresentar através <strong>de</strong> uma <strong>de</strong>scrição textual (não possui representação gráfica) apenas asregras <strong>de</strong> negócio propriamente ditas e parcialmente as tarefas da organização.Na visão do analista entrevistado, a técnica baseada em Regras <strong>de</strong> Negócio po<strong>de</strong> serconsi<strong>de</strong>rada <strong>de</strong> fácil aprendizado. No entanto, o seu entendimento é prejudicado por nãopossuir uma notação gráfica que permita a visualização das regras e as suas interações. Dessaforma, o analista sugeriu que a técnica fosse complementada através <strong>de</strong> um diagrama queconsiga expressar <strong>de</strong> maneira clara e concisa as regras <strong>de</strong> negócio envolvidas na organização.Objetivos, processos, atores e recursos da organização não são cobertos por essaabordagem, tão pouco existe a possibilida<strong>de</strong> <strong>de</strong> a técnica representar um sistemacomputacional sendo inserido na organização, o que dificulta muito a i<strong>de</strong>ntificação e capturados requisitos <strong>de</strong> software para esse sistema. Ferramentas computacionais específicas queauxiliem no processo <strong>de</strong> construção das regras <strong>de</strong> negócio não foram encontradas, nemtrabalhos on<strong>de</strong> regras <strong>de</strong> negócio são integradas a mo<strong>de</strong>los funcionais.A técnica Maps é dirigida a objetivos e permite, <strong>de</strong> forma simples, porém expressiva,representar os processos da organização em termos <strong>de</strong> objetivos e estratégias. Apesar disso, atécnica não possui múltiplas visões, e <strong>de</strong>ssa forma não consegue representar diferentesaspectos da organização, como por exemplo, os atores (e suas <strong>de</strong>pendências) e recursos.Segundo o analista entrevistado, diagramas Maps possuem uma notação gráficaextremamente simples, e, <strong>de</strong>vido ao fato <strong>de</strong> o escopo da técnica ser bem limitado, a mesma é<strong>de</strong> fácil aprendizado e entendimento, dispensando qualquer <strong>de</strong>scrição textual dos seusmo<strong>de</strong>los. Apesar da simplicida<strong>de</strong>, não foram encontradas ferramentas computacionaisespecíficas que guiassem o processo <strong>de</strong> construção <strong>de</strong> diagramas Maps.Na abordagem utilizada, a inserção <strong>de</strong> um sistema computacional na mo<strong>de</strong>lagem daorganização só será realizada quando, em um diagrama Map, existir uma estratégia que utilizeo sistema para atingir <strong>de</strong>terminado objetivo. Dessa maneira, um novo diagrama Map éconstruído para representar esse sistema computacional, exibindo as estratégias e objetivosinternos ao software para atingir o objetivo inicial.No entanto, não existem diretrizes específicas que apoiam essa inserção do sistemacomputacional, tão pouco a técnica permite relacionar requisitos não funcionais ao software87


sendo inserido. Kaabi, Souveyet e Rolland (2004) propõem <strong>de</strong>rivar funcionalida<strong>de</strong>s dosistema computacional pretendido pela organização a partir da técnica Maps.Casos <strong>de</strong> Uso <strong>de</strong> Negócio é uma maneira natural <strong>de</strong> i<strong>de</strong>ntificar os processos <strong>de</strong> negócio, osquais po<strong>de</strong>m ser divididos em subprocessos. A técnica possui uma notação gráfica simples,on<strong>de</strong> é possível representar os atores e as tarefas da organização, porém não é capaz <strong>de</strong>expressar as <strong>de</strong>pendências entre esses atores e os diferentes aspectos da organização, comoobjetivos, regras <strong>de</strong> negócio e os recursos.Através <strong>de</strong> uma <strong>de</strong>scrição textual <strong>de</strong>talhada dos seus diagramas, on<strong>de</strong> os fluxos <strong>de</strong>ativida<strong>de</strong>s do cenário são apresentados, Casos <strong>de</strong> Uso <strong>de</strong> Negócio proporciona um bomentendimento por parte dos stakehol<strong>de</strong>rs.Apesar disso, uma ressalva feita por parte do analista entrevistado cita que diversosclientes possuem dificulda<strong>de</strong> na compreensão dos significados dos estereótipos utilizados natécnica. Como exemplo, po<strong>de</strong>-se citar os estereótipos e , os quaispossuem significado <strong>de</strong> utilização para incluir um comportamento comum <strong>de</strong> um caso <strong>de</strong> usoincluído para um caso <strong>de</strong> uso base, e utilização para incluir um comportamento opcional <strong>de</strong>um caso <strong>de</strong> uso extensor para um caso <strong>de</strong> uso estendido, respectivamente.O processo <strong>de</strong> aprendizado da técnica não necessita <strong>de</strong> muito esforço, além <strong>de</strong> existiremdiversas ferramentas computacionais específicas que auxiliam o processo <strong>de</strong> construção dosdiagramas.A inserção <strong>de</strong> um sistema computacional na mo<strong>de</strong>lagem da organização utilizando Casos<strong>de</strong> Uso <strong>de</strong> Negócio se dá através da mudança do escopo dos Casos <strong>de</strong> Uso, partindo domo<strong>de</strong>lo <strong>de</strong> negócios para o mo<strong>de</strong>lo <strong>de</strong> sistema. Agora, diversas responsabilida<strong>de</strong>s po<strong>de</strong>rão seralocadas ao ator que irá interagir com o software, as quais representarão os requisitosfuncionais no contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong>sse sistema.Os requisitos não funcionais não são representados pela técnica, e infelizmente, não há umprocesso específico, através <strong>de</strong> diretrizes, para guiar o processo <strong>de</strong> inserção <strong>de</strong> um sistemacomputacional no mo<strong>de</strong>lo organizacional.A abordagem para a mo<strong>de</strong>lagem <strong>de</strong> negócios apresentada na metodologia <strong>de</strong><strong>de</strong>senvolvimento <strong>de</strong> software Rational Unified Process (RUP) inclui uma maneira concisa esimples <strong>de</strong> gerar requisitos <strong>de</strong> software a partir dos Casos <strong>de</strong> Uso <strong>de</strong> Negócio.De maneira geral, verifica-se na Tabela 4.1 que as técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacionalque mais se <strong>de</strong>stacam, segundo as características analisadas, são: EKD, BPMN, i* e Casos <strong>de</strong>88


Uso <strong>de</strong> Negócio. Já os mo<strong>de</strong>los utilizando Regras <strong>de</strong> Negócio e Maps se mostraram maisrestritos, não conseguindo representar diversas características importantes no contextoorganizacional, como os atores da organização e os diferentes aspectos da mesma.O principal fator negativo das técnicas EKD e BPMN, no contexto da avaliação, é o fato <strong>de</strong>ambas não fornecerem apoio na inclusão <strong>de</strong> um sistema computacional em seus mo<strong>de</strong>los.Apesar disso, EKD po<strong>de</strong> ser consi<strong>de</strong>rada uma técnica <strong>de</strong> mo<strong>de</strong>lagem organizacional bastantecompleta, conseguindo representar a maioria das características avaliadas. Já BPMN semostrou uma ótima ferramenta para mo<strong>de</strong>lar os processos <strong>de</strong> negócio da organização.As técnicas i* e Casos <strong>de</strong> Uso <strong>de</strong> Negócio foram os mo<strong>de</strong>los que mais apresentaram asdiferentes características <strong>de</strong>sejadas consi<strong>de</strong>rando o <strong>de</strong>senvolvimento <strong>de</strong> sistemascomputacionais e que foram avaliadas no estudo experimental. Ambas as técnicas conseguemrepresentar os atores e as tarefas da organização, suas notações gráficas são simples, diversasferramentas computacionais auxiliam a criação <strong>de</strong> seus mo<strong>de</strong>los, possuem trabalhos on<strong>de</strong> asmesmas são integradas a mo<strong>de</strong>los funcionais, e, principalmente, fornecem apoio na inserçãodo sistema computacional em suas mo<strong>de</strong>lagens.Os pontos negativos da técnica i* são: a impossibilida<strong>de</strong> <strong>de</strong> a mesma representar as regras<strong>de</strong> negócio do ambiente organizacional e a falta <strong>de</strong> uma característica que contribua com uma<strong>de</strong>terminada sequencialida<strong>de</strong> na execução das suas tarefas e subtarefas. Já Casos <strong>de</strong> Uso <strong>de</strong>Negócio não consegue representar os objetivos e recursos da organização, e as <strong>de</strong>pendênciasentre seus atores.Sendo assim, i* po<strong>de</strong> ser consi<strong>de</strong>rada a técnica que mais se <strong>de</strong>stacou na avaliaçãorealizada, pois permite, <strong>de</strong> forma abrangente, representar vários aspectos do contextoorganizacional, como os atores envolvidos e suas <strong>de</strong>pendências, objetivos, recursos e tarefas,além <strong>de</strong> possibilitar a alocação <strong>de</strong> responsabilida<strong>de</strong>s ao sistema computacional inserido comoum novo ator na mo<strong>de</strong>lagem da organização, permitindo representar tanto requisitosfuncionais como não funcionais <strong>de</strong>sse novo sistema. Além disso, inúmeros trabalhos auxiliama utilização da técnica i* fornecendo diretrizes para a integração da mesma a mo<strong>de</strong>losfuncionais (Yu et al., 2011).4.3 Consi<strong>de</strong>rações FinaisEste capítulo apresentou um estudo comparativo entre as técnicas <strong>de</strong> mo<strong>de</strong>lagemorganizacional estudadas no Capítulo 3, e uma posterior avaliação <strong>de</strong>sses mo<strong>de</strong>los.89


Para o estudo comparativo foi utilizado um estudo <strong>de</strong> caso real fornecido por uma empresa<strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software na área <strong>de</strong> concessionários <strong>de</strong> veículos e implementosagrícolas da região oeste do Paraná. Esse estudo <strong>de</strong> caso se contextualiza através <strong>de</strong> um dosprincipais produtos da organização, um sistema <strong>de</strong> gerenciamento comercial e <strong>de</strong>concessionárias, o qual necessitou uma nova funcionalida<strong>de</strong> no seu sistema <strong>de</strong> compras,visando auxiliar na <strong>de</strong>terminação do menor preço para efetuar a compra <strong>de</strong> itens.Com o intuito <strong>de</strong> que o estudo comparativo fornecesse resultados válidos, o mesmo foiorganizado, controlado e acompanhado por princípios introduzidos pela Engenharia <strong>de</strong>Software Experimental, <strong>de</strong>stacados no Capítulo 2. Dessa forma, a estrutura da experimentaçãoatravés da abordagem GQM foi composta da seguinte maneira: o objetivo do estudo é analisaras técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional, com a finalida<strong>de</strong> <strong>de</strong> comparar as suascaracterísticas, com respeito a representativida<strong>de</strong> dos requisitos organizacionais, do ponto <strong>de</strong>vista dos stakehol<strong>de</strong>rs, no contexto <strong>de</strong> pequenas e médias organizações. Ainda através dametodologia GQM, diversas questões e métricas foram estipuladas, visando avaliar asdiferentes características <strong>de</strong>sejáveis para um mo<strong>de</strong>lo organizacional no contexto <strong>de</strong><strong>de</strong>senvolvimento <strong>de</strong> sistemas computacionais.A partir do estudo <strong>de</strong> caso fornecido e da estrutura <strong>de</strong> experimentação criada, oexperimento então pô<strong>de</strong> ser realizado. Para isso, o estudo <strong>de</strong> caso foi mo<strong>de</strong>lado conformecada uma das diferentes técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional, exceto Workflows, pois foioptado pela sua ocultação <strong>de</strong>vido ao fato <strong>de</strong> que a técnica BPMN fornece uma notação gráficapadronizada para <strong>de</strong>senhar processos <strong>de</strong> workflows.Após a utilização das técnicas, a coleta <strong>de</strong> dados da experimentação foi realizada, o queincluiu uma entrevista ao analista <strong>de</strong> processos da empresa que forneceu o estudo <strong>de</strong> caso.Após a obtenção dos resultados, esses foram disponibilizados em uma tabela informando ascaracterísticas encontradas em cada técnica.Concluído o estudo comparativo, uma avaliação crítica dos mo<strong>de</strong>los organizacionais foiabordada. Nela, pô<strong>de</strong>-se concluir que as técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional que mais se<strong>de</strong>stacaram, segundo as características analisadas, foram: EKD, BPMN, i* e Casos <strong>de</strong> Uso <strong>de</strong>Negócio. Já os mo<strong>de</strong>los utilizando Regras <strong>de</strong> Negócio e Maps se mostraram mais restritos.O fato <strong>de</strong> não fornecer apoio na inclusão <strong>de</strong> um sistema computacional na sua mo<strong>de</strong>lagemacabou prejudicando a avaliação das técnicas EKD e BPMN. Mesmo assim, EKD foi90


consi<strong>de</strong>rada uma técnica <strong>de</strong> mo<strong>de</strong>lagem organizacional bastante completa e BPMN uma ótimaferramenta para mo<strong>de</strong>lar processos <strong>de</strong> negócio da organização.Em relação às técnicas i* e Casos <strong>de</strong> Uso <strong>de</strong> Negócio, as mesmas foram as que maisapresentaram as diferentes características <strong>de</strong>sejadas consi<strong>de</strong>rando o <strong>de</strong>senvolvimento <strong>de</strong>sistemas computacionais e que foram avaliadas no estudo experimental.Os pontos negativos da técnica i* é a impossibilida<strong>de</strong> da mesma representar as regras <strong>de</strong>negócio do ambiente organizacional e falta <strong>de</strong> sequencialida<strong>de</strong> na execução das suas tarefas.Já Casos <strong>de</strong> Uso <strong>de</strong> Negócio não consegue representar os objetivos e recursos da organização,e as <strong>de</strong>pendências entre seus atores.Em resumo, i* foi consi<strong>de</strong>rada a técnica que mais se <strong>de</strong>stacou na avaliação realizada, poispermite representar diferentes aspectos da organização e também possibilita a alocação <strong>de</strong>responsabilida<strong>de</strong>s ao sistema computacional inserido como um novo ator na mo<strong>de</strong>lagem daorganização. Outro fator positivo são os diversos trabalhos que auxiliam a utilização datécnica i* através <strong>de</strong> diretrizes que permitem a integração da mesma a mo<strong>de</strong>los funcionais(Yu et al., 2011).91


Capítulo 5Consi<strong>de</strong>rações FinaisApresentou-se inicialmente neste trabalho uma breve retrospectiva dos principais conceitosda Engenharia <strong>de</strong> Requisitos, subárea da Engenharia <strong>de</strong> Software, introduzindo tambémalgumas <strong>de</strong>finições a respeito da Engenharia <strong>de</strong> Software Experimental, disciplina muitoimportante para a ES, on<strong>de</strong> há uma compreensão cada vez maior na comunida<strong>de</strong> <strong>de</strong> que osestudos empíricos são necessários para avaliar, <strong>de</strong>senvolver ou melhorar processos, métodos eferramentas para <strong>de</strong>senvolvimento <strong>de</strong> software e manutenção dos mesmos.Com relação à Engenharia <strong>de</strong> Software Experimental, foi estudada a metodologia <strong>de</strong>experimentação GQM (Goal/Question/Metric), uma abordagem orientada a metas e utilizadaem Engenharia <strong>de</strong> Software para a medição <strong>de</strong> produtos e processos <strong>de</strong> software. Essaabordagem apresenta um mecanismo eficaz para planejamento, <strong>de</strong>finição <strong>de</strong> objetivos damedição e avaliação.Posteriormente, foi apresentada uma visão a respeito da fase <strong>de</strong> mo<strong>de</strong>lagem organizacionalno contexto <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> sistemas computacionais. A representação doconhecimento sobre processos organizacionais e relacionamentos entre os membros <strong>de</strong> umaorganização são muito úteis para uma a<strong>de</strong>quada compreensão da mesma, resultando naelicitação mais efetiva e consistente dos requisitos <strong>de</strong> sistemas computacionais pretendidos.Dessa forma, a partir da compreensão da estrutura e ambiente organizacional, osengenheiros <strong>de</strong> requisitos são capazes <strong>de</strong> <strong>de</strong>finir como o sistema computacional pretendidoconseguirá satisfazer os objetivos da empresa, por que ele é necessário, quais as alternativasexistentes, quais as implicações das alternativas para as várias partes interessadas, entre outrosaspectos.Para tanto, diversas técnicas <strong>de</strong> mo<strong>de</strong>lagem organizacional foram abordadas, como: EKD,BPMN, i*, Workflows, Regras <strong>de</strong> Negócio, Maps e Casos <strong>de</strong> Uso <strong>de</strong> Negócio. Destaca-se que92


vários elementos nesses mo<strong>de</strong>los po<strong>de</strong>m ser utilizados e mapeados para requisitos funcionaise não funcionais do sistema pretendido.Sendo assim, um experimento comparativo entre essas diferentes técnicas <strong>de</strong> mo<strong>de</strong>lagemorganizacional foi realizado, visando avaliar as características e qualida<strong>de</strong>s existentes nosmo<strong>de</strong>los e no processo <strong>de</strong> <strong>de</strong>senvolvimento <strong>de</strong> software. Para este fim, uma empresa<strong>de</strong>senvolvedora <strong>de</strong> software da região oeste do Paraná, na área <strong>de</strong> concessionárias <strong>de</strong> veículose implementos agrícolas, forneceu um estudo <strong>de</strong> caso real que envolveu o <strong>de</strong>senvolvimento <strong>de</strong>um novo módulo para o sistema <strong>de</strong> compras <strong>de</strong> um software <strong>de</strong> gerenciamento comercial e <strong>de</strong>concessionárias, o qual foi mo<strong>de</strong>lado conforme cada uma das diferentes técnicas estudadas,com exceção <strong>de</strong> Workflows, pois foi optado pela sua ocultação <strong>de</strong>vido ao fato <strong>de</strong> que a técnicaBPMN fornece uma notação gráfica padronizada para <strong>de</strong>senhar processos <strong>de</strong> workflows.Com o intuito <strong>de</strong> que o estudo comparativo fornecesse resultados válidos, o mesmo foiorganizado, controlado e acompanhado por princípios introduzidos pela Engenharia <strong>de</strong>Software Experimental, incluindo a abordagem GQM.Após a utilização das técnicas, a coleta <strong>de</strong> dados da experimentação foi realizada, o queincluiu uma entrevista ao analista <strong>de</strong> processos da empresa que forneceu o estudo <strong>de</strong> caso.Após a obtenção dos resultados, esses foram disponibilizados em uma tabela informando ascaracterísticas encontradas em cada técnica.Com base nesse experimento, foi realizada uma avaliação crítica a respeito das técnicas <strong>de</strong>mo<strong>de</strong>lagem organizacional estudadas. Consequentemente, po<strong>de</strong>-se concluir que as técnicasque mais se <strong>de</strong>stacaram, segundo as características analisadas, foram: EKD, BPMN, i* eCasos <strong>de</strong> Uso <strong>de</strong> Negócio. Já os mo<strong>de</strong>los utilizando Regras <strong>de</strong> Negócio e Maps foram os maisrestritos.Uma característica muito importante no contexto da avaliação das técnicas foi o fato <strong>de</strong> omo<strong>de</strong>lo permitir ou não a inclusão <strong>de</strong> um sistema computacional na sua mo<strong>de</strong>lagem. Issoimplicou pontos positivos para as técnicas i* e Casos <strong>de</strong> Uso <strong>de</strong> Negócio, por permitirem, enegativos para EKD e BPMN, por não permitirem. Mesmo assim, EKD foi consi<strong>de</strong>rada umatécnica <strong>de</strong> mo<strong>de</strong>lagem organizacional bastante completa e BPMN uma gran<strong>de</strong> ferramenta paramo<strong>de</strong>lar os processos <strong>de</strong> negócio da organização.Já em relação às técnicas i* e Casos <strong>de</strong> Uso <strong>de</strong> Negócio, as mesmas foram as que maisapresentaram as diferentes características <strong>de</strong>sejadas consi<strong>de</strong>rando o <strong>de</strong>senvolvimento <strong>de</strong>sistemas computacionais e que foram avaliadas no estudo experimental. Infelizmente, Casos93


<strong>de</strong> Uso <strong>de</strong> Negócio não consegue representar os objetivos e recursos da organização, e as<strong>de</strong>pendências entre seus atores, características essenciais para uma melhor compreensão doambiente organizacional.Por fim, i* foi consi<strong>de</strong>rada a técnica que mais se <strong>de</strong>stacou na avaliação realizada, poispermitiu representar diferentes aspectos da organização e também possibilitou a alocação <strong>de</strong>responsabilida<strong>de</strong>s ao sistema computacional inserido como um novo ator na mo<strong>de</strong>lagem doambiente organizacional. Outro fator positivo são os diversos trabalhos que auxiliam autilização da técnica i* através <strong>de</strong> diretrizes que permitem a integração da mesma a mo<strong>de</strong>losfuncionais, apresentados em (Yu et al., 2011).Po<strong>de</strong>-se citar como <strong>de</strong>ficiência da técnica i* o fato <strong>de</strong> não conseguir representar as regras<strong>de</strong> negócio envolvidas e representar apenas parcialmente os processos <strong>de</strong> negócio, faltandolheuma característica que atribua <strong>de</strong>terminada sequencialida<strong>de</strong> das ativida<strong>de</strong>s na execuçãodas suas tarefas e subtarefas.Como trabalhos futuros, preten<strong>de</strong>-se esten<strong>de</strong>r a avaliação comparativa das técnicas a outrosestudos <strong>de</strong> caso, em empresas <strong>de</strong> maior porte. Também <strong>de</strong>seja-se <strong>de</strong>senvolver um estudo quepossibilite a integração <strong>de</strong> duas ou mais técnicas aqui estudadas, bem como formalizar aabordagem utilizada na técnica Maps, on<strong>de</strong> um novo diagrama Map <strong>de</strong>verá ser <strong>de</strong>senvolvidoquando uma <strong>de</strong>terminada estratégia para atingir certo objetivo é composta por um sistemacomputacional. Esse novo Map <strong>de</strong>verá conter as estratégias e objetivos internos ao softwareque possibilitam o alcance da meta pretendida. Por fim, pensa-se na realização <strong>de</strong> um estudomais aprofundado a respeito da técnica EKD, com o objetivo <strong>de</strong> <strong>de</strong>finir diretrizes quepermitam o mapeamento <strong>de</strong> um sistema computacional na sua mo<strong>de</strong>lagem.94


Referências BibliográficasALENCAR, F. M. R. Mapeando a Mo<strong>de</strong>lagem <strong>Organizacional</strong> em EspecificaçõesPrecisas. Tese (Tese <strong>de</strong> Doutorado) – Engenharia <strong>de</strong> Software – Centro <strong>de</strong> Informática– Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Pernambuco, Recife, PE, Dezembro, 1999.ANTON, A. Goal Based Requirements Analysis. In: SECOND INTERNATIONALCONFERENCE ON REQUIREMENTS ENGINEERING – ICRE’96, 1996.Proceedings..., Colorado Springs, Colorado, USA: [s.n.], 1996, p. 136–144.BASILI, V. R. The Experimental Paradigm in Software Engineering. In:INTERNATIONAL WORKSHOP ON EXPERIMENTAL SOFTWARE ENGINEERINGISSUES: CRITICAL ASSESSMENT AND FUTURE DIRECTIONS, 1992.Proceedings..., Dagstuhl Castle, Germany: Kindle Edition, 1992, p. 3-12.BASILI, V. R. The Role of Experimentation in Software Engineering: Past, Current, andFuture. In: 18th INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING– ICSE 1996, 1996. Proceedings..., Berlin, Germany: IEEE Computer Society, 1996,p. 442-449.BASILI, V., CALDEIRA, G., ROMBACH, H. Encyclopedia of Software Engineering,capítulo: Experience Factory, p. 469-479, John Wiley & Sons, v. 1, 1994.BASILI, V. R, ROMBACH, D., The TAME Project: Towards Improvement-OrientedSoftware Environments. IEEE Transactions on Software Engineering, v. 14, n. 6, p.758- 773, June, 1988.BASILI, V. R., SELBY, R. W., HUTCHENS, D. H. Experimentation in SoftwareEngineering. IEEE Transactions on Software Engineering, v. 12, n. 7, p. 733-743,July, 1986.BASILI, V. R., ROMBACH, D., SCHNEIDER, K., KITCHENHAM, B., PFAHL, D.,SELBY, R. W. Empirical Software Engineering Issues: Critical Assessment andFuture Directions. 1 ed., Germany: Springer, 2006.95


BIDER, I., JOHANNESSON, P. Tutorial on: Mo<strong>de</strong>ling Dynamics of Business Processes –Key for Building Next Generation of Business Information Systems. In: THE 21stINTERNATIONAL CONFERENCE ON CONCEPTUAL MODELING - ER2002, 2002.Proceedings..., Tampere, FL: [s.n.], 2002, p. 7-11.BOEHM, B. W. Software Risk Management. 1 ed., Washington: IEEE Computer SocietyPress, 1989.BOOCH, G., JACOBSON, I., RUMBAUGH, J. The Unified Mo<strong>de</strong>ling LanguageReference Manual. 1 ed., Addison-Wesley, 1999.BPMI. Business Process Management Initiative. http://www.bpmi.org, Consultado naInternet em: 20/05/2010.BPMN. Business Process Mo<strong>de</strong>ling Notation. http://www.bpmn.org, Consultado naInternet em: 20/05/2010a.BPMN. Business Process Mo<strong>de</strong>ling Notation. http://www.omg.org/spec/BPMN/1.2,Consultado na Internet em: 20/05/2010b.BRG. GUIDE Business Rules Project. Final Report, Revisão 1.2, Oct, 1997,http://www.businessrulesgroup.org. Consultado na Internet em: 20/05/2010.BUBENKO JR., J. A., KIRIKOVA, M. Enterprise mo<strong>de</strong>lling: improving the quality ofrequirements specification. In: IRIS-17 <strong>INF</strong>ORMATION SYSTEMS RESEARCHSEMINAR IN SCANDINAVA, 1994. Proceedings..., Oulu: [s.n.], 1994.BUBENKO JR, J. A., STIRNA, J., BRASH, D. EKD user gui<strong>de</strong>. Royal Institute ofTechnology, Dpt of computer and systems sciences, Stockholm, 1998.BUBENKO JR, J. A., WANGLER, B. Objectives driven capture of business rules andinformation systems requirements. In: INTERNATIONAL CONFERENCE ONSYSTEMS, MAN AND CYBERNETICS, 1993. Proceedings..., Le Touquet: [s.n.], 1993,p. 670-677.CANÓS, J. H., PENADÉS, M. C., CARSÍ, J. A. From Software Processes to WorkflowProcesses: the Workflow Lifecycle, In: INTERNATIONAL SOFTWARETECHNOLOGY WORKSHOP, 1999. Proceedings..., Grenoble: [s.n.], 1999.CASTRO, J. F. B. Introdução a Engenharia <strong>de</strong> Requisitos. In: JORNADA DEATUALIZAÇÃO EM <strong>INF</strong>ORMÁTICA DO XIV CONGRESSO DA SOCIEDADEBRASILEIRA DE COMPUTAÇÃO, 1995. Proceedings..., Canela: SBC, 1995.96


CASTRO, J. F. B., ALENCAR, F. M. R., SANTANDER, V. F. A., LOURENÇO, C. T. L.Integration of i* and Object Oriented Mo<strong>de</strong>ls. In: YU, E., MYLOPOULOS, J.,MAIDEN, N., GIORGINI, P., Social Mo<strong>de</strong>lling for Requirements Engineering.Cambridge, MA: MIT Press, 2010.CASTRO, J. F. B., KOLP, M., MYLOPOULOS, J. Towards Requirements-DrivenInformation Systems Engineering: The Tropos Project, Information Systems, Elsevier,Amsterdam, The Netherlands, 2002.CHICHINELLI, M. Contribuição da Técnica <strong>de</strong> Mo<strong>de</strong>lagem <strong>Organizacional</strong> I* aoProcesso <strong>de</strong> Engenharia <strong>de</strong> Requisitos, com <strong>de</strong>staque aos Requisitos Não Funcionais.Dissertação (Dissertação <strong>de</strong> Mestrado) – Engenharia <strong>de</strong> Software – Universida<strong>de</strong> <strong>de</strong>São Paulo, São Carlos, SP, 2002. Dissertação.CHUNG, L., NIXON, B. A., YU, E., MYLOPOULOS, J. Non-Functional Requirements inSoftware Engineering. Software Engineering – Kluwer Aca<strong>de</strong>mic Publishers. 2000.Monografia.CONRADI, R., BASILI, V., CARVER, J., SHULL, F., TRAVASSOS, G. A PragmaticDocument Standards for and Experience Library: Roles, Documents, Contents, andStructure. University of Maryland, April 2001, Technical Report CS-TR-4235.CRUZ NETO, G. G. Estudos qualitativos para elicitação <strong>de</strong> requisitos: uma abordagemque integra análise sócio-cultural e mo<strong>de</strong>lagem organizacional. Tese (Tese <strong>de</strong>Doutorado) – Engenharia <strong>de</strong> Software – Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Pernambuco, Recife,PE, 2008.DAVIS, A M. Software Requirements: Objects, Functions, and States. New Jersey: P T RPrentice Hall, Englewood Cliffs, 1993.DUARTE, M. A. Workflow – Fluxo <strong>de</strong> Trabalho,http://www.catalao.ufg.br/cc/disc/ti/wfl_aula.pdf, Consultado na Internet em:15/06/2010.DUMAS, M., AALST, W. M. P., HOFSTEDE, A. H. Process-Aware Information Systems:Bridging People and Software Through Process Technology. Wiley-Interscience,2005.ERIKSSON, H. E., PENKER, M. Business Mo<strong>de</strong>ling With UML. New York: John Wiley& Sons, 2000.97


ESTRADA, H., MARTÍNEZ, A., PASTOR, O., ORTIZ, J., RÍOS, O. A. GeneraciónAutomática <strong>de</strong> un Esquema Conceptual OO a Partir <strong>de</strong> un Mo<strong>de</strong>lo Conceptual <strong>de</strong>Flujo <strong>de</strong> Trabajo. In: ANAIS DO WER01 – WORKSHOP EM ENGENHARIA DEREQUISITOS, 2001. Proceedings..., Buenos Aires: [s.n.], 2001, p. 223-245.ESTRADA, H., MARTÍNEZ, A., PASTOR, O., SÁNCHEZ, J. Generación <strong>de</strong>Especificaciones <strong>de</strong> Requisitos <strong>de</strong> Software a partir <strong>de</strong> Mo<strong>de</strong>los <strong>de</strong> Negocios: unenfoque basado en metas, In: ANAIS DO WER02 – WORKSHOP EM ENGENHARIADE REQUISITOS, 2002. Proceedings..., Valencia: [s.n.], 2002, p. 11-12.FENTON, N. How Effective Are Software Engineering Methods?. Journal Systems andSoftware, v. 22, n. 2, p. 141-146, 1993.FISCHER, L. Workflow Handbook. WFMC, 2005.GEORGAKOPOULOS, D., HORNICK, M., SHETH, A. An Overview of WorkflowManagement: From Process Mo<strong>de</strong>ling to Workflow Automation. Distributed andParallel Databases, n. 3, p. 119-153, Mar. 1995.GOMES, A., OLIVEIRA, K. M., ROCHA, A. R. Métricas para Medição e Melhoria <strong>de</strong>Processo <strong>de</strong> Software. COPPE/UFRJ - Programa <strong>de</strong> Engenharia <strong>de</strong> Sistemas eComputação, Rio <strong>de</strong> Janeiro, 2001.GOTTESDIENER, E. Business rules show Power, promise. Application DevelopmentTrends, v. 4, n. 3, p. 36-43, March, 1997.GRESSE, C. B., HOISL, J. W. A Process Mo<strong>de</strong>l for GQM - Based Measurement.Kaiserslautern, Germany: University of Kaiserslautern, Department of ComputerScience, 1995. Technical Report STTI-95-04-E.HAMMER, M., CHAMPY, J. Reengineering the Corporation: A Manifesto for BusinessRevolution. HarperBusiness, 1993.HERBST, H. Business Rules in system analysis: a meta-mo<strong>de</strong>l and repository system.Information Systems, v. 21, n. 2, p. 147-166, 1996.IEEE. IEEE Software Engineering Standards Collection. Computer Society Press, 1997.IEEE. Std. 830 IEEE Gui<strong>de</strong> to Software Requirements Specification. The Institute ofElectrical and Electronics Engineers, New York, EUA, 1984.ISO. IEC 9126 Standard for information technology: software products evaluation: qualitycaracteristics and gui<strong>de</strong>lines for theirs use. Geneva, 1988.98


JACOBSON, I. Object Oriented Software Engineering: A Use Case Driven Approach.Addison-Wesley, 1992.JACOBSON, I., BOOCH, G., RUMBAUGH, J. The Unified Software DevelopmentProcess. Addison-Wesley, 1999.JACOBSON, I., ERICSON, M., JACOBSON, A. The Object Technology. Addson-Wesley,1994.KAABI, R. M., SOUVEYET, C., ROLLAND, C. Eliciting Service Composition in a GoalDriven Manner. In: 2 nd INTERNATIONAL CONFERENCE ON SERVICE ORIENTEDCOMPUTING, 2004. Proceedings…, USA: [s.n.], 2004, p. 308-315.KATZENSTEIN, G., LERCH, F. J. Beneath the surface of organizational processes: asocial representation framework for business process re<strong>de</strong>sign. ACM Transactions OnInformation, v. 18, n. 4, p. 383-422, October, 2000.KAVAKLI, V., LOUCOPOULOS, P. Goal-Driven Business Process Analysis -Application in Electricity Deregulation. Information Systems, v. 24, n. 3, p. 187-207,1999.KOLIADIS, G., VRANESEVIC, A., BHUIYAN, M., KRISHNA, A., GHOSE, A.Combining i* and BPMN for Business Process Mo<strong>de</strong>l Lifecycle Management Schoolof Information Technology and Computer Science (SITACS). University ofWollongong (UOW), Gwynneville, Australia, 2007.KOTONYA, G., SOMMERVILLE, I. Requirements Engineering: Processes andTechniques. 1 ed., John Wiley & Sons, 1998.LEITE, J. C. S. P., LEONARDI, M. C. Business rules as organizational policies. In:INTERNATIONAL WORKSHOP ON SOFTWARE SPECIFICATION & DESIGN,1998. Proceedings..., Los Almitos: IEEE CPS, 1998, p. 68-76.LOUCOPOULOS, P., KARAKOSTAS, V. System Requirements Engineering. 1 ed.,McGraw-Hill, 1995.MACAULAY, L. Requirements Engineering, 1 ed., London: Springer, 1996.OUYANG, C., AALST, W. M. P., DUMAS, M., HOFSTEDE, A. H. M. TranslatingBPMN to BPEL. BPM Center Report, 2006.PÁDUA, S. I. D., CAZARINI, E. W., INAMASU, R. Y. Mo<strong>de</strong>lagem <strong>Organizacional</strong>:Captura dos Requisitos Organizacionais no Desenvolvimento <strong>de</strong> Sistemas <strong>de</strong>Informação. Gestão e Produção, v. 11, n. 2, p. 197-209, mai-ago, 2004.99


PENADÉS, M. C., CANÓS, J. H., SÁNCHEZ, J. Automatic Derivation of WorkflowSpecifications from Organizational Structures and Use Cases. In: ANAIS DO WER01 –WORKSHOP EM ENGENHARIA DE REQUISITOS, 2001. Proceedings..., BuenosAires: [s.n.], 2001, p. 166-180.ROLLAND, C. Conceptual Mo<strong>de</strong>lling in Information Systems Engineering, Capítulo:Capturing System Intentionality with Maps, p. 141-158, Springer, 2007.ROLLAND, C., NURCAN, S., GROSZ, G. A Decision making pattern for guiding theenterprise knowledge <strong>de</strong>velopment process. Journal of Information and SoftwareTechnology, v. 42, p. 313-331, 2000.ROLLAND, C., PRAKASH, N., BENJAMEN, A. A Multi-Mo<strong>de</strong>l View of ProcessMo<strong>de</strong>lling. Requirements Engineering, v. 4, n. 4, p. 169-187, 1999.ROSCA, D., GREENSPAN, S., FEBLOWITZ, M., WILD, C. A Decision Makingmethodology in Support of the Business Rules Lifecycle. In: IEEE INTERNATIONALSYMPOSIUM ON REQUIREMENTS ENGINEERING - RE97, 1997. Proceedings...,Annapolis, MD, U.S.A.: [s.n.], 1997, p. 236-246.ROSCA, D., WILD, C. Business rules in the real world: a <strong>de</strong>cision support approach. In:EIGHTH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING ANDKNOWLEDGE ENGINEERING – SEKE’96, 1996. Proceedings…, Lake Tahoe,California, USA: [s.n.], 1996, p. 121-128.SANTANDER, V. F. A. Integrando Mo<strong>de</strong>lagem <strong>Organizacional</strong> com Mo<strong>de</strong>lagemFuncional. Tese (Tese <strong>de</strong> Doutorado) – Engenharia <strong>de</strong> Software – Universida<strong>de</strong>Fe<strong>de</strong>ral <strong>de</strong> Pernambuco, Recife, PE, 2002.SANTANDER, V. F. A., CASTRO, J. F. Deriving Use Cases from OrganizationalMo<strong>de</strong>ling. In: IEEE JOINT INTERNATIONAL REQUIREMENTES ENGINEERINGCONFERENCE – RE02, 2002. Proceedings..., University of Essen, Germany: [s.n.],2002, p. 32–39.SANTANDER, V. F. A., CASTRO, J. F. B. Desenvolvendo Use Cases a partir <strong>de</strong>Mo<strong>de</strong>lagem <strong>Organizacional</strong>. In: WORKSHOP DE ENGENHARIA DE REQUISITOS,2000. Proceedings..., Rio <strong>de</strong> Janeiro: [s.n.], 2000, p. 158–179.SANTANDER, V. F. A., SILVA, D. R. Requirements Engineering Contributions on theDevelopment of Educational Software for the Blind or People with Impaired Vision –An Experience Account. CLEI Electronic Journal, v. 9, n. 1, 2006.100


SANTOS, R. F. Mapeamento e Mo<strong>de</strong>lagem <strong>de</strong> Processos <strong>de</strong> Negócios com BPMN,http://www.scribd.com/doc/18310726/Mapeamento-e-Mo<strong>de</strong>lagem-<strong>de</strong>-Processos-<strong>de</strong>-Negocio-com-BPMN, Consultado na Internet em: 15/05/2010.SMITH, H., FINGAR, P. Business Process Management – The Third Wave. Florida:Meghan-Kiffer Press, 2003.SOLINGEN, R., BERGHOUT, E. The Goal/Question/Metric Method: a Practical Gui<strong>de</strong>for Quality Improvement of Software Development. UK: McGraw-Hill, 1999.SOMMERVILLE, I. Software engineering. 6 ed., Addison-Wesley, 2001.SOMMERVILLE, I., SAWYER, P. Requirements Engineering: A Good Practice Gui<strong>de</strong>.John Wiley & Sons, 1997.TEIXEIRA, E. P. Integrando a Teoria da Ativida<strong>de</strong> e a Técnica i* na fase <strong>de</strong> RequisitosDetalhados. Monografia (Monografia <strong>de</strong> Curso) – Engenharia <strong>de</strong> Software –Universida<strong>de</strong> Estadual do Oeste do Paraná, Cascavel, PR, 2009. Monografia.TRAVASSOS, G. H., GUROV, D., AMARAL, E. A. G. Introdução à Engenharia <strong>de</strong>Software Experimental. Rio <strong>de</strong> Janeiro: COPPE/UFRJ, Programa <strong>de</strong> Engenharia <strong>de</strong>Sistemas e Computação, 2002. Relatório Técnico RT-ES-590/02.TROVA, E. C. V. A importância da mo<strong>de</strong>lagem dos processos <strong>de</strong> negócios para o<strong>de</strong>senvolvimento <strong>de</strong> sistema <strong>de</strong> informação: uma aplicação em gestão e controleacadêmico. Dissertação (Dissertação <strong>de</strong> Mestrado) – Engenharia <strong>de</strong> Software –Universida<strong>de</strong> Metodista <strong>de</strong> Piracicaba, Santa Bárbara D‟Oeste, 2004. Dissertação.VARA, J. L., FORTUNA, M. H., SÁNCHEZ, J., WERNER, C. M. L., BORGES, M. R. S.A Requirements Engineering Approach for Data Mo<strong>de</strong>lling of Process-AwareInformation Systems. In: 12 TH INTERNATIONAL CONFERENCE ON BUSINESS<strong>INF</strong>ORMATION SYSTEMS – BIS 2009, 2009. Proceedings…, Poznan, Poland: [s.n.],2009, p. 133-144.VICENTE, A. A., SANTANDER, V. F. A., CASTRO, J. F. B., SILVA, I. F., MATUS, F.G. R. JGOOSE: A Requirements Engineering Tool to Integrate i* OrganizationalMo<strong>de</strong>ling with User cases in Uml. Ingeniare. Revista chilena <strong>de</strong> ingeniería, v. 17, n. 1,p. 6-20, 2009.WFMC. The Workflow Management Coalition. http://www.WFMC.org, Consultado naInternet em: 20/05/2010.101


WHITE, S. Business Process Mo<strong>de</strong>ling Notation (BPMN) Version 1.0. Business ProcessManagement Initiative, May, 2004.WOHLIN, C., RUNESON, P., HOST, M., OHLSSON, M. C., REGNELL, B., WESSLÉN,A. Experimentation in Software Engineering: an Introduction. 1 ed., Springer, 2000.YU, E. Mo<strong>de</strong>lling Strategic Relationships for Processes Reengineering. Thesis (PhDThesis) – Software Engineering – University of Toronto, Toronto, Canadá, 1995a.YU, E. Mo<strong>de</strong>ls for Supporting the Re<strong>de</strong>sign of Organizational Work. In: CONFERENCEON ORGANIZATIONAL COMPUTING SYSTEMS - COOCS'95, 1995. Proceedings...,Milpitas, California, USA: [s.n.], 1995b, p. 225-236.YU, E. Towards Mo<strong>de</strong>lling and Reasoning Support for Early-Phase RequirementsEngineering. In: 3rd IEEE INTERNATIONAL SYMPOSIUM ON REQUIREMENTSENGINEERING - RE97, 1997. Proceedings..., Annapolis, MD, USA: [s.n.], 1995, p.226-235.YU, E., BOIS, P., MYLOPOULOS, J. From Organization Mo<strong>de</strong>ls to System Requirements- A Cooperating Agents Approach. In: 3rd INTERNATIONAL CONFERENCE ONCOOPERATIVE <strong>INF</strong>ORMATION SYSTEMS - COOPIS95, 1995. Proceedings...,Vienna, Austria: [s.n.], 1995, p. 2-9.YU, E., GIORGINI, P., MAIDEN, N., MYLOPOULOS, J. Social Mo<strong>de</strong>ling forRequirements Engineering. (to appear), 1 ed., The MIT Press, 2011.102

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!