Você está na página 1de 68

FACULDADE DE COMPUTAO - FACOM UNIVERSIDADE FEDERAL DO MATO GROSSO DO SUL UFMS PROGRAMA DE PS-GRADUAO EM CINCIA DA COMPUTAO

GERALDO BARBOSA LANDRE

Uma Abordagem para Linha de Processos de Negcios

CAMPO GRANDE 2012

GERALDO BARBOSA LANDRE

Uma Abordagem para Linha de Processos de Negcios

Qualificao apresentada ao Programa de Mestrado Stricto Sensu em Cincia da Computao da Faculdade de Computao, mantido pela Universidade Federal do Mato Grosso do Sul, para o Exame de Qualificao, como parte dos requisitos para a obteno do ttulo de Mestre em Cincia da Computao (rea de Concentrao: Engenharia de Software). Orientadora: Prof. Dr. Maria Istela Cagnin Machado

CAMPO GRANDE 2012

Resumo
A modelagem de processos de negcios apoia a anlise de requisitos no contexto de Engenharia de Software auxiliando auxilia na compreenso e otimizao de processos de negcios existentes nas organizaes sob a perspectiva de Gesto de Processos de Negcios. Em ambos os contextos, o reso de modelos de processos de negcios relevante por propiciar economia de tempo, esforo e custos durante a elaborao de tais modelos. Porm, imprescindvel o uso de apoio computacional oferecido pelos repositrios para alcanar todos os benefcios inerentes ao reso. Diante disso, a Engenharia de Linha de Produto de Software (ELPS), tem sido aplicada no contexto de Processos de Negcios, propiciando o desdobramento de outras reas de pesquisa como o caso das Linhas de Processos de Negcios (LPN). Nesse contexto, este trabalho pretende contribuir para que organizaes realizem atividades de modelagem de processos de negcios, no contexto da Gesto de Processos de Negcios, com menos tempo, esforo e custos associados. Para isso, este trabalho tem como objetivo definir uma abordagem eficiente para a criao e reso de LPNs utilizando a notao padro BPMN (Business Process Model and Notation). Experimentos e estudos de casos sero conduzidos para analisar e comprovar a eficincia dos resultados decorrentes deste trabalho. Palavras-chave: Linha de Produto de Software, Modelagem de Processo de Negcio, Linha de Processo de Negcio, Repositrio.

Abstract
Business process modeling supports the requirements analysis in Software Engineering context assisting on comprehension and optimization of companies' business process from the perspective of Business Process Management. In both cases, business process models reuse is relevant by providing costs, efforts and time saving during elaboration of such models. However, computational support offered by reuse repositories is indispensable to achieve all benefits of reuse. Thus, Software Product Line Engineering (SPLE) has been applied in the business process context, enabling the unfolding of other research areas such as Business Process Lines (BPL). Therefore, this work aims to contribute for that companies perform business process modeling activities, both software engineering and business process management context with less time, effort and costs associated. For this purpose, the objective of this work is to define an efficient approach to creation and reuse of business process lines using the BPMN (Business Process Model and Notation) standard notation. Experiments and case studies will be conducted to analyze and verify the efficiency of results obtained from this work.

Keywords: Software Product Line, Business Process Modeling, Business Process Line, Repository.

ii

Sumrio
CAPTULO 1 - Introduo ......................................................................... 1 1.1 Contextualizao ............................................................................... 1 1.2 Motivao e Justificativa .................................................................. 3 1.3 Objetivos do Trabalho ....................................................................... 4 1.4 Organizao da Escrita da Qualificao ........................................... 5 CAPTULO 2 - Modelagem de Negcios .................................................. 6 2.1 Consideraes Iniciais ...................................................................... 6 2.2 Conceitos e Definies ..................................................................... 6 2.3 A Notao BPMN ............................................................................. 8 2.3.1 Elementos BPMN .......................................................................... 9 2.3.2 Diagramas de Processo ................................................................ 14 2.3.3 Diagrama de Coreografia ............................................................. 15 2.3.4 Diagrama de Colaborao ............................................................ 16 2.3.5 Diagrama de Conversao ........................................................... 16 2.3.6 Armazenamento e Intercmbio de Diagramas BPMN ................. 17 2.4 Consideraes Finais ...................................................................... 18 CAPTULO 3 - Engenharia de Linha de Produto de Software................. 19 3.1 Consideraes Iniciais .................................................................... 19 3.2 Conceitos e Definies ................................................................... 19 3.2.1 Princpios da ELPS ...................................................................... 20 3.3 Variabilidades na ELPS .................................................................. 23 3.3.1 Gerenciamento de Variabilidades ................................................ 25 3.3.2 Tipos de Variabilidade ................................................................. 25 3.3.3 Modelo Ortogonal de Variabilidades ........................................... 27 3.4 ELPS aplicada na Modelagem de Processos de Negcios .............. 30 3.4.1 Gerenciamento de Variabilidades de Processos de Negcios ...... 31 iii

3.4.2 Linhas de Processos de Negcios ................................................ 32 3.5 Consideraes Finais ...................................................................... 40 CAPTULO 4 - Repositrio de Modelagem de Processos de Negcios .. 41 4.1 Consideraes Iniciais .................................................................... 41 4.2 Framework para Repositrios de Modelos de Processos de Negcios 41 4.2.1 Modelo de Gerenciamento de Repositrios de MPN................... 42 4.2.2 Arquitetura de Referncia de Repositrios de MPN .................... 46 4.3 Consideraes Finais ...................................................................... 48 CAPTULO 5 - Proposta de Trabalho ...................................................... 49 5.1 Consideraes Iniciais .................................................................... 49 5.2 Problema e Proposta do Trabalho ................................................... 49 5.3 Metodologia e Cronograma ............................................................ 50 5.4 Consideraes Finais ...................................................................... 53 Referncias .................................................................................................. 53

iv

Lista de Figuras
Figura 2.1 Exemplo de processo privado de premiao de candidatos (adaptado de OMG, 2011). .................................................................................................................. 14 Figura 2.2 Exemplo de processo pblico de um consultrio mdico (adaptado de OMG, 2011). .................................................................................................................. 15 Figura 2.3 Exemplo de coreografia de um consultrio mdico (adaptado de OMG, 2011). .............................................................................................................................. 16 Figura 2.4 Exemplo de colaborao de um consultrio mdico (adaptado de OMG, 2011). .............................................................................................................................. 16 Figura 2.5 Exemplo de conversao de um consultrio mdico. .............................. 17 Figura 3.1 Processos da ELPS (adaptado de Pohl et al. (2005), p. 22). ................... 21 Figura 3.2 Variabilidades em diferentes nveis de abstrao. (Pohl et al., 2005, p. 72). .................................................................................................................................. 27 Figura 3.3 Metamodelo simplificado do Modelo Ortogonal. (Adaptado de Pohl et al., 2005, p. 76). ............................................................................................................. 29 Figura 3.4 Elementos Grficos do Modelo Ortogonal de Variabilidades (adaptado de Pohl et al., 2005, p. 85). ............................................................................................ 29 Figura 3.5 Modelo Ortogonal de Variabilidades do Mdulo de Emisso de Relatrios. ...................................................................................................................... 30 Figura 3.6 Variabilidades do Mdulo de Emisso de Relatrios modeladas com Map. ............................................................................................................................... 33 Figura 3.7 RofPN - Uma aplicao de conceitos ELPS para reso de Processos de Negcios (MARACCI, 2010). ....................................................................................... 34 Figura 3.8 PEFP - Processo de Engenharia de Famlia de Processo (Adaptado de Schnieders e Puhlmann 2006). ..................................................................................... 37 Figura 3.9 Ponto de Variao "Pagamento" utilizando a notao vrBPMN (adaptado de Schnieders e Puhlmann, 2006). ............................................................ 38 Figura 4.1 Arquitetura de referncia de repositrio de MPN (Adaptado de Yan et al., 2012). ........................................................................................................................ 47

Lista de Quadros
Quadro 2.1 Objetos de Fluxo da notao BPMN 2.0 (adaptado de OMG, 2011). .. 10 Quadro 2.2 Elementos de Dados da notao BPMN 2.0 (adaptado de OMG, 2011). ........................................................................................................................................ 11 Quadro 2.3 Objetos de Conexo da notao BPMN 2.0 (adaptado de OMG, 2011). ........................................................................................................................................ 12 Quadro 2.4 Elementos de Agrupamento da notao BPMN 2.0 (adaptado de OMG, 2011). .............................................................................................................................. 13 Quadro 2.5 Artefatos da notao BPMN 2.0 (adaptado de OMG, 2011). ............... 14 Quadro 4.1 Modelo de gerenciamento de repositrio de MPN (Adaptado de Yan et al., 2012). .................................................................................................................... 46 Quadro 5.1 Cronograma de atividades ................................................................... 52

vi

CAPTULO 1 -Introduo
1.1 Contextualizao
Um processo de negcio 1 um conjunto de atividades dinamicamente coordenadas, executadas por pessoas ou mquinas, que visa produzir uma sada especfica para um cliente (CHANG, 2006; SMITH e FINGAR, 2003). Logo, importante que tais processos sejam documentados por meio de modelagem de processos de negcios, que pode ser usada na Engenharia de Software e tambm no contexto organizacional das empresas. No primeiro caso, uma atividade que faz parte da fase de Anlise de Requisitos para modelar os requisitos e o comportamento do software em desenvolvimento. No segundo caso, uma atividade que faz parte da Gesto de Processos de Negcios (Business Process Management) (DER AALST et al., 2003) e possui o intuito de compreender e otimizar processos de negcios existentes, bem como projetar novos processos de negcios para tornar as organizaes mais competitivas e eficientes (LAUDON e LAUDON 2011). Existem vrias notaes propostas para representar a modelagem de processos de negcios (LADEIRA et al., 2008a; BUBENKO et al., 1998; YU, 1995; BLYTH et al., 1993), uma delas a BPMN (Business Process Model and Notation2) (OMG, 2011) que se destaca por ser de fcil entendimento tanto para profissionais de TI (Tecnologia da Informao) quanto para profissionais do negcio, alm de ser a notao padro de modelagem de processos de negcios estabelecida pela OMG (Object Managment Group). Apesar dos benefcios oferecidos pela modelagem de processos de negcios, necessrio despender tempo e, consequentemente, custo para elabor-la (LADEIRA et al., 2008b). Esse problema pode ser resolvido por meio da reutilizao de modelos de processos de negcio sem (ERIKSSON e PENKER, 2000; YAMAMOTO et al., 2005; LADEIRA et al., 2008a) ou com o apoio do gerenciamento de variabilidades (ROLLAND e PRAKASH, 2000; RAZAVIAN e KHOSRAVI, 2008; MONTERO et
1

As variaes temporais do termo processo de negcio sero adotadas no texto da seguinte forma: processo de negcio refere-se a um processo especfico, processos de negcio refere-se a vrios processos de um mesmo negcio (organizao ou domnio), processos de negcios refere-se aos processos de vrios negcios.
2

A notao BPMN foi inicialmente nomeada por Business Process Modeling Notation. Posteriormente, a partir da verso 2.0, liberada em 2005, passou a ser chamada Business Process Model and Notation.

al., 2008), que uma das atividades presentes na Engenharia de Linha de Produto de Software (ELPS) (POHL et al., 2005). O gerenciamento de variabilidades no contexto de processos de negcios visa configurar um processo de negcio de forma que se adeque constantemente s realidades de uma organizao da melhor maneira possvel para acompanhar a evoluo constante da empresa e as mudanas do mercado (MONTERO et al., 2008). Sob essa perspectiva, uma abordagem para a configurao de processos de negcios baseada na associao das variabilidades dos mesmos, representadas de forma genrica, juntamente com os requisitos no funcionais requeridos pela organizao foi proposta por Santos et al. (2010). Adicionalmente, existem trabalhos que aplicam processos completos de ELPS no contexto do gerenciamento de processos de negcios (GIMENES et al., 2008; MARACCI, 2010; ROLLAND e NURCAN 2010; SCHNIEDERS e PUHLMANN, 2006). Schnieders e Puhlmann (2006) propem um processo de Linhas de Processos de Negcios (LPN) para apoiar o processo de desenvolvimento de sistemas orientados a processos3. Por outro lado, Rolland e Nurcan (2010) propem o uso de LPN para o gerenciamento de processos orientados a objetivos 4 (LEE, 1992). Maracci (2010) apresenta um processo de ELPS como apoio para o desenvolvimento de software orientado a servios 5 . Porm, observa-se a carncia na literatura do uso de LPN estritamente no contexto de modelagem de processos de negcios sob a perspectiva de Engenharia de Software e de Gesto de Processos de Negcios. Ressalta-se que para alcanar os benefcios providos pelo reso, imprescindvel o uso de apoio computacional provido pelos repositrios de reso (SAGAWA 1990, BERNSTEIN e DAYAL 1994), que possibilitam o armazenamento, busca, seleo, reso e gerenciamento (de consistncia de processos de negcios pblicos e privados, controle de acesso, controle de verses, etc.) de modelos de processos de negcios de maneira eficiente. Isso no diferente no contexto do reso de

Os processos de negcio da empresa so mapeados e constantemente evoludos. Para aprimorar a performance de um processo de negcio, o desenvolvimento de software nesse contexto destina-se construo de softwares que automatizem uma ou mais atividades dos processos mapeados.
4

O mesmo que orientado a intenes: notaes como BPMN e diagrama de atividades da UML so orientadas a atividades, assim, focam em "como" os processos so executados e mostram "o que" eles pretendem realizar. As notaes orientadas a objetivos focam em explicitar o "por qu" o processo deve ser executado.
5

Processo de desenvolvimento no qual as funcionalidades que um sistema de software deve oferecer so disponibilizadas em forma de servios Web.

modelos de processos de negcio. Sob essa perspectiva, Yan et al. (2012) definiram um framework para Repositrios de Processos de Negcios, contendo uma viso compreensvel sobre os dados e as funcionalidades comumente encontrados nesse tipo de repositrio. Assim, dada a relevncia do uso de conceitos de ELPS no gerenciamento do reso de modelos de processos de negcios e de apoio computacional para viabilizar o reso desse tipo de artefato, imprescindvel a concepo de repositrios de LPNs.

1.2

Motivao e Justificativa
Yan et al. (2012) fizeram uma comparao entre repositrios atuais de

