Gestão


Qualidade de software é um tema que vem sendo abordado e evoluído há muito tempo em engenharia e arquitetura de software, tanto em relação à qualidade do processo (da concepção à construção e à manutenção) quanto em relação à qualidade do produto, o software em si.

Nas décadas de 70 a 90, organizações internacionais de normatização e padronização — como ISO/IEC, ANSI, IEEE e outros — definiram qualidade de produto como:

A totalidade dos recursos, aspectos e características de um produto ou serviço que suportam a sua capacidade de satisfazer os requisitos dados, as expectativas e as necessidades explícitas e implícitas.

Em seu estudo sobre qualidade de software, Software Quality: Definitions and Strategic Issues (PDF, abril 1996), o pesquisador Ronan Fitzpatrick propõe uma visão mais moderna e ousada de qualidade do produto de software, definindo assim:

Qualidade de software é a medida em que um conjunto definido pela indústria de características desejáveis são incorporadas em um produto, de modo a aprimorar seu desempenho durante sua existência.

O Modelo de Qualidade de Software proposto por James A. McCall e outros, em 1977, foi um dos primeiros largamente difundidos neste campo. Ele organiza os critérios de qualidade de software em três pontos de vista, a saber:

  • Operação: características relativas ao uso do produto.
  • Revisão: capacidade do produto ser modificado e evoluído.
  • Transição: adaptabilidade a novos e diferentes ambientes.

Os critérios de qualidade elencados no Modelo de McCall em cada ponto de vista estão listados na tabela a seguir.

Operação Revisão Transição
Correção Manutenibilidade Portabilidade
Confiabilidade Flexibilidade Reusabilidade
Eficiência Testabilidade Interoperabilidade
Integridade
Usabilidade

Atualmente existem outros modelos de avaliação da qualidade do produto de software, em especial o padrão internacional de engenharia de software ISO/IEC 9126, que trata da Qualidade do Produto. A norma se divide em quatro partes, sendo a primeira uma visão geral do modelo de qualidade, e as outras três, os grupos de métricas definidas para este modelo:

  • Parte 1: Modelo de qualidade.
  • Parte 2: Métricas externas.
  • Parte 3: Métricas internas.
  • Parte 4: Métricas de qualidade em uso.

Qualidade externa diz respeito ao produto final como percebido pelo usuário, enquanto qualidade interna se refere à estrutura e às características do produto em seu projeto e construção.

Mais recentemente, desde 2005, as normas ISO/IEC 9126 e a série ISO/IEC 14598, de avaliação de produto de software, tem sido integradas na nova série de normas ISO/IEC 25000 – Software Engineering — Software product Quality Requirements and Evaluation (SQuaRE).

Os critérios de qualidade no Modelo de McCall são muito similares aos preconizados por outros modelos para classificação de atributos de qualidade de software, como o FURPS+ (Robert Grady e Deborah Caswell, HP, 1987-1992) e o da própria ISO/IEC 9126, quanto a requisitos não funcionais:

FURPS+ ISO 9126 McCall
Functionality (Funcionalidade) Funcionalidade - (n/a, funcional)
Usability (Usabilidade) Usabilidade Usabilidade (Operação)
Reliability (Confiabilidade) Confiabilidade Correção,
Confiabilidade,
Integridade (Operação)
Performance (Desempenho) Eficiência Eficiência (Operação)
Supportability (Suportabilidade) Manutenibilidade Manutenibilidade,
Flexibilidade,
Testabilidade (Revisão)
+ (outros requisitos/restrições) Portabilidade Portabilidade,
Interoperabilidade,
Reusabilidade (Transição)

.

Vale ressaltar que qualidade do software, abordada aqui, se entende por qualidade do produto de software em si, o que é distinto de qualidade do processo de software, que diz respeito à qualidade das atividades e forma pelas quais se produz software.

Para saber mais:

