Diretrizes Propostas para Aplicação da APF em Programa Envolvendo Tecnologias Recentes Tais como Barramento, BPMS e Portal Ricardo Gaspar, CFPS (21) 2172-8078 ricardo.gaspar@bndes.gov.br 29 de Novembro de 2012
Agenda Contextualização Diretrizes de Contagem Exemplo de Cenário para Contagem
Contextualização - PAD Planejamento Programa de Aplicativos Desenvolvidos (PAD) Gestão da Mudança Organizacional Consultoria em Consultoria Processos em de Negócio Processos de Negócio Operação Assistida Implantação de Processos de Negócio Atendimento e Suporte Desenvolvimento de Aplicativos Integração com Sistemas Legados Garantia Manutenção Em implementação por contratação pública (Consórcio Interagir); Escopo do contrato envolve o desenvolvimento de aplicativos que apoiarão os processos da atividade fim do BNDES; Tecnologias envolvidas no contrato: - Aplicativos Transacionais, com utilização das tecnologias de BPM, barramento e GED; - Aplicativos Gerenciais (BI); - Aplicativos de Portal, com uso de ferramenta de gestão de conteúdo e portlets. 3
4 Contextualização Aplicativos do PAD Entrega de Serviços Gestão de Relacionamento Navegação Entrega de Informações Portal Institucional Integrações Externas Entidades Externas Clientes e Parceiros Gestão de Dados Corporativos Portal Corporativo Portal de Negócios Integração de Serviços Desenvolvimento de Produtos Captação Dívida Risco de Crédito Controle de Prazos e Pendências Operações Itens Financiáveis Gestão de Papéis e Grupos Negócios Apoio a Negócios Cobrança Recuperação de Crédito Investimentos Bens,Títulos e Garantias Fundos Acompanhamento de Apoio Financeiro Distribuição de Informações Portal da Prestação de Contas Portal de Informações Gerenciais Integração Gerencial e Contábil Pontos de Função Tamanho dos aplicativos implementados pela Contratada é medido e remunerado em Pontos de Função, em conformidade com as recomendações dos Acórdãos do Tribunal de Contas da União. A Contratada deve adotar o CPM nas contagens de pontos de função. O Edital do contrato não inclui roteiro de métricas.
Contextualização Desafios: O CPM não tem como objetivo suportar contratações de fábrica de software; Contrato do PAD envolve tecnologias recentes, não citadas pelo CPM; Como contar funcionalidades de BPM percebidas pelo usuário? Como considerar o barramento nas contagens de pontos de função? Como contar funcionalidades de portal que sejam oferecidas pela ferramenta (ex: gerenciamento de conteúdo)? Como contar manutenções nestas tecnologias? Surge a necessidade de definição de diretrizes complementares.
Agenda Contextualização Diretrizes de Contagem Exemplo de Cenário para Contagem
Diretrizes de Contagem Para fazer uma gestão adequada do contrato do PAD, em relação aos pontos de função, o BNDES: Treinou profissionais envolvidos na gestão do contrato; Contratou empresa especializada em métricas através de pregão eletrônico (Abrantes Soluções); Solicitou à Abrantes estudo para definição das diretrizes de contagem; Coordenou reuniões de definição das diretrizes de contagem com a participação da Abrantes e do Consórcio Interagir (empresa Prime). Resultado: Constatação da inexistência de material relativo à BPM e Barramento; Criação de diretrizes de contagem para o PAD em conjunto com a Abrantes e a Prime.
Diretrizes de Contagem Hierarquia de decisão para estabelecimento das diretrizes: Edital Anexo III Questionamentos CPM 4.3.1 IFPUG Casos omissos SISP v2.0
Diretrizes de Contagem Diagrama de Arquitetura - exemplo: Barramento RH <sap> Obter empregados <fluxo de mediação> empregado RHU <legado> Obter empregados SAP Adaptar dados de empregados Fornecer dados de empregados Obter empregados legado Log Solicitar Viagem <portlet> Lista de tarefas <portlet> exemplo: Analisar Solicitação de Viagem Normas de Viagem <site estático> Blog da GVIG <blog customizado> empregado VIAGENS <aplicativo transacional> Gerenciar viagens <fluxo de processo> solicitação de viagem Solicitar viagem Analisar viagem S Viagem aprovada? Aprovar viagem Instâncias de processos Log Envio de email <componente> N Recusar viagem BPM
Diretrizes de Contagem Tecnologias envolvidas: BPMS é uma ferramenta de gestão de processos de negócio. Existe um módulo interno que oferece funcionalidade de workflow. Barramento é um middleware, isto é, um software com o objetivo de estabelecer regras de direcionamento ou roteamento de informações e solicitações. Para o BNDES, algumas funcionalidades serão criadas dentro deste middleware para seu reuso.
Diretrizes de Contagem Diretrizes Gerais para BPMS e Barramento: Contar a aplicação middleware/bpms apenas uma única vez, independente do número de aplicativos que utilizem a funcionalidade; Na manutenção dos arquivos lógicos da instituição, estes deverão ser mensurados no escopo da aplicação que a mantém primariamente; Posicionar a fronteira da aplicação ao redor do barramento/bpms, quando em manutenções específicas neste domínio.
Diretrizes de Contagem Diretrizes Específicas para BPMS: Na perspectiva funcional, sob a ótica das funcionalidades fornecidas pela ferramenta, considerar: ALI: Instância do Processo e Configurações do Processo. AIE: Usuário. EE, necessária para manter as configurações do processo. EE, necessária para manter a instância (sinaliza o encerramento de uma atividade). CE, necessária para informar as instâncias e as tarefas disponíveis para execução pelo usuário. Essa regra deve ser aplicada para cada processo de negócio automatizado que necessitar de configuração específica.
Diretrizes de Contagem Diretrizes Específicas para Barramento: Primeiro cenário: 2 sistemas (novo e antigo) precisam conviver. Um barramento será criado para direcionar transações externas entre eles. Diretriz: não importa se a transação será direcionada para o sistema antigo ou para o sistema novo, será contado apenas um processo elementar. Antigo Barramento Novo A A
Diretrizes de Contagem Diretrizes Específicas para Barramento: Segundo cenário: Uma aplicação solicita as informações de outra aplicação através do Barramento. Diretriz: Contar o Barramento e a Aplicação Solicitante como 1 fronteira apenas, onde a Aplicação que disponibiliza as Informações através de um serviço será contada como um AIE. Origem das Informações AIE Barramento Aplicação solicitante CE ou SE OU
Diretrizes de Contagem Diretrizes Específicas para Portal: Quando a solicitação do usuário for diferente do que já é oferecido nativamente pela ferramenta, as funcionalidades próprias do Portal (Cadastro de Notícias, Cadastro de Contatos, etc.), serão contadas conforme regras do CPM. Funcionalidades que serão efetivadas em outro ambiente e são disponibilizadas no Portal através de Portlets, podem ser consideradas um processo elementar, por se tratarem de fronteiras e lógicas de processamento distintas. Arquivos serão contados como ALI ou ALR (nas transações) quando forem específicos do Portal ou se forem acessados em outras fronteiras diretamente (sem o uso de serviços). Contar uma única vez o componente, independente do escopo alvo da medição.
Agenda Contextualização Diretrizes de Contagem Exemplo de Cenário para Contagem
Diretrizes de Contagem Diagrama de Arquitetura - exemplo: Barramento RH <sap> Obter empregados <fluxo de mediação> empregado RHU <legado> Obter empregados SAP Adaptar dados de empregados Fornecer dados de empregados Obter empregados legado Log Solicitar Viagem <portlet> Lista de tarefas <portlet> exemplo: Analisar Solicitação de Viagem Normas de Viagem <site estático> Blog da GVIG <blog customizado> empregado VIAGENS <aplicativo transacional> Gerenciar viagens <fluxo de processo> solicitação de viagem Solicitar viagem Analisar viagem S Viagem aprovada? Aprovar viagem Instâncias de processos Log Envio de email <componente> N Recusar viagem BPM
Exemplo de Cenário para Contagem Na onda 1 do programa, o projeto Viagens é priorizado com escopo de implementação do módulo 1 que consiste no requisito/caso de uso Solicitação de Viagem; com isso, são elaborados os seguintes componentes: Fluxo de mediação Obter empregados v1.0 Com o objetivo de obter dados de empregados que neste momento estão divididos em duas bases, SAP e legado; Aplicativo Transacional Viagens v1.0 Implementando apenas os casos de uso Solicitar Viagem e Consultar Solicitação de Viagem; Fluxo de Processo Gerenciar Viagens v1.0 Implementando apenas o subprocesso Solicitar Viagem;
Exemplo de Cenário para Contagem Na onda 1 do programa, o projeto Viagens é priorizado com escopo de implementação do módulo 1 que consiste no requisito/caso de uso Solicitação de Viagem; com isso, são elaborados os seguintes componentes: Portlet Solicitar Viagem v1.0 Interface adicional para o caso de uso Solicitar Viagem do Aplicativo Transacional; Portlet Lista de Tarefas Interface para listar tarefas atribuídas ao usuário dentre os processos ativos no BPM; Site estático Normas de Viagem v1.0 Contendo inicialmente 10 páginas de conteúdo; Blog customizado Blog da GVIG Possuindo uma página inicial com a chamada dos 10 artigos mais recentes além de uma página para leitura integral do artigo.
Exemplo de Cenário para Contagem Estimativa do Viagens Transacional 1: Processo Elementar ou Grupo de Dados Tipo Complexidade PF Viagens ALI Baixa 7 Solicitar viagens EE Média 4 Consultar solicitação de viagem EE Média 4 Alterar solicitação de viagem EE Média 4 Excluir solicitação de viagem EE Média 4 Empregados AIE Baixa 5 Obter Empregados SE Média 5 Instância do processo ALI Baixa 7 Configurações do processo ALI Baixa 7 Usuários AIE Baixa 5 Atualizar instância do processo EE Média 4 Atualizar configurações do processo EE Média 4 Consultar tarefas disponíveis para execução CE Média 4
Exemplo de Cenário para Contagem Detalhamento: Processo Elementar ou Grupo de Dados Viagens Solicitar viagens Consultar solicitação de viagem Alterar solicitação de viagem Excluir solicitação de viagem Empregados Obter Empregados Instância do processo Configurações do processo Usuários Atualizar instância do processo Atualizar configurações do processo Consultar tarefas disponíveis para execução Detalhamento Aplicativo Transacional Aplicativo Transacional Aplicativo Transacional Aplicativo Transacional Aplicativo Transacional SAP / Legado Barramento BPMS BPMS BPMS BPMS BPMS BPMS
Exemplo de Cenário para Contagem Estimativa do Viagens Portal 1: Processo Elementar ou Grupo de Dados Tipo Complexidade PF Solicitar Viagem EE Média 4 Listar Tarefas SE Média 5 Listar Artigos Recentes CE Média 4 Detalhar Artigo CE Média 4 Incluir Artigo EE Média 4 Alterar Artigo EE Média 4 Excluir Artigo EE Média 4 Instância do processo AIE Baixa 5 Artigos ALI Baixa 7 Detalhamento: Processo Elementar ou Grupo de Dados Solicitar Viagem Listar Tarefas Listar Artigos Recentes Detalhar Artigo Incluir Artigo Alterar Artigo Excluir Artigo Instância do processo Artigos Detalhamento Portlet Foi considerado que haverá cálculo da quantidade de tarefas para o usuário Blog da GVIG Blog da GVIG Blog da GVIG - considerando que haverá manutenção dessa informação no Portal Blog da GVIG - considerando que haverá manutenção dessa informação no Portal Blog da GVIG - considerando que haverá manutenção dessa informação no Portal AIE no Portal e ALI no BPMS Blog da GVIG - considerando que haverá manutenção dessa informação no Portal
Exemplo de Cenário para Contagem Na onda 2 o módulo de Aprovação/Recusa de Viagens é priorizado e alguns fatores ocorrem no programa, assim é necessário revisitar os seguintes elementos: Fluxo de mediação Obter empregados v2.0; Agora todos os empregados estão na base SAP e portanto não é mais necessário ler a base do legado; Aplicativo Transacional Viagens v2.0; Acrescentar o caso de uso Aprovar Solicitação de Viagem e Recusar Solicitação de Viagem; Fluxo de Processo Gerenciar Viagens v2.0; Acrescentar o subprocesso Analisar Solicitação de Viagem; O portlet Lista de Tarefas não precisa sofrer manutenção mas passa a disponibilizar a nova tarefa Analisar Solicitação de Viagem; Site estático Normas de Viagem v2.0 é alterado para disponibilizar a nova versão das normas de viagem.
Exemplo de Cenário para Contagem Estimativa do Viagens Transacional 2:
Exemplo de Cenário para Contagem Estimativa do Viagens Portal 2:
Outras Diretrizes 3. DIRETRIZES DE CONTAGEM 3.1. Aplicativos Transacionais 3.1.1. Camadas de Apresentação / Múltiplas Mídias 3.1.2. Compartilhamento de Informações e Migração de Informações 3.1.3. Expurgos de Informação 3.1.4. LOG de Informação 3.1.5. Históricos da Aplicação 3.1.6. Consultas e Relatórios Modulares 3.1.7. Code Data 3.2. Aplicativos Gerenciais (BI) 3.2.1. Diretrizes 3.3. Aplicativos de Portal 3.3.1. Serviços típicos oferecidos por um portal 3.3.2. Diretrizes
Outras Diretrizes 3.4. Convivência com as Aplicações do Legado 3.5. Projetos de Melhoria 3.6. Mudanças de Requisitos e/ou Escopo em Tempo de Projeto 3.7. Barramento 3.8. BPMS 3.9. Desenvolvimento de Aplicativos em Ondas 3.10. Estimativas de Software 3.10.1. Aplicativos Transacionais 3.10.2. Aplicativos Gerenciais 3.10.3. Aplicativos de Portal 3.11. Regras de contagem detalhadas no contrato 3.12. Considerações Finais
Perguntas?