CMMI, MSF e Tecnologias Microsoft – uma visão de integração

Resumo

Este artigo proporciona à sua audiência uma análise comparativa entre as melhores práticas propostas pelo Capability Maturity Model Integration For Development v1.2 e as tecnologias (processos, técnicas e ferramentas) hoje disponibilizadas pela empresa Microsoft. Além deste propósito inicial, o artigo ainda aborda questões relacionadas ao desempenho em tecnologia da informação, governança, desenvolvimento de soluções e produtos, entre outros.

Este material foi solicitado pela Microsoft do Brasil e é de propriedade intelectual da Integrated System Diagnostics Brasil (ISD Brasil).

Objetivo

Este artigo, solicitado pela Microsoft Brasil, tem como objetivo debater a importância do desenvolvimento de produtos e soluções de TI e apresentar uma análise comparativa e integrada das práticas preconizadas pelo mais utilizado modelo de referência da atualidade, o Capability Maturity Model Integration For Development v1.2, com as diversas tecnologias disponibilizadas pela Microsoft.

Visão Estratégica e Governança de TI

Para evitar que entremos de início no mundo dos “chavões teóricos” que permeiam as disciplinas de “Estratégia e Governança”, vamos nos ater exclusivamente às questões elementares que necessitam de maior esclarecimento para o melhor entendimento e contextualização deste artigo.

Primeiramente, vamos entender que governar nada mais é do que tomar decisões, buscando um equilíbrio de forças, com a intenção de alcançar um determinado objetivo (Fig.1) e que a grande meta hoje das organizações mundiais é melhorar consistente e continuamente seu desempenho. Tendo estas definições em mãos, podemos então afirmar que governança de TI é a busca por um ponto ótimo de equilíbrio em nossas ações e atitudes com o objetivo de ajudar a empresa a melhorar o seu desempenho continuamente (Fig. 1). A grande questão aqui é o foco no equilíbrio. De outra forma, qualquer organização de TI poderia focar, por exemplo, em entregar projetos dentro do prazo, tendo em contrapartida problemas com qualidade, satisfação dos profissionais em função do estresse e horas-extras, clientes insatisfeitos, etc.

Resumindo, governança em TI é agir em benefício (estar alinhado com) da organização, buscando sempre desempenho e seguindo sempre os valores em vigor.

Fig. 1 – Visão ISD Brasil de Governança

Existem dois pontos críticos nesta explanação que são de relevância para nosso artigo:

  • Desempenho em TI
  • Visão sistêmica e integrada (equilíbrio) em TI

A importância do desempenho em TI

Para discutirmos a questão do desempenho em TI, não podemos perder de vista nossa necessidade de alinhamento estratégico (governança). Com esta finalidade, podemos inicialmente definir o que é desempenho para o público de mais alto nível em nossa cadeia de reporte – os sócios e acionistas. Neste nível, existe um consenso claro do que é desempenho: crescimento e lucros!

Logo, nas áreas de tecnologia mundo afora, a definição de desempenho precisa necessariamente ser atrelada ao lucro e crescimento da organização. Entretanto, o que vemos hoje na maioria dos casos são executivos de TI com frases de efeito, bradando objetivos estratégicos relacionados à pura implementação de ferramentas, implementação de modelos, projetos de conformidade com legislações, entre muitas outras iniciativas sob a tutela de temas ainda mais abstratos como por exemplo a “Governança de TI”. Um estudo mais aprofundado destas iniciativas, infelizmente, nos mostra que elas em si são o alvo final dos trabalhos e que não existe na maioria dos casos objetivos quantitativos estrategicamente alinhados.

Quando falamos de desempenho em TI, esperamos ouvir questões como:

  • Redução de ciclo de desenvolvimento de aplicações
  • Redução dos custos relacionados ao retrabalho e manutenções corretivas
  • Aumento da produtividade na produção de software com o objetivo de entregar mais com menos
  • Aumento da disponibilidade dos sistemas
  • Satisfação das áreas cliente
  • Entre inúmeros outros simples objetivos!

A importância da visão sistêmica e integrada nos negócios

É óbvio que saber claramente definir objetivos de desempenho alinhados à estratégia não resolve por si só a questão. Talvez a maior causa da dificuldade na realização destes objetivos esteja no fato de que poucas organizações no mundo compreendem que uma empresa é um “organismo vivo”, ou seja, um complexo ambiente sistêmico movido por “n” relações de causa e efeito. Esta talvez seja a razão pela qual muito se fala, por exemplo, em qualidade e capital humano, mas na prática pouco se vê.

Existe de fato um paradoxo mundial (Fig. 2) estabelecido em nossa transição “na prática” da era industrial para a era do capital intelectual que não foi acompanhada pelos respectivos controles gerenciais e financeiros. Ou seja: ainda somos regidos pelos mesmos instrumentos utilizados para gerenciar máquinas e a produção industrial.

Fig. 2 – Paradoxo da Era do Capital Intelectual e Humano

A importância do desenvolvimento de soluções de qualidade

Aproveitando o ensejo proporcionado pela conscientização de que visão sistêmica é importante, vamos entender um pouco um outro paradoxo que assola a TI (Fig.3).

Sem necessidade de maiores comprovações (centenas de pesquisas mundiais suportam esta afirmação), sabemos que o desenvolvimento de aplicações é caracterizado por produtos de baixa qualidade, tipicamente entregues muito fora do prazo e ainda utilizando muito mais recursos físicos e financeiros do que se gostaria.

