18/05/2011 16:22

Modelagem de Negócios com UML

 Modelagem de Processos de Negócio com UML

 

Introdução

A UML sempre foi usada como notação para modelagem de sistemas de informação, precisamente, sistemas de software orientados a objeto. Mas essa não é a única aplicação da UML. A UML também pode ser usada para modelagem de sistemas de negócio. Embora existam outras notações para modelagem de processos de negócio, tais como BPMN ( Business Process Modeling Notation ) e IDEF ( Integration Definition for Function Modeling ), a UML pode ser usada na modelagem de negócio com a vantagem de não ter mais uma notação diferente no projeto, podendo usar a mesma notação tanto para modelagem dos processos de negócio quando para a modelagem do sistema. O objetivo deste artigo não é ensinar todos os aspectos da modelagem de negócios mas apenas apresentar uma pequena introdução e demonstrar como a UML pode ser usada na modelagem de negócios.

Muitos analistas de sistemas preferem partir diretamente para o levantamento dos requisitos e depois a modelagem do sistema, criando diagramas de casos de uso e outros artefatos, quando na verdade deveriam ter primeiro um entendimento claro de todos os processos do negócio, a dependencia entre eles, suas entradas, suas saídas, antes de prosseguir. Para se alcançar este conhecimento é necessário ter um conhecimento do negócio e para este objetivo existe a modelagem de negócio que pode ser feita com o auxílio da UML.

A Modelagem de Processos de Negócio

 A modelagem de processos de negócio traz muitos benefícios para o projeto de um sistema. Entre os objetivos da modelagem de negócio podemos citar:

  • Entender estrutura e dinamica da empresa para a qual o sistema será desenvolvido;
  • Entender a situação atual do negócio, ajudando a identificar os problemas e as melhorias indicadas para solução destes problemas;
  • Assegurar um entendimento comum da empresa por todos os envolvidos no projeto;
  • Derivar os requisitos de sistema a partir dos processos de negócio;

De uma forma resumida, podemos dizer que a modelagem de processos de negócio ajuda ao analista a ter uma visão geral do negócio, da organização do trabalho, dos papeis e responsabilidades das pessoas envolvidas e esta visão é que justamente ajuda ao analista de requisitos a entender as necessidades do usuário, a filtrar estas necessidades, priorizando as mais importantes, etc. A modelagem de processos de negócio ajuda ainda em outras fases do projeto do sistema.

Relação com Requisitos, Análise e Projeto

A modelagem de negócio pode ajudar o projeto ao longo das fases do processo de desenvolvimento. A fase de levantamento de requisitos talvez seja a mais beneficiada com a modelagem dos processos de negocio. Isto porque a modelagem de negócio ajuda ao analista de requisitos a derivar os requisitos a partir dos processos de negócio mapeados, descobrindo os requisitos que devem ser atendidos pelo sistema. O Uso de tecnicas de levantamento ajuda nesta atividade mas na verdade é fundamental que você tenha uma compreensão do negócio antes de prosseguir no restante do trabalho. A modelagem de negócio ajuda principalmente quando o analista de requisitos tem pouco ou nenhum conhecimento do domínio do negócio. Quem garante por exemplo que ao fazer o levantamento de requisitos o usuário vai se lembrar de todos os detalhes e esclarecer com clareza as dúvidas do analista. E se o usuário der uma informação errada?

A fase de análise pode com base na definição dos processo de negócio, papéis e responsabilidades, elaborar um modelo de casos de uso de negócios.

A fase de projeto pode elaborar um modelo de classes de entidade a partir das entidades de negócio identificadas nos processos de negócio.

Como modelar um negócio com a UML 

A UML nos oferece inúmeros diagramas para modelagem. No caso de modelar um processo de negócio, o diagrama de atividades é o artefato mais indicado. Ele permite que voce organize todos os elementos envolvidos no processo de negócio, os atores, os processos, atividades e o relacionamento entre as atividades.

Vamos ver agora os passos que podemos seguir na modelagem de negócio:

O primeiro passo seria descobrir os atores envolvidos no processo. Um ator  pode ser uma pessoa, um departamento, uma empresa, uma máquina, um sistema de software ou seja qualquer elemento que realiza alguma atividade e contribui de alguma forma no processo de negócio.O diagrama de atividades da UML permite organizar os principais atores envolvidos no processo de negócio em raias, semelhante às raias de uma piscina olímpica, onde cada raia representa um ator.

