1
Qualidade, Processos e Gestão de Software
Modelagem de Processos
André Luís Rodovalho Bezerra
[email protected]
Qualidade, Processos e Gestão de Software
Professores: Alexandre Vasconcelos e Hermano Perrelli
http://www.cin.ufpe.br/~processos
28 de Setembro de 2009
2/36
Índice
•
O que é Modelagem de Processos
•
Objetivo da Modelagem de Processos
•
Vantagem da Utilização de Modelagem de Processos
•
Linguagem de Modelos de Processos
•
- BPM
•
- SPEM
•
- Outras
•
Ferramentas de Modelagem *(colocar exemplo didatico)
•
Comparação entre as Ferramentas
•
Sugestoes de Leitura
•
Topicos de Pesquisa
•
Exercícios.
•
Conclusões
O que é Modelagem de Processos
O QUE É MODELAGEM DO PROCESSO E POR QUÊ USAR?
Modelagem de Processos significa desenvolver diagramas (Diagramas de Processos) que
mostram as atividades da empresa, ou de uma área de negócios, e a sequencia na qual são
executadas. Muitos negócios são relativamente complexos, assim um modelo poderá
consistir de diversos diagramas. [6]
O modelo é um ponto central para que os participantes definam mudanças para
melhoramento do processo ou mesmo um desenho completamente novo. Pode ser
identificado se um processo é eficiente / eficaz, ou mesmo antecipar sua complexidade,
redundâncias e não conformidades (problemas). Se o processo é alguma coisa nova que a
empresa está planejando executar, o modelo pode ajudar a assegurar sua eficiência desde o
início.
A comunicação do processo , de forma eficiente, para outras pessoas é fundamental. Por
melhor que seja um processo, se a comunicação para outros for deficiente, principalmente
para aqueles que vão implementar o processo, o esforço desenvolvido pela equipe terá sido
em vão. Bons modelos de processos (claros), são a chave para a comunicação.
O que é Modelagem de Processos
• Modelagem de Processos significa desenvolver diagramas (Diagramas de Processos) que
mostram as atividades da empresa ou de uma área de negócios e a seqüência na qual são
executadas.
• Muitos negócios são relativamente complexos, assim um modelo poderá consistir de
diversos diagramas. [6]
O modelo é um ponto central para que os participantes definam mudanças para
melhoramento do processo ou mesmo um desenho completamente novo.
Pode ser identificado se um processo é eficiente / eficaz, ou mesmo antecipar sua
complexidade, redundâncias e não conformidades (problemas).
A comunicação do processo , de forma eficiente, para outras pessoas é fundamental. Por
melhor que seja um processo, se a comunicação para outros for deficiente, principalmente
para aqueles que vão implementar o processo, o esforço desenvolvido pela equipe terá sido
em vão. Bons modelos de processos (claros), são a chave para a comunicação.
Colocar uma figura de Modelagem
Modelagem de Processos
Notações
• Fluxogramas: representação gráfica da relação
existente entre as atividades e os processos
empresariais;
• UML: notação visual e orientada a objetos,
mantida pelo OMG, para modelagem e análise
de sistemas, que vem sendo utilizada para
representar os modelos dos conceitos de
negócios;
• BPMN: Projetada para ser extensível e simples,
utilizada tanto pelas pessoas que especificam
com as que gerenciam processos.
Objetivo da Modelagem de Processo
•Modelar processos ajudando a entender como funciona
uma organização.
•Aumentar o entendimento dos participantes durante este
trabalho.
•Uniformização de entendimento sobre o problema através
do uso de modelos.
• Melhoria do fluxo de informações dentro da organização
e entre organizações parceiras.
• Melhoria da gestão organizacional.
Modelagem de Processos
“Como É”
Desconexões +
Sugestões
DESAPRENDER
“ Como Será”
RECRIAR
Vantagens
• Bons modelos de processos (claros), são a chave para a boa
comunicação.
• Se o processo é alguma coisa nova que a empresa está planejando
executar, o modelo pode ajudar a assegurar sua eficiência desde o
início.
• Revelar anomalias, inconsistências, ineficiências e oportunidades de
melhoria, permitindo à organização que se compreenda melhor e
auxiliando na reengenharia desses processos.
• Fornecer visão clara e uniformizada das atividades, suas
razões e formas de execução.
• Utilizar o modelo como um meio para distribuição de conhecimento
dentro da organização e treinar as pessoas, ajudando-as a conhecer
melhor seus papéis e as tarefas que executam.
Linguagens de Modelagem de Processo
O uso de linguagens de modelagem de processos está cada vez mais
em evidência devido à sua contribuição para a definição,
acompanhamento e evolução dos processos.
Linguagens:
EX:
•BPMN
•SPEM
•UML
•YAWL
•EPC
•DYNAMITE
•E3
A grande utilização dos padrões SPEM e BPMN reflete diretamente a busca das
empresas pela qualidade dos seus produtos e serviços.
OMG(Object Management Group)
– Consórcio internacional de “industrias de
computadores”, aberta a membros e não lucrativo.
– Fundada em 1989
– Finalidade: estabelecer diretrizes e especificações
pra prover um framework comum para o
desenvolvimento de aplicações orientada a
objetos.
– Membros:
Fornecedores
de
sistemas,
desenvolvedores de software, usuários
OMG-Nivel de Modelagem
Níveis de Modelagem definidos pela OMG[11]
BPMN
BPMN
•BPMN é uma notação visual para representação de fluxos
de processos que pode ser mapeada para diversos
formatos de execução:
• A notação BPMN proporciona às ferramentas de desenho
o uso de uma representação gráfica padronizada.
•E esta representação padronizada facilita o entendimento
na própria organização e também entre organizações.
BPMN
As notações BPMN foram criadas para representar o fluxo
de processos pelas áreas de negócio.
com o objetivo:
-De detalhar com bastante proximidade as complexidades de
ambientes reais.
A modelagem de processos de negócio é usada para
comunicar grande variedade de informações.
O BPMN destina-se a cobrir do início ao fim esses vários
tipos de modelagem de processos de negócio.
BPMN
Segundo definições do BPMN 1.2 o modelo BPMN é
dividido em três tipos básicos de sub-modelos:
- privado,
- abstrato
- colaboração.
Os processos de negócio privados, mais baixo nível,
correspondem aqueles que ocorrem dentro da organização
e que possuem atividades realizadas internamente que
interagem entre si.
É utilizado quando se quer visualizar uma parte de um
processo sem se preocupar com o processo como um todo.
BPMN
 Processos de negócio abstratos, mais alto nível, é