A novidade não está aí, mas na questão sistêmica!. Também sabemos que a disponibilidade de nossos sistemas e aplicações é baixíssima e que as manutenções corretivas representam a maior parte do esforço de qualquer departamento de TI no Brasil e no mundo. Sabemos ainda que a maior causa de problemas em produção advém da baixa qualidade das soluções desenvolvidas, gerando centenas de milhares de horas de retrabalho. Ora, então por que ainda insistimos em tratar a área de desenvolvimento e a área de produção como entidades distintas e até às vezes inimigas? O nosso objetivo não seria desempenho com produtos sendo desenvolvidos rapidamente a um custo baixo, garantindo assim sistemas com alta disponibilidade e satisfação final de nossos clientes?

O pior ainda está por vir: com a idéia de que terceirização (outsourcing) é solução de todos os problemas, garante custo mais baixo e partindo da premissa que os fornecedores fazem melhor do que o comprador -- afinal ele é “certificado” e todos sabem que “santo de casa nunca faz milagre” – colocamos tudo para “fora de casa” com a esperança de que os problemas desapareçam. Infelizmente, a única coisa que conseguimos é fazer com que o ciclo de erros se repita (desta vez fora de casa) e nossos custos de gestão (agora também de fornecedores) continuem aumentando.

Fig. 3 – Paradoxo vivido pela TI

A necessidade de integração em TI por meio de processos e tecnologias

Para que possamos tornar real a visão sistêmica em TI, através da qual a organização compreende que o que a rege é um conjunto de relacionamentos de causa-efeito, precisamos introduzir um conceito que permita a remoção de barreiras interdepartamentais, a definição clara de objetivos de desempenho, a definição objetiva de papéis e responsabilidades, como também dê sustentação à melhoria continua.

Surge então a necessidade da gestão baseada em processos.

Podemos definir processo como o conjunto de atividades com um objetivo comum (foco no cliente), executado tipicamente por pessoas capacitadas que por sua vez utilizam ferramentas e tecnologia visando sua otimização (Fig. 4).

Fig. 4 – Visão integrada de um processo

Integração pode ser a resposta

O ponto mais crítico hoje enfrentado pelos executivos de TI está relacionado à capacidade de implementação de soluções integradas, ágeis e que efetivamente melhorem o desempenho de suas organizações, conforme já discutimos neste artigo. Logo, o que se espera hoje dos grandes fornecedores de TI é uma resposta objetiva para este dilema.

Do ponto de vista técnico e prático estas soluções necessariamente precisariam possuir uma arquitetura integrada e sistêmica em todas suas visões (Fig. 5):

  1. Integração entre modelos e melhores práticas mundiais. A ISD Brasil, por exemplo, vem desenvolvendo ao longo dos últimos anos um framework chamado “ISF for Excellence” que integra entre outros, os modelos CMMI, ITIL, CobiT, eSCM e People CMMI.
  2. Integração horizontal (eliminação dos feudos departamentais) - os processos tendem a ser multifuncionais e a cruzar as fronteiras departamentais
  3. Integração vertical – os processos são integradores, a “cola” entre pessoas e tecnologias (aplicações). Em relação a este tipo, o que se observa é uma tendência de integração nas ferramentas de gestão da TI caminhando para o que podemos chamar de um “ERP para TI”.

Fig. 5 – Arquitetura Integrada de TI

Resumindo, para que as organizações de TI atinjam seus objetivos estratégicos, elas precisam:

  • Definir claramente quais são seus objetivos de desempenho de forma quantitativa e alinhada aos objetivos da empresa
  • Entender que a empresa, e também a área de TI, é um sistema de relações de causa-efeito, no qual qualquer ação precisa ser planejada e seus efeitos estimados. Ações unilaterais desequilibram o sistema e afetam o desempenho
  • Implementar um sistema de gestão integrado por processos (áreas, funções, responsabilidades, objetivos, etc.) com indicadores de desempenho sistêmicos
  • Dar foco ao desenvolvimento de aplicações de alta qualidade, pois ele é o propulsor do ciclo vicioso “desenvolvimento > manutenção > terceirização”
  • Implementar processos que efetivamente integrem as pessoas e que sejam suportados por ferramentas e tecnologia de qualidade e integradas

O modelo CMMI

O “Capability Maturity Model Integration” é um modelo de melhores práticas no campo da engenharia de sistemas e software (desenvolvimento e manutenção de soluções de TI) do Software Engineering Institute (SEI). Ele é o pioneiro e o mais utilizado modelo de melhores práticas hoje no segmento de TI no mundo.

O objetivo do CMMI é prover às empresas que possuem intenso desenvolvimento de soluções de TI, um conjunto de melhores práticas que possa suportar a melhoria contínua de seu desempenho, bem como ser referência para eventuais comparações por meio de seus níveis de maturidade e capacidade (Fig. 6).

Níveis de Maturidade Áreas de Processo
5.

Processos são continuamente melhorados com base em inovação e análise de causas de problemas

Inovação Organizacional (OID)

Análise e Resolução de Causas (CAR)

4.

Processos são quantitativamente entendidos e gerenciados

Gerenciamento Quantitativo de Projeto (QPM)

Desempenho do Processo Organizacional (OPP)

3.

Processos caracterizados no nível organizacional e as ações gerenciais são mais pró-ativas Definição do Processo Organizacional (OPD)

Foco no Processo Organizacional (OPF)

Treinamento Organizacional (OT)

Análise e Tomada de Decisão (DAR)

Validação (VAL)

Verificação (VER)

Integração de Produtos (PI)

Solução Técnica (TS)

Desenvolvimento dos Requisitos (RD)

Gerenciamento de Riscos (RSKM)

Gerenciamento Integrado de Projeto (IPM)

2.

Processos são estabelecidos e gerenciados no nível dos projetos e as ações gerenciais são freqüentemente reativas