processos de negcios encontrados na literatura e apresentaram as funcionalidades contempladas por vinte repositrios de processos de negcios estudados, por meio da definio de um framework composto por um modelo de gerenciamento e por uma arquitetura de referncia. Porm, esse framework no contempla repositrios de LPNs que de interesse deste trabalho. No contexto de tcnicas de reso de modelagem de processos de negcios, existem estudos atuais que analisam e recomendam a adoo de prticas da ELPS, em especial, o gerenciamento de variabilidades (SANTOS et al., 2010), bem como a adoo do processo completo de ELPS (GIMENES et al.,2008, MARACCI 2010, ROLLAND e NURCAN 2010, SCHNIEDERS e PUHLMANN 2006) visando o reso de modelos processos de negcios durante as atividades desse processo. A abordagem de Santos et al. (2010), considera a notao BPMN 1.2 (OMG, 2009) para modelar os processos de negcios a serem reusados associando-as com requisitos no funcionais. Essa associao entre variabilidades e requisitos no funcionais est fora do escopo deste trabalho de mestrado, no entanto, as tcnicas para configurao de processos de negcios apresentadas no trabalho supracitado so relevantes para a abordagem de LPN proposta neste trabalho. Contudo, as variabilidades so documentadas de forma genrica (por exemplo, em planilhas) sem o uso de um modelo especfico para isso. Adicionalmente, o trabalho de Santos et al. (2010) prope o uso apenas do gerenciamento de variabilidades, descartando os demais conceitos de ELPS para o reso de processos de negcios. Maracci (2010) apresenta a adoo de prticas ELPS para o estabelecimento de contratos eletrnicos por meio de processos de negcios associados a servios Web e 3

termos de QoS6. Essa abordagem no est direcionada ao gerenciamento de processos de negcios da organizao, mas sim ao desenvolvimento de software orientado a servios. Rolland e Nurcan (2010) propem o uso de LPN na gesto de conhecimento de processos de negcios considerando o paradigma orientado a objetivos, mas no considera uma representao dos processos de negcios orientada a atividades, que tambm possui relevncia na gesto de conhecimento de processos de negcios. Schnieders e Puhlmann (2006) apresentam um modelo de processo completo de LPN, porm, tal processo focado em sistemas orientados a processos. O trabalho em questo o nico que considera o uso da notao BPMN 1.0 (WHITE, 2004) em um processo completo de LPN, e mesmo assim, em sua primeira verso. Dessa forma, evidente a importncia de pesquisas sobre o uso de conceitos de ELPS para o tratamento do reso de modelos de processos de negcios, resultando na definio de LPN; bem como de pesquisas sobre repositrios para apoiar o gerenciamento dessas linhas, visando propiciar reutilizao eficiente de modelos de processos de negcio.

1.3

Objetivos do Trabalho

O objetivo geral deste trabalho contribuir para que organizaes que realizam atividades de modelagem de processos de negcios, tanto no contexto de Engenharia de Software quanto no de Gesto de Processos de Negcios, possam gerenciar e reusar de maneira eficiente e eficaz os processos de negcios com o apoio de um repositrio de LPNs. Os objetivos especficos para alcanar o objetivo geral deste trabalho esto elencados a seguir: Prover uma abordagem para LPN que possa ser utilizada tanto no contexto de Engenharia de Software quanto no de Gesto de Processos de Negcios;

QoS (Quality of Service Qualidade de Servio): os requisitos no funcionais de softwares orientados a servios so especificados em relao a qualidade do servio Web, por exemplo, capacidade de trfego de rede suficiente para o transporte de dados de udios.

Estender o framework para repositrios de modelos de processos de negcios (YAN et al., 2012) para contemplar tambm repositrios de linhas de processos de negcios;

Instanciar um repositrio de linhas de processos de negcios tomando como base o framework estendido, fornecendo um prottipo do mesmo; Avaliar a eficcia e a eficincia do reso de modelos de processos de negcios com o apoio da abordagem propsota e do repositrio de linhas de processos de negcios.

1.4

Organizao da Escrita da Qualificao


A escrita desta qualificao est organizada em cinco captulos. No Captulo

2 so apresentados os principais conceitos de modelagem de negcios e os principais elementos da notao BPMN 2.0 (OMG, 2011), que ser utilizada neste trabalho. No Captulo 3 so apresentados os conceitos de ELPS, dando enfoque especial ao conceito de variabilidade. Adicionalmente, no final desse captulo, so apresentados trabalhos que utilizam conceitos de ELPS em modelagem de processos de negcios, que so de interesse deste trabalho. No Captulo 4 apresentado o framework para repositrios de processos de negcios, proposto por Yan et al. (2012), e que ser utilizado como base para o desenvolvimento do repositrio proposto. No Captulo 5 discutida a proposta de trabalho para amenizar as carncias observadas no contexto deste trabalho.

CAPTULO 2 -Modelagem de Negcios


2.1 Consideraes Iniciais
Este captulo apresenta os conceitos de modelagem de negcios, com nfase na notao BPMN. Na Seo 2.2 so apresentados os principais conceitos e definies sobre modelagem de negcios. Na Seo 2.3 apresentada a notao BPMN, os diagramas que podem ser modelados por meio dessa notao e os principais elementos de sua verso atual. Ao final da seo, uma forma de armazenamento de diagramas BPMN e troca de informaes entre os produtos e ferramentas que implementam a notao BPMN brevemente apresentada, bem como as mudanas nesse aspecto

introduzidas na verso 2.0 dessa notao. Por fim, na Seo 2.4, so apresentadas as consideraes finais do captulo considerando os estudos atuais relativos ao BPMN para assim enquadrar essa notao nos objetivos do atual trabalho.

2.2

Conceitos e Definies
Todo processo de Engenharia de Software composto por trs fases

genricas: definio, construo e manuteno. A modelagem de negcios uma atividade da fase de definio que visa construir modelos para representar o funcionamento do domnio em que o software a ser desenvolvido ser implantado, permitindo que o analista entenda o funcionamento do negcio, auxiliando e facilitando o levantamento de requisitos. Essas informaes so teis tanto para apoiar o desenvolvimento quanto para apoiar a reengenharia de software, diminuindo a possibilidade de mudanas no software a ser construdo ou reconstrudo em fases mais avanadas do processo de desenvolvimento nas quais os custos de mudanas so maiores (WASLAWICK, 2011). Um processo de negcio, conforme mencionado anteriormente, um conjunto de atividades executadas por pessoas ou mquinas, que visa produzir uma sada especfica para um cliente. Cada ator do processo, seja pessoa ou mquina, possui um ou mais papis no processo, assumindo um conjunto de atividades a serem desempenhadas. Os processos de negcio em uma organizao so regidos por polticas, leis, padres, procedimentos, convenes e contratos, os quais so tratados na modelagem de negcios como regras de negcio (LADEIRA, 2008). 6

Por meio da explicitao de objetivos, processos, papis e regras do negcio, bem como os relacionamentos existentes entre eles, a modelagem de negcios um tcnica para diminuir o conhecimento tcito sobre o funcionamento das organizaes e, por isso, tambm pode ser usada na gesto do conhecimento dentro das empresas. A atividade de modelagem de negcios utilizada no somente no contexto da Engenharia de Software, mas tambm no contexto organizacional da empresa por meio da Gesto de Processos de Negcios (DER AALST et al., 2003), apoiando a realizao, por exemplo, de anlises em busca de melhoria no desempenho do processo e na reduo de custo. Nesse contexto, o termo modelagem de processos de negcios utilizado para enfatizar o processo de negcio durante a atividade de modelagem de negcios tradicional. A construo dos modelos de negcio ou modelos de processos de negcio despende tempo e esforo assim como qualquer outro artefato de software, por isso, engenheiros de software, analistas de negcio e pesquisadores tm se concentrado no desenvolvimento de repositrios para reso de modelos de negcio (THELING et al., 2005; ROSA et al., 2010; YAN et al., 2012). O reso de modelos de negcio possibilita reduzir tempo e esforo na elaborao desse tipo de artefato e aumenta a qualidade dos modelos elaborados visto que j foram validados e aperfeioados previamente. Existem vrias notaes propostas na literatura para representar modelos de negcios. Algumas delas so baseadas em diagramas da UML (OMG, 2003) (Unified Modeling Language) (ERIKSSON e PENKER, 2000; MARSHALL; 2000, ZRNEC et al., 2001) e outras possuem notaes especficas (EKD (Enterprise Knownledge Development) (BUBENKO et al., 1998), i* framework (YU, 1995), por exemplo), como o caso da BPMN (Business Process Model and Notation), que uma notao padro da OMG para a representao de processos de negcios. BPMN a notao de interesse deste trabalho e ser apresentada em mais detalhes na prxima seo. Segundo Chinosi e Trombetta (2011), o BPMN o padro mais adequado para descrio dos processos de negcios, pois possui um conjunto de elementos principais e simples que atrai os analistas de negcio e prov ainda um rico conjunto de elementos que atendem aos especialistas de domnio, permitindo a representao dos processos que ocorrem em qualquer tipo de organizao. As notaes de modelagem de processos de negcio podem ser aplicadas a trs propsitos: descrio de processos, simulao de processos e execuo de 7

processos. Na descrio de processos, os processos de negcios so documentados por exemplo, em forma de fluxogramas para explicitar o funcionamento dos mesmos, apoiando a disseminao do conhecimento e a tomada de decises. A simulao envolve simular e analisar em detalhes os processos de negcios, visando medir o desempenho e prever o comportamento de novos processos de negcios. Na execuo, instncias de processos so executadas por meio da delegao automtica de tarefas para humanos e da automatizao de tarefas executadas por software. O termo stakeholder ser utilizado neste trabalho para se referir a todo possvel interessado na modelagem de processos de negcios, ou seja, membros de equipes de desenvolvimento de software, equipes de TI, colaboradores envolvidos no processo (os atores), analistas de negcio e especialistas no domnio. Especialistas no domnio procuram, ao modelar processos, estudar propriedades do processo para verificar a corretude na sua representao por meio de mecanismos de verificao de fluxo, como condies de interrupo, laos infinitos, etc.; enquanto que analistas de negcio esto mais interessados em coletar dados, especialmente sobre recursos gastos no decorrer do processo (CHINOSI e TROMBETTA, 2011). Os demais stakeholders esto interessados no conhecimento que o modelo proporciona, tanto os colaboradores da organizao para orientao nas tarefas dirias, quanto os desenvolvedores de software e equipes de TI para documentao no desenvolvimento, manuteno e reengenharia de produtos de software.

2.3

A Notao BPMN
A notao BPMN foi concebida em 2004 pela BPMI (Business Process

Modeling Initiative) que a publicou parcialmente inspirada no Diagrama de Atividades da UML (OMG, 2003) para representar o leiaute grfico de processos de negcio. Essa notao foi amplamente aceita pelas organizaes e, por isso, em 2006 a OMG a adotou como padro. A verso atual do BPMN a 2.0 (OMG, 2011) e foi projetada para balancear o seu fcil entendimento com expresso suficiente para simulao e execuo de processos de negcios.

A notao BPMN fornece um conjunto de elementos grficos para representar processos de negcios fim a fim7. Existem quatro tipos bsicos de diagramas que podem ser representados por um modelo BPMN: Processo, Colaborao, Coreografia e Conversao. Nas subsees seguintes so apresentados os elementos BPMN e os tipos de diagramas que podem ser construdos por meio dessa notao.

2.3.1 Elementos BPMN


Uma das diretrizes seguidas para a definio da notao BPMN permitir a criao de modelos de processos de negcios que seja simples e compreensvel, e ao mesmo tempo capaz de tratar a complexidade inerente a um processo de negcio. Para atender a esses dois requisitos conflitantes, os elementos grficos da notao BPMN foram organizados em categorias especficas, fornecendo um pequeno conjunto de categorias de maneira que um leitor do diagrama possa reconhecer facilmente os tipos bsicos dos elementos e assim entender o diagrama. Dentro das categorias bsicas dos elementos, variaes e informaes podem ser adicionadas para atender os requisitos de complexidade sem precisar mudar drasticamente a aparncia bsica do diagrama (OMG, 2011), um exemplo disso so os cones no canto superior esquerdo das tarefas ilustradas na Figura 2.1 (Seo 2.3.2). Nesta seo so apresentadas as cinco categorias bsicas dos elementos: Objetos de Fluxo, Elementos de Dados, Objetos de Conexo, Parties e Artefatos. Uma referncia completa dos elementos de um diagrama BPMN pode ser encontrada na especificao da notao (OMG, 2011). Os objetos de fluxo representam as aes que podem acontecer em um processo de negcio. Existem trs objetos de fluxo: os Eventos, as Atividades e os Desvios (em ingls, Gateway). No Quadro 2.1 ilustrada a forma grfica dos objetos de fluxo e apresentada uma breve descrio de cada um.

Processos de negcios fim a fim: termo utilizado na Gesto de Processos de Negcios que se refere ao conjunto de todos os processos de negcios de uma organizao.

Quadro 2.1 Objetos de Fluxo da notao BPMN 2.0 (adaptado de OMG, 2011). Elemento Evento Objetos de Fluxo Descrio Evento um objeto de fluxo que representa algo que acontece durante um processo ou uma coreografia. Afetam o fluxo e normalmente possuem uma causa (gatilho trigger) ou um impacto (resultado). Os trs eventos possveis so o evento de incio, evento intermedirio e evento de fim. Notao Grfica

Atividade

Atividade um objeto de fluxo que representa um trabalho que um ator ou participante realiza. Uma atividade pode ser atmica ou no-atmica e so usadas tanto em Processos como em Coreografias. Os tipos de atividades so as tarefas (atividades atmicas), subprocessos, tarefas de coreografia e subcoreografias. Um desvio um objeto de fluxo usado para controlar a divergncia e convergncia de fluxos de sequncia em um processo, ou seja, determina caminhos de ramificaes, bifurcaes, fuses e junes no diagrama. H sete tipos de desvios: desvio exclusivo, desvio inclusivo, desvio paralelo, desvio baseado em eventos, desvio paralelo baseado em eventos, desvio exclusivo baseado em eventos e desvio complexo.

Desvios

Os dados podem ser representados com quatro elementos: Objeto de Dado, Dado de Entrada, Dado de Sada, Coleo de Objetos de Dado, Repositrio de Dados e

10

Mensagem. Na Quadro 2.2 ilustrada a forma grfica dos elementos de dados e apresentada uma descrio de cada um.
Quadro 2.2 Elementos de Dados da notao BPMN 2.0 (adaptado de OMG, 2011). Elemento Objeto de Dado Elementos de Dados Descrio Notao Grfica O objeto de dado fornece informao sobre o que uma atividade necessita para ser realizada e o que tal atividade produz.