Há 16 anos, o Standish Group estuda projetos de TI. Ao longo desse tempo, a pesquisa CHAOS já estudou mais de 70 mil projetos de TI realizados.

O CHAOS Report é frequentemente citado em artigos e apresentações sobre gerenciamento de projetos de TI. Essa pesquisa classifica o resultado de cada projeto de TI em uma destas três situações:

  • Bem sucedido: O projeto é concluído dentro do prazo e orçamento planejados, com todos os recursos e resultados originalmente especificados.
  • Deficitário: O projeto é concluído e operacionalizado, mas com atraso, acima do custo estimado ou com menos recursos e resultados que o especificado.
  • Falho: O projeto é cancelado antes de ser concluído ou nunca é implementado.

A evolução dos percentuais de cada resultado, nas pesquisas CHAOS de 1994 até 2008, está representada no gráfico a seguir.

Um paralelo com o Guia PMBOK e processos estratégicos

Interessante notar que o Instituto de Gerenciamento de Projetos (PMI) lançou a primeira versão oficial do Guia PMBOK em 1996. Este Guia pode ser considerado um marco na formalização e ampla divulgação dos conceitos e das melhores práticas em gerenciamento de projetos, e vem contribuindo para a profissionalização e evolução da atividade de gerenciamento de projetos em todo o mundo.

O Guia PMBOK tem sido atualizado e publicado pelo PMI em ciclos de quatro anos, com novas edições tendo sido lançadas em 2000, 2004 e 2008, inclusive com traduções em português e diversos outros idiomas.

De 1994 para 1996, o sucesso em projetos medido no CHAOS Report teve um considerável salto positivo, de 16% para 27%. Igualmente, a partir de 1996, a taxa de sucessos cresceu pouco, mas até 2002 a taxa de fracassos decaiu consideravelmente, de 40% chegando a 15%.

A disseminação dos conceitos e práticas de planejamento e controle no gerenciamento de projetos, com a participação de organizações profissionais como o próprio PMI (de origem americana), o IPMA (de origem europeia) e outras, neste período, provavelmente contribuiu para o aumento do sucesso e redução do fracasso em projetos.

A oscilação de sucessos e fracassos desde 2002 deve levar em conta as crescentes abrangência, complexidade e criticidade dos projetos de TI, com a tecnologia sendo impelida a atuar imersa e alinhada cada vez mais no cerne dos processos de trabalho e das estratégias institucionais.

Fatores críticos de sucesso

Mesmo que o paralelo apresentado seja interessante e coerente, seria um tanto simplista tentar resumir a poucos pontos os determinantes da evolução no resultado dos projetos.

O próprio Standish Group aponta um conjunto mais consistente de fatores críticos de sucesso para projetos de TI:

  • Envolvimento efetivo e positivo dos usuários.
  • Apoio da alta gestão, ou patrocínio executivo.
  • Objetivos de negócio claros, bem definidos.
  • Maturidade emocional das partes envolvidas (stakeholders), controlando as “Cinco Sinas Mortais” no gerenciamento de projetos: ambição excessiva, arrogância, ignorância, abstinência e fraudulência.
  • Otimização, visando obter o máximo de valor para o negócio com o mínio de riscos.
  • Processos ágeis, com desenvolvimento iterativo.
  • Expertise em gerenciamento de projetos, onde aí entra a importante contribuição do Guia PMBOK e das organizações profissionais de gestão de projetos.
  • Equipe capacitada, consistindo na habilidade de adquirir, gerenciar e controlar os recursos certos no momento certo, lidando com turnover, bem como desenvolver e manter competências.

Para saber mais:

Houve um tempo — passado “remoto” da informática — em que notebook e smartphone (que era quase sinônimo de BlackBerry) era coisa cara, usada só por altos executivos, profissionais que realmente dependiam da mobilidade, e viciados em tecnologia. Hoje, existe uma profusão de notebooks, netbooks e smartphones para todos os gostos, necessidades e bolsos. Os notebooks vem inclusive tomando o lugar dos computadores desktop nas casas e nas empresas.