Gerenciamento de Configuração (CM)

Garantia da Qualidade de Processo e Produto (PPQA)

Medição e Análise (MA)

Gerenciamento de Acordo com Fornecedores (SAM)

Monitoramento e Controle de Projetos (PMC)

Planejamento de Projetos (PP)

Gerenciamento de Requisitos (REQM)

1.

Processos são imprevisíveis, não gerenciados e reativos

Não existem áreas de processos neste nível

Fig. 6 – Níveis de Maturidade CMMI

O CMMI surgiu inicialmente do trabalho de Watts Humphrey que, após um trabalho intenso como executivo da IBM, foi contratado pelo SEI para construir uma forma de avaliar a qualidade e o desempenho de empresas com desenvolvimento de software intensivo. Com base em seu trabalho na IBM, Humphrey elaborou um questionário com diversas perguntas organizadas por áreas que hoje conhecemos por áreas de processos e posteriormente por níveis de maturidade, utilizando na época os trabalhos de vários gurus da qualidade, entre eles Crosby e Deming. Este trabalho foi o embrião do que hoje conhecemos como CMMI.

O principal fundamento do CMMI é a implementação de melhores práticas de uma determinada área de processo (Fig. 7) que por conseqüência tende a aumentar o desempenho dos processos diretamente influenciados, como também a capacidade de atingir seus objetivos. Por sua vez, quando implementamos um conjunto de áreas de processo de um determinado nível de maturidade, estamos aumentando a capacidade sistêmica daquela organização. Por isso que dizemos que capacidade pertence a um processo e maturidade pertence a uma organização.

Níveis de Maturidade Áreas de Processo Processos da Organização Capacidade
2

Gerenciamento de Requisitos

Definição de Requisitos

Mudança de Requisitos

Planejamento de Projetos

Estimativas de Projetos

Planejamento do Projeto

Fig. 7 – Relação Nível de Maturidade > Área de Processo > Processo > Capacidade

O CMMI possui uma arquitetura simples (Fig. 8), na qual as áreas de processo pertencem a um nível de maturidade e possuem um conjunto de metas que, quando implementadas, garantem a melhoria no desempenho dos processos influenciados por esta área de processos. Para que as metas sejam implementadas de forma eficaz existem as práticas, que são níveis ainda mais granulares de recomendações. Tanto as metas quanto as práticas do CMMI são divididas em:

  • Específicas – tratam e implementam diretamente a disciplina em questão (ex: planejamento de projetos)
  • Genéricas – tratam e implementam questões relacionadas à infra-estrutura necessária para sustentação e longevidade (institucionalização) das práticas e metas específicas

Segue abaixo um exemplo prático:

  • Nível de Maturidade: 2
    • Área de Processo: Planejamento de Projetos
      • Meta Específica 1: Estimativas dos parâmetros do projeto são estabelecidas e mantidas
        • Prática Específica 1 da Meta Específica 1: Estabelecer uma “estrutura analítica de trabalho” (EAT) para estimar o escopo do projeto

Fig. 8 – Estrutura interna do CMMI

Com propósito de organização e didática, o CMMI ainda organiza as áreas de processos por categorias, além da estrutura principal organizada por níveis de maturidade (Fig. 9).

Categorias Áreas de Processo

Gerenciamento de Processos

Definição do Processo Organizacional (OPD)

Foco no Processo Organizacional (OPF)

Treinamento Organizacional (OT)

Desempenho do Processo Organizacional (OPP)

Inovação Organizacional e Implantação (OID)

Gerenciamento de Projetos

Gerenciamento Quantitativo de Projeto (QPM)

Gerenciamento de Riscos (RSKM)

Gerenciamento Integrado de Projeto (IPM)

Gerenciamento de Acordo com Fornecedores (SAM)

Monitoramento e Controle de Projetos (PMC)

Planejamento de Projetos (PP)

Engenharia

Validação (VAL)

Verificação (VER)

Integração de Produtos (PI)

Solução Técnica (TS)

Desenvolvimento dos Requisitos (RD)

Gerenciamento de Requisitos (REQM)

Suporte

Gerenciamento de Configuração (CM)

Garantia da Qualidade de Processo e Produto (PPQA)

Medição e Análise (MA)

Análise e Tomada de Decisão (DAR)

Análise de Causas e Resolução (CAR)

Fig. 9 – Categorias e Áreas de Processo do CMMI

MSF e tecnologias Microsoft

Seguindo a tendência irrefutável de integração entre processos e ferramentas, a Microsoft disponibiliza ao mercado de TI um vasto conjunto de soluções que podem ajudar as organizações que estão buscando a excelência no desenvolvimento e manutenção de aplicações de TI (Fig. 10)

Fig. 10 – Arquitetura de integração CMMI e Microsoft

Microsoft Solution Framework for CMMI (MSF for CMMI® Process Improvement)

O Microsoft Solution Framework v4 (MSF) é um guia para o estabelecimento e melhoria contínua de processos em ambientes de desenvolvimento e manutenção de soluções diversas, baseado nas diretrizes dos trabalhos de Edward Deming sobre gestão de processos e entendimento e redução de variação (assim como o CMMI). O MSF foi criado pela Microsoft com o objetivo de ser uma abordagem flexível para melhoria da taxa de sucesso em projetos. Apesar de ter seu foco em processos o MSF também aborda questões como visão, formação de equipes e liderança.

Hoje, a Microsoft oferece ao mercado duas metodologias, adaptações prontas (templates) do MSF: uma voltada às práticas ágeis (MSF for Agile Software Development) e outra voltada a suportar e facilitar a implementação das práticas do CMMI (MSF for CMMI® Process Improvement).