Dado de Entrada e Dado de Sada

Coleo de Objetos de Dado

Os dados de entrada e dados de sada representam a mesma informao que um objeto de dado, porm, para processos e no para atividades. Em outras palavras, atividade necessita de um objeto de dado e produz outro objeto de dado, enquanto um processo necessita de um dado de entrada e produz um dado de sada. Tanto objetos de dados, quanto dados de entrada e sada podem representar objetos nicos ou uma coleo de objetos, nesse caso utiliza-se a coleo de objetos de dado para represent-los. Colees de Dados

Repositrio de Dados

Mensagem

Fornece um mecanismo para atividades recuperar ou atualizar informaes armazenadas que iro persistir alm do escopo do processo. O mesmo repositrio de dados pode ser visualizado por meio de uma referncia em um ou mais locais do processo. Uma mensagem descreve o contedo de uma comunicao entre dois participantes.

Com os objetos de conexo possvel conectar, de quatro maneiras diferentes, um objeto de fluxo a outro objeto de fluxo, ou a alguma informao no diagrama. Os quatro objetos de conexo so: Fluxos de Sequncia, Fluxos de Mensagem, Associaes, e Associaes de Dados. Na Quadro 2.3 ilustrada a forma grfica dos objetos de conexo e apresentada uma descrio de cada um.

11

Quadro 2.3 Objetos de Conexo da notao BPMN 2.0 (adaptado de OMG, 2011). Elemento Fluxo de Sequncia Objetos de Conexo Descrio Usado para mostrar a ordem em que as atividades sero realizadas em um processo e em uma coreografia. Um fluxo de sequncia pode ter uma expresso de condio para determinar se o mesmo ser usado ou no (durante a execuo do processo), nesse caso tal fluxo dito fluxo condicional. Para desvios exclusivos ou inclusivos, um tipo de fluxo possvel o fluxo padro, a execuo do processo s passar por tal fluxo se a condio do outro fluxo condicional no for verdadeira. Por fim, o fluxo de exceo ocorre fora do fluxo normal do processo e baseado em um evento intermedirio anexado a uma atividade que ocorre durante a execuo. Notao Grfica

Fluxo de Sequncia

Fluxo Condicional

Fluxo Padro

Fluxo de Exceo Fluxo de Mensagem Usado para mostrar o fluxo das mensagens trocadas entre dois participantes que so preparados para envi-las e receb-las.

Fluxo de mensagem Associao e Associao de Dados A associao usada para vincular informaes e artefatos com elementos grficos BPMN. Quando direcionada, indica a direo do fluxo, quando apropriado. Uma associao de dados usada para mostrar como objeto de dados so entradas ou sadas para atividades e usa a mesma notao que uma associao direcionada.

Associaes

Os elementos de um diagrama BPMN podem ser agrupados e para isso so usadas as parties. Existem dois tipos de parties: as Divises e os Compartimentos. Na Quadro 2.4 ilustrada a forma grfica dos elementos de agrupamento e apresentada uma descrio de cada um.

12

Quadro 2.4 Elementos de Agrupamento da notao BPMN 2.0 (adaptado de OMG, 2011). Elemento Diviso e Compartimento Parties Descrio Diviso a representao grfica do processo em um Diagrama de Processo ou a representao grfica de um participante em um Diagrama de Colaborao, nesse caso pode conter elementos, representando assim o processo privado de cada participante, ou pode estar vazia, caixa-preta, quando os detalhes internos do participante no so relevantes ao contexto do diagrama. Desempenha o papel de uma partio para separar um conjunto de atividades de outras divises, normalmente no contexto de B2B8. O compartimento uma sub-partio dentro de um processo ou de um participante, no caso dos diagramas de colaborao. So utilizados para organizar e categorizar as atividades, representando, por exemplo, papis ou departamentos dentro do processo de uma organizao.

Notao Grfica

Por fim, os artefatos so usados para fornecer informaes adicionais sobre processos, informaes as quais no afetam o fluxo do processo. Os possveis artefatos so: agrupamento e anotao de texto. Na Quadro 2.5 ilustrada a forma grfica dos artefatos e apresentada uma descrio de cada um. importante observar que os elementos ilustrados nesta seo foram desenhados por meio de ferramentas de edio BPMN (YWORKS 2012, YAOQIANG 2012). A notao BPMN no faz distino de cores, deixando essa opo a cargo da ferramenta computacional que a implementa (OMG, 2011).

B2B: acrnimo da expresso em ingls "Busines-to-Business", que descreve uma transao entre duas entidades de negcio. Essa transao pode ser representada na notao BPMN por meio de diagramas de colaborao para representar o processo, ou nos casos em que o foco central do diagrama a troca de mensagens usa-se o diagrama de coreografia.

13

Quadro 2.5 Artefatos da notao BPMN 2.0 (adaptado de OMG, 2011). Elemento Agrupamento Objetos de Conexo Descrio Utilizado para agrupar elementos do diagrama que possuem caractersticas semnticas semelhantes, ou seja, elementos de mesma categoria9. Esse tipo de agrupamento no afeta o fluxo de sequncia. O nome da categoria aparece como um rtulo. Um mecanismo para o modelador fornecer informaes textuais adicionais para o leitor de um diagrama BPMN. Tambm no influencia no fluxo de sequncia. Notao Grfica

Anotao de Texto

2.3.2 Diagramas de Processo


Um diagrama de processo utilizado para representar modelos de processos. Os processos, tambm chamados de orquestraes, so classificados em processos privados e processos pblicos. Os processos privados focam no funcionamento interno de uma organizao, como pode ser observado na Figura 2.1 na qual o processo de premiao de candidatos modelado. O cone no canto superior esquerdo de cada tarefa utilizado para representar uma informao a mais a respeito da atividade, por exemplo, o smbolo de uma pessoa indica que a tarefa manual, as engrenagens significam que a tarefa executvel, ou seja, existe um programa de computador ou servio web que realiza tal tarefa, por fim, o envelope escuro indica que a tarefa resulta em um envio de mensagem.

Figura 2.1 Exemplo de processo privado de premiao de candidatos (adaptado de OMG, 2011).

A partir da verso 2.0, BPMN formaliza algumas definies semnticas definidas pelos usurios da notao. O termo "categoria" refere-se a uma semntica definida pelo usurio que pode ser usada para propsitos de documentao e anlise. Por exemplo, elementos de fluxo podem ser categorizados como sendo "orientados a clientes" vs. "orientados a suporte". Uma possvel utilidade para tal semntica a possibilidade de se calcular o custo e o tempo de atividades por categorias.

14

Por outro lado, os processos pblicos representam interaes entre um processo privado e outros processos ou participantes 10 . Nessa representao, os participantes so simbolizados por divises (Seo 2.3.5). Um processo pblico mostra as atividades envolvidas nas interaes entre dois ou mais processos/participantes. Na Figura 2.2 apresentado um exemplo de processo pblico de um consultrio mdico em que o paciente representado como um participante interagindo com as tarefas do processo por meio de troca de mensagens representadas pelas setas pontilhadas (Seo 2.3.5).

Figura 2.2 Exemplo de processo pblico de um consultrio mdico (adaptado de OMG, 2011).

2.3.3 Diagrama de Coreografia


Coreografia uma definio do comportamento esperado entre os participantes que interagem em um processo colaborativo (OMG, 2011). Enquanto um processo normal existe dentro de um participante, uma coreografia existe entre os participantes. Na Figura 2.3 ilustrado um exemplo de coreografia entre os participantes paciente e consultrio. Essa coreografia a mesma ilustrada na Figura 2.2, porm, nesse diagrama da Figura 2.3 os detalhes do processo do consultrio esto ocultos.

10

No contexto do BPMN, participante a denominao atribuda a uma entidade do negcio ou organizao, que representado graficamente nessa notao por uma diviso.

15

Figura 2.3 Exemplo de coreografia de um consultrio mdico (adaptado de OMG, 2011).

2.3.4 Diagrama de Colaborao


Colaboraes podem incluir processos e coreografias, representando assim, os padres de troca de mensagens entre dois ou mais participantes. Na representao do diagrama de colaborao, os participantes tambm so simbolizados por divises e o processo de cada participante pode ser explicitado no diagrama. Na Figura 2.4 ilustrado novamente o exemplo do consultrio mdico com os detalhes dos processos do paciente e do consultrio apresentados.

Figura 2.4 Exemplo de colaborao de um consultrio mdico (adaptado de OMG, 2011).

2.3.5 Diagrama de Conversao


A conversao outra maneira fornecida pela BPMN para representar uma coreografia. O termo conversao se refere relao lgica de troca de mensagens entre os participantes. Essa relao e simbolizada no diagrama de conversao por um hexgono, conforme ilustrado na Figura 2.5, que mostra a colaborao existente entre 16

paciente e consultrio. Toda a troca de mensagens entre os dois participantes representada pela conversao consulta.

Figura 2.5 Exemplo de conversao de um consultrio mdico.

2.3.6 Armazenamento e Intercmbio de Diagramas BPMN


Para o armazenamento e intercmbio dos diagramas BPMN, os produtos BPMN, como por exemplo, ferramentas de modelagem e sutes de gerenciamento de processos de negcios, baseiam-se em XPDL (XML Process Definition Language) (WfMC, 2012), que um formato XML padronizado pelo WfMC (Workflow Management Coalition) para armazenar todos os aspectos de um diagrama BPMN, que est atualmente na verso 2.2 lanada em 2012. Segundo Chinosi e Trombetta (2011), esse formato padro considerado um dos melhores formatos para a troca de informaes entre ferramentas BPMN, para averiguar a corretude de um diagrama BPMN e para simular a execuo do processo em diagramas BPMN. Tal padro foi projetado especificamente para armazenar todos os aspectos de um diagrama BPMN. Por outro lado, o WS-BPEL (Web Services Business Process Execution Language) (OASIS, 2007), atualmente na verso 2.0 lanada em 2007, uma linguagem para especificar o comportamento de processos de negcios baseados em servios Web11. Essa linguagem possui limitaes na serializao de diagramas BPMN, por exemplo, no possvel representar com um nico processo WS-BPEL um diagrama de colaborao BPMN. Apesar de tais limitaes a linguagem uma opo muito aceita para a converso de modelos BPMN em cdigo executvel. Salienta-se que a partir da verso 2.0, o BPMN possui um metamodelo e um modelo de definio de diagramas acompanhado de formatos de intercmbio baseados
11

Servio Web: software projetado para apoiar interoperabilidade entre mquinas por meio de uma rede de computadores (W3C, 2004).

17

tanto em XMI como em XSD (W3C, 2012), bem como um mecanismo de serializao nativo, tornando-o completamente independente de outras linguagens como o WSBPEL e o XPDL. Porm, o WS-BPEL e o XPDL so padres largamente utilizados e pode-se prever que continuaro a ser usados mesmo aps a fase de adaptao das ferramentas BPMN para a sua verso atual (CHINOSI e TROMBETTA, 2011).

2.4

Consideraes Finais
A notao BPMN, conforme j mencionado, alvo de interesse tanto no

meio comercial como no cientfico para modelagem de processos de negcio e ser a notao utilizada pela abordagem de linhas de processos de negcio proposta neste trabalho. Atualmente, existem pesquisas envolvendo a linguagem BPMN em conjunto com prticas de ELPS (SANTOS et al., 2010; SCHNIEDERS e PUHLMANN, 2006) visando o reso de processos de negcios, que o foco deste trabalho. Os recursos computacionais providos por repositrios de processos de negcios so de fundamental importncia para esse contexto, conforme abordado pelo framework apresentado no Captulo 4, e que de interesse deste trabalho.

18

CAPTULO 3 -Engenharia de Linha de Produto de Software


3.1 Consideraes Iniciais
Neste captulo so destacados os principais conceitos relacionados ELPS, que so importantes para o entendimento e desenvolvimento deste trabalho. Na Seo 3.2 so apresentados os principais conceitos e definies sobre ELPS, na Seo 3.3 so abordados conceitos importantes sobre variabilidade, incluindo gerenciamento de variabilidades e as classificaes existentes de variabilidade. Na Seo 3.4 discutido como conceitos de ELPS podem ser aplicados no contexto de modelagem de processos de negcios e na Seo 3.5 so apresentadas as consideraes finais deste captulo, refletindo sobre o que ser levado em conta neste trabalho a respeito dos assuntos abordados no captulo.

3.2

Conceitos e Definies12
Os primeiros softwares eram desenvolvidos com poucas funcionalidades

para fins especficos ou eram desenvolvidos com inmeras funcionalidades com o objetivo de atender uma diversidade de usurios que no as conheciam completamente. Em ambos os casos, a flexibilidade no foi considerada durante o desenvolvimento dos softwares (POHL et al., 2005). Os softwares embarcados tambm tiveram papel importante no reso, pois eram utilizados como um meio para implementar variaes em um produto final sem a necessidade de modificar o seu hardware. Os softwares eram relativamente pequenos, e se comparados com o hardware, mostravam-se fceis e baratos para copiar, transformar e substituir. Isso possibilitou que os desenvolvedores observassem a vantagem do reso, que foi consideravelmente explorada desde ento. Porm, a flexibilidade permitida pelo software era empregada somente em fases muito tardias do processo de desenvolvimento do produto final. Em tempos atuais, grandes organizaes dependem de softwares corporativos e das tecnologias que utilizam para manter o negcio funcionando, visto que para as empresas se manterem competitivas precisam se adaptar rapidamente a nichos de mercado, demandas estratgicas e a novas regras de negcios.
12

A escrita desta seo baseada nos captulos 1, 2 e 4 de Pohl et al. (2005).

19

Com base nessas experincias iniciais e nas necessidades ainda atuais do mercado de software e das organizaes, surge o conceito de ELPS.

3.2.1 Princpios da ELPS