A principal inteligência de um celular “smart”, além das funções convencionais de um telefone celular, era lidar com correio eletrônico (e-mail). Atualmente, telefones celulares topo de linha são munidos de processadores e sistemas operacionais poderosos, cartões de memória com grande capacidade de armazenamento e conectividade total, se tornando verdadeiros computadores que se carrega no bolso.

O preço dos smartphones ainda é salgado em relação a um celular simples, mas tome-se o exemplo da Apple que induz uma fascinação no mercado fazendo um iPhone se tornar objeto de desejo de boa parte dos mortais, pelo simples fato de que “é muito legal”.

Caos da segurança

Com todo esse imenso poder dos dispositivos móveis, com custos cada vez menores e escala crescente em ritmo acelerado, vem o caos da segurança da informação.

Cada vez mais, altos executivos e funcionários em geral querem trabalhar remotamente e dispor de todos os recursos em qualquer lugar, pressionando as empresas a disponibilizar notebooks, redes sem fio (Wi-Fi, 3G etc.), acesso remoto e outros recursos de mobilidade corporativa. Querem usufruir dessa comodidade e poder, mas a TI tem que se virar para continuar garantindo segurança, controle e disponibilidade neste audacioso ambiente ilimitado e diverso.

Muitas empresas impõem restrições ao uso de notebooks e outros equipamentos pessoais e de prestadores de serviço dentro da rede corporativa, devido à dificuldade para as áreas gestoras de tecnologia da informação (TI) em garantir as políticas e mecanismos de segurança, o controle e os demais padrões corporativos nestes dispositivos que, além de móveis, são de propriedade e responsabilidade externas.

Quando se chega aos smartphones, então, a fronteira entre o particular e o corporativo fica ainda mais difusa e complexa. Se o CEO adquire um iPhone particular e quer acessar o e-mail corporativo através dele, até quando é razoável a TI dizer não?

Os riscos de vazamento de informação se multiplicam em escala exponencial diante de toda essa mobilidade. Se há redes sem fio ou acesso remoto, o controle para evitar acessos indevidos por invasores precisa ser redobrado.

Além disso, dispositivos móveis são mais suscetíveis a extravio, furto e roubo, e com eles se vai toda a informação contida, que tende a ser muito mais valiosa do que o próprio aparelho. Lembra-se do rebuliço gerado pelo furto de laptops da Petrobras com informações sigilosas em 2008?

Reflexões

Há como a TI garantir o uso de senhas, certificados digitais, biometria, criptografia, antivírus, firewall, VPN e outros recursos de segurança, controle e proteção da informação, de forma contínua, prática, efetiva e viável? E há como conscientizar e preparar os usuários para manterem sempre regras e procedimentos seguros neste mundo móvel? Em geral segurança anda na contramão da comodidade. E tem complexidade e custos, muitos custos.

Para os profissionais de gestão de tecnologia e de segurança das empresas continuarem sua reflexão — e preocupação, beirando o desespero — recomendo ler a série de matérias da IT Web no Especial smartphones, por Richard Dreger e Grant Moerschel, da InformationWeek EUA, 15/06/2010. As reportagens são oriundas do estudo sobre gerenciamento de dispositivos móveis e segurança da InformationWeek Analytics 2010.

Gerenciamento de Capacidade (capacity management) é um dos cinco componentes na área de Service Delivery do ITIL (V2) — Information Technology Infrastructure Library (conjunto de boas práticas em gerenciamento de serviços de TI).

O trabalho deve ser de natureza proativa ao invés de reativa e responsável por garantir que as necessidades do negócio e definições de serviço sejam satisfeitas usando um mínimo de recursos computacionais.