É importante enfatizar que tanto o MSF for Agile Software Development quanto o MSF for CMMI® Process Improvement são baseados em técnicas e métodos ágeis. Esta explicação é crítica para que não se tenha a impressão de que um framework é ágil e o outro não. Para o objetivo do estudo deste artigo, abordaremos somente o MSF for CMMI® Process Improvement.

O MSF for CMMI® Process Improvement procura estabelecer um equilíbrio entre os benefícios de um processo formal de desenvolvimento e manutenção de soluções, seguindo as diretrizes do CMMI e das técnicas ágeis focadas no fluxo de valor para os clientes, historicamente objetivo do próprio MSF. Desta forma, o MSF for CMMI® Process Improvement procura atacar as duas questões centrais que levam ao melhor desempenho de uma organização: entendimento e redução da variação, fortemente influenciado pelos estudos de Edward Deming, e melhoria contínua do desempenho (fluxo de valor), fortemente influenciado pelas técnicas da manufatura enxuta (lean manufacturing). O resultado esperado é um processo flexível e leve para uma engenharia de software altamente produtiva.

Para que entendamos mais a fundo o MSF for CMMI® Process Improvement, algumas idéias e pressupostos intrínsecos a ele precisam ser conhecidas (Fig. 11):

Fig. 11 – Pressupostos do MSF

  • Parceria com o cliente, fluxo de valor e visão compartilhada – todos precisam estar alinhados e comprometidos (visão compartilhada) com as necessidades, requisitos e com as etapas e atividades que geram valor para o cliente
  • Comunicação – propiciar um ambiente de comunicação aberta, compartilhamento de informações e aprendizado dentro das equipes facilitando a eliminação de causas de problemas e defeitos
  • Qualidade é responsabilidade de todos, todos os dias – isto significa orgulho do trabalho realizado, fazer certo da primeira vez e melhorar continuamente. Todos devem entender, medir, interpretar e reduzir (melhorar) a variação nos processos de trabalho, com também propor e contribuir com sugestões de melhoria em produtividade, prazo, etc.
  • Ser ágil e adaptar-se às mudanças – mudanças são parte integrante de qualquer negócio, assim como agilidade é um requisito imprescindível para sobrevivência. Devemos entender que a gestão constante das mudanças e a agilidade fazem parte de nosso processo
  • Entregas freqüentes – importante na gestão dos riscos, aprendizado, confiança e satisfação da equipe, clientes e demais envolvidos
  • Trabalho em equipe - promover equipes com ambientes de comunicação aberta, aprendizado contínuo e respeito mútuo, onde melhoria, inovação e eliminação de causas de problemas sejam atividades naturais
  • Ser específico e resolver os problemas logo – ser específico sobre requisitos (ex: usando técnicas de cenários), incluindo requisitos da qualidade e resolver os problemas tão logo eles apareçam, visando evitar a adição de riscos desnecessários ao projeto

O MSF for CMMI® Process Improvement possui várias visões (views), mas a mais interessante para nosso estudo e mapeamento ao CMMI é a visão por caminhos (tracks). Um caminho pode ser constituído de várias iterações (Fig. 12) e ainda é decomposto em linhas de trabalho (workstreams) que por sua vez agregam atividades (activities) e são geralmente executados por um papel específico (Fig. 13).

Fig. 12 – Visão de Caminhos do MSF for CMMI® Process Improvement

Fig. 13 – Visão geral da arquitetura do MSF for CMMI® Process Improvement

Mapeamento entre CMMI e tecnologias Microsoft

Numa primeira análise podemos observar que o CMMI e o MSF for CMMI® Process Improvement tendem a se complementar e convergir uma vez que o CMMI é um modelo de melhores práticas que propõe metas sobre “o que fazer”, mas não determina ou prescreve “o como fazer”, área onde o MSF for CMMI® Process Improvement, por ser um guia para processos de desenvolvimento e manutenção de software, atua de forma mais efetiva.

O MSF for CMMI® Process Improvement se propõe ainda a ser um acelerador na busca pelos níveis de maturidade do CMMI, uma vez que facilita e fornece um conjunto pré-definido de fases, caminhos, linhas de trabalho, produtos de trabalho e atividades (ver seção MSF) que pode poupar trabalho às organizações que buscam adequação às práticas do CMMI. Entretanto, uma análise e adaptação meticulosas devem ser sempre realizadas pela empresa na implementação, mesmo em se tratando da disponibilização de um conjunto extenso de ativos de processos “pré-formatados”. Além deste ponto, vale ainda ressaltar que o MSF for CMMI® Process Improvement não tem a intenção de cobrir todas as áreas de processos do CMMI, principalmente aquelas voltadas à gestão organizacional (ex: foco no processo organizacional, treinamento organizacional, análise e tomada de decisão), nem a intenção de avaliar níveis de capacidade ou maturidade, não contemplando portanto a maioria das práticas genéricas voltadas à institucionalização dos processos.

Conforme já exposto anteriormente, um dos grandes problemas dos executivos de TI e um dos maiores desafios dos fornecedores de TI é a concepção de soluções que integrem melhores práticas, processos e ferramentas (Fig. 10). Atenta a esta questão, a Microsoft disponibiliza um conjunto de ferramentas que operacionalizam e automatizam o uso dos processos dirigidos pelo CMMI e preconizados pelo MSF for CMMI® Process Improvement, proporcionando agilidade e visibilidade no processo produtivo de software. As principais são:

VSTS – Visual Studio Team System

  • O “VSTS” é o coração da estratégia da Microsoft para controle total do ciclo de vida de aplicações. O VSTS trabalha de forma integrada e de fato operacionaliza os processos descritos no MSF (Fig. 14), cobrindo todas as fases do ciclo de desenvolvimento de uma aplicação (desenho, arquitetura, codificação, integração, testes, etc). Por integrar as diversas disciplinas de software em um mesmo repositório o VSTS proporciona um ótimo ambiente de colaboração, permitindo a gestão efetiva das equipes e a geração de indicadores e informação (Fig. 15) para a gestão dos projetos e respectivos portfólios (ver EPM abaixo). Recentemente a Microsoft anunciou a disponibilização de um aplicativo que conecta diretamente o VSTS ao EPM proporcionando assim mais agilidade e segurança na gestão dos projetos de desenvolvimento de software.

Fig. 14 – Operacionalização do MSF pelo VSTS

Fig. 15 – Visão de Acompanhamento do Progresso das Equipes

EPM – Microsoft Office Enterprise Project Management Solution

  • Esta solução que contempla o Microsoft Office Project Portfolio Server 2007, Microsoft Office Project Server 2007, Microsoft Office Web Access e Microsoft Office Project Professional 2007 tem seu foco principal na gestão dos projetos, portfólios (Fig. 16) e das equipes de desenvolvimento de software, proporcionando visibilidade e controle necessários às decisões criticas e estratégias de governança das organizações.
  • Em trabalho conjunto com o VSTS (ver item acima) podemos nitidamente perceber a integração da visão de processos do MSF, da engenharia de produtos (VSTS) e da gestão de projetos e portfólios (EPM)

Fig. 16 – Visão do Portifólio de Projetos e Indicadores

Abaixo, encontram-se tabelas com os mapeamentos entre as áreas de processo (PA) do CMMI níveis 2 e 3 de maturidade, as áreas do MSF for CMMI® Process Improvement e as algumas das várias soluções da Microsoft relativas a estes temas:

  • Visual Studio Team System (VSTS)
  • Enterprise Project Management (EPM) Solution
  • Microsoft Office Sharepoint Server
  • Microsoft Office PerformancePoint (antigo BSM – Business Scorecard Manager)

A intenção deste estudo não é provar conformidade entre CMMI e soluções Microsoft, mas sim proporcionar ao mercado uma visão integrada e útil sobre como as tecnologias Microsoft podem ajudar as organizações a crescer em sua capacidade de processos e conseqüente desempenho.

Gestão de Projetos

Área de Processo MSF for CMMI® Process Improvement Ferramentas Microsoft

PP – Project Planning

O MSF cobre o básico de todas as práticas do CMMI relacionadas ao planejamento de projetos (escopo, orçamento, cronograma, compromissos, riscos, etc)

Atenção especial deve ser dada aos procedimentos de estimativas (tamanho e esforço), pois MSF for CMMI® Process Improvement delibera sobre tais assuntos de forma alternativa, usando técnicas da comunidade ágil

A solução EPM provê adequado suporte a esta área de processo, principalmente na elaboração do cronograma (MS-Project), atribuição e gestão de equipes, conciliação de recursos, gestão de custos, etc

A ferramenta VSTS provê total suporte ao ciclo de vida de engenharia de software, a gestão de riscos (estratégia e planejamento) e a definição de escopo do projeto (cenários)

Tanto a ferramenta VSTS quanto EPM proporcionam relatórios e consultas importantes para obtenção de base histórica a ser usada nas estimativas

PMC – Project Monitoring and Control

O MSF possui ampla cobertura das práticas do CMMI relacionadas à gestão do projeto

O MSF for CMMI® Process Improvement não descreve processualmente como os parâmetros do projeto (tamanho, esforço, custo, prazo) devem ser acompanhados. Isto é gerenciado em larga escala nas ferramentas (veja ao lado).

O MSF for CMMI® Process Improvement, seguindo sua diretriz ágil, preconiza a realização de reuniões diárias e curtas (em média 15 minutos) de monitoramento do projeto dando ênfase ao gerenciamento ostensivo de issues e progresso do trabalho realizado. Apesar deste foco, também são preconizadas revisões formais de progresso do projeto e monitoramento de “marcos”, visando visibilidade e comunicação aos stakeholders

A solução EPM provê adequado suporte e automatização a esta área de processo, principalmente no acompanhamento dos parâmetros do projeto (esforço, prazo, etc), bem como na utilização de indicadores e dashboards que servirão de base para as revisões de progresso do projeto

A ferramenta VSTS também provê suporte ao acompanhamento das atividades do ciclo de vida do projeto podendo ser integrada ao EPM para gestão dos indicadores *

O VSTS ainda realiza toda gestão do fluxo de issues do projeto (identificação, resolução e acompanhamento) e riscos.

A ferramenta Sharepoint auxilia na publicação e comunicação do andamento do projeto e indicadores aos diversos públicos. A ferramenta ainda auxilia na comunicação e publicação de documentos do projeto facilitando a gestão dos dados (data management) por meio de um portal do projeto

* A Microsoft recentemente anunciou a liberação de um “conector” para ligação dinâmica entre VSTS e EPM

RSKM – Risk Management

Existe uma total cobertura por parte do MSF na questão gestão de riscos

  • identificação
  • análise dos riscos
  • priorização e classificação
  • mitigação e contingência
  • monitoramento e ações

Tanto o VSTS quanto o EPM podem ser utilizados adequadamente para documentação e gestão dos riscos do projeto.

IPM – Integrated Project Management

O MSF for CMMI® Process Improvement em conjunção com o VSTS oferecem a possibilidade de seleção, adaptação e uso de processos alinhados às necessidades dos projetos.

