REQUISITOS DE SISTEMAS MÓDULO 2 PROCESSOS DE NEGÓCIOS
CONTEÚDO 1. PROCESSOS DE NEGÓCIO IDENTIFICAÇÃO CONCEITOS MODELAGEM (BPM e UML) PROCESSOS X REQUISITOS
1. PROCESSOS DE NEGÓCIO IDENTIFICAÇÃO CONCEITOS MODELAGEM (BPM e UML) PROCESSOS X REQUISITOS
REGRAS DE NEGÓCIOS As REGRAS DE NEGÓCIOS descrevem a forma como a empresa faz o seu negócio. As organizações elaboram então, a política de negócios, para satisfazer os objetivos do negócio, satisfazer os clientes, fazer bom uso dos recursos e obedecer às leis ou convenções em geral. As REGRAS DE NEGÓCIOS, depois de definidas, tornam-se requisitos, ou seja, podem ser implementados em um sistema.
REGRAS DE NEGÓCIOS Exemplos: O valor total de um pedido é igual à soma dos totais dos itens do pedido acrescido de 10% de taxa de entrega. Um cliente do banco não pode sacar mais de R$ 500,00 por dia de sua conta. Senhas devem ter, no mínimo, seis caracteres, entre números, letras e símbolos. Para alugar um carro, o proponente deve estar com a carteira de motorista válida.
TIPOS DE REGRAS DE NEGÓCIOS FATOS OU INVARIANTES: Todo pedido tem uma taxa de remessa. Todo pedido tem uma taxa de entrega com valor fixo. RESTRIÇÕES: Um aluno só pode tomar emprestado, concomitantemente, até 3 livros. ATIVADORES DE AÇÕES: Se a data para retirada do livro é ultrapassada e o livro não é retirado, então a reserva é cancelada. COMPUTAÇÕES: Aplica-se um desconto progressivo se mais do que 10 unidades forem adquiridas.
PROCESSOS DE NEGÓCIOS Os processos de negócios podem ser entendidos como "um conjunto de atividades que envolvem entradas, transformações, saídas e controle, que interligados por objetivos comuns (diretrizes e estratégias empresariais) formam uma cadeia de valor fornecendo produtos ou serviços aos clientes (internos e externos).
1 - Engenharia de Requisitos PROCESSOS DE NEGÓCIOS ENTRADA PROCESSO SAÍDA RESUMINDO: PROCESSO DE NEGÓCIO é um conjunto de atividades estruturadas relacionadas que produzem um serviço para um cliente. O entendimento e a modelagem de tais processos contribuem para o levantamento adequado dos requisitos de sistemas que darão suporte ao negócio em questão.
TIPOS DE PROCESSOS DE NEGÓCIOS 1. PROCESSOS PRIMÁRIOS (FINALÍSTICOS) 2. PROCESSOS DE SUPORTE OU APOIO 3. PROCESSOS DE GESTÃO: Processos de Gestão Processos de Suporte Processos Primários CLIENTE
TIPOS DE PROCESSOS DE NEGÓCIOS 1. PROCESSOS PRIMÁRIOS (FINALÍSTICOS): Relação direta com os clientes. São os processos que ultrapassam qualquer fronteira funcional corporativa e possui como sua mais marcante característica, o contato direto com os clientes. Quando agrupados tendem a traduzir a cadeia de valor da organização. 2. PROCESSOS DE SUPORTE OU APOIO: Colaboram com os processos primários. São os processos estabelecidos formalmente na organização e que visam dar suporte aos primários. Possuem como característica marcante a ausência de relacionamento direto com os clientes e também o forte e evidente vinculo à visão tradicional.
TIPOS DE PROCESSOS DE NEGÓCIOS 3. PROCESSOS DE GESTÃO: São processos estabelecidos formalmente e com o intuito de coordenar as atividades dos processos de apoio e dos processos primários. Devem buscar garantir que os processos por ele gerenciados, atinjam suas metas operacionais, financeiras, regulatórias e legais.
PROCESSOS DE NEGÓCIOS X REQUISITOS A identificação dos Processos de Negócios busca entender claramente o domínio do negócios, compreendendo o ambiente organizacional, para o desenvolvimento do software. O levantamento dos Processos de Negócios da empresa são fontes relevantes para o levantamento dos requisitos. O uso de modelos que descrevem os processos de negócios e o contexto de uma organização agrega benefícios para o desenvolvimento do software, tais como: Os requisitos passam a refletir as necessidades do negócios Baixo número de redundância de requisitos O desenvolvimento do software passa a ser regulado pelas necessidades do negócios
PROCESSOS DE NEGÓCIOS X REQUISITOS O levantamento de requisitos é umas das partes mais importantes do processo que resultará no desenvolvimento de um sistema. Aliado ao levantamento de requisitos, existe o mapeamento dos processos de negócios que é de vital importância para a melhoria dos resultados obtidos pelo levantamento de requisitos. Muitos sistemas são retardados em seu prazo estipulado na fase de definição do escopo do projeto ou até mesmo morre durante seu percurso, pois, a etapa de levantamento de requisitos é negligenciada ou simplesmente feita de forma ineficaz. Ricardo Veríssimo em: http://www.baguete.com.br/artigos/296/ricardo-verissimo/05/11/2007/levantamento-de-requisitos-emapeamento-de-processos
MODELAGEM DE PROCESSOS A Modelagem de Processos de Negócio é a elaboração de um diagrama ou mapa de processos de negócio e a documentação descreve suas propriedades e características, que identifica as atividades realizadas e as informações que fluem entre elas. A modelagem é normalmente realizada por analistas de negócios e gestores que estão buscando melhorar a eficiência do processo e da qualidade. O documento resultante desse trabalho é o Mapa de Processos, cujo objetivo é fornecer uma visão única dos processo da empresa, seus relacionamentos, atividades/tarefas, papéis e responsabilidades, stakeholders e o fluxo de valor dos processos.
MODELAGEM DE PROCESSOS Para a execução da modelagem de negócios, várias ferramentas podem ser utilizadas, e todas elas utilizando a metodologia BPMN.
MODELAGEM DE PROCESSOS - BPMN BPMN (Business Process Modeling Notation) é uma notação da metodologia de gerenciamento de processos de negócio e trata-se de uma série de ícones padrões para o desenho de processos, o que facilita o entendimento do usuário. O BPMN pode e deve ser compreendido por analistas de negócios, técnicos, usuários e todos os envolvidos no processo. Os diagramas criados podem ser usados como um contrato entre as áreas técnicas e os usuários. Os principais objetos de fluxo segundo a notação BPMN são: eventos, atividades, e decisões (gateways). Eventos Atividades Decisões
MODELAGEM DE PROCESSOS - BPMN
MODELAGEM DE PROCESSOS - BPMN MODELO:
MODELAGEM DE PROCESSOS - BPMN EXEMPLO 1:
EXERCÍCIO 5 DESENHAR O PROCESSO DE PAGAMENTO POR CARTÃO DE CRÉDITO OU BOLETO BANCÁRIO, GERAR NOTA FISCAL E ENVIAR UMA MENSAGEM PARA INDICAR QUE O PROCESSO FOI CONCLUIDO COM SUCESSO.
MODELAGEM DE PROCESSOS - BPMN EXEMPLO 2:
EXERCÍCIO 6 PROCESSO PARA ALUGAR UM CARRO, SENDO QUE O CLIENTE ESCOLHE O MODELO DO VEICULO E ENVIA O PEDIDO. A EMPRESA RESPONSAVEL PELO ALUGUEL VERIFICA OS DADOS DO CLIENTE E, CASO NÃO TENHA NENHUMA PENDENCIA FINANCEIRA, REGISTRA A LOCAÇÃO. QUANDO A LOCAÇÃO É REALIZADA, O CLIENTE É NOTIFICADO.
MODELAGEM DE PROCESSOS - UML UML (Unified Modeling Language) é uma linguagem padrão para a elaboração da estrutura de projetos de software. A UML é voltada para a visualização, especificação, construção e documentação de artefatos de um sistema, e foi projetada para ser independente do método de desenvolvimento utilizado, apesar de ser originada de análises e desenvolvimentos orientados a objetos. A UML é uma linguagem de modelagem, não é um método de desenvolvimento, ou seja, ela não diz para você o que fazer primeiro e em seguida ou como projetar seu sistema, mas ela lhe auxilia a visualizar seu desenho e a comunicação entre os objetos.
MODELAGEM DE PROCESSOS - UML HISTÓRIA Os trabalhos para a criação da UML tiveram início em outubro de 1994, quando Rumbaugh se juntou a Booch na Rational. Em outubro de 1995, foi lançado o esboço da versão 0.8 do Unified Process - Processo Unificado (como era conhecido). Nesta mesma época, Jacobson se associou à Rational e o escopo do projeto da UML foi expandido para incorporar o método OOSE. Nasceu então, em junho de 1996, a versão 0.9 da UML. Finalmente em 1997, a UML foi aprovada como padrão pelo OMG (Object Management Group), um consórcio internacional de empresas que define e ratifica padrões na área de Orientação a Objetos.
MODELAGEM DE PROCESSOS - UML HISTÓRIA (continuação) A UML tem origem na compilação das "melhores práticas de engenharia" que provaram ter sucesso na modelagem de sistemas grandes e complexos. Pretende ser a linguagem de modelagem padrão para modelar sistemas concorrentes e distribuídos. A UML ainda não é um padrão da indústria, mas esse objetivo está a tomar forma no Object Management Group (OMG), que pediu informação acerca de metodologias orientadas a objetos que pudessem criar uma linguagem rigorosa de modelagem de software.
MODELAGEM DE PROCESSOS - UML EXEMPLO DO DIAGRAMA UML
MODELAGEM DE PROCESSOS - UML ATIVIDADES: Indica que se está fazendo algo, tanto um processo do mundo real, quanto a execução de uma rotina de software. TRANSIÇÃO: Quando a atividade está completa, o fluxo de controle passa imediatamente para a atividade seguinte. OBJETOS: Podem estar envolvidos no fluxo de controle. Instâncias desses objetos podem ser produzidas ou ter seu estado alterado por determinadas atividades.
MODELAGEM DE PROCESSOS - UML COMPORTAMENTO CONDICIONAL: É delineado por desvios (branches) e intercalações (merges): Desvios: transição de entrada única com várias transições de saída guardadas. As guardas devem ser mutuamente eclusivas pois só uma transição de saída é tomada. Intercalação: múltiplas transições de entrada e uma única saída. Marca o final de um comportamento condicional iniciado por um desvio (branch).
MODELAGEM DE PROCESSOS - UML COMPORTAMENTO PARALELO: É indicado por separações (forks) e junções (joins): Separação: transição de entrada única com várias transições de saída. Quando a transição de entrada é acionada, todas as transições de saída são executadas em paralelo. Junções: depois de uma separação e realização dos processo é necessário se efetuar a junção. Separação e junção devem se completar, ou seja, toda vez que tiver uma separação, deve ter uma junção que una as transições iniciadas por aquelas separações.
MODELAGEM DE PROCESSOS - UML DECOMPOSIÇÃO: Uma atividade pode ser dividida em subatividades.
MODELAGEM DE PROCESSOS - UML CONCORRÊNCIA DINÂMICA: Indica quando uma atividade é executada várias vezes, assinalando este fato através do marcador de multiplicidade. Permite que se mostre interações sem a construção de um ciclo (loop). Se várias atividades precisam ser executadas muitas vezes, elas podem ser definidas dentro de uma atividade composta, e esta ser então, definida como tendo várias execuções através do marcador de multiplicidade.
MODELAGEM DE PROCESSOS - UML RAIAS: São utilizadas para indicar os responsáveis pela execução de cada atividade e organiza o diagrama de atividades em zonas verticais separadas por linhas, onde cada zona representa a pessoa, departamento ou classe responsável pela atividade. Cada raia tem um nome único e uma atividade pertence a apenas uma raia. As transições podem cruzar as raias.
EXERCÍCIO 7
FIM DO MÓDULO 2