utilizado quando se quer visualizar as interações entre os
fluxos, as comunicações. São processos públicos que
retratam as interações das atividades pertencentes a um
processo privado com outra entidade de negócio externa
ao processo privado.
Processos colaborativos possuem uma visão em alto
nível e baixo nível. Este tipo de processo modela as
interações entre dois ou mais processos de negócio
Lembrando que o objetivo principal das notações BPMN é permitir a
representação do negócio.
BPMN-Representações
BPMN-Representações
Poster BPMN
SPEM
SPEM – Especificações técnicas
• SPEM surgiu com o propósito de criar um padrão
para expressar qualquer processo de software.
•
•
•
•
Oficializada em: Novembro de 2002
Versão oficial: 1.1 (06/01/2005)
Versão Draft: 2.0 (usa UML profile 2.0)
Especificação adotada pela OMG
30/01/2007
21
SPEM
• Estruturado como um UML profile (1.4) e prover um
metamodelo baseado em MOF
• UML Profile
– Variação de UML que usa mecanismos de extensão
de uma forma padronizada para um fim particular
• MOF (Meta-Object Facility) é uma tecnologia
adotada pela OMG para definição de metadados.
– possui um conjunto de elementos de modelagem
– utilizados na construção dos metamodelos
– inclui regras para o seu uso.
30/01/2007
22
SPEM
• Resultou de um esforço coletivo de pesquisadores e
consultores, tais como:
– Empresas: IBM, Rational, Computer Associates, Toshiba,
Siemens, etc.
– Pesquisadores: Philippe Kruntchen, Craig Lairman, e
diversos outros.
• As empresas focam-se agora em construir ferramentas
para dar apoio a SPEM.
30/01/2007
23
SPEM
O SPEM - Modelo de Processo Unificado:
- É o metamodelo proposto pela da OMG para a descrição
de um processo concreto de desenvolvimento de software
 O objetivo de SPEM é suportar a definição de um processo