Um segundo passo seria identificar as tarefas que cada ator faz dentro do processo de negócio. Tarefas são as atividades relacionadas com o papel que o ator desempenha no cenário de negócio. Algo como, Aprovar Orçamento, Cancelar Contrato, Cadastrar Pagamento e Consultar Situação do Pedido são exemplos de tarefas que podem ser realizadas por um ator.

O terceiro passo seria organizar o fluxo de tarefas que acontecem, a ordem em que as tarefas acontecem dentro do processo de negócio. Um processo de negócio é composto por várias tarefas que são realizadas pelos atores envolvidos em uma ordem específica. Por exemplo, em um sistema para uma Academia de Ginástica, a tarefa Emissão da Carteira de Sócio só é realizada após a tarefa de Cadastrar o Novo sócio ter sido realizada. Assim é necessário identificar a sequencia de tarefas, sendo que esta sequencia é representada por setas que ligam uma tarefa a outra, estabelecendo o fluxo de tarefas do processo de negócio.  

Demonstrando o uso com um exemplo 

Vamos demonstrar o uso da UML na modelagem de negócios com um exemplo bem simples e que certamente é conhecido por todos. Vamos supor que voce foi contratado para desenvolver um sistema para uma empresa organizadora de concursos públicos. Voce sabe por onde começar? Quais seriam os casos de uso? Quais seriam os requisitos do sistema? Não? Entendo.

Bem eu comecaria elaborando um modelo do processo de negócio concurso público. Este modelo iria me mostrar quem são os envolvidos neste processo, quais são as tarefas e atividades que cada envolvido desempenha, me mostraria também o relacionamento entre estas atividades e o produto, isto é, o resultado de cada atividade. 

 

 Veja que a partir deste diagrama de atividade que reflete o processo de negócio Concurso Público podemos identificar informações sobre o negócio e partir destas informações encontrar:

  • Os atores do Sistema, ou seja, quem irá interagir com o sistema. No caso temos o Candidato, A empresa que vai abrir o concurso, o Depto de Seleção, o Depto de Resultados e o Controlador;
  • As funções que o sistema deve ter para suportar o processo de negócio. Como exemplos temos a função para Cadastro do Edital e a função para Emitir Cartão de Confirmação de Inscrição; 
  • O relacionamento entre as funções do sistema. Por exemplo para Efetuar a Inscrição pode ser que o candidato precise consultar o Edital do Concurso para decidir qual cargo vai concorrer.

A partir destas informações podemos elaborar o diagrama de casos de uso de negócio conforme imagem abaixo:

 

 Veja que foram identificados os principais atores do sistema, isto é, quem interage com o sistema. Também foram identificados os principais casos de uso do sistema, que representam o comportamento esperado do sistema. Perceba ainda que este diagrama de casos de uso está alinhado com o processo de negócio. Isto é, ele está modelando conceitos que existem no contexto do negócio, conceitos que refletem como as atividades são realizadas, quem as executa, etc. Isto é muito importante. A modelagem de sistemas deve estar sempre em sintonia com os processos de negócio. Isto nos dá a certeza que estamos no caminho certo. Uma modelagem que representa conceitos mal interpretados, ou que simplesmente nao existem, de nada adianta pois estará sempre distante da realidade do negócio e consequentemente das espectativas do cliente. Com isto percebemos que a UML, com o uso correto dos diagramas de atividade, pode nos ajudar a ter uma compreensão melhor do negócio e com isto garantir que a modelagem do sistema estará de acordo com as necessidades do cliente.

Conclusão

A modelagem de negócios é uma ferramenta de grande valor auxilio em projetos de sistemas de informação, sobretudo para a compreensão do negócio, quando temos pouco ou nenhum conhecimento do domínio do negócio. Isto não é dificil acontecer com a dinamica que existe atualmente no mundo dos negócios, onde a empresa muda constantemente a estratégia do negócio para se manter competitiva no mercado. Como sempre a modelagem de sistemas, no caso, modelagem de negócio nos permite ter uma melhor visão das necessidades do usuário a partir do conhecimento que se tem dos processos de negócio que são do interesse do usuário. Neste cenário, a UML pode ser usada como ferramenta para este tipo de modelagem e pode contribuir muito para que possamos ter uma modelagem de software alinhada à realidade do negócio do cliente.

 

—————

Voltar



Contato

Fernando De Siqueira