O MSF for CMMI® Process Improvement abrange de forma branda o uso de medições e base histórica no planejamento e execução dos projetos, principalmente na fase de estimativas. Entretanto, as ferramentas possibilitam a consulta a dados históricos de projetos, bem como a concepção de uma rica base de conhecimento (melhores documentos, lições aprendidas, etc)

O MSF for CMMI® Process Improvement possui um foco intenso em coordenação entre equipes e stakeholders (ver Fig. 11)

O VSTS operacionaliza a adaptação e uso do MSF para os projetos (uso de templates de processos)

EPM, VSTS e Sharepoint permitem a concepção e uso de base histórica de dados de projetos, bem como repositório de conhecimento *

O Sharepoint promove um ambiente de trabalho que permite identificação e envolvimento de stakeholders, bem como mapeamento e estabelecimento de dependências

* A Microsoft recentemente anunciou a liberação de um “conector” para ligação dinâmica entre VSTS e EPM

SAM – Supplier Agreement Management

Não existe cobertura do MSF para esta área de processo.

 
Área de Processo MSF for CMMI® Process Improvement Ferramentas Microsoft

REQM – Requirements Management

O MSF for CMMI® Process Improvement trata de forma apropriada à gestão dos requisitos do produto (solução).

Existe uma efetiva definição de papéis relacionados ao foco no cliente: analista de negócio, especialistas, arquiteto de experiência do usuário. Atenção especial precisa ser dada à participação dos clientes e usuários “reais” no levantamento de necessidades e requisitos, bem como na definição e quais são os efetivos “fornecedores de requisitos” do projeto.

Um ponto relevante não explícito no MSF for CMMI® Process Improvement é a rastreabilidade bidirecional dos requisitos. Embora não tratado no MSF, o mesmo é gerenciado pela ferramenta VSTS.

A ferramentas VSTS suporta adequadamente a fase de gerenciamento dos requisitos, incluindo todo o fluxo de mudança dos mesmos. Isto inclui rastreabilidade bidirecional, mas sem relatórios que permitam análise de impacto de mudanças.

Vale enfatizar que o VSTS operacionaliza e automatiza o uso do MSF for CMMI® Process Improvement, principalmente os processos relacionados à engenharia de desenvolvimento de aplicações (elicitação e gestão de requisitos, desenho da solução, arquitetura, codificação, integração, testes, configuração, etc)

RD – Requirements Development

O MSF for CMMI® Process Improvement trata de forma apropriada o desenvolvimento dos requisitos do produto (solução) desde a elicitação até a validação dos mesmos.

Um conjunto abundante de técnicas e ferramentas são utilizadas com objetivo de atender as expectativas dos clientes (dos requisitos): uso de cenários, storyboards, personas (usuários), Kano Analysis, etc.

A ferramentas VSTS suporta adequadamente a fase de desenvolvimento de requisitos

Vale enfatizar que o VSTS operacionaliza e automatiza o uso do MSF for CMMI® Process Improvement, principalmente os processos relacionados à engenharia de desenvolvimento de aplicações (elicitação e gestão de requisitos, desenho da solução, arquitetura, codificação, integração, testes, configuração, etc)

TS – Technical Solution

O MSF for CMMI® Process Improvement abrange grande parte das práticas relacionadas à construção de uma solução técnica, desde a definição de alternativas de solução até a codificação da solução.

Alguns pontos relevantes não são endereçados de forma concreta pela metodologia e necessitam de maior atenção:

  • decisão de compra, reuso ou desenvolvimento de componentes que farão parte da aplicação
  • desenho dos componentes da solução, não somente o desenho da arquitetura da solução

A ferramentas VSTS suporta adequadamente a concepção e implementação de uma solução técnica adequada, incluindo criação de diversos diagramas, tais como: diagramas do sistema e aplicação, diagrama de dados, digrama de implementação, etc.

Vale enfatizar que o VSTS operacionaliza e automatiza o uso do MSF for CMMI® Process Improvement, principalmente os processos relacionados à engenharia de desenvolvimento de aplicações (elicitação e gestão de requisitos, desenho da solução, arquitetura, codificação, integração, testes, configuração, etc)

PI – Product Integration

O MSF for CMMI® Process Improvement abrange boa parte das práticas relacionadas à integração dos componentes que formam a solução.

Alguns pontos relevantes não são estressados pelo MSF e necessitam de maior atenção:

  • estabelecimento de procedimentos e critérios para a integração efetiva entre componentes da solução (alinhados com a as características das ferramentas)
  • gestão efetiva e contínua das interfaces (e mudanças nas mesmas) que formam a solução objetivando uma integração correta e coerente

A ferramentas VSTS oferece um ambiente conjunto de desenvolvimento e integração. A integração é feita de forma contínua e automática.

A seqüência de desenvolvimento pode ser planejada na solução EPM que por sua vez pode ser integrada ao VSTS para realização das integrações necessárias

Vale enfatizar que o VSTS operacionaliza e automatiza o uso do MSF for CMMI® Process Improvement, principalmente os processos relacionados à engenharia de desenvolvimento de aplicações (elicitação e gestão de requisitos, desenho da solução, arquitetura, codificação, integração, testes, configuração, etc)

VER – Verification

VAL - Validation

O MSF for CMMI® Process Improvement abrange boa parte das práticas relacionadas à verificação e validação dos componentes da solução.

Por se tratar de desenvolvimento de software, isto se traduz em testes unitários, testes dos requisitos do cliente, testes de desempenho, segurança, revisões técnicas, etc