de desenvolvimento de software incluindo aqueles
processo que envolvem ou permitem o uso de UML, assim
como o RUP.
O SPEM utiliza a orientação a objeto para modelar uma
família
relacionada de processos de software:
- Usa a UML como notação.
SPEM – Notação
• Diagramas da UML podem ser usados para
apresentar diferentes perspectivas de um
modelo de processos
–
–
–
–
–
Diagramas de classes
Diagramas de pacotes
Diagramas de atividades
Diagramas de casos de uso
Diagrama de sequência
30/01/2007
25
SPEM – Notação
• Diagramas de Classes
30/01/2007
26
SPEM – Notação
• Diagramas de Pacotes
30/01/2007
27
SPEM – Notação
• Diagramas de Casos de uso
30/01/2007
28
SPEM – Notação
• Diagramas de
Atividades
30/01/2007
29
SPEM- Representações
Representação gráfica através de ícones dos
principais elementos do SPEM
Diagrama de Pacotes do WorkDefinition Compreender Domínio da Aplicação. O Diagrama
apresenta as Activities, os WorkProducts gerados pela
WorkDefinition e o ProcessRole responsável.
Outras Linguagens
OC - Organization Chart - O diagrama é usado para representar elementos organizacionais da
companhia em uma estrutura. O princípio fundamental dessa formação é a subordinação
hierárquica. As unidades organizacionais e os relacionamentos entre elas são mostrados nesse
diagrama. Veja as notações OC clicando aqui.
VACD - Value Added Chain Diagram - Os VACs, descrevem os elementos de negócio da
organização divididos em cenários e processos. São utilizados para uma representação da visão
estratégica dos processos. Veja as notações VACD clicando aqui.
EPC - Event-driven Process Chain - Apresenta uma visão detalhada do processo, através de
funções realizadas, regras de negócio com os seus operadores lógicos, eventos de início, de fim
e de circunstância. Propicia também a ligação ou a dependência lógica entre os processos,
mostrando a sua integração. Veja as notações EPC clicando aqui.
FAD - Function Allocation Diagram - É utilizado para apresentar uma visão mais detalhada dos
recursos disponíveis e necessários, que são relevantes para as atividades. O FAD também é
utilizado para reduzir a complexidade dos processos de negócio, representando elementos
como: cargos, áreas, transações e sistemas que suportam a atividade, as entradas e saídas de
dados, os documentos, os risco envolvidos nas atividades entre outras possibilidades que podem
ser criadas pelo modelador. Veja as notações FAD clicando aqui.
UML - Unified Modeling Language (www.uml.org) - É a mais utilizada especificação criada pelo
OMG (Object Management Group) para modelagem universal de estruturas de aplicação,
comportamentos, arquiteturas e também para processos de negócios e estruturas de dados. O
UML junto com o Meta Object Facility (MOFTM) também fornece os fundamentos chaves para a
Model-Driven Architecture da OMG, que unifica todos os passos do desenvolvimento e
integração para modelagem de negócios através da modelagem arquitetônica e de aplicações
para desenvolvimento, entrega, manutenção e evolução.
Outras Linguagens
ArchiMate - Recentemente absorvida pelo The Open Group, a Archimate se torna um padrão internacional para
a modelagem de domínios arquitetônicos como organização, processos de negócios, aplicações, informações e
tecnologia, encontrados nas empresas. Cada domínio de arquitetura tem os seus próprios conceitos para
modelagem e visualização. Esses modelos específicos e suas visualizações, simplificam a comunicação, a
discussão e a análise do domínio a que pertence. Além disso, esses diferentes domínios possuem áreas em que
são sobre postos e compartilhas das mesmas idéias, algumas vezes sem que as pessoas envolvidas saibam
disso. As ambigüidades e confusões resultantes tornam-se obstáculos no caminho da flexibilidade e da eficiência
dessas organizações. A ArchiMate pretende acabar com estas ambigüidades. Ela apresenta uma forma unificada
de modelagem das arquiteturas empresariais, integrando os diversos domínios e descrevendo-os de forma
facilmente legível. Veja mais informações sobre o Archimate clicando aqui.
ASTD - Application system type diagram - Este conjunto de notações é utilizado para descrever sistemas
aplicativos de informação. As classes de sistema de informação definidos de acordo com as funções de
negócios, são modelados em níveis de hierarquia. Todas as classes que compõe os sistemas de informação
precisam ter os seus componentes mapeados. Os softwares empacotados, bancos de dados, aplicativos,
interfaces, serviços, funções, formulários entre outros componentes, relacionados a cada sistemas, subsistema
ou classe, podem ser documentados utilizando-se essa notação. Veja as notações ASTD clicando aqui.
Matrix Diagram - É utilizada para representar sistemas, subsistemas, plataformas, ambientes e funcionalidades.
Esse tipo de diagrama vai auxiliar a tomada de decisões e o controle de padronização. Esse tipo de notação é
bastante utilizada nas metodologias Zachman e Teaf/Feaf. Veja as notações Matrix Diagram clicando aqui.
IDEFx - É um tipo de notação utilizada para descrever as atividades com as informações de entrada de dados,
controles, mecanismos de processamento e saída. O IDEF0 foi originário de uma notação ICAM e os outros
IDEF (1 a 5) são evoluções. O IDEF0 já considerava a decomposição top-down e adotava a premissa de que
"tudo o que poderia ser utilizado para executar uma atividade, poderia ser expresso em 6 partes ou menos". O
IDEF0 considera a seqüência de atividades mas não consegue expressar as regras de negócios. O IDEF3
permite o uso de conectores lógicos na descrição das seqüências de atividades que compõem os processos.
Veja as notações IDEF clicando aqui.
Notações OC - Organization Chart
Notação
Notações VACD - Value Added Chain Diagram
Notação VACD
Processos de negócios de uma unidade
organizacional com a representação dos times,
dos responsáveis pelos processos e os
documentos normativos que regulamentam
cada unidade.
Notações EPC - Event-driven Process Chain
Notação EPC
exemplos de modelagem com situações
mais complexas
Ferramentas de Modelagem de Processo
•BizAgi(BPMN)
•IRIS(SPEM)
•MsVisio 2007
•Igrafx
•Process Modeler
•ARIS
•Promodeller
BizAgi(BPMN)
– BizAgi foi focada no desenvolvimento de tecnologias e
metodologias de apoio à melhoria contínua dos
processos de nossos clientes de negócios
– Fundada em 1989
– Nosso BPM Suite é o resultado de mais de 20 anos de
experiência em automação de processos e soluções
de otimização.
BizAgi(BPMN)
IRIS(SPEM)
– Osellus é uma empresa privada com sede em Toronto,
Canadá. A empresa foi fundada em Janeiro de 2002
por três empresários de software experientes: Omid
Hodaie, Aditya Jha, e Hodaie Payman.
– O Produto principal da empresa é IRIS,
– Uma aplicação de software empresarial que visa
automatizar os processos de desenvolvimento de
software.
– IRIS é usado para definir, implementar e gerenciar os
processos em todo o ciclo de desenvolvimento de
software.
– 100% compatível com SPEM
IRIS(SPEM)
IRIS(SPEM)
Mapeamento SPEM x BPMN
Tabela de Mapeamento SPEM - BPMN.[7]
Exemplo Pratico de Um modelagem BPMN
Modelagem do Processo em BPMN.
Exemplo Pratico de Um modelagem SPEM
Modelagem do Processo em SPEM.
Exemplo Pratico de Um modelagem SPEM X BPMN
Modelagem do Processo em SPEM.
Modelagem do Processo em BPMN.
Comparação entre as Ferramentas de
Modelagem de Processo
Ferramenta 1
Ferramenta 2
Notação utilizada
EPC
BPMN
Interface
MUITO SIMPLES
COMPLEXA
Apoio ao usuário
E-mail ou Tel
Reconhecimento / difusão da ferramenta
Brasil, principalmente,
e exterior
Mundialmente
Difundida
Funcionalidades interessantes
Publicação em HTML,
exportação/importação
entre ferramentas
Automação com BPM
(Business Process
Management)
Custo
Acadêmico livre e
completo com baixo
Custo
•BizAgi(BPMN) x IRIS(SPEM)
Fóruns
Software livre com
módulos pagos
Exemplo de Tabela para fazer comparação.
•MsVisio 2007 X Igrafx
•Process Modeler x ARIS
•Promodeller x BizAgi(BPMN)
Tópicos de pesquisa
Perguntas/Dúvidas
?
48/36
Referencias
[1] Business Process Modeling Notation. BPMN1.2 Especification. Disponível em: <http://www.bpmn.org/>
[2]Modelagem de Processos de Software Através do SPEM - Software Process
Engineering Metamodel - Conceitos e Aplicação” http://mtcm18.sid.inpe.br/col/lac.inpe.br/worcap/2003/10.31.14.46/doc/artigo_worcap_elias_2003.PDF”
[3] http://www.bpm-advisor.com.br/padnotac.htm
[4] http://www.sarga.com.br/artigo1.htm
[5] www.cin.ufpe.br/~tg/2009-1/fe.pdf
[6].Object Management Group, Software Process Engineering Metamodel Specification (SPEM), Formal Submission, OMG document number
formal/02-11-14, November 2002.
[7] http://bpt.hpi.uni-potsdam.de/pub/Public/BPMNCorner/BPMN1_2_Poster_EN++.pdf
[8] ARPO® http://klugsolutions.com; último
acesso em agosto de 2008.
[9] Intalio® http://intalio.com, último acesso em
agosto de 2008.
[10] http://images.google.com.br/imgres?imgurl=http://sites.google.com/site/tatianeswebsite/_/rsrc/1225334245556/pesquisa---avaliacao-de-notacoes-de-modelagem-deprocessos/eventos_bpmn_png.PNG&imgrefurl=http://sites.google.com/site/tatianeswebsite/pesquisa---avaliacao-de-notacoes-de-modelagem-deprocessos&usg=__lycmVcDNvcARXweCEORsJMfCwQ8=&h=548&w=251&sz=51&hl=ptBR&start=8&um=1&tbnid=Y1JWie1mxqofFM:&tbnh=133&tbnw=61&prev=/images%3Fq%3Drepresenta%25C3%25A7%25C3%25B5es%2Bgrafica%2Bdo%2Bbpmn%26hl%3DptBR%26sa%3DN%26um%3D1
49/36
50
Download

Modelagem de Processos