Atividades de Gerenciamento de Capacidade incluem:

  • Monitoramento, análise, calibração e implementação de alterações necessárias em utilização de recursos.
  • Gerenciamento de demanda por recursos computacionais, o que requer compreensão das prioridades do negócio.
  • Modelagem para simular desempenho da infraestrutura e compreender as futuras necessidades de recursos.
  • Dimensionamento de aplicações para garantir que os níveis de serviço requeridos podem ser atingidos.
  • Gerenciamento da capacidade de armazenamento de dados.
  • Criação de um plano de capacidade (capacity plan) que documente a atual utilização de recursos e preveja necessidades, bem como custos de suporte, para novas aplicações e versões.
  • Construção do plano anual de crescimento da infraestrutura com subsídio de outras equipes.

Algumas referências básicas sobre o tema:

A empresa TeamQuest oferece, além de soluções para Gerenciamento de Capacidade ITIL, material informativo sobre Gerenciamento de Capacidade ITIL. Define inclusive um Modelo de Maturidade de TI em cinco estágios:

Nível 0: Caótico
Nível 1: Reativo
Nível 2: Proativo
Nível 3: Serviço
Nível 4: Valor

Best Management Practices – White Papers, parte do portal oficial da OGC sobre ITIL (e outros), traz bom conteúdo introdutório e correlações de ITIL com outros padrões, modelos e melhores práticas de governança.

Para saber mais:

Li um artigo do Correio Braziliense on-line, Contratar terceirizado já não é unanimidade — Empresas absorvem mão de obra avulsa e apontam uma nova tendência no mercado. Sindicatos dizem que o fenômeno ainda é discreto –, por Karla Mendes e Luciano Pires, publicado em 14/03/2010.

A matéria é interessante e foca recursos humanos terceirizados, mas remeteu minha atenção a um fenômeno recorrente.

De tempos em tempos terceirização — ou outsourcing para os adeptos à terminologia em inglês — é vista como a tábua da salvação ou panaceia para todos os males, alternando entre o oposto como buraco negro devorador ou bola de neve incontrolável.

Creio que terceirização, assim como quase tudo na vida, não deve ser colocada em termos extremos de tudo ou nada, paraíso ou inferno. A adequação e o sucesso  de terceirização dependem do que, porque e como terceirizar.

