Um modelo de desenvolvimento descentralizado de sistemas: dando poder ao usuário e ampliando a Governança de TI Paulo André Mattos de Carvalho Tribunal de Contas da União
Desenvolvimento descentralizado no TCU 31/10/2008 Desenvolvimento descentralizado no TCU Desconhecimento das iniciativas de informatização Falta de alinhamento estratégico das iniciativas Duplicidade de esforços nas unidades Diversidade de ferramentas de desenvolvimento Elevado risco de descontinuidade Comprometimento da segurança da informação
31/10/2008 Estratégia de ação Aceitar a realidade do desenvolvimento de sistemas por unidades de negócio e reconhecer a legitimidade dessas iniciativas Construir parcerias e aproveitar essa realidade para ampliar a capacidade produtiva da área de TI Articular esforços e recursos necessários para apoiar e garantir o sucesso das unidades parceiras Criar mecanismos para aprimorar a gestão e a Governança de TI Pensar grande, começar pequeno e criar um modelo de negócio sustentável
Pensando alguns conceitos
Desenvolvimento por usuário final “End-User Development can be defined as a set of methods, techniques, and tools that allow users of software systems, who are acting as non-professional software developers, at some point to create, modify or extend a software artifact.” Fonte: [Lieberman et al. 2006] End-User Development: an emerging paradigm
Paradigma do usuário desenvolvedor Fonte: [Fischer, Sutcliffe et al.] Univ. of Colorado - USA, Univ. of Manchester - UK Meta-Design: A Manifesto for End-User Development
Autoridade Responsabilidade Recursos 31/10/2008 Empowerment Autoridade Responsabilidade Recursos Qualidade Produtividade Resultado “é uma ação que permite melhorar a qualidade, a produtividade e, consequentemente, o serviço prestado aos clientes através da delegação de autoridade e de responsabilidade aos funcionários, favorecendo na criação de relações de confiança entre os diversos níveis hierárquicos das empresas.” Fonte: [Idalberto Chiavenato, 1999] : Gestão de Pessoas: O novo papel dos recursos humanos nas organizações “No empowerment o poder emana do próprio indivíduo, que assume total responsabilidade por seus atos. Seu objetivo é delegar recursos para que todos da empresa se sintam com poder para agir, e de fato o façam, com responsabilidade”. Ulrich Confiança Colaboração
Empowering people (Data.gov) 31/10/2008 Empowering people (Data.gov) É política formal de governo nos EUA e no Reino Unido (data.gov e data.gov.uk) “A primary goal of Data.gov is to improve access to Federal data and expand creative use of those data beyond the walls of government by encouraging innovative ideas (e.g., web applications).”
Modelo de negócio do TCU
Modelo de negócio do TCU Desenvolvimento Descentralizado Pessoas Seleção Capacitação Colaboração Processos Normas Métodos Padrões Ferramentas Padronização Ferramenta RAD Governança e Gestão
Modelo de negócio do TCU Desenvolvimento Descentralizado Pessoas Seleção Capacitação Colaboração Processos Normas Métodos Padrões Ferramentas Padronização Ferramenta RAD Governança e Gestão
Processos Normas, métodos e padrões Área de TI Comunidade de usuários Área de TI Normas e orientações Área de TI Ferramenta RAD padronizada Área de TI Normas e orientações Fonte: [Fischer, Sutcliffe et al.] Univ. of Colorado - USA, Univ. of Manchester - UK Meta-Design: A Manifesto for End-User Development
Processos Normas: Política de Governança de TI (PGTI) Corporativa Impacto significativo sobre os resultados e o funcionamento do Tribunal Departamental Atendimento de necessidades de uma unidade ou de um conjunto limitado de unidades Solução de TI Requer aprovação Provimento Centralizado Desenvolvimento, aquisição ou manutenção realizado pela área de TI do Tribunal Descentralizado Desenvolvimento, aquisição ou manutenção realizado por outra unidade do Tribunal, sob orientação da área de TI Fonte: adaptado da Política de Governança de TI - PGTI/TCU (Minuta)
Processos Método: Processo de desenvolvimento
Processos Método: procedimentos, papéis e responsabilidades Unidade de Negócio Identifica necessidade/problema de negócio e formaliza demanda Aloca equipe de desenvolvimento (Servidor ou vaga de estagiário) Define prioridade, escopo e prazos Desenvolve e documenta o sistema Treina os usuários Implanta e mantém o sistema Atualiza o portfólio de sistemas Área de TI Análise da necessidade/problema de negócio (viabilidade e solução) Seleciona e capacita a equipe Orienta e acompanha o projeto de desenvolvimento (escopo, riscos e prazos) Orienta e acompanha o desenho da solução (requisitos, modelagem e interface) Provê acesso a dados corporativos por meio de viewsEfetua testes e homologação Presta consultoria por meio de reuniões agendadas (métodos e técnicas) Provê infraestrutura (Banco de dados, Ferramenta RAD, Ferramentas de colaboração)
Processos Padrões: interfaces, usabilidade e documentação
Modelo de negócio do TCU Desenvolvimento Descentralizado Pessoas Seleção Capacitação Colaboração Processos Normas Métodos Padrões Ferramentas Padronização Ferramenta RAD Governança e Gestão
Pessoas Seleção, capacitação e colaboração Seleção e capacitação de estagiários Treinamento e capacitação de servidores Treinamento EaD autoinstrucional Comunidade de prática Fórum e lista de discussão ativa Wiki – publicação dinâmica de conteúdos
Pessoas Gestão do conhecimento e colaboração Comunidade de prática e biblioteca digital (Portal do TCU) Treinamento EaD e Fóruns de discussão Wiki Listas de discussão
Modelo de negócio do TCU Desenvolvimento Descentralizado Pessoas Seleção Capacitação Colaboração Processos Normas Métodos Padrões Ferramentas Padronização Ferramenta RAD Governança e Gestão
Sistemas Centralizados Sistemas Descentralizados 31/10/2008 Ferramentas TCU Banco de dados Área 1 Área 2 Área n Views WEB Sistemas Centralizados Sistemas Descentralizados
Ferramentas Desenvolvimento [Fischer, Sutcliffe et al.] Meta-Design: A Manifesto for End-User Development
Modelo de negócio do TCU Evolução e resultados
31/10/2008 2007 Núcleo de suporte ao desenvolvimento departamental na área de atendimento ao usuário 2008 Envolvimento da alta administração Planejamento estratégico 2009 Estruturação da área específica de suporte ao desenvolvimento descentralizado 2010 Plano Diretor de TI Definição de Indicadores 2011 PGTI Ampliação da equipe Evolução no TCU
31/10/2008 Resultados
31/10/2008 Resultados Objetivos estratégicos 3. Coibir a ocorrência de fraudes e desvios de recursos Sistema DGI 7. Intensificar ações de controle para combate ao desperdício de recursos públicos 8. Intensificar a comunicação com a sociedade Sisjur, Sisouv 10. Facilitar o exercício do controle social Sisouv 13. Aprimorar o relacionamento com o Congresso Nacional Sispar 15. Fortalecer cultura orientada a resultados Sisplan 16. Desenvolver cultura de inovação Seade (EUD) 18. Estruturar a gestão do conhecimento organizacional Competência (Currículo) 19. Modernizar e integrar as práticas de gestão de pessoas Competência, Movimentação, SisEpro, Sigeste 20. Assegurar adequado suporte logístico às necessidades do TCU Sismac, Almoxarifado, Conterc, Ordem de Serviços etc. 22. Intensificar e aprimorar o uso de TI nas ações de controle Sisqualidade, Pesquisar, Sistemas da Adsis, Pesquisa de Clima 23. Otimizar o uso de TI na gestão do TCU Todos os maiores sistemas. Sisconjur, Sismac, Sispar, Sigeste etc. 24. Promover a melhoria da governança no TCU Sistemas da Assig, Processos do Seade, Monitor, Porftólio etc. Colabora em mais de 50% dos objetivos estratégicos
Vantagens e limitações “Para não confundir o leitor, vamos reconhecer que a produtividade média dos projetos que utilizam JAVA deve estar entre 15 e 20 H/PF. Mas não é essa a questão.” Fonte: Brazilian Function Point Users Group http://www.bfpug.com.br/Produtividade_Java.htm
Vantagens Melhoria da governança e gestão de TI Ampliação da capacidade produtiva da área de TI Alocação de colaboradores de outras unidades Um analista de TI pode acompanhar aproximadamente 4 projetos de novos sistemas 6 sistemas em produção Ampliação de unidades atendidas e da satisfação dos clientes Mais de 30 unidades atendidas “Para não confundir o leitor, vamos reconhecer que a produtividade média dos projetos que utilizam JAVA deve estar entre 15 e 20 H/PF. Mas não é essa a questão.” Fonte: Brazilian Function Point Users Group http://www.bfpug.com.br/Produtividade_Java.htm
Vantagens Permite o desenvolvimento de soluções de natureza departamental ou corporativa de médio e grande porte Sispar : +150 telas Sisconjur, Sisjur, Sigeste, Pesquisar: +100 telas Sisouv: +80 telas Elevada produtividade e robustez Ferramenta padronizada Relatórios interativos e consumo de Web Services Banco de dados corporativo (Integração, Segurança, backup) “Para não confundir o leitor, vamos reconhecer que a produtividade média dos projetos que utilizam JAVA deve estar entre 15 e 20 H/PF. Mas não é essa a questão.” Fonte: Brazilian Function Point Users Group http://www.bfpug.com.br/Produtividade_Java.htm
Limitações Capacidade de atendimento da equipe de TI Equipe: 1 chefe e 4 analistas Média de 16 sistemas por analista (Acima da capacidade) Filas para novos projetos e dificuldade de atendimento de demandas por suporte Contratação de estagiários Necessidade de processo seletivo rigoroso Necessidade de reposição e contratação para novos projetos Oferta limitada de bons estagiários
Limitações Ferramenta RAD de desenvolvimento adequada para sistemas transacionais (CRUD) Não se aplica ao desenvolvimento de qualquer tipo de sistema Ferramenta RAD de desenvolvimento e padrões definidos impõem restrições de usabilidade Resultados a médio e longo prazos (Sisconjur, Pesquisar, Sisouv: 1,5 anos) Exigência de processo de trabalho, padronização e documentação Apoio e suporte limitados à capacidade da equipe de TI Pouca experiência de desenvolvedores
Fatores críticos de sucesso Estabelecimento de uma cultura de cooperação, confiança e compartilhamento de responsabilidade Treinamento e capacitação Ferramentas adequadas Equipe de suporte de TI qualificada
Modelo de negócio do TCU Desenvolvimento Descentralizado Pessoas Seleção Capacitação Colaboração Processos Normas Métodos Padrões Ferramentas Padronização Ferramenta RAD Governança e Gestão
Governança e gestão de TI Arranjo decisório no TCU Domínio Estilo Princípios Arquitetura Infra-estrutura Aplicações Priorização Monarquia de negócios Monarquia de TI Federativo Duopólio Feudal Anarquia Monarquia de negócios – Dirigentes de 1º escalão, individualmente ou em grupo, com ou sem a participação do CIO Monarquia de TI - Gerentes de TI, individualmente ou em grupo Federativo - Dirigentes de 1º escalão, juntamente com pelo menos um outro grupo de gerentes Duopólio - Gerentes de TI, juntamente com pelo menos um outro grupo (dirigentes ou gerentes de negócio) Feudal - Gerentes das áreas de negócio, responsáveis por processos ou seus prepostos, individualmente Anarquia - Cada gerente ou usuário final, individualmente Desenvolvimento centralizado Fonte: [Weill e Ross, 2004] Antes - Desenv. descentralizado (sist. departamentais) Hoje - Desenv. descentralizado (sist. departamentais)
Um modelo de desenvolvimento descentralizado de sistemas: dando poder ao usuário e ampliando a Governança de TI Paulo André Mattos de Carvalho Tribunal de Contas da União (61) 3316-7114 / pauloac@tcu.gov.br