ELPS um conceito derivado da ELP Engenharia de Linha de Produto comumente aplicado na engenharia para alcanar a customizao em massa com economia de escopo por meio da produo coletiva (ao invs de individual) de mltiplas instncias similares, mas de design e prottipos distintos (WEISS e LAI, 1999). Pode-se citar como exemplo de ELP, o processo de fabricao de carros em que diferentes modelos de carros so fabricados com diferentes peas por meio de um mesmo processo. Assim como o carro o produto final de uma linha de produtos de fabricao de carros, um produto, no contexto da ELPS, o software derivado da linha de produto, ou seja, uma instncia do software customizada para um cliente especfico. O conjunto de produtos instanciados de uma linha de produtos compe uma famlia de produto, que tambm chamada de domnio no contexto das linhas de produtos de software. De acordo com Pohl et al. (2005), dois conceitos fundamentais no contexto de ELPS so: customizao em massa e plataforma de software. Por customizao em massa entende-se a produo em larga escala de bens adaptados s necessidades de clientes individuais. Plataforma de software um conjunto de subsistemas de software e interfaces que formam uma estrutura comum a partir da qual um conjunto de produtos derivados podem ser desenvolvidos e produzidos eficientemente. Baseado nesses dois conceitos supracitados obtm-se a definio de ELPS: um paradigma para desenvolver aplicaes de software usando plataformas e customizao em massa (POHL et al., 2005). Os principais objetivos da ELPS so reduzir custos durante o desenvolvimento de software, melhorar a qualidade do software produzido, reduzir o time to market13, reduzir esforo com manuteno, propiciar capacidade de lidar com evoluo e complexidade do software, melhorar a estimativa de custos, dentre outros.
13

Intervalo de tempo a partir do incio da concepo de um produto at o momento em que ele fica disponvel para venda.

20

Para obter sucesso na busca dos objetivos supracitados, a ELPS concentrase tanto no desenvolvimento de software propriamente dito como tambm na busca pelo reso; planejando proativamente o reso de todos os artefatos existentes no processo de desenvolvimento de software e investindo esforos no gerenciamento das variabilidades (Seo 3.2.2), que as diversas instncias dos seus produtos podem ter. Para tanto, a ELPS composta por dois processos de desenvolvimento de software bem definidos, com focos diferentes, mas que se comunicam entre si: Engenharia de Domnio e Engenharia da Aplicao. Tais processos so fundamentais para o trabalho atual, pois, formam a base para a abordagem proposta neste trabalho os quais sero adaptados para o contexto de Gesto de Processos de Negcios. Na Figura 3.1 so apresentadas as atividades genricas dos respectivos processos que compem a ELPS.

Figura 3.1 Processos da ELPS (adaptado de Pohl et al. (2005), p. 22).

A variabilidade o foco da Engenharia do Domnio, que o processo da ELPS no qual as semelhanas e as variabilidades do domnio da linha de produto que est sendo construda so definidas, percebidas e controladas de maneira gerenciada. 21

Para isso, todas as etapas desse processo possuem atividades relacionadas com a identificao e documentao das variabilidades, por exemplo, na etapa de Engenharia de requisitos de domnio, so identificadas e documentadas as variabilidades do Documento de Requisitos, enquanto as variabilidades dos casos de testes so identificadas e documentadas durante a etapa de Teste de Domnio. Dessa forma, o processo Engenharia do Domnio responsvel por estabelecer uma plataforma reusvel, que consiste em todos os tipos de artefatos de softwares (requisitos, designs, testes, componentes, etc.). A Engenharia da Aplicao o processo da ELPS em que as aplicaes, instncias da linha de produto, so construdas. Para isso, as variabilidades definidas na Engenharia do Domnio so exploradas e os artefatos criados so reutilizados de maneira a atender as necessidades especficas de cada instncia derivada a partir da plataforma estabelecida pela Engenharia do Domnio. Como resultado, esse processo possui atividades relacionadas ao levantamento de requisitos, design, realizao e teste da aplicao a ser instanciada para o usurio final. Apesar das ideias bsicas de ELPS terem sido propostas desde a concepo inicial do desenvolvimento de software (DIJKSTRA, 1972; PARNAS, 1976), elas surgiram no domnio da Engenharia de Software tardiamente em relao a outros domnios, isso devido a falta de maturidade dos processos de desenvolvimento de software anteriormente propostos. Pohl et al. (2005) apresentam os seguintes prrequisitos necessrios para a adoo de ELPS: - Ter a disposio tecnologias habilitadoras como o caso de programao orientada a objetos, tecnologia de componentes, tcnicas de ligao (binding), middlewares14 e Gerenciamento de Configurao; - Alcanar maturidade suficiente de processo de desenvolvimento por meio do uso de modelos de processo de desenvolvimento de software, engenharia de requisitos e tcnicas de modelagem; e - Avaliar as caractersticas do domnio e a experincia dos especialistas, por meio do conhecimento do domnio e estabilidade do domnio.

No contexto da abordagem de LPN proposta no atual trabalho os prrequisitos expostos acima so adaptados da seguinte forma:
14

Em um sistema de computao distribudo, middleware definido como a camada de software que se situa entre o sistema operacional e as aplicaes em cada local do sistema.

22

- Tecnologias habilitadoras: so de grande importncia nesse contexto tambm, e como exemplo, podem-se citar as ferramentas que permitem o gerenciamento dos processos de negcios como o Repositrio de Modelos de Processos de Negcios, bem como ferramentas de modelagem, simulao e execuo de processos de negcios, bem como, ferramentas para gerao de relatrios e indicadores sobre os processos de negcios; - Alcanar maturidade suficiente de processo: passa a ser o objetivo da abordagem de LPN, com o foco na melhoria contnua dos processos de negcio; e - Experincia dos especialistas: a experincia dos especialistas um fator crtico de sucesso para a adoo da abordagem de LPN - Caractersticas do domnio: influenciam na complexidade da adoo da abordagem de LPN. A adoo de um modelo de processo de ELPS pode ser feita por meio da migrao de um processo tradicional de engenharia, focado em um nico sistema, para um processo de ELPS e representa um desafio para a organizao, pois os produtos derivados de artefatos da plataforma de software no podem mais ser tratados de forma independente, portanto toda a estrutura da organizao ser afetada com essa mudana. Como resultado, os conceitos de plataforma de software e customizao em massa, leva padronizao dos processos de negcios e da tecnologia empregada dentro de uma organizao.

3.3

Variabilidades na ELPS
Como mencionado na Seo 3.2.1, um dos princpios bsicos da ELPS a

customizao em massa. Para alcanar esse princpio, uma linha de produto de software (LPS) deve ser flexvel o suficiente para que seja possvel derivar instncias adaptadas s realidades de diferentes clientes. Alm disso, os artefatos usados em diferentes produtos devem ser adaptveis o suficiente para cada produto instanciado na linha de produto. Tal flexibilidade denominada variabilidade no contexto de LPS e a base para a customizao em massa. Em linguagem comum, o termo variabilidade se refere a habilidade ou a tendncia de mudana, por exemplo, um software pode suportar diferentes idiomas, a 23

comunicao entre mdulos de uma aplicao pode ser feita por meio de diferentes protocolos de rede. Quando uma variabilidade precisa ser identificada, Pohl et al. (2005) sugerem trs perguntas: O que varia? Essa questo apoia a identificao do sujeito da variabilidade no mundo real. Por exemplo, em uma linha de produtos de carros nota-se que a cor do carro pode variar, portanto cor um sujeito da variabilidade. Como varia? Por meio dessa questo identificam-se os objetos da variabilidade, tambm no mundo real. Dando continuidade ao exemplo anterior, todas as cores possveis so consideradas objetos da variabilidade. Por que varia? Com essa questo possvel identificar as causas da variabilidade, informao importante para decidir se a variabilidade necessria para a linha de produto. Por exemplo, a cor uma variabilidade importante porque permite a customizao do produto para satisfazer necessidades de clientes especficos, nesse caso, clientes diferentes gostam de cores diferentes.

Em ELPS, a variabilidade composta pelo "ponto de variao" e pelas "variantes" que refletem, respectivamente, o sujeito da variabilidade e uma variante limitados ao contexto do domnio da linha de produto. Exemplificando, a cor do carro um ponto de variao e as variantes correspondentes so as cores estipuladas para serem as possveis cores de carros do domnio da linha de produtos de carros. Trs passos so necessrios para definir uma variabilidade de uma LPS: 1) primeiramente deve-se identificar o item no mundo real que varia (o sujeito da variabilidade). Como a cor do exemplo anteriormente citado. 2) em seguida, deve-se definir o ponto de variao dentro do contexto da LPS, o qual s oferece um trecho, das possveis variaes no mundo real, relevante ao domnio da LPS (cor do carro no exemplo citado). 3) Por fim, as variantes so definidas, por exemplo, no contexto da linha de produtos de carros definido que so produzidos apenas carros nas cores verde, vermelho e preto, portanto, para o ponto de variao "Cor do Carro" existem trs variantes: "Verde", "Vermelho" e "Preto". possvel tambm gerenciar variabilidades em modelos de processos de negcios, por essa razo, os conceitos relacionados a variabilidades e ao seu gerenciamento so relevantes para o trabalho atual.

24

Nas subsees a seguir so apresentados conceitos relacionados a variabilidades. Na Seo 3.3.1 so abordadas as atividades inerentes ao gerenciamento de variabilidades, na Seo 3.3.2 so apresentados os tipos de variabilidades existentes e na Seo 3.3.3 exposto o modelo para gerenciamento de variabilidades proposto por Pohl et al. (2005).

3.3.1 Gerenciamento de Variabilidades


A definio e a explorao das variabilidades durante os processos de Engenharia do Domnio (ED) e Engenharia da Aplicao (EA) da ELPS so apoiadas pelo gerenciamento de variabilidades, que abrange: 1) Apoiar s atividades do processo ED que tratam da definio de variabilidades. As atividades de definio de variabilidades so relacionadas a identificao e documentao de variabilidades; 2) Apoiar s atividades do processo EA que tratam da resoluo de variabilidades, ou seja, da ligao (binding) 15 de variantes apropriadas em uma instncia especfica do artefato a ser reusado; 3) Gerenciar artefatos variveis: Coletar, armazenar e registrar as informaes sobre as atividades de coleta e armazenamento. No contexto da abordagem de LPN proposta no trabalho atual, o gerenciamento de variabilidades abrange as mesmas atividades, nas quais, alm das variabilidades inter-processos (variabilidades que ocorrem de um processo para outro), devem ser consideradas tambm as variabilidades intra-processos (variabilidades que ocorrem em um mesmo processo).

3.3.2 Tipos de Variabilidade


As variabilidades podem ser caracterizadas como variabilidades temporais e variabilidades espaciais (Pohl et al.,2005). Variabilidade temporal o termo utilizado na ELPS equivalente ao termo evoluo utilizado na engenharia baseada em sistema nico (single system

15

Ligao de variabilidades refere-se atividade do processo EA responsvel por selecionar a variante correta de cada ponto de variao para uma instncia especfica da LPS.

25

engineering 16 ), ou seja, a existncia de diferentes verses de um artefato que so vlidas em tempos diferentes. Exemplificando, considera-se um processo de negcio que documentado por meio de um diagrama BPMN, quando h mudanas no processo de negcio o diagrama dever ser modificado e ento haver duas variantes temporalmente distintas do mesmo diagrama. Tcnicas de gerenciamento de configurao so comumente utilizadas para lidar com variabilidade temporal. Variabilidade espacial a existncia de um artefato em diferentes formas ao mesmo tempo. Por exemplo, em um determinado sistema de informao baseado em LPS, h um mdulo de emisso de relatrios. O acesso a esse mdulo um ponto de variao com trs variantes: acessar relatrios via navegador web, acessar relatrio via smartphone ou acessar relatrios via servio Web. Essas variantes so associadas, por exemplo, com artefatos de requisitos de software na Engenharia do Domnio. Outra classificao para variabilidades quanto a sua visibilidade pelos clientes. Uma variabilidade externa quando visvel ao cliente e interna quando no visvel ao cliente. As variabilidades externas podem ser causadas, por exemplo, por necessidades dos stakeholders ou por leis e padres do domnio do negcio. Retomando o exemplo do mdulo de emisso de relatrios, possvel permitir que o cliente escolha quais opes para acesso ao mdulo de relatrios ele deseja, nesse caso tem-se uma variabilidade externa. As variabilidades internas podem surgir quando feito um refinamento de uma variabilidade externa, ou quando feito refinamento das prprias variabilidades internas, que geram outras variabilidades internas. As variabilidades internas tambm podem ser criadas por razes tcnicas, como por exemplo, decises de implantao em determinado ambiente podem necessitar de tecnologias especficas. Por exemplo, o mtodo de acesso ao mdulo de relatrios via servio Web pode utilizar dois protocolos diferentes: REST (Representational State Transfer) (FIELDING, 2000) e o SOAP (Simple Object Access Protocol) (W3C, 2007). Responsveis pela implantao do software devem optar por liberar um, outro ou ambos os protocolos de acordo com os softwares clientes (que consomem os servios Web), disponveis na infraestrutura operacional do usurio.

16

Single system engineering ou Engenharia de sistema nico um termo utilizado no contexto de ELPS para se referir a processos de softwares direcionados ao desenvolvimento/evoluo de um nico software por projeto.

26

A deciso de tornar uma variabilidade externa ou interna deve ser feita com o objetivo de reduzir complexidade para o cliente e tambm por razes estratgicas do negcio. As variabilidades so definidas em vrios nveis de abstrao dos artefatos de domnio, conforme ilustrado na Figura 3.2. Nessa figura pode-se observar que quanto menos abstrato um artefato, mais variabilidades ele est sujeito a ter, isto , as variabilidades externas vo sendo refinadas em variabilidades internas nos diferentes nveis de abstrao.

Figura 3.2 Variabilidades em diferentes nveis de abstrao. (Pohl et al., 2005, p. 72).

Em uma LPS as variabilidades precisam ser explicitamente documentadas. Os mtodos para documentao podem ser variados, porm, a documentao de variabilidade deve ter no mnimo informaes que respondam as seguintes perguntas: O que varia?, Como varia, Por que varia?, Para quem documentada?. Os documentos elaborados devem explicitar os pontos de variao, as variantes e as causas da variao. Devem existir tambm documentos distintos para variabilidades internas e externas e documentos que explicam as variabilidades para engenheiros da equipe de desenvolvimento e teste e documentos para clientes e usurios.

3.3.3 Modelo Ortogonal de Variabilidades

27