De acordo com os objetivos de uma organização, com seu nível de maturidade e com o cenário atual do mercado, a boa terceirização em geral deve:

  • Ser economicamente viável e vantajosa. O capital move a economia e o mercado. Dessa forma, o objetivo mais comum da terceirização costuma ser redução de custos. Em outros casos, pode representar um reequilíbrio orçamentário através da conversão de custos fixos e despesas com pessoal em custos com a contratação de serviços — nos órgãos públicos, por exemplo, a Lei de Responsabilidade Fiscal limita o percentual do orçamento destinado a pessoal. Mesmo que economia não seja o principal foco na opção por terceirização, deve-se avaliar a projeção de custos para garantir que antes de tudo ela seja economicamente viável e sustentável, com os custos sob controle ao longo do tempo.
  • Estar fora do core business do negócio. Definir e gerenciar o negócio principal de uma organização é algo que não faz sentido ser feito fora dela. Uma organização deve investir principalmente naquilo que é sua missão, aquilo que é seu maior domínio, que sabe e deve fazer melhor, que é seu diferencial competitivo. Atividades, recursos e necessidades comuns, secundários ou periféricos podem ser commodity disponível no mercado e providos na forma de serviço, e são estes os serviços passíveis de melhor terceirização.
  • Ser medida e remunerada por resultados e por qualidade. Nas contratações mensuradas em postos de trabalho (body shop) ou homem-hora, por exemplo, paga-se pelo meio, e não pelo fim. Faça analogia ao táxi cujo taxímetro cobra pela distância percorrida, não por chegar rapidamente ao destino, sendo este último o que realmente importa. Ao invés de terceirizar atendentes, terceirize atendimentos satisfatórios. Ao invés de terceirizar faxineiros, terceirize área limpa. Caso contrário, de nada adiantará uma aparente redução de custos se não forem obtidos resultados com qualidade; essa redução será mero corte, e não efetiva economia. O instrumento típico de medida e remuneração (e penalidades) priorizando resultados e qualidade é o ANS/SLA (acordo de nível de serviço / service level agreement).
  • Tirar proveito da economia de escala. Se sua organização deve prover um serviço de, digamos, manutenção de computadores para atender uma filial onde trabalham 20 funcionários em outra cidade, poderia se ver obrigada a ter custos fixos em manter toda uma estrutura de atendimento, logística e pessoal para este serviço na filial, e ficar em um dilema entre pagar por certa ociosidade ou correr o risco de não conseguir atender rapida e eficientemente. Um fornecedor que preste este serviço a vários clientes na cidade da filial tem seus custos fixos, incluindo infraestrutura e pessoal, compartilhados e rateados entre os clientes, dando-lhe condições de oferecer um serviço melhor a custos menores por cliente.
  • Permitir alocação de recursos sob demanda. A escala, além do rateio de custos fixos, também pode trazer outro benefício. O fornecedor pode manter uma margem de recursos de infraestrutura e de pessoal tal que possam ser rapidamente alocados e desalocados de forma dinâmica e sazonal entre seus clientes, na medida da necessidade momentânea de cada um. Os princípios de cloud computing (computação na nuvem) e virtualização dos provedores de data center representa bem este aspecto: estes fornecedores oferecem a possibilidade de se ampliar a capacidade de servidores de rede a um cliente de acordo com a demanda. Da mesma forma, um serviço de call center pode oferecer a alocação de mais atendentes em épocas de picos de atendimento, enquanto que para uma organização mantendo este serviço internamente implicaria na contratação ou demissão de pessoal nesses períodos, o que é bem mais complexo e às vezes inviável.
  • Trazer valor agregado e know how. Ao terceirizar determinado serviço, busca-se contratar um empresa especializada e altamente qualificada neste serviço e segmento de mercado, tal que o fornecedor tenha condições de agregar conhecimentos, capacidades, recursos, técnicas, inovações e melhoria contínua que dificilmente sua organização alcançaria prontamente ou seria capaz de manter tendo outro foco de negócios.

Por fim, é importante lembrar que terceirização é uma troca. Trocam-se os custos, complexidades, prós e contras da realização interna pelos de uma aquisição. Deixa-se de ter a execução interna do serviço, que passa a ser desempenhado pelo fornecedor. Por outro lado, o planejamento prévio à contratação se torna fator crítico de sucesso, e cria-se uma inevitável atribuição interna à organização: o gerenciamento da terceirização, envolvendo as responsabilidades pela contratação, fiscalização e acompanhamento regulares do serviço prestado e de sua efetividade.

Fazendo um apanhado de blogs e comunidades sobre temas em gestão, eis o que obtive.

Gestão de projetos

Gestão de carreira e pessoas

Meu artigo PMBOK e Gerenciamento de Projetos foi amplamente revisado e agora está mais completo. A revisão anterior fora em março deste ano.

Passei a apresentar os conceitos de projeto, gerenciamento de projetos, e processo. O texto abordava uma série de características do gerenciamento de projetos, porém antes não trazia a definição desses conceitos básicos, importantes para quem está começando a aprender.

Para melhor sequência lógica dos assuntos no texto revisado, as áreas de conhecimento passaram a ser explicadas antes dos grupos de processo.

E elaborei uma nova figura mostrando, de forma tabular, a distribuição das quantidades de processos pelas áreas de conhecimento e grupos de processos. Essa figura permitiu ilustrar facilmente algumas características lógicas dos processos de gerenciamento de um projeto, que destaco no texto do artigo.

Ficaram de fora do artigo, agora, apenas dois tópicos que considero também relevantes ao gerenciamento de projetos: apresentar e entender as partes interessadas (stakeholders) de um projeto; e a compreensão do ciclo de vida de produtos e onde se insere neste o ciclo de vida do projeto. Futuramente pretendo incluir estes dois assuntos, e aí o artigo finalmente será uma introdução bastante abrangente.

