UNIVERSIDADE FEDERAL DE MINAS GERAIS / INSTITUTO DE CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Planejamento da disciplina: Modelagem de processos de negócio Professor: Clarindo Isaías Pereira da Silva Pádua Carga Horária: 60 horas, 4 créditos Horário: 17:00-18:40hs, sala 2029 1. Introdução Esta disciplina visa apresentar conceitos, técnicas e métodos relacionados à modelagem de processos de negócio. Para se projetar, entender ou se buscar melhorias no funcionamento de um negócio, torna-se essencial fazer a modelagem de processos de negócio. Os modelos de negócio provêem uma visão simplificada da realidade complexa da organização, permitindo uma melhor compreensão dessa realidade. Nos dias atuais, cada vez mais os negócios de qualquer tipo de organização necessitam do apoio de sistemas automatizados. Para serem mais efetivos, é importante que sistemas de informação sejam projetados para atender aos objetivos de negócio. Um objetivo importante da modelagem de processos de negócio, e que constitui uma ênfase nesta disciplina, é o de prover uma visão que facilite o desenvolvimento de software alinhado com os objetivos de negócio. Negócio, no sentido aqui utilizado, significa qualquer tipo de operação em andamento que tem ou usa recursos e tenha um ou mais objetivos. Ou seja, o termo não é usado no sentido de comércio ou transação comercial. Modelar é um meio utilizado para analisar e projetar sistemas de software. Portanto, a modelagem de processos de negócio pode também ser utilizada como uma etapa inicial que visa o entendimento do negócio para se chegar a modelos utilizados no desenvolvimento de software que estejam alinhados com os objetivos estratégicos das organizações. O modelo de negócio é uma abstração de como um negócio funciona. Os detalhes diferem de acordo com a perspectiva da pessoa que cria o modelo, cada um terá naturalmente uma percepção diferente dos objetivos e visões do negócio. Isso é normal em uma organização e o modelo de negócio não vai resolver essas diferenças completamente. O que o modelo de negócio se propõe a fazer é: prover uma visão simplificada da estrutura do negócio; atuar como uma base para a comunicação, melhorias ou inovações; definir os requisitos do sistema de informação que são necessários para apoiar o negócio. É necessário se utilizar uma linguagem para a notação dos modelos de negócio. Com este objetivo, nesta disciplina será utilizada a UML (Unified Modeling Language), padrão de aceitação internacional de linguagem para modelagem utilizada no desenvolvimento de software. Parte da carga horária da disciplina será dedicada ao ensino da UML, como uma base necessária para a abordagem apresentada na parte de modelagem de processo de negócio. Cabe salientar, no entanto, que a UML vem sendo utilizada em modelagem em um amplo espectro de aplicações. Seu estudo, portanto, certamente será de muita utilidade para o aluno em várias outras disciplinas, especialmente naquelas ligadas à Engenharia de Software. A UML é considerada, além da modelagem de sistemas de software, também adequada para modelagem de negócio pelos motivos listados a seguir. Muitos desenvolvedores já estão familiarizados com a linguagem (já a utilizam em modelos de software), o que facilita a utilização. A utilização da mesma linguagem tanto para a modelagem de negócio quanto para a modelagem do sistema de software faz com que a documentação seja consistente e ainda facilita a comunicação 1
entre os modeladores de negócio e de software. Existe um grande número de ferramentas disponíveis para a modelagem de negócio usando a UML. Com a UML é possível descrever: o Aspectos tanto estruturais quanto dinâmicos envolvendo o negócio (como a organização, hierarquia de objetivos, ou as estruturas dos recursos). o Aspectos comportamentais do negócio (como os processos). o Regras de negócio que afetam tanto a estrutura quanto o comportamento. 2. Objetivos da Disciplina Essa disciplina tem por objetivo apresentar: a motivação para o uso de modelagem na solução de problemas; a UML, como um instrumento para modelagem; a modelagem de processos de negócio, utilizando a UML, visando o posterior desenvolvimento de sistemas de software alinhados com os objetivos estratégicos da organização; o conceito de gerência de processos de negócio e outras formas de notação de modelos de processos de negócio. A disciplina deverá tornar o aluno ou aluna aptos a: entender, analisar e escrever modelos, incluindo aspectos estáticos e dinâmicos, utilizando a UML; aplicar o conhecimento de modelagem em disciplinas relacionadas ao desenvolvimento de software; entender, analisar e escrever modelos de negócio, utilizando a notação UML, com o apoio e conhecimento de especialistas no domínio de aplicação; mapear sistemas de software alinhados aos objetivos expressos no modelo de negócio. 3. Ementa Introdução. Modelagem e orientação a objetos. Modelo conceitual da UML. Elementos estruturais da UML. Elementos comportamentais da UML. Regras e mecanismos da UML. Modelagem da arquitetura de negócio. Visão de negócio. Visão de processo de negócio. Visão de estrutura de negócio. Visão comportamental de negócio. Regras de negócio. Padrões de negócio. Integração com o desenvolvimento de software. Gerência de processos de negócio e BPMN. 4. Pré-requisitos Não há um pré-requisito formal; para fazer a disciplina é desejável que o aluno tenha conhecimento de linguagens de programação orientada a objetos. 2
5. Programa 1. Introdução 1.1. Motivação 1.2. História da UML 1.3. Conceitos básicos 2. Modelagem e orientação a objetos 2.1. Princípios de modelagem 2.2. Modelagem orientada a objetos 3. Modelo conceitual da UML 3.1. Visão geral da UML 3.2. Arquitetura da UML 4. Modelagem estrutural 4.1. Classes 4.2. Relacionamentos 4.3. Regras e mecanismos comuns 4.4. Diagramas 4.5. Pacotes lógicos 5. Modelagem comportamental 5.1. Casos de uso 5.2. Atividades 5.3. Máquinas de estado 5.4. Interações 5.5. Diagramas dinâmicos 6. Modelagem da arquitetura de negócio 6.1. Conceitos de negócio 6.2. Extensão de negócio da UML 7. Visões de modelos de negócio 7.1. Visão de negócio 7.2. Visão de processo de negócio 7.3. Visão de estrutura de negócio 7.4. Visão comportamental de negócio 8. Modelagem de regras de negócio 8.1. OCL e sua utilização na modelagem de processo de negócio 8.2. Categorias de regras de negócio 8.3. Modelagem de Restrições 9. Padrões de negócio 9.1. Tipos de padrões 9.2. Gabaritos de padrões de negócio 10. Integração com o desenvolvimento de software 10.1. Processo de desenvolvimento de software 10.2. Arquitetura de software 10.3. Arquitetura de negócio e arquitetura de software 11. Gestão de processos de negócio 11.1. Conceito BPM 11.2. Introdução a BPMN 6. Avaliação da aprendizagem A avaliação da disciplina compreenderá um trabalho prático, duas provas e seminários com apresentação em aula. 3
6.1. Avaliação dos alunos de graduação A tabela 1 abaixo apresenta a distribuição de pontos na avaliação dos alunos de graduação. Para os alunos de graduação, os seminários constarão de apresentação e discussão de resultados parciais do trabalho prático. Trabalho prático 35 Seminários em aula 10 Provas 50 Pontos por participação em aula (máximo) 10 Total (máximo) 100 Tabela 1: Avaliação dos alunos de graduação 6.2. Avaliação dos alunos de pós-graduação Além do trabalho prático, os alunos de pós-graduação, em grupos de dois, vão realizar uma pesquisa cujo tema deve estar dentre os temas propostos para a conferência MDE4BPM 2008 http://www.inf.unisi.ch/mde4bpm08/#topics. Como resultado deste trabalho, os alunos irão apresentar seminários em aula para apresentação de resultados parciais e produzir um artigo contendo até 16 páginas. A pesquisa deve ter como objetivo a publicação na conferência MDE4BPM 2008. Quanto as referências bibliográficas e formato do artigo, deve-se usar a recomendação da conferência. A tabela 2 abaixo apresenta a distribuição de pontos na avaliação dos alunos de pós-graduação. Trabalho prático 30 Seminários em aula 5 Artigo 20 Provas 40 Pontos por participação em aula (máximo) 10 Total (máximo) 100 Tabela 2: Avaliação dos alunos de pós-graduação 7. Descrição do trabalho prático O assunto de que trata a disciplina dificilmente é aprendido sem a realização de trabalhos práticos. Sendo assim, os alunos irão desenvolver um Trabalho Prático (TP) compreende a modelagem de processos de negócio e definição de um produto de software de apoio ao negócio. A empresa ou organização objeto do trabalho, que chamaremos de Organização Cliente, ou simplesmente Organização, deverá ser definida pelos alunos, sujeita à aprovação do professor. Ao longo do semestre os alunos estarão envolvidos na modelagem de processos de negócio da Organização Cliente, visando um futuro desenvolvimento de software. Como cenário para o TP, deve-se supor que a Organização acenou com a disposição de investir na modelagem e nos produtos de software a serem desenvolvidos e que empresa (dos alunos) foi contratada com carta branca para a criação de um produto (modelos de negócio + produtos de software) de boa qualidade, que melhore a administração da Organização e que facilite e estimule o relacionamento com seus clientes. Portanto, os alunos podem usar a criatividade, podendo pensar, por exemplo, em soluções de software envolvendo sítio web, quiosques, etc. A especificação detalhada do trabalho cabe aos 4
alunos, OBSERVANDO AS SEGUINTES DIRETRIZES. O trabalho deve ser realizado por grupos de 3 a 4 alunos. A modelagem poderá contemplar as necessidades internas de administração da Organização, mas deverá também atender ao relacionamento com os clientes da Organização. Ou seja, a Organização a ser modelada deve ter clientes. Os usuários do produto de software a ser definido poderão ser os funcionários ou clientes da Organização, ou mesmo outros papéis. Os processos de negócio a serem apresentados no TP não podem ser muito simples, pois não ilustrariam a matéria, nem muito complexo, pois não haveria tempo para a realização do TP. As seguintes diretrizes para o dimensionamento do TP devem ser seguidas. o O Modelo Conceitual deve apresentar pelo menos 20 classes. o O modelo de Metas/problemas deve apresentar pelo menos 3 metas e 30 sub-metas, com pelo menos 8 problemas identificados. o O modelo de processos, deve apresentar pelo menos 3 processos primários. O trabalho deverá ser entregue com documentação em papel, na recepção do DCC, assinando comprovante da entrega, de acordo com o cronograma mostrado na tabela abaixo. Além da versão impressa, os alunos devem entregar também os documentos em forma eletrônica através do site : http://umbu.ied.dcc.ufmg.br/ead/login/index.php. Os melhores trabalhos serão disponibilizados como exemplo no sítio Web do professor. É importante o cumprimento do planejamento da disciplina, com os trabalhos sendo entregues na data certa para evitar desencontros. Por este motivo, serão descontados 10% dos pontos de cada trabalho por dia de atraso na entrega, sendo que na última entrega de trabalho não será admitido atraso Deverá ser feita uma divisão de tarefas entres os participantes do grupo; a responsabilidade de cada um na equipe deverá ser descrita na documentação entregue. Sendo um trabalho de equipe, a responsabilidade é de todos e o trabalho dos participantes deve ser integrado, formando uma produto consistente. O trabalho deverá ser documentado com um bom padrão de qualidade e um nível de informação suficiente para a avaliação do professor. Faz parte do trabalho, também, a definição, com bom senso, de aspectos não detalhados pelo professor. A tabela abaixo define a documentação (artefatos) a ser entregue em cada etapa do trabalho. Etapa Conteúdo Artefatos 1 Proposta de Modelagem de Processos de Negócio. Os alunos de pós-graduação deverão também apresentar um resumo do artigo pmpn Adicionalmente, resumo do artigo para os alunos de pósgraduação 2 3 Documento de Descrição Negócio até a parte de Visão de negócio. Os alunos de pós-graduação deverão também apresentar a primeira versão do artigo. Modelo de processo de negócio Documento de Descrição do Negócio com a parte de Visão de Processos de Negócio, Visão da Estrutura do Negócio e Visão do Comportamento do Negócio Os alunos de pós-graduação deverão também apresentar o artigo completo. dn (parcial) Adicionalmente, resumo 1ª versão do artigo para os alunos de pós-graduação mpn (ferramenta de modelagem) dn Adicionalmente, artigo concluído para os alunos de pós-graduação Tabela 3: Trabalho prático 5
8. Bibliografia 8.1. Livros Texto Eriksson, H-E; Penker, M. Business Modeling with UML: Business Patterns at work, John Wiley, 2001 Rumbaugh, J.; Jacobson, I.; Booch, G., The Unified Modeling Language Reference Manual, Addison Wesley, 2nd edition, 2004. Booch, G.; Rumbaugh, J.; Jacobson, I., Unified Modeling Language User Guide, 2nd Edition, Addison Wesley, 2005. Weska, M. Business Process Management Concepts, Languages, Architectures, Springer, 2007 8.2. Referências principais 1. Business Process Modeling Notation. Acessado em 26/2/2007 em: http://www.omg.org/cgibin/doc?dtc/2006-02-01 2. Eriksson, H-E; Penker, M.; Lyons, B.; Fado, D. UML 2 Toolkit, Wiley, 2004. 3. Paula F., W. P. Engenharia de Software: Fundamentos, Métodos e Padrões, 2ª edição, LTC, 2003 4. Jacobson I. et al, The Unified Software Development Process, Addison Wesley, 1999 5. Heumann, J. Introduction to Business Modeling Using the Unified Modeling Language (UML), http://www-106.ibm.com/developerworks/rational/library/360.html, 2003. 6. Fowler, M. UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition (Paperback), Addison-Wesley, 2003. 6
9. Planejamento de aulas No Data da aula 1 25/2 Introdução á disciplina 2 27/2 Introdução á UML; história da UML, Assunto Entrega do trabalho 3 3/3 Apresentação de modelagem e processos de negócio. Modelagem. 4 5/3 Modelagem da arquitetura de negócio. 5 10/3 Modelagem da arquitetura de negócio. 6 12/3 Visões de negócio: visão de negócio. 7 17/3 Visões de negócio: matriz TOWS. 8 19/3 Visões de negócio: modelagem conceitual; modelagem de metas e problemas. 9 24/3 Visões de negócio: visão de processos de negócio. 10 26/3 UML Visão Geral: visão estática 11 31/3 UML Visão Geral: visão estática, visão de casos de uso Entrega da etapa 1 do trabalho 12 2/4 UML Visão Geral: Regras, mecanismos comuns. 13 7/4 UML Visão Geral: visões dinâmicas: visão de máquinas de estado 14 9/4 UML Visão Geral: visões dinâmicas: visão de máquinas de atividades 15 14/4 Seminário: apresentação da Visão de Negócios do trabalho prático: grupos: 1, 2, 3, 4 16 16/4 Seminário: apresentação da Visão de Negócios do trabalho prático: grupos: 5, 6, 7 17 23/4 18 5/5 19 7/5 Seminário de pesquisa: apresentação da versão 1 do artigo dos alunos da pósgraduação. Grupos: 1, 2, 3 Prova. Matéria: Livros de UML Livro de Eriksson & Penker: caps: 1, 2, 3 e 4 até a página 104 (até a seção de visão de negócio inclusive) Visões de negócio: visão de processos de negócio; UML: relacionamentos; UML: diagramas de atividade. 20 12/5 Visões de negócio: visão de estrutura do negócio; 21 14/5 Visão de comportamento de negócio Entrega da primeira versão do artigo para os alunos da pós-graduação Entrega da etapa 2 do trabalho 22 19/5 Padrões de negócio 23 21/5 Padrões de negócio 24 26/5 Padrões de negócio. 25 28/5 Modelagem da arquitetura do software 26 2/6 27 4/6 Padrões de negócio. Palestra de Antônio Lourenço 28 9/6 Palestra Eduardo 29 16/6 30 23/6 31 25/6 Seminário: apresentação da Visão de Processos do trabalho prático: grupos 1, 4, 5, 6 Seminário: apresentação da Visão de Processos do trabalho prático: grupos 2, 3, 7, 4, 6 Prova Matéria da prova anterior mais (com mais ênfase): livros de UML ; livro de Eriksson & Penker: caps: 1, 2, 3, 4, 6, 7,8, 9,10 Entrega da versão final do artigo para os alunos da pósgraduação Entrega da etapa 3 do trabalho 7