Eduardo M Fagundes

Artigos

Coletânea de artigos técnicos e reflexões de Eduardo M. Fagundes publicados entre 2011 e 2017

Assine a Newsletter no Linkedin

Autor: Eduardo Fagundes

  • A Metodologia 5S e a Gestão de TIC

    A metodologia 5s é utilizada para melhorar a produtividade das pessoas e organizações. Foca na redução do tempo de acesso as coisas necessárias para o trabalho, na redução de despesas com materiais e equipamentos, na melhoria de qualidade de produtos e serviços e na satisfação das pessoas com o trabalho. O 5S pode ser aplicado em qualquer ambiente de trabalho, nos setores de serviços, manufatura e primário. Os 5S são: Seiri: Senso de Utilização; Seiton: Senso de ordenação; Seiso: Senso de limpeza; Seiketsu: Senso de saúde ou de limpeza organizada; Shitsuke: Senso de autodisciplina. Esse artigo discute o 5S dentro do contexto das organizações de TI e telecomunicações.

    Metodologia 5S

    As organizações de TIC estão envolvidas em processos de melhoria da eficiência de gestão através a partir de frameworks de mercados como o Cobit, ITIL, PMI, CMMI, ISO 2000, eSCM e outros. O objetivo é o compliance com a governança corporativa, principalmente em empresas que pretendem fazer IPO (oferta pública de ações) e empresas que já operam no mercado de ações e possuem baixa maturidade organizacional em TIC. A adoção de forma orquestrada desses padrões de mercado acelera o deslocamento da organização de TIC para níveis de maturidade mais elevados.

    Um projeto de governança de TIC varia de empresa para empresa. Não existe uma única solução. Cada organização de TIC deve desenvolver seu projeto de governança. A fase inicial do projeto é “limpar a casa” e iniciar um programa de mudança cultural e comportamental da equipe. A partir da fase inicial do projeto o 5S pode ser aplicado como princípio na definição de processos das próximas fases.

    Vamos analisar os cinco propósitos da metodologia:

    Seiri. Senso de Utilização. Refere-se à prática de avaliar se todos os recursos estão disponíveis para a execução das atividades do executante. Verificar se todos os softwares necessários estão instalados corretamente; se o hardware tem desempenho suficiente para extrair o máximo de produtividade de uso; se os níveis de acesso são compatíveis com a função do executante; se as informações estão disponíveis no momento que são necessárias para desenvolver uma atividade; se a documentação está atualizada para a execução da atividade; etc. Isso requer processos e descrição de cargos bem definidos e documentados.

    Seiton: Senso de ordenação. Enfoca a necessidade de um ambiente bem organizado. Um bom layout ajuda no fluxo de informações e decisões. Em ambientes de desenvolvimento e controle é importante baixo nível de ruído e aspectos que possam tirar a concentração dos analistas. Interrupções tiram a produtividade das pessoas.

    Seiso: Senso de limpeza. Refere-se à necessidade de manter o mais limpo possível o espaço de trabalho. Tanto no aspecto físico como no aspecto lógico. Por exemplo, devemos eliminar códigos desnecessários nos programas. Isso reduz o número de linhas de código, facilita a manutenção e elimina riscos de uso mal-intencionado. Outro exemplo é a retenção de arquivos além dos prazos legais necessários. Essa prática pode parecer segura para o pessoal de TIC, mas além de consumir recursos desnecessários (processamento, disco e mídia de backup) pode colocar a empresa em apuros em auditorias legais por ter na base dados que possam ser questionados. É um risco desnecessário.

    Seiketsu: Senso de saúde ou de limpeza organizada. Enfoca a padronização das práticas de trabalho. A regularidade e a institucionalização da manutenção das coisas limpas e organizadas como parte de “gerência visual” é um meio eficaz na busca da melhoria continua. O sucesso de implantação de qualquer metodologia está associado a sua incorporação nas práticas das pessoas no seu dia-a-dia. Na área de TIC temos várias oportunidades. Evitar papéis em cima da mesa mitiga o risco de alguém mal-intencionado use informações reservadas para fraudar os sistemas. Em implantações de Cobit, ITIL, PMI e outros frameworks de gestão de TIC o senso de organização é fundamental para o sucesso. Lembrando que a implantação de um modelo de governança de TIC é um projeto de transformação cultural e de comportamento. Esse senso pode ser associado também à saúde pessoal e ao relacionamento de equipes. Uma vida organizada reduz o stress e o trabalho em ambientes onde as pessoas têm os mesmos objetivos o senso de equipe é potencializado.

    Shitsuke: Senso de autodisciplina. Refere-se à manutenção e revisão dos padrões estabelecidos nos 4s anteriores. Essa prática transforma a maneira de trabalhar, evitando o retorno às práticas antigas. Os frameworks de gestão como Cobit, ITIL, CMMI e PMI incorporam essa prática. No Cobit na dimensão “Controlar” foi introduzido práticas de melhoria contínua. No ITIL, o uso de técnicas de melhoria contínua como o PDCA do Deming são rotina. O nível 5 CMMI requer práticas de melhoria contínua incorporadas às atividades das pessoas. No PMI, as sessões de “lições aprendidas” enfocam a melhoria contínua.

    A padronização das práticas e a institucionalização do 5S e de frameworks de gestão torna mais fácil para todos na organização, incluindo os recém-chegados, continuar melhorando e se expandindo.

    A implantação de qualquer programa de melhoria contínua requer uma liderança forte e inspiradora. O sucesso de programas de 5S e de outros frameworks de TIC está diretamente ligado a capacidade de liderança dos gestores. Disciplina, coaching, reconhecimento e punição estão associados ao sucesso do projeto.

    O 5S está incorporado ao Kaizen, uma filosofia de transformação para o bem. Os elementos do kaizen são: qualidade, esforço, disposição para mudar e comunicações. O kaizen ressoa bem com a velocidade da mudança em níveis operacionais na organização. A simplicidade torna a implementação fácil, embora algumas vezes seja prejudicada pelos aspectos culturais que não sejam receptivas a autodisciplina.

    Metodologia 5S

    Sumarizando, a metodologia 5S é útil como apoio para a transformação cultural das organizações que buscam melhoria contínua. A metodologia está alinhada com os principais frameworks de gestão de TIC e seu uso combinado com as metodologias de implantação ajuda no sucesso do projeto e sua continuidade.

  • A complexa alavancagem da tecnologia IoT no Brasil

    A tecnologia de IoT é compreendida e acessível, literalmente, por todos. Desde crianças desenvolvendo robôs até a grande indústria implantando automação extrema. Existem pontos a melhorar, tais como segurança e definição de protocolos para diferentes setores econômicos para atender suas características de negócios. Tecnicamente, a evolução da tecnologia deve seguir seu caminho, assim tantas outras. Entretanto, o maior desafio é a implantação do negócio de IoT, que envolve vários fatores, como: regulamentação, infraestrutura, capacidade de absorção da tecnologia pelas empresas e pelo mercado consumidor. Para avaliar o impacto na economia e desenvolver o planejamento das ações é necessário conhecer o tamanho do mercado. Para isso, o Ministério da Ciência, Tecnologia, Inovações e Comunicações, o BNDES e entidades privadas pesquisam e fazem projeções de mercado. O desenvolvimento de um ecossistema de IoT é complexo, pois envolve aspectos de infraestrutura e um forte jogo de interesses das empresas e do governo, tanto nos aspectos fiscais e regulatórios, entre outros. (mais…)

  • O desafio de construção de uma plataforma tecnológica

    As empresas e comunidades de negócios, constantemente, são desafiadas a construir plataformas tecnológicas para aumentar a produtividade, reduzir custos e melhor a segurança da informação. As plataformas são compotas por diversas tecnologias, que muitas vezes estão em estágios diferentes de maturidade, colocando em risco a sua continuidade e aceitação pela comunidade. Se utilizarmos apenas tecnologias já consolidadas, no chamado platô da produtividade, corremos o risco da obsolescência rápida, porém teremos soluções confiáveis e mais baratas. Por outro lado, se adotarmos apenas tecnologias incipientes, quando apenas se fala e não existem resultados concretados de estabilidade e continuidade, corremos o risco do mercado rejeitar ou ser substituída por outra e teremos que redefinir a plataforma, gerando custos não projetados. Uma solução uma modular com funções especificas, independente da tecnologia, e combinar tecnologias em fase de aceitação e tecnologias no platô da produtividade. Outra solução é criar uma startup para testar a efetividade da plataforma, aperfeiçoando-a ou saindo rápido para outra, minimizando os riscos e prejuízos.

    Muitas vezes ficamos empolgados com o surgimento de uma nova tecnologia e visualizamos novas aplicações, saltos grandes de produtividade e novos negócios. Entretanto, muitas tecnologias não conseguem ganhos de escala e adoção pelo mercado, frustrando aqueles que gostam de adotar novidades, os chamados early adopters, e trazendo prejuízos para empresas que buscaram a inovação.

    Muitos procuram consultorias para predizer o futuro das tecnologias. É uma boa alternativa, porém de difícil prognóstico. Bill Gates não acreditou na Internet e continuou investindo, pesadamente, em uma rede de satélites para levar comunicação a todos os lugares do planeta. A Apple fracassou com o Newton, um PDA com tela sensível ao toque, reconhecimento inteligente de escrita, memória flash e processador RISC, em 1993. A IBM não acreditou em computadores pessoais. A história está cheia de previsões malsucedidas.

    Por outro lado, que acreditaria que o Facebook dominaria o mercado de redes sociais, sem produzir nenhum conteúdo. Ou, a Google conseguisse armazenar informações em tempo de milhões de usuários no mundo, com serviços gratuitos.

    Com tantas incertezas, como construir uma plataforma tecnológica para uma empresa ou para uma comunidade de negócios?

    O primeiro passo é criar um modelo modular com funções bem definidas que possam ser executadas por diferentes tecnologias. O modelo da rede Internet funciona a décadas, mesmo com novas tecnologias sem lançadas constantemente. O desafio é definir os protocolos e tecnologias de cada modulo (também chamada de camadas).

    Por exemplo, o Blockchain utiliza a Internet como meio de transporte de dados, e um protocolo próprio de funcionamento, usando chaves privadas e públicas de criptografia, associação de blocos de informação, mecanismos de disputa para “mineradores” serem recompensados por elos na cadeia de dados, e muitas outras funções. Para seu funcionamento todos os participantes devem adotar todas as suas especificações.

    Algumas tecnologias podem ter variantes. Por exemplo, é possível criar uma rede de dispositivos remotos com protocolos proprietários ou selecionando certos protocolos de comunicação. Entretanto, isto não garante a interoperabilidade. Este é o caso das implementações de Internet of Things. Cada solução pode adotar protocolos diferentes e critérios de funcionamento proprietários. A solução no caso de IoT é cada indústria defina um padrão para garantir a interoperacionalidade pelo menos na sua comunidade e influenciar que outras comunidades adotem sua arquitetura.

    Minha recomendação para empresas já estabelecidas e comunidades de negócios já consolidados é utilizar tecnologias em fase de aceitação pelo mercado e que já estejam no platô da produtividade. A vantagem é que temos um maior nível de certeza que uma determinada tecnologia irá se consolidar, tento suporte e investimentos para aprimoramento. Os equipamentos e serviços ganhando escala forçam a redução de custo e aceleram a adoção por mais pessoas e empresas.

    A figura (1) e (2) mostram duas possibilidades de construção de uma plataforma tecnológica. A primeira utilizando apenas tecnologias já consolidadas e a segunda, adotando tecnologias em fase de aceitação pelo mercado.

    Figura 1. Plataforma tecnológica usando tecnologias no platô da produtividade
    Figura 2. Plataforma tecnológica mesclando tecnologias em fase de aceitação e tecnologias no platô da produtividade

    Chegar a um consenso de quais tecnologias utilizar é uma tarefa árdua e envolve muita negociação entre os participantes, principalmente, se existirem empresas que já implementaram suas plataformas proprietárias. Já participei de várias definições de plataformas tecnológicas, e o maior esforço é acomodar diferentes interesses.

    Outra solução, para tecnologias emergentes, é a criação de uma startup e adotar um padrão próprio e depois fomentar seu uso pela comunidade para se tornar um padrão de fato. A Google Cloud está promovendo o software TensorFlow na área de Machine Learning. Oferece treinamento online gratuito, uso de recursos limitados na Cloud para testes e tornou o software open-source.

    A definição de uma plataforma é importante para direcionar os fornecedores no desenvolvimento de produtos e serviços aderentes, aumentando a escala de produção e garantindo preços mais baixos e suporte de qualidade e continuo.

    O lobby dos fornecedores e até de países é forte. Alguns governos acabam assumindo a responsabilidade pela definição de plataformas tecnológicas, alegando a necessidade de garantir a interoperabilidade e o fomento da indústria. A experiência mostra que sempre que os governos tentam substituir o mercado as coisas não funcionam e acabam gerando mais custos para as empresas e cidadãos. As agências regulatórias devem gerenciar os recursos que são comuns e escassos, como por exemplo, as frequências de onda e potências dos transmissores para evitar interferências, porém os protocolos devem ser definidos pelo mercado. Quem for competente fica, os outros saem do mercado.

  • Dá para confiar e ganhar dinheiro com software livre?

    Hoje temos uma quantidade incrível de softwares com códigos abertos – open source – disponíveis para fazer download e usar gratuitamente. Várias soluções de software de grandes fornecedores, com licenças caríssimas, foram substituídas com eficiência por softwares livres (usarem livremente os termos software livre e código aberto, embora existam pequenas diferenças entre os conceitos). Um caso prático é a substituição de um software proprietário cuja uma única licença custa US$6,000 pela Linguagem R, na área de estatística. Conheço algumas empresas que proíbem o uso de software livre por entenderem que não são seguros e não existe suporte para garantir a disponibilidade e robustez do software. Este é um caso típico onde se pode ganhar dinheiro com software livre, oferecendo suporte e add-on profissionais para grandes empresas. Existem outros modelos de negócios que oferecem rentabilidade para as empresas de software. (mais…)

  • O sucesso profissional exige muito mais que um certificado

    Estudar para ser aprovado em uma prova de certificação não garante o sucesso profissional, embora seja uma condição importante no mercado de trabalho. O que determina o sucesso profissional é a capacidade de execução. Infelizmente, não existe uma certificação de “execução”. Para evidenciar esse viés profissional é necessário participar de projetos, executar atividades, medir o desempenho e registrar os feedbacks das avaliações de desempenho. Ainda assim, não é suficiente para o sucesso profissional. É necessário saber trabalhar em equipe, ter resiliência, visão holística, capacidade de criar cenários prospectivos e habilidade para influenciar nas variáveis que transformam o futuro. Ainda não é suficiente. É necessário definir um proposito para a sua carreira profissional e fazer com que o mercado reconheça isso através de ações de marketing pessoal. Enfim, ter sucesso profissional exige planejamento e capacidade de execução, muito mais que um certificado. (mais…)

  • A retomada da indústria no Brasil será baseada na quarta revolução indústria

    Acredito que a partir de 2019 o cenário político e econômico estará atrativo para estimular investimentos na indústria. Os novos projetos devem contemplar os novos paradigmas do mercado, como o consumo sustentável e preferência por produtos personalizados dos mais jovens e gastos mais comedidos dos mais velhos para garantir uma poupança para uma vida financeira mais estável, incluindo planos para a aposentadoria. Teremos uma redução da demanda de produtos físicos industrializados, principalmente os massificados. Isto pode transformar o conceito de globalização, fazendo que os produtos sejam produzidos localmente, para atender no menor tempo possível o consumidor e custos logísticos. (mais…)

  • O desafio para superar a geração “devagar” para aumentar a competitividade

    Em uma entrevista, Roberto D’Avila perguntou a Bibi Ferreira (94) qual a diferença do mundo na sua juventude e agora, ela respondeu que no passado o mundo era mais “devagar”. Ao que parece nossas instituições públicas, algumas alas da sociedade e empresas ainda vivem no passado, se movimentando lentamente. O esforço dos “velozes” para superar os entraves colocados pelos “lentos” é muito maior que em outros países, reduzindo nossa competitividade. O resultado é a queda contínua do Brasil no ranking de competitividade mundial, monitorado pelo Fórum Econômico Mundial. Em 2016, passamos a ocupar a 81ª posição, perdendo 33 posições em quatro anos.

    infografico-competitividade-mundial-do-brasil-2016-1

    (mais…)

  • Pode a ISO 9.001 substituir o CMMI no desenvolvimento eficiente de software?

    A busca da eficiência e qualidade no desenvolvimento de software vem de décadas. No início definiu-se processos estruturados e lineares para o desenvolvimento de softwares, evoluiu com a introdução de feedbacks e análise de risco nas fases de levantamento de requisitos, análise e desenho, como por exemplo o modelo espiral, para consolidar e obter consenso do objetivo e escopo final do projeto. As fases de codificação, testes e implantação assumem aspectos de linha de produção.

    O conceito em torno de Engenharia de Software é o desenvolvimento de software com o máximo de eficiência e qualidade, incluindo custo e entregas no prazo. Para gerenciar melhor essa evolução é possível classificar as áreas de desenvolvimento, ou células dentro das áreas, em diferentes níveis de maturidade: Inicial, Gerenciada, Definida, Quantitativamente Gerenciado e Otimizado. Essa classificação é definida pelo CMMI – Capability Maturity Model Integration – um processo de melhoria contínua de desenvolvimento de software, criado pela Universidade americana Carnegie Mellon, administrado pelo CMMI Institute, uma subsidiaria da ISACA desde 2016.

    Metodologias e softwares de apoio ao desenvolvimento foram desenvolvidos para estruturar e controlar o desenvolvimento com padronização dos processos e reusabilidade de componentes, na busca da eficiência. Uma das ferramentas mais conhecidas é o RUP (Rational Unified Process) que implementa uma metodologia de desenvolvimento, parte da IBM desde 2003. Em 2006, a IBM criou um subconjunto de RUP para projetos ágeis, lançado como um método open source chamado OpenUP, usando o Eclipse (ambiente de desenvolvimento integrado com código aberto). O uso de processos e softwares de desenvolvimento são aplicáveis em qualquer categoria de metodologia: tradicionais ou ágeis.

    A certificação em CMMI é recomendável para fábricas de software e para o desenvolvimento de software de missão crítica, onde existem produção maciça de software ou risco a vida (software para aviões, análises clinicas, suporte a vida, por exemplo). Por ser um processo caro e grande esforço de implantação, cada empresa deve avaliar o custo-benefício de uso e, principalmente, certificação junto a órgãos autorizados.

    Uma alternativa ao CMMI é a ISO 9.001. A norma internacional ISO 9.001 é quase obrigatório para as áreas de manufatura e, mais recentemente, para serviços. A norma tem foco na qualidade. Sua implantação envolve o mapeamento de todos os processos organizacionais, “gap analysis”, análise de riscos e planos de melhoria contínua. Para o mapeamento dos processos do ciclo de vida do software podemos utilizar a ISO 12.207-1, que descreve as atividades que podem ser realizadas no ciclo de vida de um software em cinco processos principais, oito processos de suporte e quatro processos gerais, assim como um processo que permite adaptar o ciclo de vida a cada caso concreto.

    Ou seja, é possível descrever os processos utilizados para o desenvolvimento de software dentro do contexto da ISO 9.001, integrado com os outros processos da operação da infraestrutura de TI e dos processos de negócios. É possível atender aos requisitos do Cobit 5 que prevê uma visão fim-a-fim dos processos e arquitetura da organização.

    A TI participando do mesmo processo de certificação de qualidade da empresa, usando a ISO 9.001, tem as seguintes vantagens:

    • Integra seus processos de desenvolvimento de sistemas e operação da infraestrutura aos processos de negócio da empresa;
    • Utiliza frameworks de outros métodos como guia para descrever os seus processos, adotando com isso o estado da arte em governança de TI;
    • Utiliza o orçamento do projeto de certificação de qualidade da empresa, reduzindo o desgaste e convencimento para investimentos próprios de processos pouco conhecidos pelo resto da empresa;
    • Reduz os custos de consultoria e de certificação em qualidade;
    • Cria evidências para as auditorias de processos alinhados com práticas internacionais de gestão e alinhamento com os negócios da empresa;
    • Reduz os atritos entre a TI e as áreas de negócios devido ao fato que os processos são integrados e aprovados pelo Comitê de Qualidade da empresa.

    Respondendo à pergunta inicial, acredito que seja possível substituir o modelo de melhoria contínua de maturidade das equipes de desenvolvimento de software CMMI pela norma internacional de qualidade ISO 9.001. Mais ainda, acredito que seja possível substituir outras certificações de TI, como Cobit, ITIL, ISO 20.000 e ISO 27.000.