Fonte: TI Inside Online, Da Redação, 2010-04-19.

A maioria dos departamentos de TI ainda está começando a desenvolver estratégias para lidar com o enorme volume de dados trafegados. Estudo encomendado à Unisphere Research pela Informatica Corporation revela que 35% dos entrevistados ainda não sabem como gerenciar os volumes crescentes de dados corporativos. A empresa entrevistou mais de 225 membros do Grupo de Usuários de Aplicações Oracle (OAUG, na sigla em inglês).

De acordo com o levantamento, a maior parte das companhias busca resolver questões de desempenho com soluções de eficácia limitada, como ajustes no conjunto de aplicações, o que gera retornos menores, ou atualização ou expansão do parque de hardware, agregando complexidade e custos.

O levantamento constatou que 87% dos entrevistados responsabilizam o crescimento dos dados por seus problemas de desempenho. Além disso, verificou que os custos com manutenção são desproporcionais à utilidade da aplicação, sendo que 42% dos entrevistados disseram precisar de um a cinco funcionários em tempo integral para manter uma aplicação antiga. Um em cada sete entrevistados ressaltou que há necessidade de um efetivo ainda maior para manter aplicações antigas, enquanto que 14% disseram que alocam um décimo do orçamento anual de TI para manter essas aplicações.

O estudo revelou ainda que mais empresas precisam garantir que os dados não contenham identificadores que exponham informações confidenciais sobre clientes e parceiros. Setenta e cinco porcento das empresas questionadas disseram que fazem até cinco cópias dos dados em produção para fins de não-produção e 78%, que usam dados reais em produção em ambientes de não-produção.

Segundo a pesquisa, o problema do aumento dos dados é agravado por regras e políticas que exigem que tais informações permaneçam acessíveis por longos períodos. Pelo levantamento, 60% mantêm os dados por sete anos ou mais, 16% mantêm inalterados e 66% dizem que os dados arquivados precisam ter disponibilidade imediata de acordo com a necessidade.

O estudo conclui que o arquivamento de bancos de dados continuará a ser um desafio interno e exigirá ferramentas e abordagens apropriadas para lidar com o crescente volume de informações.

A Informatica, que encomendou o estudo, é o maior fornecedor independente de software para integração de dados e gerenciamento de ciclo de vida de informações (ILM).

Para saber mais:

O programa MPS.BR – Melhoria de Processo do Software Brasileiro, está em franca atualização e ampliação.

Com a atualização de seus guias ocorrida de agosto a outubro de 2009, agora há três novas partes nos Guias de Implementação. Além das Partes 1 a 7 que correspondem à implementação dos níveis de maturidade G a A, respectivamente, há três novas partes com orientações específicas para a implementação do Modelo de Referência MR-MPS: A Parte 8 é para organizações que adquirem software, a Parte 9 para Fábricas de Software, e a Parte 10 para Fábricas de Teste.

A aquisição de software é abordada pelo MPS.BR no Guia de Aquisição, atualizado em agosto de 2009, que descreve um processo de aquisição de software e serviços correlatos, baseado na Norma Internacional ISO/IEC 12207:2008.

Para saber mais:

Lançado novo Portal GRC Brasil, sobre Governança, Riscos e Conformidade (ou no original em inglês, Governance, Risk and Compliance), e com seções também sobre Pessoas e Referências Bibliográficas.

Entre os temas abordados, estão Carreira, COBIT, COSO, Gestão de Riscos, Governança Corporativa, Governança de TI, ISO 27001, ISO 38500, ITIL, Políticas de Segurança, ROI & TCO, Sourcing (Terceirização e Aquisições).

Dica do meu colega Luís Cláudio, autor do blog GR Tips.

Outras referências relacionadas ao tema:

Próxima Página »