Para documentar as variabilidades, Pohl et al. (2005) propem o Modelo Ortogonal de Variabilidades, que ser utilizado no trabalho atual para esse fim. Explicitar variabilidades em modelos do desenvolvimento de software baseado na engenharia de sistema nico uma tcnica que j foi proposta em vrios estudos (KANG et al., 2002 apud POHL et al., 2005; FEY et al., 2002 apud POHL et al., 2005; BUHNE et al., 2003 apud POHL et al., 2005; HALMANS e POHL, 2003 apud POHL et al., 2005, MABEN e LICHTER, 2002 apud POHL et al., 2005; BOSCH et al., 2002 apud POHL et al., 2005; SVAHNBERG et al., 2001 apud POHL et al., 2005), mas segundo Pohl et al. (2005), possuem vrias deficincias. Primeiramente, o fato das informaes sobre as variabilidades estarem espalhadas por diferentes modelos torna difcil e algumas vezes impossvel manter a informao consistente, dado o extenso nmero de variabilidades que devem ser tratadas. Alm disso, difcil determinar qual variabilidade identificada nos requisitos influenciou quais variabilidades no design, e assim sucessivamente nas demais fases. Outra deficincia o fato dos modelos elaborados no desenvolvimento de software j serem complexos e assim ficam sobrecarregados com a adio de informaes das variabilidades. Uma viso geral de todas as variabilidades definidas em diferentes nveis essencial para LPS, e como as variabilidades esto descritas em diferentes artefatos, so representadas de formas diferentes dificultando a integrao das mesmas em uma nica viso. Devido principalmente as razes supracitadas, outros estudos propem representar as informaes sobre as variabilidades em um modelo separado. O modelo proposto por Pohl et al. (2005), segue essa ideia e denominado Modelo Ortogonal de Variabilidade. Modelo ortogonal de variabilidade um modelo que representa a variabilidade de uma LPS. Esse modelo retrata a variabilidade definida em outros modelos do desenvolvimento de software, como os modelos de casos de uso, modelos de anlise, modelos de componentes e modelos de testes. Assim, o modelo ortogonal de variabilidade oferece uma viso da variabilidade sobre todos os artefatos criados durante a Engenharia do Domnio. Os elementos bsicos do modelo ortogonal de variabilidades so definidos conforme o metamodelo simplificado apresentado na Figura 3.3, que utiliza a notao UML 2.0 (OMG, 2005). Os elementos centrais do metamodelo so as classes "Ponto de

28

Variao" e "Variante". A classe "Ponto de Variao" abstrata e especializada em duas outras classes, "Ponto de Variao Interno" e "Ponto de Variao Externo".

Figura 3.3 Metamodelo simplificado do Modelo Ortogonal. (Adaptado de Pohl et al., 2005, p. 76).

Alm disso, no metamodelo h a classe "Dependncia de Variabilidade", oriunda a partir da associao entre as classes "Ponto de Variao" e "Variante". Essa classe tambm abstrata e especializada em duas outras classes: "Opcional", que representa uma associao opcional entre um ou mais pontos de variao e uma ou mais variantes; e "Mandatria", que representa uma associao mandatria entre um ou mais pontos de variao e uma ou mais variantes. Informaes complementares sobre todas as classes que compem o metamodelo so obtidas em Pohl et al. (2005). Na Figura 3.4 ilustrada a representao grfica do modelo ortogonal de variabilidade de Pohl et al. (2005) e na Figura 3.5 apresentado um exemplo de modelo ortogonal de variabilidade do acesso ao mdulo de emisso de relatrios mencionado anteriormente.

Figura 3.4 Elementos Grficos do Modelo Ortogonal de Variabilidades (adaptado de Pohl et al., 2005, p. 85).

29

Figura 3.5 Modelo Ortogonal de Variabilidades do Mdulo de Emisso de Relatrios.

3.4

ELPS aplicada na Modelagem de Processos de Negcios


Retomando o contexto de modelagem de processos de negcios que de

interesse deste trabalho, modelos de processos de negcios so indispensveis para o gerenciamento do negcio das empresas, e as constantes mudanas no ambiente de negcios devem ser refletidas nos modelos de processos de negcios das organizaes. Dessa forma, as empresas devem lidar com a evoluo de processos, com diferentes processos que possuem partes em comum e que precisam ser integrados, dentre outras situaes. Assim, mudanas em processos de negcios envolvem o reso de partes de outros processos, coexistncia de diferentes verses do mesmo processo, fuses entre dois ou mais processos em um nico, fatores internos e externos que ocasionam em mudanas ou aquisies de novos processos de negcios, etc. Diante do exposto, conclui-se que os cenrios das empresas apresentam situaes similares ao contexto de ELPS (ROLLAND e NURCAN 2010). Como mencionado na Seo 3.3, o gerenciamento de variabilidades a atividade principal do processo ED de uma LPS. Os estudos atuais que exploram as tcnicas de ELPS no contexto de processos de negcios esto divididos entre aqueles que abordam apenas o gerenciamento de variabilidades e aqueles que consideram o processo completo de ELPS. Trabalhos encontrados na literatura em ambas linhas de pesquisa so discutidos nas Sees 3.4.1 e 3.4.2, respectivamente pois so de interesse deste trabalho de mestrado.

30

3.4.1 Gerenciamento de Variabilidades de Processos de Negcios


O gerenciamento de variabilidades tem sido objeto de muitos estudos em conjunto com a modelagem de processos de negcios, principalmente relacionados com a representao das variabilidades de modelos de processos de negcios, ou seja, trabalhos que apresentam alternativas para explicitar e documentar as variabilidades dos modelos de processos de negcios (ROLLAND e PRAKASH, 2000; RAZAVIAN e KHOSRAVI, 2008; MONTERO et al, 2008). Outros trabalhos buscam associar as variabilidades de um processo de negcio com os seus requisitos no funcionais (ABURUB et al., 2007; PAVLOVSKI e ZOU, 2008; CARDOSO et al., 2009; Santos et al., 2010). No trabalho mais atual desse contexto, Santos et al. (2010) apresentam uma abordagem que combina a anlise de variabilidades com requisitos no funcionais para conduzir a configurao de processos de negcios. Essa abordagem visa manter a razo lgica pela qual a seleo de uma instncia especfica de processo foi embasada, ou seja, qual requisito no funcional motivou a escolha de determinadas variantes durante a configurao do processo de negcio. Por exemplo, uma configurao foi escolhida por maximizar a preciso do processo de negcio, mantendo um baixo custo de execuo. A abordagem proposta por Santos et al. (2010) dividida em duas fases: i) elicitao e representao das variabilidades de processo de negcio; e ii) configurao e anlise do processo de negcio configurado. A primeira fase consiste em analisar o processo de negcio modelado em BPMN 1.2 para descobrir e representar possveis variantes. Os pontos de variao e suas devidas variantes so documentados por meio de estruturas genricas como tabelas ou planilhas, visando evitar o trabalho de lidar com dois tipos de modelos. Na segunda fase os requisitos no funcionais so considerados, sendo que cada variante relacionada com um requisito no funcional. Ento, analisada qual configurao do processo maximiza um critrio selecionado e, em seguida, realizada a configurao do processo de negcio que melhor satisfaz tal critrio. Assim, torna-se transparente para os analistas de negcios o impacto que uma mudana no processo de negcio pode causar, apontando como e quais os requisitos no funcionais do processo de negcios so afetados, bem como, a razo lgica pela qual uma determinada configurao do processo foi escolhida.

31

Apesar de apresentar algumas desvantagens, como por exemplo, o fato de as variabilidades serem documentadas sem a adoo de um modelo especfico para isso, o que dificulta a anlise das variabilidades, o passo a passo proposto por Santos et al. (2010) para a configurao de processos de negcios de interesse do atual trabalho por fornecer um conhecimento amplo na atividade de elicitao de variabilidades, que necessrio em qualquer processo focado no gerenciamento de variabilidades inclusive nas LPNs. No entanto o conceito de seleo de variabilidades com o apoio de requisitos no funcionais est fora do escopo deste trabalho. Alm desse trabalho, ser considerada para estudo a tcnica proposta por Boffoli et al. (2012), que sugere o uso de tabelas de deciso para a documentao e resoluo de variabilidades.

3.4.2 Linhas de Processos de Negcios


Apesar de no existir um termo padro para nomear a adoo do processo da ELPS aplicado ao gerenciamento de processos de negcios, algumas denominaes foram sugeridas, como Engenharia de Famlia de Processos (EFP) (SCHNIEDERS e PUHLMANN, 2006) e Linha de Processos de Negcios (LPN) (Rolland e Nurcan, 2010). Esse ltimo uma analogia ao termo Linha de Produto e ser utilizado neste trabalho. LPN uma coleo de processos de negcios que possuem o mesmo objetivo, mas diferentes modos de alcan-los (ROLLAND e NURCAN, 2010). Por exemplo, o objetivo selecionar estudantes em uma instituio privada pode ser alcanado por uma LPN compreendendo trs processos de negcios para selecionar estudantes: tomando como base um exame nacional de seleo, um teste universitrio ou o desempenho escolar do candidato. A variabilidade entre os trs processos est explcita, pois adotam diferentes processos para a seleo dos alunos. Entretanto, existe uma semelhana entre esses trs processos, pois, nos trs casos necessrio receber o pagamento da matrcula dos candidatos selecionados. Uma possvel aplicabilidade de LPN e, talvez a mais indicada, a de lidar com a gesto de conhecimento de processos de negcios. Para isso, o paradigma orientado a objetivos (LEE, 1992) deve ser considerado, isto , os objetivos dos processos de negcios tambm devem ser explicitados e documentados, sendo assim, alm do fluxo de cada processo de negcio, o gerenciamento de variabilidades deve considerar tambm os objetivos e possveis subobjetivos de cada processo e isso ser 32

tratado no contexto deste trabalho de mestrado durante a concepo da abordagem para LPN proposta. Rolland e Nurcan (2010) apresentam uma abordagem nesse sentido argumentando que LPN pode auxiliar a implantao de modelos de processos situados em diferentes organizaes. Nesse trabalho, os autores modelam os processos de negcios com foco em seus objetivos e nas estratgias utilizadas para alcanar tais objetivos. No entanto, essa abordagem no considera a representao das atividades do processo de negcio, que de fundamental importncia na gesto do conhecimento organizacional. Para capturar variabilidades, Rolland e Nurcan (2010) propem meios para explicit-las no prprio modelo de processos de negcios, fazendo uso da Map (ROLLAND e PRAKASH, 2000), uma notao orientada a objetivos que foi inicialmente desenvolvida com o intuito de representar um processo de negcio em forma de grafo, no qual os objetivos do processo de negcio so modelados como intenes (ns) conectadas pelas estratgias utilizadas para alcanar tais intenes (arestas direcionadas). Na Figura 3.6 ilustrado um exemplo do uso de Map para explicitar a variabilidade do acesso ao mdulo de emisso de relatrios mencionado anteriormente.

Figura 3.6 Variabilidades do Mdulo de Emisso de Relatrios modeladas com Map.

Sob outra perspectiva, Maracci (2010) define uma abordagem para o estabelecimento de contratos eletrnicos para servios Web, denominada RofPN, que aplica os conceitos de ELPS para definir os passos a serem seguidos a fim de documentar os processos de negcios em um determinado domnio e os servios Web que os implementam, permitindo a reutilizao dos mesmos. Na Figura 3.7 ilustrada a abordagem RofPN, apresentando os dois processos que a compem, suas respectivas atividades (representadas por retngulos) e artefatos produzidos (representados por retngulos com cantos arredondados).

33

Figura 3.7 RofPN - Uma aplicao de conceitos ELPS para reso de Processos de Negcios (MARACCI, 2010).

O gerenciamento de servios Web e termos de QoS esto fora do escopo deste trabalho de mestrado. No entanto, o trabalho relevante para este trabalho, pois, faz uso de prticas ELPS em conjunto com processos de negcios, conceitos que tambm so o foco deste trabalho de mestrado. As atividades da abordagem RofPN de maior interesse para o trabalho atual so a anlise de domnio (tanto no processo de engenharia de domnio de processos de negcio quanto no processo de engenharia de processo de negcio) e a configurao do processo de negcio (do processo de engenharia de processo de negcio). Na atividade de anlise de domnio construdo o modelo de domnio, que documenta as variabilidades do domnio do processo de negcio. O modelo de domnio composto pelos seguintes artefatos: modelo de caracterstica e modelo de deciso. O modelo de caracterstica representa as caractersticas do domnio j em forma de servios Web, com seus devidos atributos de QoS, conceitos que no esto no escopo desta proposta de mestrado. O modelo de deciso foi proposto por Maracci (2010) como trabalho futuro para documentar requisitos, restries e outras informaes relevantes a respeito da linha de produto 34

(LP), objetivando apoiar as decises futuras no momento da instanciao de um novo produto. O fato de as caractersticas tecnolgicas (servios Web e termos de QoS) serem documentadas no modelo de domnio pode ser apontado como uma desvantagem do trabalho, pois recomendvel que a representao do domnio de uma LP esteja em um nvel mais alto de abstrao, independente de qualquer tecnologia adotada. Na atividade de configurao do processo de negcio do RofPN construdo o diagrama de atividades configurado, representando as configuraes do processo de negcio. Para a elaborao desse artefato utilizada a notao do diagrama de atividades da UML 2 (OMG, 2005), enquanto neste trabalho de mestrado se prope o uso da notao BPMN 2.0 (OMG, 2011), pois mais rica semanticamente do que o diagrama de atividades, e permite a representao de caractersticas do processo de negcio, como os elementos de dados e as trocas de mensagens entre processos distintos modelados em um mesmo diagrama, que so passveis de variabilidades. Esse tipo de representao no provido pela notao do diagrama de atividades. Adicionalmente, a notao BPMN permite representar processos de negcios em diferentes diagramas como o diagrama de coreografia e o diagrama de colaborao. Maracci (2010) prope ainda a representao das variabilidades no diagrama de atividades por meio de uma composio dos prprios elementos do diagrama de atividades, por exemplo, para representar uma variabilidade opcional, utiliza-se um n de deciso com a condio para se incluir ou no a atividade. Outra desvantagem dessa proposta de representao de variabilidade a dificuldade em diferenciar trechos do modelo que representam o processo de negcio e trechos que representam as variabilidades em si. Na abordagem RofPN apresentada a necessidade da existncia de um repositrio para manter os processos de negcios j disponveis de forma organizada para que sejam reutilizados. Todavia, no apresenta e no indica um repositrio que pode ser utilizado para apoiar o uso da abordagem e nem explicita formas para desenvolv-lo. Outro trabalho, proposto por Schnieders e Puhlmann (2006), apresenta um modelo de processo completo de LPN, direcionado a sistemas orientados a processos, denominado PEFP (Processo de Engenharia da Famlia de Processos), conforme ilustrado na Figura 3.8.

35