Alguns pontos relevantes são endereçados de forma branda ou mesmo não tratados pelo MSF e necessitam de maior atenção:

  • planejamento e criação dos ambientes das diversas modalidades de testes
  • o MSF preconiza a realização de algumas revisões técnicas mas não enfatiza a necessidade da revisão por pares
  • análise dos erros encontrados nas atividades de verificação e validação

A ferramenta VSTS proporciona amplo suporte ao processo de testes, incluindo planejamento e priorização, casos de testes, execução de testes unitários, testes de carga, funcionais, etc.

Ainda no VSTS pode se criar itens para acompanhamento do fluxo (workflow) de revisão e correção de defeitos (verificação e validação) encontrados

Vale enfatizar que o VSTS operacionaliza e automatiza o uso do MSF for CMMI® Process Improvement, principalmente os processos relacionados à engenharia de desenvolvimento de aplicações (elicitação e gestão de requisitos, desenho da solução, arquitetura, codificação, integração, testes, configuração, etc)

Suporte

Área de Processo MSF for CMMI® Process Improvement Ferramentas Microsoft

MA – Measurement and Analysis

O MSF for CMMI® Process Improvement abrange somente a meta relativa à execução de algumas atividades de medição. A cobertura explícita para definição e criação da infra-estrutura de medição, foco da primeira meta desta área de processo, é tratada brevemente nos fluxos de trabalho “Establish Project Data Management Plan” e “Establish Measurement Plan” como customização das medidas já existentes na template do processo.

Já no nível de ferramentas, a cobertura é ampla para esta área:

A ferramenta Microsoft Performance Point (antiga BSM) permite o planejamento da estratégia, definição e monitoramento dos respectivos indicadores.

A geração e acompanhamento de indicadores táticos e operacionais podem ficar a cargo das ferramentas VSTS (engenharia) e solução EPM (gestão de projetos e portifólio).

Existe nesta área de processo uma grande oportunidade para diferenciação estratégica e sofisticação por meio da integração das ferramentas VSTS, EPM, BSM e Sharepoint*

* A Microsoft recentemente anunciou a liberação de um “conector” para ligação dinâmica entre VSTS e EPM

PPQA – Process and Product Quality Assurance

O MSF for CMMI® Process Improvement abrange de forma geral o processo de garantia da qualidade.

Atenção especial precisa ser dada no tratamento e escalonamento das não-conformidades e desvios encontrados.

O VSTS provê a funcionalidade adequada para o registro e monitoramento de issues (work item do VSTS), neste caso representados pelas não-conformidades identificadas pelo PPQA.

DAR – Decision Analysis and Resolution

O MSF for CMMI® Process Improvement trata uma série de decisões técnicas críticas do projeto, tais como: seleção da arquitetura e solução técnica; priorização de cenários; priorização de requisitos; etc.

O MSF for CMMI® Process Improvement dá forte ênfase à decisão estruturada relativa à seleção da solução técnica e arquitetura, mas não trata ou trata de forma branda outras decisões (técnicas ou gerenciais). O MSF ainda não provê infra-estrutura e guias para seleção de possíveis decisões que deveriam ser tratadas formalmente.

As ferramentas (VSTS, EPM, BSM e mesmo Office) ajudam nas etapas de um processo formal de decisão:

  • Matrizes de decisão
  • Gráficos
  • Registros

CM – Configuration Management

O MSF for CMMI® Process Improvement provê ampla cobertura às práticas de configuração do CMMI.

Atenção especial precisa ser dada às políticas e guias para manipulação de itens de configuração; e criação e release de baselines nas ferramentas de configuração (veja coluna ao lado)

A ferramenta VSTS provê:

  • sistema de configuração (versionamento, branch, ckeck-in-out, históricos e registros de status dos itens de configuração)
  • criação de baselines diretamente relacionados a código e artefatos de engenharia de software.
  • gerenciamento do fluxo de mudança nos itens de configuração

O SharePoint provê versionamento mais simples e armazenamento de artefatos (documentos principalmente) com controle de acesso.

Vale enfatizar que o VSTS operacionaliza e automatiza o uso do MSF for CMMI® Process Improvement, principalmente os processos relacionados à engenharia de desenvolvimento de aplicações (elicitação e gestão de requisitos, desenho da solução, arquitetura, codificação, integração, testes, configuração, etc)

Gestão por processos

Área de Processo MSF for CMMI® Process Improvement Ferramentas Microsoft

OPF

Não existe cobertura do MSF para esta área de processo

A ferramenta Sharepoint provê, entre muitas funcionalidades, gestão de conteúdo, compartilhamento de informações via portais, mecanismo de pesquisa, controle do fluxo de trabalho e gerenciamento de configuração, sendo portanto um facilitador para a equipe responsável pela gestão de processos na organização (ex: EPG)

OPD

Esta área de processo, em particular, é composta por práticas de infra-estrutura. Ou seja, práticas que demandam a criação de um conjunto de ativos de processos, tais como: processos padrões e ciclos de vida para a organização, repositório de medições, biblioteca de ativos de processos, etc.

O MSF for CMMI® Process Improvement em conjunto com as ferramentas Sharepoint, EPM, VSTS, Performance Point, atendem em grande parte esta demanda.

