CIn.ufpe.br 1
BVCCoN-Tool – Uma Ferramenta para Apoiar
uma Abordagem de Configuração de Processos de
Negócio Dinâmicos
Tarcísio Couto Pereira
Orientador: Jaelson Castro
Co-orientadora: Fernanda Alencar
CIn.ufpe.br 2
Agenda
• Motivação;
• Objetivos;
• Processo BVCCoN;
• Tecnologias;
• BVCCoN-Tool;
• Validação;
• Conclusão;
CIn.ufpe.br 3
Motivação
• Processos de negócio cada vez mais complexos;
• Processos de negócios dinâmicos;
• Foco na modelagem do comportamento funcional;
• Requisitos Não-Funcionais (RNFs) precisam ser levados em consideração, assim
como as informações de contexto;
• Abordagem BVCCoN – Santos (2013)
– Variabilidade;
– RNFs;
– Informação de contexto
CIn.ufpe.br 4
Motivação
CIn.ufpe.br 5
Motivação
• Abordagem complexa;
– Modelos de processos de negócio;
– Modelo de RNFs;
– Modelo de variabilidade;
– Modelo de informações contextuais;
• Falta de uma ferramenta torna o processo lento, difícil de entender e mais
propenso a erros;
CIn.ufpe.br 6
Objetivos
• Geral
– Desenvolver uma ferramenta para apoiar o processo de modelagem da
abordagem BVCCoN [Santos, 2013].
• Específicos
– Planejar e executar uma revisão sistemática da literatura sobre requisitos
não-funcionais, informações contextuais e modelos de processos de negócio;
– Desenvolver o metamodelo para a BVCCoN-Tool;
– Implementar a ferramenta de modelagem;
– Aplicar um estudo de caso para validar a ferramenta;
– Definir, planejar, executar e interpretar uma avaliação de usabilidade com
usuários reais;
CIn.ufpe.br 7
Processo BVCCoN
CIn.ufpe.br 8
Elicitação da Variabilidade [Aeroporto Check-In]
• Responsável por identificar e descobrir possíveis variações em um modelo de
processo de negócio;
• Entrada: Modelo de processo de negócio inicial;
• Saída: Informação elicitada.
CIn.ufpe.br 9
Descrição da Variabilidade
• Definir pontos de variação e variantes;
CIn.ufpe.br 10
Descrição da Variabilidade
• Definir pontos de variação e variantes;
CIn.ufpe.br 11
Análise de Contexto
var3 - Realizar Check-In Online
CIn.ufpe.br 12
Ligar Variantes & RNF
CIn.ufpe.br 13
Realizar a Configuração
• Análises
– top-down – priorizando algum RNF;
– bottom-up – selecionando um subconjunto de variantes;
CIn.ufpe.br 14
Configuração top-down
• RNF priorizado: Tempo de Resposta
CIn.ufpe.br 15
Configuração bottom-up
• Seleção de um subconjunto de variantes;
• VP1 – Tempo de resposta ++;
• VP2 – Disponibilidade +;
• VP3 – Controle de Acesso ++;
CIn.ufpe.br 16
Tecnologias
• Para o desenvolvimento da ferramenta, é necessário utilizar um conjunto de
tecnologias
• EMF (Eclipse Modeling Framework);
• GMF (Graphical Modeling Framework);
• Epsilon.
• Amplamente utilizado na academia;
• Vasta Documentação;
• Open Source;
CIn.ufpe.br 17
EMF - (Eclipse Modeling Framework)
• Metamodelo Ecore;
– EClass;
– EAttribute;
– EReference;
– EEnum;
CIn.ufpe.br 18
GMF - (Graphical Modeling Framework)
CIn.ufpe.br 19
Epsilon
• Família de linguagens e ferramentas destinadas à atividades de gerenciamento
de metamodelos;
– EuGENia;
– Emfatic;
– EOL (Epsilon Object Language)
– EVL (Epsilon Validation Language)
CIn.ufpe.br 20
Emfatic e EuGENia
• Metamodelo escrito em Emfatic
• Anotações EuGENia
CIn.ufpe.br 21
EuGENia
• EuGENia gera ferramentas gráficas a partir de um metamodelo Ecore com
anotações escritas na linguagem Emfatic.
CIn.ufpe.br 22
BVCCoN-Tool
• Transformar metamodelo Ecore em Emfatic;
CIn.ufpe.br 23
BVCCoN-Tool
• Realizar alterações no metamodelo
– Divisão dos links entre NFRSoftgoalContribution e NFRSoftgoalContributionOperational
como intuito de impedir o usuário de realizar ligações errôneas.
CIn.ufpe.br 24
BVCCoN-Tool
• Enriquecer metamodelo com anotações EuGENia
– @gmf.node [definindo o elemento gráfico que será o NFRModel – uma figura rounded]
– @gmf.compartment [definindo que NFRModel será um compartimento que irá abrigar
elementos]
CIn.ufpe.br 25
BVCCoN-Tool
• Gerar metamodelo Ecore
CIn.ufpe.br 26
BVCCoN-Tool
• Classes Java geradas pelo EMF Modelos GMF gerado com o EuGENia
CIn.ufpe.br 27
BVCCoN-Tool – Refinar editor usando EVL
CIn.ufpe.br 28
BVCCoN-Tool - Refinar editor usando EOL
CIn.ufpe.br 29
Editor Gráfico
CIn.ufpe.br 30
BVCCoN-Tool
• Processo final.
CIn.ufpe.br 31
BVCCoN-Tool
• Editor Gráfico
CIn.ufpe.br 32
Validação
• Cenário: Check-In Aeroporto
• Estudo de Caso
• Processo de Referência
CIn.ufpe.br 33
Estudo de Caso
• Elicitação da Variabilidade;
• Descrição da Variabilidade;
CIn.ufpe.br 34
Estudo de Caso
• Descrição da Variabilidade;
CIn.ufpe.br 35
Estudo de Caso
• Análise de Contexto;
CIn.ufpe.br 36
Estudo de Caso
• Análise de Requisitos Não-Funcionais;
CIn.ufpe.br 37
Teste de Usabilidade
• Método proposto por McClelland;
– Permite identificar a opinião dos participantes e classificar em “favoráveis”,
“desfavoráveis” e “sem opinião”;
– Também permite classificar separadamente os itens de questionários em que
os participantes foram “favoráveis”, “desfavoráveis” e “sem opinião”.
CIn.ufpe.br 38
Teste de Usabilidade
• PSSUQ - The Post-Study System Usability Questionnaire – IBM;
– Satisfação Geral;
– Utilidade do Sistema;
– Qualidade da Informação;
– Qualidade da Interface.
• Amplamente utilizado na academia;
• Citado por 933 trabalhos;
• Atende aos objetivos da pesquisa.
CIn.ufpe.br 39
Teste de Usabilidade
• The Post-Study System Usability Questionnaire – IBM;
– 1. De maneira geral, estou satisfeito em quão fácil é utilizar o sistema
– 2. Foi simples de usar o sistema
– 3. Eu fui capaz de completar as tarefas e cenários utilizando o sistema
• Escala Likert [1-5]
– Concordo fortemente - 5
– Concordo - 4
– Neutro - 3
– Discordo - 2
– Discordo fortemente - 1
CIn.ufpe.br 40
Teste de Usabilidade
• Usuários: Alunos de Pós-Graduação;
• Tarefas;
• Processo de Coleta de Dados;
• Resultados;
CIn.ufpe.br 41
Teste de Usabilidade - Resultados
• Média “sem opinião” = 19(total de itens) * 3 (número “sem opinião”) = 57;
• Análise manual.
CIn.ufpe.br 42
Teste de Usabilidade – Satisfação Geral
• Média “sem opinião” = 57;
• Não foi possível dividir os participantes entre ”favoráveis” x “desfavoráveis”;
• Segundo os participantes, a ferramenta possui uma boa usabilidade;
CIn.ufpe.br 43
Teste de Usabilidade – Satisfação Geral
• Análise dos itens;
• Média “sem opinião” = 3 * 14 = 42;
Item 9: O sistema mostrou mensagens de erro que claramente me disseram
como consertar os problemas...
CIn.ufpe.br 44
Teste de Usabilidade – Utilidade do Sistema
• Média “sem opinião” = 24;
• Média geral = 30,71;
• A ferramenta foi considerada útil pelos usuários na realização das tarefas;
CIn.ufpe.br 45
Teste de Usabilidade – Qualidade da Informação
• Média “sem opinião” = 21;
• Média geral = 25,93;
• Ferramenta considerada ofertante de boa qualidade de informação visual e
documentação.
CIn.ufpe.br 46
Teste de Usabilidade – Qualidade da Interface
• Média “sem opinião” = 9;
• Média geral = 11,43;
• Segundo os participantes, a ferramenta possui uma boa qualidade de interface;
CIn.ufpe.br 47
Ameaças à Validade
• Abordagem BVCCoN;
• Tarefas de usuário muito detalhadas;
• Falhas poderiam ter sido evitadas;
• Respostas positivas.
CIn.ufpe.br 48
Conclusão
• Através da BVCCoN-Tool, as três visões (requisitos não-funcionais,
variabilidade e informação contextual) foram possíveis de serem modeladas;
• O estudo de caso permitiu identificar que a utilização da ferramenta é viável e
prática para ser utilizada em ambientes reais;
• A avaliação de usabilidade possuiu uma aceitação geral pelos usuários.
CIn.ufpe.br 49
Conclusão
• Contribuições
– Revisão sistemática da literatura [artigo publicado no SBSI];
– Metamodelo BVCCoN-Tool;
– Ferramenta de modelagem;
– Estudo de caso;
– Avaliação de usabilidade;
CIn.ufpe.br 50
Conclusão
• Trabalhos Futuros
– Realizar outros estudos de caso;
– Realizar outra avaliação de usabilidade;
– Melhoria contínua da ferramenta;
– Integração com o editor gráfico BPMN;
– Extensão da BVCCoN-Tool;
– Compilação de modelos;
CIn.ufpe.br 51
Referências
• [1] EMF: Eclipse Modeling Framework (2nd Edition), volume 1. Addison-Wesley Professional, 2008.
• [2] Raian Ali, Fabiano Dalpiaz, and Paolo Giorgini. A goal-based framework for contextual requirements modeling and analysis.
Requirements Engineering, 15(4):439–458, 2010.
• [3] Colin Atkinson and Thomas Kuhne. Model-driven development: a metamodeling foundation. Software, IEEE, 20(5):36–41,
2003.
• [4] Josias Paes da Silva Junior. Agile: Uma abordagem para geração automática de linguagens i*. Master’s thesis, Universidade
Federal de Pernambuco, Recife, Pernambuco, Brasil, 2011.
• [5] Jose Luis de la Vara, Raian Ali, Fabiano Dalpiaz, Juan Sánchez, and Paolo Giorgini. Business processes contextualisation via
context analysis. In Conceptual Modeling– ER 2010, pages 471–476. Springer, 2010.
• [6] Ana Cristina de Freitas Dias. Uma linguagem específica do domínio para uma abordagem orientada aos objectivos baseada em
kaos. Master’s thesis, Universidade Nova de Lisboa, Lisboa, Portugal, 2009.
• [7] Antonio García Richard Paige Dimitris Kolovos, Louis Rose. The Epsilon Book, volume 1. Eclipse Public License, 2013.
• [8] Steve Easterbrook, Janice Singer, Margaret-Anne Storey, and Daniela Damian. Selecting empirical methods for software
engineering research. In Guide to advanced empirical software engineering, pages 285–311. Springer, 2008.
• [9] Eclipse. BPMN2 Modeler, 2013. http://eclipse.org/bpmn2-modeler/. Último acesso em Dezembro/2013.
• [10] Eclipse. Eclipse Modeling Framework Project (EMF), 2013. http://www.eclipse.org/modeling/emf/. Último acesso em
Outubro/2013.
• [11] Eclipse. Eclipse Modeling Project, 2013. http://www.eclipse.org/modeling/. Último
• acesso em Outubro/2013.
CIn.ufpe.br 52
Referências
• [12] Eclipse. Epsilon, 2013. http://www.eclipse.org/epsilon/. Último acesso em Outubro/ 2013.
• [13] Eclipse. EuGENia, 2013. http://www.eclipse.org/epsilon/doc/eugenia/. Último acesso em Outubro/2013.
• [14] Eclipse. EuGENia, 2013. http://www.eclipse.org/epsilon/doc/articles/eugenia-gmftutorial/. Último acesso em
Dezembro/2013.
• [15] Eclipse. Graphical Modeling Project (GMP), 2013. http://www.eclipse.org/modeling/gmp/. Último acesso em Outubro/2013.
• [16] Epsilon. Emfatic, 2013. http://www.eclipse.org/epsilon/doc/articles/emfatic/. Último acesso em Outubro/2013.
• [17] Epsilon. Epsilon Transformation Language, 2013. http://www.eclipse.org/epsilon/doc/etl/. Último acesso em Janeiro/2014.
• [18] Epsilon. Epsilon Validation Language, 2013. http://www.eclipse.org/epsilon/doc/evl/. Último acesso em Outubro/2013.
• [19] Robson N Fidalgo, Edson Alves, Sergio España, Jaelson Castro, and Oscar Pastor. Metamodeling the enhanced entity-
relationship model. Journal of Information and Data Management, 4(3):406, 2013.
• [20] Lidia Fuentes-Fernández and Antonio Vallecillo-Moreno. An introduction to uml profiles. UML and Model Engineering, 2,
2004.
• [21] Debasish Ghosh. DSLs in action. Manning Publications Co., 2010.
• [22] Paul Hudak. Building domain-specific embedded languages. ACM Comput. Surv., 28(4es):196, 1996.
• [23] Zoubida Kedad and Pericles Loucopoulos. Considering quality factors for business processes during requirement engineering.
In Research Challenges in Information Science (RCIS), 2011 Fifth International Conference on, pages 1–9. IEEE, 2011.
• [24] Steven Kelly and Juha-Pekka Tolvanen. Domain-specific modeling: enabling full code generation. Wiley. com, 2008.
• [25] Dimitriois Kolovos. An extensible platform for specification of integrated languages for model management. Doutorado, The
University of York, 2008.
CIn.ufpe.br 53
Referências
• [26] Holger Krahn, Bernhard Rumpe, and Steven Völkel. Integrated definition of abstract and concrete syntax for textual
languages. In Model Driven Engineering Languages and Systems, pages 286–300. Springer, 2007.
• [27] Marcello La Rosa. Managing variability in process-aware information systems. 2009.
• [28] Eric Yu John Mylopoulos Lawrence Chung, Brian A. Nixon. Non-Functional Requirements in Software Engineering. Kluwer
Academic Publishers, 2000.
• [29] James R Lewis. Ibm computer usability satisfaction questionnaires: psychometric evaluation and instructions for use.
International Journal of Human-Computer Interaction, 7(1):57–78, 1995.
• [30] Sotirios Liaskos, Alexei Lapouchnian, Yijun Yu, Eric Yu, and John Mylopoulos. On goal-based variability acquisition and
analysis. In Requirements Engineering 14th IEEE International Conference, pages 79–88. IEEE, 2006.
• [31] John A.G. McClelland. Técnica de questionário para pesquisa. Revista Brasileira de Física, 1(1):93–101, 1976.
• [32] OMG. Omg object constraint language (ocl). Technical report, OMG – Object Management Group, January 2012.
• [33] OMG. Documents AssociatedWith Business Process Model And Notation (BPMN) Version 2.0, 2013.
http://www.omg.org/spec/BPMN/2.0/. Último acesso em Novembro/ 2013.
• [34] OMG. Omg meta object facility (mof) core specification. Technical report, OMG - Object Management Group, June 2013.
• [35] OMG. Omg mof 2 xmi mapping specification. Technical report, OMG – Object Management Group, June 2013.
• [36] Christopher J Pavlovski and Joe Zou. Non-functional requirements in business process modeling. In Proceedings of the fifth
Asia-Pacific conference on Conceptual Modelling-Volume 79, pages 103–112. Australian Computer Society, Inc., 2008.
• [37] Tarcisio C Pereira, Fernanda Alencar, Jackson Silva, and Jaelson Castro. Requisitos não-funcionais em modelos de processos
de negócio: Uma revisão sistemática. IX Simpósio Brasileiro de Sistemas de Informação, 1:37–48, 2013
CIn.ufpe.br 54
Referências
• [38] Klaus Pohl, Günter Böckle, and Frank J. van der Linden. Software Product Line Engineering: Foundations, Principles and
Techniques. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2005.
• [39] Michael Rosemann, Jan Recker, and Christian Flender. Contextualisation of business processes. International Journal of
Business Process Integration and Management, 3(1):47–60, 2008.
• [40] Ruby. A Programmer’s Best Friend, 2013. https://www.ruby-lang.org/pt/. Último acesso em Outubro/2013.
• [41] RubyOnRails. Web development that doesn’t hurt, 2013. http://rubyonrails.org/. Último acesso em Outubro/2013.
• [42] K. Saeedi, Liping Zhao, and P.R.F. Sampaio. Extending bpmn for supporting customer-facing service quality requirements.
In Web Services (ICWS), 2010 IEEE International Conference on, pages 616–623, 2010.
• [43] Bárbara Siqueira Santos. Istar tool - uma proposta de ferramenta para modelagem i*. Master’s thesis, Universidade Federal de
Pernambuco, Recife, Pernambuco, Brasil, 2008.
• [44] Emanuel Santos, João Pimentel, Jaelson Castro, and Anthony Finkelstein. On the dynamic configuration of business process
models. In Enterprise, Business-Process and Information Systems Modeling, pages 331–346. Springer, 2012.
• [45] Emanuel Batista Santos. Business Process Configuration with NFRs and Context- Awareness. Doutorado, Universidade
Federal de Pernambuco, 2013.
• [46] Arnd Schnieders and Frank Puhlmann. Variability mechanisms in e-business process families. BIS, 85:583–601, 2006.
• [47] Andrew Sears and Julie A Jacko. The human-computer interaction handbook: fundamentals, evolving technologies and
emerging applications. CRC Press, 2007.
• [48] Arie van Deursen, Paul Klint, and Joost Visser. Domain-specific languages: na annotated bibliography. SIGPLAN Not.,
35(6):26–36, June 2000.
• [49] Petia Wohed, Wil MP van der Aalst, Marlon Dumas, Arthur HM ter Hofstede, and Nick Russell. Pattern-based analysis of
bpmn. Technical report, Queensland University of Technology, 2005.
• [50] Christian Wolter and Christoph Meinel. An approach to capture authorisation requirements in business processes.
Requirements engineering, 15(4):359–373, 2010.
CIn.ufpe.br 55
Obrigado!
Caruaru
CIn.ufpe.br 56
Parte do metamodelo BVCCoN-Tool