Os processos engenharia da famlia de processos (EFP) e engenharia da aplicao (EA) possuem as mesmas atividades: anlise, design e implementao. O artefato resultante da anlise um modelo de caractersticas, com as caractersticas da famlia de processos no EFP. No EA, esse artefato configurado de maneira a representar as caractersticas de uma instncia especfica. Na atividade de design do EFP o processo da famlia modelado. Utilizando como entrada o modelo de caractersticas elaborado na atividade de Anlise do EA, juntamente com o modelo de processo de negcio elaborado na fase de design do EFP, a atividade de design do EA modela o processo de negcio a ser instanciado. A atividade de implementao do EFP responsvel por implementar os componentes e/ou servios responsveis por executar cada atividade da famlia de processos. Por outro lado, a atividade de implementao do EA responsvel por selecionar os componentes e/ou servios implementados no EFP para implementar o processo instanciado. possvel notar que as atividades dos processos EFP e EA foram elaboradas com o intuito de serem compatveis com o paradigma MDD (Model Driven Development17). De fato, Schnieders e Puhlmann (2006) apresentam diretrizes para a automao de todo o PEFP por meio de programao generativa (CZARNECKI e EISENECKER, 2000), apresentando os exemplos na linguagem Java (ORACLE, 2012).

17

Processo de desenvolvimento de software que visa o reso por meio da obteno de cdigo fonte a partir de modelos de softwre.

36

Figura 3.8 PEFP - Processo de Engenharia de Famlia de Processo (Adaptado de Schnieders e Puhlmann 2006).

O processo PEFP utiliza o modelo de caractersticas para representar as variabilidades da famlia de processos e faz o uso do vrBPMN (SCHNIEDERS e PUHLMANN 2006), que uma notao proposta pelos prprios autores para representar as variabilidades no prprio processo de negcio. Essa notao uma extenso do BPMN 1.0 (WHITE, 2004) utilizando esteretipos da UML 2. O intuito da modelagem de processos de negcios utilizando a notao vrBPMN servir como um passo intermedirio para a gerao automtica dos componentes e/ou servios da famlia de processos. Na Figura 3.9 ilustrado um exemplo de processo de negcios modelado em vrBPMN, o qual explicita o ponto de variao pagamento e as respectivas variantes carto de crdito e carto de crdito ou dinheiro. possvel observar o uso dos esteretipos da UML 2 nessa figura. A atividade Pagamento representa um ponto de variao e rotulada com o esteretipo <<Abstract>>, e suas variantes, as atividades Carto de Crdito e Carto de Crdito ou Dinheiro, so conectadas por meio de associaes rotuladas com o esteretipo <<Implementation>>. A implementao padro pode ser representada com o esteretipo <<Default>>, auxiliando na configurao do diagrama vrBPMN para a gerao de cdigo fonte. O smbolo de quebra-cabea proposto na linguagem vrBPMN para 37

enriquecer o modelo de maneira a representar uma variante sem precisar escrever o esteretipo completo, uma alternativa a esse smbolo declarar explicitamente o esteretipo <<Variant>> no elemento de interesse. O trabalho supracitado relevante para esta proposta de mestrado por descrever mtodos para gerenciar e representar variabilidades em processos de negcios utilizando BPMN, no entanto, destina-se a sistemas orientados a processos e no ao gerenciamento de processos de negcios.

Figura 3.9 Ponto de Variao "Pagamento" utilizando a notao vrBPMN (adaptado de Schnieders e Puhlmann, 2006).

Baseando-se em Schnieders e Puhlman (2010), Boffoli et al. (2012a) define LPN como sendo um portflio de processos de negcios intimamente relacionados, com caractersticas, variaes e contextos de operao e tal portflio consiste em: - Conjunto de semelhanas: Semelhanas so ativos invariantes e no contexto de BPM so partes comuns que formam a base para todos os processos de negcios da LPN; - Conjunto de variabilidades: corresponde ao conjunto de ativos variveis, que podem ser selecionados para adaptar o processo a ser derivado da LPN e instanciado. - Conjunto de regras: tais regras correspondem aos objetivos do negcio e explicitam a tarefa de tomada de deciso para realizar composio flexvel de ativos de processos. Boffoli et al (2012a) prope ento a construo de uma LPN por meio de duas atividades, a Anlise de Domnio e a Modelagem das Variabilidades. O conjunto de regras que compe a LPN documentado por meio de tabelas de deciso (procurar 38

referncia). Apesar de a abordagem proposta por Boffoli et al. (2012a) no documentar explicitamente os objetivos de negcio da LPN, as tabelas de deciso fornecem um meio para a resoluo das variabilidades, que ser considerado na elaborao das atividades da abordagem proposta no trabalho atual. A abordagem citada no deixa claro qual notao adotada para a modelagem dos processos de negcios que compem a LPN e a atividade de Anlise de Domnio pressupe que os processos de negcios j esto mapeados, sendo necessrio apenas a anlise de caractersticas e a construo do Modelo de Caractersticas. Alm disso, a abordagem apresentada por Boffoli et al. (2012a) no modela os objetivos do negcio e consequentemente no baseada nas duas vises propostas neste trabalho. Complementar ao trabalho de Boffoli et al. (2012a), Boffoli et al. (2012b) define Linhas de Sistemas SOA, por meio da aplicao da LPN proposta e DOP (Desenvolvimento Orientado a Processos). Por meio da LPN, Boffoli et al. (2012b) adota reso de ativos e mecanismos de variao (prticas LPS) para modelar uma variante de processo adequada s necessidades de clientes especficos. O DOP usado para transformar a variante de processo modelada em um Sistema SOA por meio de transformaes sucessivas, fazendo com que o modelo de processo seja compreensvel por um mecanismo de execuo. Assim como Maracci (2010), Boffoli et al. (2012b) direciona a adoo das prticas de LPS no contexto de desenvolvimento de software (softwares orientados a servios) e no Gesto de Processos de Negcios. A partir dos trabalhos apresentados, observa-se a oportunidade por pesquisas na rea de LPN e, em especial, na modelagem de variabilidade de modelos de processos de negcios utilizando a verso atual da notao padro BPMN uma vez que apenas um dos trabalhos encontrados utiliza a verso 1.0 do BPMN nesse contexto (Schnieders e Puhlmann, 2006). Isso demonstra a relevncia da atual proposta de trabalho, que visa explorar os recursos fornecidos pela verso mais atual da notao BPMN para representar as variabilidades de uma linha de processos de negcio por meio de um modelo ortogonal de variabilidades, bem como a concepo de um repositrio de LPNs para reduzir o esforo, tempo e custos durante a reutilizao desse tipo de artefato.

39

3.5

Consideraes Finais
A ELPS uma disciplina consolidada para atingir o reso de artefatos de

software. Como resultado, essa disciplina pode ser usada com o intuito de reutilizar modelos de processos de negcios, introduzindo o conceito de LPN. Para facilitar e reduzir os custos associados ao reso de qualquer tipo de artefato, inclusive modelos de processos de negcios, imprescindvel o uso de repositrios de reso, que propiciam a insero, gesto, busca, seleo e reso de artefatos. Levando em considerao os benefcios providos pelas LPNs, importante a existncia de repositrios de processos de negcios com suporte a variabilidade, que o foco da pesquisa deste trabalho e que so denominados neste trabalho por repositrios de linhas de processos de negcio. No prximo captulo apresentado um framework proposto na literatura para o desenvolvimento de repositrios de modelos de processos de negcios, que ser utilizado como base para o desenvolvimento do repositrio de LPNs proposto neste trabalho.

40

CAPTULO 4 -Repositrio de Modelagem de Processos de Negcios


4.1 Consideraes Iniciais
Neste captulo so abordados repositrios de modelos de processos de negcios, cujo entendimento importante para a concepo do repositrio proposto neste trabalho. Na Seo 4.2 apresentado o framework para repositrios de modelos de processos de negcios proposto por Yan et al (2012), que de interesse deste trabalho, pois ser estendido para o contexto de repositrios de LPN (Seo 3.4.2), e na Seo 4.3 so apresentadas as consideraes finais do captulo.

4.2

Framework para Repositrios de Modelos de Processos de Negcios


No contexto de processos de negcio, o reso tem sido praticado por

algumas empresas (YAN et al., 2012). Um exemplo disso a SAP (Systems, Applications, and Products in Data Processing) que possui um modelo de referncia com mais de seiscentos modelos de processos de negcios configurados de acordo com a realidade de cada um de seus clientes. O gerenciamento de um panorama de processos como esse uma tarefa complexa que lida com algumas questes como: encontrar o processo de negcios mais adequado, em conformidade com as necessidades, em uma coleo de processos, gerenciar diferentes verses de processos de negcios e manter a consistncia do contedo quando mltiplas pessoas esto editando o mesmo processo de negcio ao mesmo tempo (YAN et al.,2012). Repositrios que apoiam a insero, a busca, a seleo e a gesto de ativos reutilizveis, como o caso de requisitos, modelos de design, cdigo fonte e teste, podem ser estendidos para armazenar modelos de processos de negcios usando modelos conceituais como, por exemplo, esquemas de bancos de dados que so especficos de processos de negcios (YAN et al., 2012). Esse tipo de repositrio denominado repositrio de modelos de processos de negcios, mencionados neste captulo de repositrios de MPN. Repositrios de MPN tm sido propostos e desenvolvidos (YAN et al., 2012) e alm das funcionalidades de um repositrio tradicional, tais repositrios devem atender funcionalidades especficas de processos de negcios, como por exemplo, 41

auxiliar no gerenciamento do ciclo de vida dos processos de negcios, ajudar a manter a consistncia entre os processos privados e os processos pblicos de uma organizao e auxiliar no gerenciamento de configurao dos processos de negcios que so compostos por (verses de) subprocessos e tarefas (YAN et al., 2012). Yan et al. (2012) fizeram uma anlise de 20 repositrios de MPN atuais e apresentaram um framework para repositrios de processos de negcios. Dentre os repositrios analisados, dois repositrios permitem o armazenamento de arquiteturas de referncias de processos de negcios (FIORINI et al., 2001; THELING et al., 2005), outros dois deles permitem o armazenamento de modelos de referncia de processos de negcios (ELHADAD et al., 2008; WANG e WU 2011) e por ltimo um deles permite o armazenamento de variantes de um processo (LU et al., 2009). Esses so os repositrios analisados por Yan et al. (2012) e mais intrinsecamente relacionados a repositrios de LPN, porm, o conceito de LPN no considerado em nenhum dos repositrios estudados, o que refora a relevncia do atual trabalho. O framework proposto por Yan et al. (2012) dividido em duas partes: Modelo de Gerenciamento do Repositrio de MPN, que apresenta todas as funcionalidades providas pelos repositrios analisados, e a Arquitetura de Referncia do Repositrio de MPN, que apresenta os componentes que fornecem tais funcionalidades. As duas partes do framework esto apresentadas nas prximas subsees.

4.2.1 Modelo de Gerenciamento de Repositrios de MPN


O modelo de gerenciamento de repositrio de MPN do framework composto por trs partes: modelo de dados de processo de negcio, modelo de funo de processo de negcio e modelo de gerenciamento de processos de negcios, as quais esto descritas a seguir. Modelo de dados de processo de negcio Estabelece o tipo de modelos de processos de negcios e dados relacionados que podem ser armazenados em um repositrio de MPN, sendo composto pelo metamodelo, pela apresentao, pelo modelo de armazenamento e pelo modelo de ndice dos dados do processo de negcio. O metamodelo dos dados do processo de negcio prescreve as informaes que podem e as que devem ser armazenadas no repositrio, definindo os conceitos que 42

sero usados no repositrio e as relaes entre esses conceitos. Essas informaes foram classificadas por Yan et al. (2012) em aspectos do processo de negcios e tipos de artefatos do processo de negcios. Os aspectos de processos de negcios definidos no metamodelo do modelo dos dados de processo de negcio do framework so: Atividade: realizada no processo de negcio; Fluxo de Controle: relacionamento entre as atividades do processo de negcio e as possveis sequncias de execuo das mesmas; Dados: informao que usada e alterada durante a execuo de um processo de negcio; Recurso: recursos fsicos que so necessrios para executar um processo de negcio, incluindo os recursos humanos; Autorizao: descreve quem autorizado a realizar qual parte do processo de negcio; Organizao: descreve a estrutura organizacional, que consiste em pessoas e unidades organizacionais, relacionada a uma coleo de processos de negcios; Objetivo: descreve a hierarquia de objetivos estratgicos, o relacionamento entre tais objetivos e os processos de negcios que devem ser executados para atingi-los; Relacionamento: representa a relao entre processos de negcios e outros processos de negcios, como por exemplo, processos e subprocessos, processos que se comunicam por meio de troca de mensagens; Semntico: descreve semanticamente conceitos para processos de negcios; Monitoramento: consiste de conceitos para definir como o desempenho de um processo de negcios poderia ser monitorado; Controle de Gerenciamento: contm conceitos para definir controles que so implementados por processos de negcios, como o acompanhamento dos indicadores de processos de negcios, por exemplo.

Os tipos de artefatos de processos de negcios definidos no metamodelo do modelo de dados do framework so elencados a seguir: 43

Processo de negcio especfico da empresa: representa as operaes da prpria empresa; Processo de negcio de referncia: um processo de negcio padro e abstrato que pode ser reusado e adaptado para desenvolver processos de negcios especficos da empresa;

Padro de processo de negcio: uma parte de um processo de negcio que descreve uma melhor prtica sumarizada, a partir de experincias anteriores;

Instncia de processo de negcios: refere-se a uma execuo de um processo de negcio para um cliente, ou seja, uma instncia de um processo sendo executada.

Informao histrica: consiste de registros com informaes sobre execues de instncias de processos de negcios.

A apresentao do modelo de dados do processo de negcios estabelece como as informaes armazenadas no repositrio so exibidas para o usurio final. Tais informaes podem ser exibidas, por exemplo, de maneira textual ou por meio de notaes especficas, como o caso do BPMN de interesse deste trabalho. O modelo de armazenamento define como a informao original sobre o processo de negcio precisa ser tecnicamente fornecida para o repositrio (modelo de dados externo) e como precisa ser armazenada internamente pelo repositrio (modelo de dados interno). O modelo de ndice dos dados do processo de negcio prescreve os ndices que devem ser mantidos para os modelos de processos de negcio, visando permitir que os usurios do repositrio possam rapidamente navegar ou pesquisar na coleo de processos de negcios. Uma aplicao prtica dos ndices est na classificao que os analistas de negcios fazem para os processos de negcios, como por exemplo, processos de finanas, processos de vendas, processos de suporte, etc. Modelo de funo de processo de negcio Prescreve as diversas funes que um repositrio de MPN deve suportar para manipular de maneira efetiva os processos de negcios que ele armazena. O