Atenção especial precisa ser dada à existência de critérios para adaptação do processo MSF for CMMI® Process Improvement às reais necessidades dos projetos e à existência de padrões para regulamentação do ambiente de trabalho (segurança, ergonomia, ruídos, etc

A ferramenta Sharepoint provê, entre muitas funcionalidades, gestão de conteúdo, compartilhamento de informações via portais, mecanismo de pesquisa, controle do fluxo de trabalho e gerenciamento de configuração, sendo portanto um facilitador para a equipe responsável pela gestão de processos na organização (ex: EPG)

A criação do repositório de medições demanda a integração de várias ferramentas, entre elas: BSM, VSTS e EPM*

* A Microsoft recentemente anunciou a liberação de um “conector” para ligação dinâmica entre VSTS e EPM

OT

Não existe cobertura do MSF para esta área de processo

Observação importante: uma grande facilidade inerente ao uso dos aplicativos da Microsoft citados neste artigo é sua integração com ferramentas do dia-a-dia da própria Microsoft: Microsoft Office Excel, Microsoft Office Outlook, Microsoft Office PowerPoint, Microsoft Office Visual Studio, entre outras.

Conclusão

Conforme enfatizado neste artigo, a visão de futuro da Tecnologia da Informação demanda e depende fortemente de dois focos principais:

  • Integração e visão sistêmica, por meio do entendimento dos relacionamentos entre processos diversos da área de TI (desenvolvimento, operações, gestão de pessoas, terceirização, etc), integração das melhores práticas mundiais (CMMI, CobiT, ITIL, etc) e principalmente integração das principais ferramentas com métodos, processos e diretrizes (MSF for CMMI® Process Improvement, EPM, VSTS, etc)
  • Desempenho, por meio do intenso foco em medições, melhoria contínua, inovação e tecnologias, processos enxutos e ágeis, gestão do conhecimento, entre outros.

Neste sentido, a conjunção das melhores práticas do CMMI com as diretrizes ágeis e enxutas do MSF for CMMI® Process Improvement, somadas a um conjunto expressivo de ferramentas que de forma integrada, automatiza e operacionaliza os principais processos envolvidos no ciclo de desenvolvimento de produtos de software, torna-se vantagem competitiva para aquelas organizações que perceberem que a diferenciação competitiva não está na quantidade e sim na qualidade das decisões e ações tomadas.

Partindo para uma visão ainda mais ampla, podemos imaginar que os anseios dos executivos por aplicativos efetivamente integrados na área de TI estão sendo endereçados. Tanto Microsoft (na integração de ferramentas, métodos e tecnologias) quanto ISD (na integração de melhores práticas, modelos e padrões) entendem estas necessidades e estão agindo continuamente em prol destes avanços.

Apêndice A – Referências

  • Chrissis, Konrad and Shrum – CMMI – Guidelines for Process Integration and Product Improvement.
  • MSF for CMMI® Process Improvement and MSF for Agile Software Development process templates – available at http://msdn2.microsoft.com/en-us/teamsystem/aa718801.aspx
  • Arquivo “MSF CMMI Reference.xls”, parte da documentação fornecida no pacote da metodologia MSF for CMMI® Process Improvement. Este arquivo contém uma análise das lacunas de implementação da CMMI, e a referência da evidências diretas e indiretas disponíveis.
  • Microsoft Solutions Framework Essentials – Michael S.V. Turner. Obra de referência do MSF v4.
  • Materiais de referência e treinamento da Integrated System Diagnostics Brasil (ISD Brasil)
  • Trabalhos de diagnóstico e provas de conceito do MSF for CMMI® Process Improvement e tecnologias Microsoft realizados pela ISD Brasil ao longo de 2006.

Apêndice B – Sobre a empresa e os autores

Empresas

A Integrated System Diagnostics (ISD Brasil) é uma empresa dedicada à melhoria de processos, qualidade e desempenho em Tecnologia da Informação (TI). Empresa independente que é um dos maiores parceiros globais do renomado Software Engineering Institute (SEI) - SEI Partner. A ISD é pioneira absoluta no Brasil e América Latina no segmento de melhoria de processos em TI, principalmente nos serviços relacionados à família CMMI (Capability Maturity Model Integration), tendo conduzido mais de 200 (duzentas) avaliações de processos, governança e seleção de fornecedores e milhares de horas de consultoria e treinamento em processos, somente no Brasil.

Saiba mais no htttp://www.isdbrasil.com.br

ISD: excelência, ética e resultados

A Microsoft Corporation, fundada em 1975, é líder no fornecimento de software, serviços e soluções em tecnologia da informação. Com um modelo baseado em inovação, a empresa investe no desenvolvimento e integração de tecnologias que capacitam pessoas e empresas a atingirem seu potencial pleno. Presente no Brasil desde 1989, a Microsoft gera localmente oportunidades diretas na área de tecnologia para mais de 15 mil empresas e 361 mil profissionais. Somente nos últimos quatro anos, a empresa investiu mais de R$ 61 milhões em projetos sociais, levando tecnologia a escolas, universidades, ONGs e comunidades carentes.

Saiba mais no http://www.microsoft.com/latam/presspass/brasil/default.mspx

Microsoft: seu potencial, nossa inspiração.

A ISD Brasil vem trabalhando em conjunto com a Microsoft Brasil em pesquisa, desenvolvimento e aplicação do CMMI, em conjunto com os métodos, técnicas e ferramentas da Microsoft. O objetivo é proporcionar ao mercado caminhos mais ágeis e efetivos para a melhoria de processos e desempenho em TI, principalmente para empresas de pequeno e médio porte, representando a realidade e maioria do mercado de TI brasileiro.

Autores

Renato Chaves Vasques

Responsável pela estratégia e arquitetura de serviços da ISD Brasil e ISD Internacional, líder autorizado a conduzir avaliações de altos níveis de maturidade do CMMI e Six Sigma Master Black Belt.

Ivanise Maravalhas Gomes

Consultora Sênior da ISD Brasil, gestora de programas de melhoria de processos com base no CMMI e outros modelos, em empresas de diversos segmentos, incluindo programas de altos níveis de maturidade.

Ainda não se cadastrou? Clique aqui para fazer seu cadastro.