44

framework estabelece as funes de armazenamento, recuperao e integrao de processos de negcios. Dentre as funes de armazenamento, esto funes para criar, atualizar e remover processos de negcios ou partes de processos de negcios, alm das funes para importar e exportar processos de negcios para e do repositrio, respectivamente. As funes de recuperao que devem estar presentes em repositrios de MPN so: navegao, que consiste em examinar manualmente a coleo de processos de negcios disponvel visando selecionar o mais adequado; busca simples, na qual deve prover um mecanismo para recuperar processos de negcios que possuam informaes que condizem com os critrios informados; e busca avanada, que consiste na busca avanada por meio de linguagens de consultas especficas do repositrio. As funes de integrao possibilitam que o repositrio se comunique com ferramentas externas, como por exemplo, ferramentas de modelagem de processos de negcios, por exemplo, Bizagi (BIZAGI, 2012), e ambientes de apoio ao desenvolvimento, por exemplo, Eclipse (ECLIPSE, 2012) e Netbeans (ORACLE, 2012). Modelo de gerenciamento de processo de negcio Estabelece as funes avanadas de gerenciamento do repositrio, que so classificadas em funes gerais e funes especficas. As funes gerais so: gerenciamento de acesso, gerenciamento de integridade, gerenciamento de transao, gerenciamento de check-in/check-out 18 , gerenciamento de despacho19, gerenciamento de notificao das mudanas que ocorrem nos objetos do repositrio e gerenciamento de contextos20. As funes especficas para gerenciamento de processos de negcios so: gerenciamento de verso, gerenciamento de configurao, gerenciamento de viso
21

e gerenciamento de ciclo de vida.

18

Gerenciamento de check-in/check-out permite que um usurio efetue o check-out de objetos do repositrio, ou seja, obtenha tais objetos impedindo que outros usurios faam alteraes nos mesmos. Posteriormente, o usurio pode efetuar o check-in de tais objetos, ou seja, submet-los de volta ao repositrio liberando-os para alteraes. 19 O gerenciamento de despacho permite associar uma ordem de trabalhos ao objeto do repositrio de maneira que sejam enviadas notificaes aos usurios sobre os trabalhos relacionados ao objeto que precisam ser realizados, na ordem especificada. 20 Contextos em um repositrio so colees de objetos do repositrio, tambm chamados de projetos ou workspaces. 21 Gerenciamento de viso de processos uma atividade de um repositrio especfico o Fragmento (SCHUMM et al., 2010). Essa atividade permite que fragmentos de processos sejam gerenciados, e no

45

Gerenciamentos de verso, de configurao e de viso fazem parte das funes de repositrios gerais, porm, foram especializadas para atender requisitos especficos de processos de negcios (DER AALST et al., 2003, CHOI et al., 2007; LAPOUCHNIAN e MYLOPOULOS, 2007; ZHAO e LIU 2007). No Quadro 4.1 apresentado um sumrio do modelo de gerenciamento de repositrio de MPN com as funes que um repositrio de MPN deve contemplar e que foram discutidas nesta seo.
Quadro 4.1 Modelo de gerenciamento de repositrio de MPN (Adaptado de Yan et al., 2012).
Modelo de gerenciamento de repositrio de MPN Modelo de dados de processo Meta modelo de processo Aspecto de processo Tipos de artefatos de processo Apresentao de processo Notao do processo Modelo de armazenamento de processo Modelo externo de dados de processo Modelo interno de dados de processo Modelo de dados relacionados a processo Modelo de ndices de processo Classificaes de processos Outros ndices Funes de armazenamento Criar Remover Atualizar Importar Exportar Funes de recuperao Navegao Busca Query Funes de integrao [Dependente de ferramentas externas] Funes especficas Gerenciamento de verso Gerenciamento de configurao Gerenciamento de ciclo de vida Gerenciamento de viso de processo Funes gerais Gerenciamento de acesso Gerenciamento de integridade Gerenciamento de transao Gerenciamento de check-in/out Gerenciamento de despacho Gerenciamento de notificao Gerenciamento de contexto

Modelo de funo de processo

Modelo de gerenciamento de processo

4.2.2 Arquitetura de Referncia de Repositrios de MPN


A arquitetura de referncia do framework de Yan et al. (2012) possui quatro camadas, conforme ilustradas na Figura 4.1, conectadas por meio de interfaces bem definidas: camada de apresentao, camada de gerenciamento de repositrio de processo de negcio, camada de gerenciamento de banco de dados e camada de armazenamento.

somente o processo como um todo. O repositrio em questo (Fragmento) apoia o reso desses fragmentos em diferentes processos.

46

Figura 4.1 Arquitetura de referncia de repositrio de MPN (Adaptado de Yan et al., 2012).

A camada de apresentao responsvel por prover uma interface grfica amigvel na qual os usurios possam interagir com o repositrio e com as suas funes. A camada de gerenciamento de repositrio de processo de negcio responsvel por implementar as funes de recuperao, as funes especficas de gerenciamento de processo de negcios, bem como, as seguintes funes gerais de gerenciamento de repositrios: gerenciamento de check-in/check-out, gerenciamento de despacho, gerenciamento de notificao e gerenciamento de contexto. Alm disso, as funes de importar e exportar processos de negcios tambm so implementadas nessa camada, as demais funes de armazenamento e de gerenciamento de repositrios, em

47

geral, so implementadas na camada de gerenciamento de banco de dados (Camada SGBD). Na camada de armazenamento todos os dados relacionados aos processos de negcios so armazenados, ou seja, o tratamento do modelo de dados de processo responsabilidade dessa camada.

4.3

Consideraes Finais

Este captulo finaliza o embasamento terico deste trabalho apresentando o framework proposto por Yan et al. (2012) para repositrios de modelos de processos de negcios. Com base nesse framework possvel desenvolver um repositrio de modelos de processos de negcios levando em considerao as principais funcionalidades para esse tipo de repositrio. Nota-se que o framework em questo no considera as tcnicas de ELPS, sendo assim, este trabalho prope estender o framework proposto por Yan et al. (2012) no contexto de LPN, bem como atuar no desenvolvimento de um repositrio de LPNs baseando-se no framework estendido.

48

CAPTULO 5 -Proposta de Trabalho


5.1 Consideraes Iniciais
Neste captulo apresentada a proposta deste trabalho com indicao das atividades necessrias para cumprir os objetivos e resultados esperados. Na Seo 5.2 so apresentados o problema que ser tratado por este trabalho e a respectiva proposta para resolv-lo, na Seo 5.3 discutida a metodologia necessria para a execuo do trabalho e na Seo 5.4 so apresentadas as consideraes finais deste captulo, abordando em linhas gerais as principais contribuies decorrentes da pesquisa.

5.2

Problema e Proposta do Trabalho


Os benefcios obtidos pelo reso de qualquer artefato durante o

desenvolvimento de software podem ser comprometidos quando no h apoio computacional especfico provido por repositrios de reso. Isso no diferente no contexto de modelos processos de negcios, visto que alguns domnios possuem um extenso nmero de processos de negcios e combinaes dos mesmos. Prticas de ELPS esto sendo adotadas como apoio modelagem de processos de negcios, como o caso do gerenciamento de variabilidades e da adequao dos processos de anlise de domnio e de aplicao de LPS para o contexto de processos de negcios, resultando em LPN. Sob essa perspectiva, as seguintes carncias foram encontradas na literatura: Apenas dois dos trabalhos citados (SANTOS et al., 2010; SCHNIEDERS e PUHLMANN, 2006) consideram a notao BPMN na modelagem de processos de negcios, e o segundo a considera em uma verso antiga; Muitas tcnicas para gerenciar variabilidades, as explicitam no prprio modelo de processo de negcio ou de domnio (SCHNIEDERS e PUHLMANN, 2006; MARACCI, 2010;

SANTOS et al., 2010), ou documentam separadamente, mas de forma genrica (como em planilhas). No primeiro caso existe a dificuldade em diferenciar o que relativo ao processo de negcio e o que variabilidade, e no segundo caso a anlise das variabilidades 49

dificultada por no se basear em um modelo especfico de variabilidades. Abordagens LPN propostas focam no desenvolvimento orientado a processos (SCHNIEDERS e PUHLMANN, 2006) ou no

desenvolvimento baseado em servios, apresentando processos de negcios dependentes de tecnologias (MARACCI, 2010). A nica abordagem LPN com foco no gerenciamento de processos de negcios (ROLLAND e NURCAN, 2010) segue estritamente o paradigma orientado a objetivos e no considera as atividades dos processos de negcios. O framework para repositrios de processos de negcios resultante do estudo de Yan et al. (2010) no contempla caractersticas de ELPS, como por exemplo, gerenciamento de variabilidades (Captulo 4), no atendendo o contexto de LPN.

Diante das carncias observadas na literatura, no h uma abordagem de LPN, que trate tanto a plataforma de software quanto a instanciao em massa de modelos processos de negcios e que possa ser utilizada na rea de Gesto de Processos de Negcios. Sob essa perspectiva, este trabalho prope a concepo e o desenvolvimento de um repositrio de LPNs. Para isso, ser inicialmente definida uma abordagem para LPN em BPMN 2.0 tomando como base conceitos de ELPS, trabalhos sobre LPN existentes (SCHNIEDERS e PUHLMANN 2006, ROLLAND e NURCAN 2010, MARACCI 2010) e trabalhos sobre variabilidades em processos de negcios (RAZAVIAN e KHOSRAVI 2008, ROLLAND e PRAKASH 2000, MONTERO et al.,2008). Posteriormente, o framework para repositrio de processos de negcios (Yan et al., 2012) ser estendido para atender o contexto de LPN, tomando como base a abordagem definida. Em seguida, o framework estendido ser instanciado para apoiar o desenvolvimento de um prottipo de repositrio de LPNs. O prottipo ser considerado como prova de conceito para analisar o framework estendido.

5.3

Metodologia e Cronograma
50

Diversas atividades so necessrias para o cumprimento dos objetivos estabelecidos no Captulo 1 (Seo 1.3), e esto divididas em relao a: tpicos de cumprimento de crditos e exigncias do programa de mestrado (C), tericas (T), prticas (P) experimentos e/ou estudos de caso (E) e de documentao ou publicao (D). As atividades necessrias para o cumprimento dos objetivos deste trabalho so descritas a seguir e o cronograma de execuo apresentado no Quadro 5.1. C1. Cumprir crditos exigidos para o mestrado: obter pelo menos 24 crditos em disciplinas do curso, sendo pelo menos uma disciplina de cada um dos grupos (I Teoria da Computao), (II Sistemas de Computao) e (III Sistemas de Informao): nessa atividade, as disciplinas cursadas e os respectivos conceitos foram: Teoria dos Grafos (conceito A), Anlise de Algoritmos (conceito B), Bioinformtica (conceito B), Arquitetura de Computadores (conceito C), Redes de Computadores (conceito B) e Engenharia de Software (conceito A). C2. Cursar a disciplina Seminrios de Computao no primeiro semestre. C3. Realizar o Estgio de Docncia: para o cumprimento dessa atividade foi ministrada a disciplina de Anlise e Projeto de Aplicaes Web para a turma do 6 semestre de Tecnologia em Anlise e Desenvolvimento de Sistemas, com carga horria de 64 horas, em conjunto com outro mestrando. C4. Demonstrar capacidade de compreenso de texto tcnico em ingls. D1. Escrever Qualificao. C5. Realizar o Exame de Qualificao. T1. Efetuar levantamento do embasamento terico e de trabalhos relacionados: essa atividade consiste no levantamento dos principais conceitos para entender a fundamentao terica do trabalho e identificar as carncias do tema abordado pelo trabalho, bem como para apoiar na escrita da qualificao e da dissertao. T2. Definir uma abordagem para LPN baseada em vises: durante a concepo da abordagem proposta sero consideradas duas vises para representar os processos de negcios: a viso orientada a objetivos e a viso orientada a atividades, a fim de oferecer diferentes perspectivas para o entendimento da linha de processos de negcio. Para a execuo dessa atividade sero considerados conceitos de ELPS e os trabalhos existentes sobre LPN (SCHNIEDERS e PUHLMANN 2006, ROLLAND e NURCAN 2010, MARACCI 2010). Em relao modelagem das variabilidades pela abordagem, ser definida uma tcnica para a modelagem de variabilidades de processos 51

de negcios utilizando a notao BPMN 2.0 e modelos ortogonais (POHL et al.,2005) em ambas as vises. E1. Conduzir um experimento de caso para analisar a eficincia da abordagem proposta na atividade T2: nesse experimento ser analisada a eficincia da abordagem proposta sob duas perspectivas: tempo de instanciao e qualidade do modelo de processo de negcio. A qualidade ser medida pela completude do modelo, que deve atender todas as restries de variabilidade impostas pelo domnio e explicitadas na linha. O reso de modelos de processos de negcio provido pela abordagem proposta ser comparado com o reso ad hoc de modelos de processos de negcios do domnio representados em BPMN 2.0. Dessa forma, os sujeitos do experimento sero divididos em dois grupos uniformes: um grupo ir elaborar um modelo de processo de negcio por meio da instanciao de uma linha de processo de negcio do domnio de interesse, tomando como base a abordagem definida, e o outro grupo ir elaborar um modelo de processo de negcio tomando como base um modelo de processo de negcio do domnio de interesse representado em BPMN 2.0. D2. Escrever dissertao. C6. Realizar defesa da dissertao. D3. Redigir artigos e relatrios tcnicos: durante a vigncia do trabalho sero escritos relatrios tcnicos bem como artigos que sero submetidos a eventos e a peridicos nacionais e internacionais, selecionados a partir do Qualis-Capes. No Quadro 5.1 so ilustradas as atividades realizadas (destacadas em barras azuis), em andamento e que devem ser realizadas (destacadas em barras pretas) para a concretizao da proposta de trabalho apresentada na Seo 5.2.
Quadro 5.1 Cronograma de atividades

2011 Ativ. C1 C2 C3 C4 D1 C5 T1 T2 T3 P1 1 Trim 2 Trim 3 Trim 4 Trim 1 Trim

2012 2 Trim 3 Trim 4 Trim

2013 1 Trim

52

E1 E2 D2 C6 D3 Legenda: Atividades realizadas Atividades a realizar ou em andamento

5.4

Consideraes Finais
Este trabalho se prope a contribuir positivamente com o reso de modelos de

processos de negcios utilizando tcnicas de ELPS, por meio da definio de uma abordagem para LPN tomando como base trabalhos existentes, da extenso de um framework para repositrios de processos de negcios para considerar tambm repositrios de LPNs e, por fim, do desenvolvimento de um prottipo de um repositrio de LPNs cuja construo baseada no framework estendido.

Referncias
ABURUB, F.; ODEH, M.; BEESON, I. Modelling non-functional requirements of business processes. Information and Software Technology, v. 49, n. 11-12, p. 11621171, 2007.

BERNSTEIN, P. A.; DAYAL, U. An Overview of Repository Technology. Proceedings of the 20th International Conference on Very Large Data Bases. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., 1994.

BIZAGI. Bizagi BPM Suite. 2012. Disponvel em: <http://www.bizagi.com>. Acesso em: 6 ago. 2012.

BLYTH, A. J. C.; CHUDGE, J.; DOBSON, J. E.; STRENS, M. R. ORDIT: a new methodology to assist in the process of eliciting and modelling organizational requirements. Proceedings of the conference on Organizational computing systems. New York, NY, USA: ACM, 1993.

53

BOFFOLI, N.; CAIVANO, D.; CASTELLUCCIA, D.; VISAGGIO, G. Business Process Lines and Decision Tables Driving Flexibility by Selection. In: GSCHWIND, T.; PAOLI, F. DE; GRUHN, V.; BOOK, M. (Eds.). Software Composition. Berlin, Heidelberg: Springer Berlin Heidelberg, 2012a, p. 178-193.

BUBENKO, J. A.; BRASH, D.; STIRNA, J. EKD User Guide. 91 p. Stockholm, Sweden: [s.n], 1998.

CARDOSO, E. C. S.; ALMEIDA, J. P.; GUIZZARDI, G.; GUIZZARDI, R. S. S. Eliciting Goals for Business Process Models with Non-Functional Requirements Catalogues. In: AALST, W.; MYLOPOULOS, J.; SADEH, N. M.; SHAW, M. J.; SZYPERSKI, C.; HALPIN, T.; KROGSTIE, J.; NURCAN, S.; PROPER, E.; SCHMIDT, R.; SOFFER, P.; UKOR, R.. (Eds.). Enterprise, Business-Process and Information Systems Modeling. Berlin, Heidelberg: Springer Berlin Heidelberg, 2009. v. 29, p. 33-45.

CHANG, J. F. Business Process Management System - Strategy and Implementation. 1. ed., 204 p., [S.l.]: Auerbach Publications, 2006.

CHINOSI, M.; TROMBETTA, A. BPMN: An introduction to the standard. Computer Standards & Interfaces, v. 34, n. 1, p. 124-134, 2011.

CHOI, I.; KIM, K.; JANG, M. An XML-based process repository and process query language for integrated process management. Knowledge and Process Management, v. 14, n. 4, p. 303-316, 2007.

CZARNECKI, K.; EISENECKER, U. Generative Programming: Methods, Tools, and Applications. [S.l]: Addison-Wesley Professional, 2000.

DER AALST, W. M. P. VAN; HOFSTEDE, A. H. M. T.; WESKE, M. Business process management: a survey. BPM'03 Proceedings of the 2003 international conference on Business process management. Berlin, Heidelberg: Springer-Verlag. 2003.

54

DIJKSTRA, E. W. Notes on structured programming. In: DAHL, O. J.; DIJKSTRA, E W; HOARE, C. A. R. Structured programming. London, UK, UK: Academic Press Ltd., 1972. p. 1-82.

ECLIPSE. Eclipse Foundation. Disponvel em: <http://www.eclipse.org/>. Acesso em: 6 ago. 2012.

ELHADAD, M.; BALABAN, M.; STURM, A. Effective Business Process Outsourcing: The Prosero Approach. International Journal of Interoperability in Business Information Systems, v. 3, n. 1, 2008. ERIKSSON, H.-E.; PENKER, M. Business Modeling with UML: Business Patterns at Work. (Eds. Hudson, T.) 480 p., [S.l.]: John Wiley & Sons, 2000.

FIELDING, R. T. Architectural styles and the design of networked-based software architectures. 2000. Thesis Dept. of Information and Computer Science, University of California, 2000.

FIORINI, S. T.; LEITE, J. C. S. DO P.; LUCENA, C. J. P. DE. Process Reuse Architecture. Proceedings of the 13th International Conference on Advanced Information Systems Engineering. London, UK: Springer-Verlag. 2001.

GIMENES, I.; FANTINATO, M.; TOLEDO, M. A product line for business process management. Software Product Line Conference, 2008. SPLC 08. 12th International, p. 265-274, 2008.

LADEIRA, S. A. Z.; CAGNIN, M. I. Reutilizao De Modelagem De Negcios Baseada Em Vises. 2008. Dissertao (Mestrado em Cincia da Computao) Centro Universitrio Eurpedes de Marlia, Fundao de Ensino Eurpedes Soares da Rocha, Marlia, SP, 2008.

LADEIRA, S. A. Z.; FUNABASHI, R. J.; PENTEADO, R. D.; CAGNIN, M. I. Extenso da UML para Representao de Modelagem de Negcios Baseada em

55

Vises. VII Jornada Peruana de Computacin. Lima, Peru: Sociedad Peruana de Computacin, 2008b.

LADEIRA, S. A. Z.; BRAGA, R. T. V.; PENTEADO, R. D.; CAGNIN, M. I. Reutilizao de Modelagem de Negcios baseada em Vises: um Estudo de Caso. XXII Simpsio Brasileiro de Engenharia de Software (SBES 2008). Campinas/SP Brasil: [s.n], 2008c.

LAPOUCHNIAN, A.; YU, Y.; MYLOPOULOS, J. Requirements-driven design and configuration management of business processes. Proceedings of the 5th international conference on Business process management. Berlin, Heidelberg: Springer-Verlag. 2007.

LAUDON, K. C.; LAUDON, J. P. Como Desenvolver Sistemas de Informao. In: LAUDON, K. C.; LAUDON, J. P. Sistemas de Informao Gerenciais. 9. ed. So Paulo, SP - Brasil: Pearson Prentice Hall, 2011. cap. 11. LEE, J. SIBYL: A Qualitative Decision Management System. 1990. Thesis P. Winston, ed. with S. Shellard, Cambridge, MA: MIT Press, 1990.

LU, R.; SADIQ, S.; GOVERNATORI, G. On Managing Business Processes Variants. Data and Knowledge Engineering, v. 68, n. 7, p. 642-664, 2009.

MARACCI, F. V. RofPN - Abordagem para reutilizao de processos de negcio. 2010. Dissertao (Mestrado em Cincia da Computao) Departamento de Informtica, Universidade Estadual de Maring - UEM, 2010.

MARSHALL, C. Enterprise Modeling with UML: Designing Successful Software through Business Analysis. Addison-Wesley Professional, 2000. p. 288.

MONTERO, I.; PEA, J.; RUIZ-CORTES, A. Representing Runtime Variability in Business-Driven Development Systems. Composition-Based Software Systems, 2008. ICCBSS 2008.

56

OASIS - ORGANIZATION FOR THE ADVANCEMENT OF STRUCTURED INFORMATION STANDARDS. Web Service Business Process Execution Language Version 2.0. 2007. Disponvel em: <http://docs.oasis-

open.org/wsbpel/2.0/wsbpel-v2.0.html>. Acesso em: 6 ago. 2012.

OMG - OBJECT MANAGEMENT GROUP. Documents Associated With UML Version 1.5. 2003. Disponvel em: <http://www.omg.org/spec/UML/1.5/>. Acesso em: 6 ago. 2012.

OMG - OBJECT MANAGEMENT GROUP. Documents Associated With UML Version 2.0. 2005. Disponvel em: <http://www.omg.org/spec/UML/2.0/>. Acesso em: 6 ago. 2012.

OMG - OBJECT MANAGEMENT GROUP. Documents Associated With Business Process Model And Notation (BPMN) 1.2. 2009. Disponvel em:

<http://www.omg.org/spec/BPMN/1.2/>. Acesso em: 6 ago. 2012.

OMG - OBJECT MANAGEMENT GROUP. Documents Associated With Business Process Model And Notation (BPMN) Version 2.0. 2011. Disponvel em: <http://www.omg.org/spec/BPMN/2.0/>. Acesso em: 6 ago. 2012.

ORACLE CORPORATION. Netbeans. 2012. Disponvel em: <http://netbeans.org/>. Acesso em: 6 ago. 2012.

ORACLE CORPORATION. 2012a. Java Technology Reference. Disponvel em: <http://www.oracle.com/technetwork/java/index-jsp-142903.html>. Acesso em: 10 ago. 2012.

PAVLOVSKI, C. J.; ZOU, J. Non-functional requirements in business process modeling. Proceedings of the fifth Asia-Pacific conference on Conceptual Modelling - Volume 79. Darlinghurst, Australia, Australia: Australian Computer Society, Inc. 2008.

57

POHL, K.; BOCKLE, G.; LINDEN, F. J. VAN DER. Software Product Line Engineering: Foundations, Principles and Techniques. 1st. ed. Springer Publishing Company, Incorporated, 2010.

RAZAVIAN, M.; KHOSRAVI, R. Modeling Variability in Business Process Models Using UML. Information Technology: New Generations, 2008. ITNG 2008.

ROCHA, E. DA. Guidelines for Business Modeling Elaboration based on Views from Domain Information. WER07 - Workshop em Engenharia de Requisitos 2007: Toronto, Canada, p. 47-55, 2007.

ROLLAND, C.; NURCAN, S. Business Process Lines to Deal with the Variability. HICSS2010. 2010.

ROLLAND, C.; PRAKASH, N. Bridging the Gap Between Organisational Needs and ERP Functionality. Requirements Engineering, v. 5, n. 3, p. 180-193, 2000.

ROSA, M. L.; REIJERS, H. A.; DER AALST, W. M. P. VAN; DIJKMAN, R. M.; MENDLING, J.; DUMAS, M.; GARCA-BAUELOS, L. APROMORE: An advanced process model repository. Expert Systems with Applications, v. 38, n. 6, p. 7029-7040, 2011.

SAGAWA, J. M. Repository Manager technology. IBM Systems Journal, v. 29, n. 2, p. 209-227, 1990.

SANTOS, E.; PIMENTEL, J.; CASTRO, J.; SNCHEZ, J.; PASTOR, O. Configuring the Variability of Business Process Models Using Non-Functional Requirements. In: BIDER, I.; HALPIN, T.; KROGSTIE, J.; NURCAN, S.; PROPER, E.; SCHMIDT, R.; UKOR, R.; AALST, W.; MYLOPOULOS, J.; ROSEMANN, M.; SHAW, M. J.; SZYPERSKI, C. (Eds.). Enterprise, Business-Process and Information Systems Modeling. Springer Berlin Heidelberg, 2010. v. 50, p. 274286.

58

SCHNIEDERS, A.; PUHLMANN, F. Variability Mechanisms in E-Business Process Families. (W. Abramowicz & H. C. Mayr, Eds.) Engineering. Berlin. 2006.

SCHUMM, D.; KARASTOYANOVA, D.; LEYMANN, F.; STRAUCH, S. Fragmento: Advanced Process Fragment Library. Proceedings of the 19th International Conference on Information Systems Development (ISD 2010), 25 August 2010, Prague, Czech Republic. Springer-Verlag. 2010.

SMITH, H.; FINGAR, P. Business process management: The Third Wave. MeghanKiffer Press, 2003. p. 292.

THELING, T.; ZWICKER, J.; LOOS, P.; VANDERHAEGHEN, D. An architecture for collaborative scenarios applying a common BPMN-repository. Distributed Applications and Interoperable Systems. Springer-Verlag. 2005.

W3C WORKING GROUP. Web Services Glossary. 2004. Disponvel em: <http://www.w3.org/TR/ws-gloss/>. Acesso em: 7 ago. 2012.

W3C WORKING GROUP. SOAP Version 1.2 Part 1: Messaging Framework (Second Edition). 2007. Disponvel em: <http://www.w3.org/TR/soap12-part1/>. Acesso em: 6 ago. 2012.

W3C WORKING GROUP. W3C XML Schema Definition Language (XSD) 1.1 Part 1: Structures. 2012. Disponvel em: <http://www.w3.org/TR/xmlschema11-1/>. Acesso em: 7 ago. 2012.

WANG, H. J.; WU, H. Supporting process design for e-business via an integrated process repository. Inf. Technol. and Management, v. 12, n. 2, p. 97-109, 2011.

WAZLAWICK, R. S. Anlise e Projeto de Sistemas de Informao Orientados a Objetos. 2. Ed.: Editora Campus, 2011.

WEISS, D. M.; LAI, C. Software Product-Line Engineering: A Family-Based Software Development Process. Addison-Wesley Professional; Har/Cdr edition, 1999. 59

WFMC - WORKFLOW MANAGEMENT COALITION. XML Process Definition Language (XPDL) Version 2.2. 2012. Disponvel em: <http://www.xpdl.org/>. Acesso em: 6 ago. 2012.

WHITE, S. Introduction to BPMN. IBM Corporation, 2004.

YAMAMOTO, R.; YAMAMOTO, K.; OHASHI, K.; INOMATA, J. Development of a business process modeling methodology and a tool for sharing business processes. Software Engineering Conference, 2005. APSEC 05. 12th Asia-Pacific. YAN, Z.; DIJKMAN, R.; GREFEN, P. Business process model repositories Framework and survey. Information and Software Technology, v. 54, n. 4, p. 380395, 2012.

YAOQIANG,

I.

Yaoqiang

BPMN

Editor

2.0.115.

Disponvel

em:

<http://bpmn.sourceforge.net/>. Acesso em: 13 ago. 2012.

YU, E. S.-K. Modelling strategic relationships for process reengineering. Toronto, Ont., Canada, Canada: University of Toronto, 1995.

YWORKS.

yED

version

3.9.2.

Disponvel

em:

<http://www.yworks.com/en/products_yed_about.html>. Acesso em: 13 ago. 2012.

ZHAO, X.; LIU, C. Version Management in the Business Process Change Context. In: ALONSO, G.; DADAM, P.; ROSEMANN, M. (Eds.). Business Process Management. ed: Springer Berlin / Heidelberg, 2007. v. 4714p. 198-213.

ZRNEC, A.; BAJEC, M.; KRISPER, M. Enterprise modelling with UML. 2001.

60

Você também pode gostar