40
UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO “LATO SENSU” FACULDADE INTEGRADA AVM Gerenciamento de Projetos em Fábrica de Softwares Por: Rodrigo Leal Gonçalves Orientador Prof. Nélson Magalhães Rio de Janeiro 2010

UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

Embed Size (px)

Citation preview

Page 1: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

UNIVERSIDADE CANDIDO MENDES

PÓS-GRADUAÇÃO “LATO SENSU”

FACULDADE INTEGRADA AVM

Gerenciamento de Projetos em Fábrica de Softwares

Por: Rodrigo Leal Gonçalves

Orientador

Prof. Nélson Magalhães

Rio de Janeiro

2010

Page 2: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

2

UNIVERSIDADE CANDIDO MENDES

PÓS-GRADUAÇÃO “LATO SENSU”

FACULDADE INTEGRADA AVM

Gerenciamento de Projetos em Fábrica de Softwares

Apresentação de monografia à Universidade

Candido Mendes como requisito parcial para

obtenção do grau de especialista em Gestão de

Projetos.

Por: Rodrigo Leal Gonçalves.

Page 3: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

3

AGRADECIMENTOS

Agradeço à ajuda e colaboração de

meu mestre orientador, Nelson

Magalhães, a amizade de meus

colegas de classe que me

proporcionaram momentos de alegria e

compartilhamento de experiências e a

todos os meus familiares.

Page 4: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

4

DEDICATÓRIA

Dedico este trabalho aos meus pais,

Diumar Ibá Gonçalves e Arlete Leal

Gonçalves, as minhas irmãs Aline Leal

Gonçalves e Carmem Lúcia da Conceição

(in memorian) e a minha amada esposa

Fernanda Mara dos Santos Machado.

Page 5: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

5

RESUMO

As pesquisas realizadas para este trabalho apontam um problema

comum na área de Tecnologia da Informação, que é a utilização e definição de

uma fábrica de softwares. O gerenciamento de projetos em fábricas de

softwares depende primordialmente de sua concepção e aplicação correta.

Uma vez definida a concepção, que difere dos modelos de contratação

comumente realizados, como “BodyShop” (Alocação de mão-de-obra

terceirizada), onde a gestão, alocação e controle das atividades são de

responsabilidade do cliente, a fábrica de softwares equivale-se a uma caixa

preta, onde requisitos definidos e padronizados entram por uma porta e

softwares ou componentes saem por outra porta, de forma totalmente

transparente para quem contrata.

Essa concepção será abordada com clareza e definiremos as fronteiras,

processos envolvidos e extremamente relevantes para a orquestração das

atividades que envolvem a construção de softwares ou componentes de

softwares em um modelo de fábrica de mercado.

Page 6: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

6

METODOLOGIA

Este trabalho foi desenvolvido com base em pesquisas bibliográficas em

livros técnicos, revistas especializadas, manuais de produtos que suportam

processos de fabricação de softwares e em minha própria experiência em

implantação de fábrica de softwares em grandes e pequenas organizações de

desenvolvimento de software.

Aborda de forma eficaz uma metodologia, processos e um modelo de

uso capaz de orientar outros profissionais da área de TI que queiram implantar

uma fábrica de softwares em suas organizações.

Page 7: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

7

SUMÁRIO

CAPÍTULO I ..................................................................................................... 11

GERENCIAMENTO DE PROJETOS .............................................................. 11

CAPÍTULO II .................................................................................................... 14

FABRICAÇÃO DE SOFTWARES ................................................................... 14

CAPÍTULO III ................................................................................................... 15

GERENCIAMENTO DE REQUISITOS ........................................................... 15

CAPÍTULO IV .................................................................................................. 17

GERENCIAMENTO DE CONFIGURAÇÃO E MUDANÇAS ........................... 17

CAPÍTULO V ................................................................................................... 22

GERENCIAMENTO DE RISCOS .................................................................... 22

CAPÍTULO VI .................................................................................................. 26

GERENCIAMENTO FINANCEIRO ................................................................. 26

CAPÍTULO VII ................................................................................................. 29

GERENCIAMENTO DE ATIVIDADES ............................................................ 29

CAPÍTULO VIII ................................................................................................ 31

GERENCIAMENTO DA QUALIDADE ............................................................. 31

CAPÍTULO IX .................................................................................................. 35

FINALIZAÇÃO DO PROJETO ........................................................................ 35

Page 8: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

8

INTRODUÇÃO

Este trabalho tem como objetivo ser um guia de boas práticas para o

gerenciamento de projetos em fábrica de softwares, trazendo a tona

características que definem claramente o seu papel frente às demais formas de

contratação de projetos de softwares no mercado brasileiro.

Uma fábrica de softwares é caracterizada por uma unidade de

construção de códigos de computadores em pequena ou larga escala e que

pode ou não gerar um produto de software de valor significante para a

contratante. Ao ser contratada, esta receberá insumos (chamados requisitos,

normas e critérios de aceitação) e construirá rigorosamente o software, ou

componente de software conforme as especificações existentes.

Os recursos utilizados por uma fábrica de software são dinâmicos e

podem a todo o momento estarem trabalhando (construindo códigos) para uma

contratante diferente, desde que, é claro, seja respeitado a capacidade técnica

de cada um deles.

Diferentemente de uma contratação do tipo “body shop”, onde cada

contratante sabe exatamente quem está contratando e possui gerência sobre

esses recursos, em uma fábrica isso não ocorre, sendo completamente

transparente a quantidade e os indivíduos que nela trabalham.

Page 9: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

Figura 1 - Modelo

Para seguirmos com o est

tenhamos alguns conceito

Vamos identificar as fronte

fábrica de softwares neste

odelo Conceitual de uma Fábrica de Software

o estudo apresentado neste trabalho é necessár

nceitos bem definidos e claros.

fronteiras existentes no projeto de software e o p

neste contexto.

9

ftwares

essário que

e o papel da

Page 10: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

Figura 2

A figura acima mostra cl

projeto de softwares e

organização ou contratada

Equipe de Proje

Fábrica de Softwares

- Fronteiras da Fábrica de Softwares

tra claramente as responsabilidades de uma

s e de uma fábrica de softwares que pod

ratada no mercado.

•Business Modeling•Levantamento de Requisitos•Analise & Design•Testes Integrados•Implantação•Garantia do Projeto•Acompanhamento Assistido

rojeto

•Construção de software ou componente software (Código Fonte).

de res

10

uma equipe de

e pode ser da

nte de

Page 11: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

11

CAPÍTULO I

GERENCIAMENTO DE PROJETOS

1. A entrada do projeto na fábrica de softwares

O gerenciamento de um projeto quando entra em uma fábrica de

softwares deve seguir determinadas práticas, objetivando o controle total sobre

os artefatos construídos, a qualidade dos mesmos, os custos e prazos

contratados e a melhor alocação dos recursos disponíveis na fábrica.

Um projeto ao entrar em uma fábrica de softwares deverá ser acompanhado

pelo artefato “IP”, que significa Informação do Projeto.

Esse artefato possui informações como nome do projeto, tamanho em pontos

de função, ou outra técnica que permita estabelecer o tamanho do produto a

ser construído, o cliente, o órgão ou área do cliente que receberá o produto, o

nome do responsável por este projeto junto ao cliente, as tecnologias que

serão utilizadas, o percentual aproximado de cada tecnologia dentro da

construção, data de entrega final, taxa de produtividade adotada por ponto de

função em cada tecnologia ou outra métrica utilizada, nome do gerente do

projeto dentro da fábrica de softwares, o valor monetário do projeto, definição

dos meios de comunicação e termos para liberação dos produtos construídos.

Após a chegada do IP, o gerente de projeto designado pela fábrica de

softwares irá analisar se a mesma possui condições de atender a demanda.

Caso não seja possível, este será recusada e deverá ser revista pela

contratante ou até mesmo descartada de imediato.

Page 12: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

2. Reuniões de Acom

O projeto deverá se

softwares com reuniões d

tratado o andamento do

versus realizado, anális

conformidades, entregas e

3. Reuniões de Equip

O gerente do projeto n

de desenvolvimento ao m

realizada por projetos, ou

O objetivo de realiza

entender as dificuldades

entregues, alinhar expecta

os processos de construçã

Figura 3 - Avaliação do IP

Acompanhamento

rá ser acompanhado pelos envolvidos na f

ões de acompanhamento semanais. Nestas reu

to do projeto, a relação entre o cronograma

análise dos riscos, desempenho dos recu

gas e pendências.

Equipe

jeto na fábrica deverá realizar uma reunião com

o menos uma vez a cada 15 dias. Esta p

s, ou tecnologias ou clientes por exemplo.

ealizar reuniões com a equipe de desenvol

ades que a equipe está encontrando com os

xpectativas da organização, prover treinamentos

strução empregados.

12

na fábrica de

s reuniões será

rama planejado

recursos, não

o com a equipe

sta poderá ser

envolvimento é

m os requisitos

entos e avaliar

Page 13: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

13

4. Papéis e Responsabilidades

Papel

Responsabilidade

Gerente de Projeto

Garantir a entrega do produto dentro do prazo, custo e qualidade contratada.

Programador

Construir o produto com base na tecnologia e requisitos contratados.

Analista de Qualidade

Testar os produtos construídos de acordo com os critérios de aceitação estabelecidos pelo contratante.

Garantia da Qualidade

Garantir que o processo está sendo cumprido em sua totalidade e realizar testes baseados em amostras para dos produtos construídos.

Engenharia de Software Estabelecer os processos destinados a construção de softwares, metodologias, boas práticas e tecnologias voltadas para melhorar a produtividade da equipe.

Board

Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos com os requisitos.

Gerente da Fábrica de Softwares Controlar e garantir a entrega de todos os projetos existentes dentro da fábrica de softwares.

Os papéis acima citados são considerados mínimos por esse estudo e

demais papéis poderão ser criados de acordo com o tamanho e complexidade

da fábrica implantada.

Page 14: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

FABRIC

1. A ordem de produç

Todo software ou c

através de uma “OP” (Or

construção que informa c

oficial do produto, o taman

o prazo de construção, os

itens de configuração (Ver

Um projeto ao entrar na

para construção. Essa té

simultaneamente, garantin

construções muito longas

requisitos e ou especific

abaixo.

Figura 4 - Artefato

Especificaç

CAPÍTULO II

ABRICAÇÃO DE SOFTWARES

rodução

ou componente de software construído em um

” (Ordem de Produção). Uma OP é uma desig

rma claramente o que será construído, a nom

tamanho da construção em pontos de função, a t

ão, os critérios de aceita da contratante, a locali

o (Veremos mais a frente) na baseline.

r na fábrica de softwares é quebrado em vários p

sa técnica permite que sejam utilizados vários

arantindo entregas contínuas e minimizando o

ongas ou grandes. Uma OP deve ser acompan

ecificações pertinentes a mesma como ilustra

rtefatos que Compõem uma Ordem de Produç

Ordem de

Produção

Capa

Critérios de Aceite do Produto

Diagramas e Protótipos

icações

14

m uma fábrica é

designação de

a nomenclatura

ão, a tecnologia,

localização dos

ários pacotinhos

vários recursos

ndo o risco de

mpanhada dos

ilustra a figura

rodução

Page 15: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

15

CAPÍTULO III

GERENCIAMENTO DE REQUISITOS

1. Tipos de requisitos

Para que um software ou componente seja construído, é necessário que

sejam enviados documentos de especificações sobre o mesmo. Estes

documentos irão descrever o software com relação aos aspectos funcionais e

não funcionais.

Requisitos funcionais: São os requisitos que o sistema deverá executar

não levando em consideração aspectos físicos para o mesmo. Definem

claramente as entradas e saídas do software.

Requisitos não funcionais: São aqueles que representam atributos,

aspectos e características e ambiente em que o software deverá ser

executado.

Outros documentos também deverão estar presentes nos requisitos,

como modelos de dados, diagramas de atividades, classes, sequência, caso de

uso (Caso ocorra um desenvolvimento orientado a objetos), DFD, modelos de

dados, estrutura de dados, dicionário de dados, protótipos, especificações

funcionais e técnicas. Outros artefatos podem ser enviados de acordo com a

tecnologia empregada ou metodologia utilizada. As mais comuns são análise

essencial, estruturada, Orientação a Objetos e SOA.

Notem que ao entrar na fábrica o software depois de fracionado em

ordens de produção (OP’s) para construção, medição e controle envolve um

conjunto de artefatos que evidenciam ou modelam o que será construído. Uma

espécie de forma de bolo onde tudo já foi planejado, pensado e definido. Não

restam alternativas para a construção do mesmo. O protótipo é uma casca

Page 16: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

onde o programador colo

recebidas.

Não é de responsa

além daquilo que está ex

ser levantadas durante a

projeto da fábrica de s

esclarecer, medir e avalia

original. Caso isso ocorra v

Toda a comunicação exist

deverá ser documentada,

construídas.

Entre os requisitos,

de testes. Esses artefatos

as informações que valida

que o software poderá ou

Vejamos no exemplo abaix

Caso de Teste 001 - Sis

O sistema "Calculadora" deverá receber como

entrada de dados apenasnúmeros inteiros entre

zero e dez.

r colocará os códigos de acordo com as espe

ponsabilidade da fábrica alterar, propor ou cons

tá explícito, documentado e contratado. Dúvida

nte a construção e estas serão repassadas ao g

de softwares para que o mesmo possa do

avaliar se a mesma se tornará uma alteração d

corra veremos com mais detalhes no Capítulo IV.

existente entre o gerente do projeto e os prog

tada, mantendo a rastreabilidade da mesma co

isitos, deverá existir as especificações de testes

efatos são muito importantes, pois são eles que

validam a construção e também fornecem dado

rá ou não fazer.

abaixo como isso funcionaria:

Figura 5 - Caso de Teste

Sistema Calculadora

ra"

nas tre

O sistema "Calculadora" não poderá permitir a entrada de letras ou

caracteres especiais como A, B, #, *, &, @ etc..

Resultados es

2 + 2 =

2 x 2 =

2 / 2 =

2 - 2 =

16

especificações

u construir nada

úvidas poderão

s ao gerente do

documentar,

ção do requisito

IV.

programadores

a com as OP’s

testes, ou casos

s que possuem

dados sobre o

s esperados:

2 = 4

x 2 = 4

/ 2 = 1

2 = 0

Page 17: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

17

CAPÍTULO IV

GERENCIAMENTO DE CONFIGURAÇÃO E MUDANÇAS

1. Gerenciamento de Configuração

O gerenciamento de configuração em uma fábrica de softwares deverá

abordar o controle dos itens de configuração (Requisitos, casos de testes,

modelos, programas e componentes) de forma a garantir a rastreabilidade dos

mesmos. Todos os itens devem ser versionados e a sua manipulação

controlada pelo Board, que é o guardião dos artefatos.

O Board é o responsável por disponibilizar os componentes e ou programas

no ambiente de desenvolvimento e depois controlar a sua passagem para

ambiente de homologação. Toda esta movimentação é controlada por meio de

documentos de movimentação que garantirá a integridade do produto final a

ser implantado no cliente.

Nenhuma nova construção é iniciada na fábrica de softwares sem o “de

acordo” do Board e nada é liberado para o cliente antes que o mesmo faça a

checagem junto à área de homologação. Após estas conferências é o mesmo

que determina a versão do produto e o “Label” que será gerado.

Caso ocorra algum incidente (“Bug de software”) o Board possuirá a versão

anterior guardada com integridade e poderá, caso solicitado restabelecer as

versões anteriores dos produtos liberados.

Page 18: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

A figura abaixo demonstra

baseline ou repositório de

Gera ou

Disponibiliza para Cliente

onstra o ciclo de vida de um item de configuraçã

rio de ativos.

Figura 6 - Tarefas do Board

Inclui um item de configuração

DisponibDesenvol

Movimenta para Homologação

era um “Label” ou pacote fechado

ara

18

uração em uma

onibiliza em nvolvimento

Page 19: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

A estrutura de de

oferecer uma área segura

armazenamento dos pro

membros da equipe e

concluídos e disponibilizad

A figura abaixo mostra com

Figura

de desenvolvimento disponibilizada pelo Boa

egura para o desenvolvedor, uma área de STR

s programas concluídos e em utilização po

e e uma área para armazenamento dos

bilizados para testes.

ra como essa estrutura poderá ser disponibilizad

gura 7 - Estrutura de Desenvolvimento

19

oard deverá

STREAM para

ão por demais

dos programas

ilizada.

Page 20: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

20

2. Gerenciamento de Mudanças Uma mudança depois de aprovada pela área de gerenciamento de

projetos, tendo seus impactos analisados assim como prazo e custo da

mesma, será encaminha para que o Board da fábrica possa liberar em

ambiente de desenvolvimento apenas os itens de configuração que serão

modificados pela demanda.

Isso significa que a equipe de desenvolvimento embora tenha todo o produto

em seu ambiente e mesmo que realize centenas de melhorias a revelia,

apenas o que foi disponibilizado pelo Board fará parte do pacote que será

liberado para o cliente.

Vamos utilizar a figura abaixo para entender melhor o processo de mudança

quando este ocorre.

Figura 8 - Solicitação de Mudança

Fábrica recebe pedido de mudança

Analisa o impacto técnico e financeiro

Cliente aprova a mudança

Board libera os itens em

Desenvolvimento

Fábrica constrói, testa , libera e

fatura a mudança

Page 21: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

21

Uma mudança quando mal analisada ou dimensionada poderá causar o

fracasso de um projeto, portanto, devem ser analisadas com cautela, com

utilização de métricas e técnicas apropriadas para completo entendimento.

Page 22: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

GEREN

1. Definição de riscos

Riscos são um conj

influenciar diretamente no

O risco em um projeto de

relacionadas à ocorrência

seu processo ou o seu pro

acontecer e ameaçar o

Developers' Magazine –

Figu

•Rede elétrica inadequade.

•Contingência de dados ineficaz.

•Informações confidenciais.

•Fraudes•Vírus, Spywares.

CAPÍTULO V

ERENCIAMENTO DE RISCOS

riscos

conjunto de ameaças ou oportunidades qu

te no sucesso ou fracasso de um projeto.

to de software é uma medida da probabilidade e

rência de um evento negativo que afete o própr

eu produto. Em outras palavras, qualquer coisa

ar o bom andamento do projeto é um risco.

Maurício Aguiar – Diretor da TI Métricas”).

Figura 9 - Classificação de Riscos

•Atendimento as noISO 9000 ou SarbaOxley.

•Controle da qualid

•Lentidão de rede ddados.

•Produtividade da equipe de program

Segurança Produtividade e Desempenho

ConformidadeDisponibilidade

22

es que podem

dade e da perda

próprio projeto,

coisa que possa

risco. (“Paper -

s normas rbanes

alidade.

de de

da gramação.

Page 23: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

23

2. Classificação de alguns riscos na fábrica de softwares

Segurança: São os riscos relativos às ameaças internas ou externas que

podem resultar em acessos não autorizados a alguma informação. Podemos

citar aqui os riscos relativos ao vazamento de dados confidenciais de clientes,

privacidade de dados e fraudes. Encontra-se ainda nesta categoria os riscos

causados por vírus, malwares e spywares que podem acabar com um projeto

caso a infra-estrutura da fábrica de softwares não esteja preparada para conter

essas ameaças.

Disponibilidade: Trata-se do risco de uma informação apresentar-se

inacessível devido a interrupções não planejadas em sistemas. As

organizações têm a responsabilidade de manter seus sistemas de negócio

operacionais. Como resultado, elas precisam reduzir os riscos de perda ou

corrupção de dados e de indisponibilidade de aplicações. E, no caso de uma

falha, os negócios devem ser recuperados em um prazo adequado. O uso de

redes privativas de dados sem contingência, rede elétrica desprotegida de

estabilização e geradores para serem usados em caso de falta de energia das

concessionárias.

Desempenho: É o risco de uma informação apresentar-se inacessível devido a

limitações de escalabilidade ou gargalos relativos à comunicação de dados. Os

negócios precisam garantir os requerimentos de volume e performance

mesmo durante momentos de pico. Aspectos relativos à performance devem

ser identificados proativamente, antes que os usuários finais ou aplicações

sejam impactados.

Produtividade: É o risco ocasionado pelo baixo desempenho das equipes de

desenvolvimento de projetos da fábrica de softwares. As organizações buscam

diminuir este risco mesclando equipes com profissionais juniores, plenos e

seniores, buscando uma fórmula para equilibrar os custos de mão-de-obra sem

baixar a qualidade e sem diminuir a produtividade, o que causa atraso nas

Page 24: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

24

entregas e desvios no gerenciamento do projeto. Vale ressaltar que quando um

desvio ocorre e o mesmo não é imediatamente tratado, a solução tardia pode

comprometer todo o projeto pois a adição de novos membros na equipe pode

não surtir efeito no tempo esperado.

Conformidade: É o risco de violação de exigências regulatórias ou de falha no

alcance de requerimentos de políticas internas. As empresas precisam

apresentar conformidade a regulações dos mais diversos níveis (federais,

estaduais) como SOX (Lei Sarbanes Oxley) e ISO 9000. As organizações

precisam preservar informações e prover um eficiente sistema de busca e

recuperação de conteúdo quando requerido (principalmente em e-mails). Em

adição, os empregados devem ser responsáveis pela observação das melhores

práticas e políticas internas para garantir mais eficiência à operação dos

negócios.

3. Relação riscos x capital investido Todo risco identificado deve ser classificado quanto ao seu tipo, criticidade,

probabilidade de ocorrer e o custo que causará, caso seja realizado.

A relação entre os riscos identificados para o projeto e o valor monetário

investido no projeto devem ser monitorados a todo momento pois poderá

indicar os rumos que deverão ser seguidos, seja sua continuidade, paralisação

ou até mesmo cancelamento.

Um projeto onde a soma dos riscos em valor monetário é igual ou superior ao

valor total investido no projeto indica de imediato que se trata de um projeto

delicado e a sua realização deverá ser muito bem avaliada, optando-se até

mesmo por não fazê-lo.

Page 25: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

25

A tabela abaixo exemplifica a categorização dos riscos conforme supracitado.

Descrição do Risco Criticidade Probabilidade de

Ocorrer

Valoração do

risco (R$)

Queda de Produtividade da

equipe de programação Alta Pequena R$350,00/hora

Atraso na entrega dos servidores

de desenvolvimento Média Pequena R$1.200,00/dia

Atraso na contratação de equipe

especializada em software livre Alta Média R$500,00/dia

Atraso no treinamento da equipe

em Banco de Dados Firebird Alta Pequena R$500,00/dia

Com a tabela acima podemos rapidamente identificar que se o risco “Atraso na

entrega dos servidores de desenvolvimento” ocorrer durante 3 dias por

exemplo; isso significará um custo de R$ 3.600,00.

Esses valores foram calculados tomando-se como base as medidas de

contorno que serão adotadas. Neste caso, o aluguel de servidores ao custo de

R$ 1.200,00 por dia.

Page 26: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

26

CAPÍTULO VI

GERENCIAMENTO FINANCEIRO

1. O custo do projeto

Um projeto ao entrar na fábrica de softwares, com seu documento de IP

(Informações de projeto) devidamente preenchido e aprovado, conterá

informações de total de pontos de função do projeto, taxa em horas por ponto

de função nas referidas tecnologias e valor cobrado por hora.

O projeto será particionado em ordens de produção e o total destas será o

equivalente ao total do projeto (Descartadas as alterações).

A soma de todas as ordens de produção deverá representar o custo total do

projeto (Custo Inicial), ou seja, um projeto que inicialmente foi projetado para

custar R$ 230.000,00 deverá ter esse valor rateado entre as ordens de

produção encaminhadas a fábrica de softwares.

Não importará a quantidade de ordens de produção enviadas, podendo ser

10 ordens de R$ 23.000,00 ou 100 ordens de R$ 2.300,00. O importante é que

a ordem de produção descreva com clareza o produto que será construído e o

seu tamanho bem definido, para que todo o trabalho possa ser rateado entre

diversos programadores.

2. O custo da ordem de produção

Como visto anteriormente, uma ordem de produção é uma instrução de

construção dentro da fábrica de softwares e além de determinar “o que será

feito”, indica também quem é o responsável pela mesma, assim como data de

início e prazo.

Page 27: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

27

Toda ordem de produção possui um “preço”, que representa o valor

monetário que “aquilo” que está sendo construído representa financeiramente

para o projeto.

Tomemos como exemplo a ordem de produção 2011/0010.

Esta, indica um produto que será construído em tecnologia Java / MySQL,

será iniciada em 10/01/2011 e tem o tamanho de 5 pontos de função (Unidade

de medida utilizada pela fábrica de softwares).

No documento de informações do projeto vimos que durante o acordo

realizado para a entrada do projeto na fábrica, foi determinado uma quantidade

de horas para desenvolvimento de ponto de função na tecnologia contratada.

Utilizaremos o valor de 9 horas por ponto de função (9h/PF).

Realizando uma conta simples, multiplicando-se o tamanho da ordem de

produção pela taxa em horas contratada para ponto de função, identificamos

que a referida OP, terá uma duração de 45 horas, ou 5,6 dias para

representação em cronograma; obtendo assim a data de término da OP, dia

17/01/2011.

Essa mesma conta poderá ser feita para identificar o custo monetário da

ordem de produção, multiplicando-se a quantidade de horas que serão

consumidas pelo valor em moeda contratado para cada ponto de função,

conforme acordado no artefato de informações de projeto.

Em nosso exemplo, 45 horas multiplicadas pelo valor de R$ 95,00, obteremos

o valor da OP em reais, que totalizará R$ 4.275,00.

Page 28: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

28

3. O custo da mudança

Como abordado, toda construção é referenciada a uma ordem de produção

e uma alteração em qualquer componente ou parte do software construído,

implicará em um custo extra que deverá ser pago pelo cliente à fábrica de

softwares.

O cliente deverá enviar a ordem de produção que contém a parte do

software construído que deseja realizar a mudança com um orçamento de

pontos de função para executar a mesma. A fábrica irá receber, fazer sua

medição e comparar com o orçamento enviado pelo cliente e estando de

acordo, realizará a implementação solicitada.

Com isso a OP será composta de seu orçamento inicial mais o valor

referente à mudança solicitada.

Veja a tabela abaixo com um exemplo:

Ordem de produção com orçamento original

Número da Ordem

de Produção

Quantidade de

Pontos de Função

Valor total de horas

utilizadas

Preço da Ordem de

Produção

2011/010

5 45 R$ 4.275,00

Ordem de produção com pedido de alteração

Número da Ordem

de Produção

Quantidade de

Pontos de Função

Valor total de horas

utilizadas

Preço da Ordem de

Produção

2011/010

5

2 Mudança

45

16

R$ 4.275,00

R$ 1.520,00

Page 29: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

29

CAPÍTULO VII

GERENCIAMENTO DE ATIVIDADES

1. Atividades obrigatórias para o gerenciamento de projetos

em uma fábrica de softwares

A correta condução de um projeto na fábrica de softwares não depende

exclusivamente da correta aplicação da tecnologia contratada ou da

capacidade da equipe contratada. É necessário que algumas tarefas sejam

executadas para controle e garantia de sucesso do projeto, como citadas

abaixo.

Planejamento da reunião de abertura do projeto realizada entre a equipe de

desenvolvimento, o gerente do projeto, o gerente da fábrica de softwares, a

equipe de CQS (Controle da qualidade de software) e a equipe de SQA

(Garantia da qualidade de software).

Planejamento das reuniões de acompanhamento, revisão e controle do projeto

entre a equipe de desenvolvimento e o gerente do projeto na fábrica de

softwares.

Planejamento das reuniões de acompanhamento, revisão e controle entre os

gerentes de projetos da fábrica de softwares e o gerente da fábrica de

softwares.

Planejamento das reuniões de revisão de processos entre o gerente de projeto

e a equipe de SQA (Garantia da qualidade de software).

Planejamento das reuniões de revisão de processos entre a equipe de

desenvolvimento e a equipe de SQA (Garantia da qualidade de software).

Page 30: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

30

2. Atividades de replanejamento de projeto

Toda vez em que um projeto sofre uma alteração motivada ou não por uma

solicitação do cliente, uma atividade de replanejamento deverá ser

imediatamente executada.

Esta tarefa consiste em documentar as alterações de cronograma ocorridas em

função de solicitações de mudança, concretização de riscos ou fatores

externos.

Além de realizar estas alterações em cronograma, o documento de

informações de projeto deverá ser alterado caso exista reflexo financeiro ou

nos marcos descrito pelo mesmo e deverá ser dada ciência a todos os

envolvidos no projeto.

Page 31: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

31

CAPÍTULO VIII

GERENCIAMENTO DA QUALIDADE

1. Características da qualidade de software

Qualidade é um termo muito subjetivo e que está ligado diretamente as

percepções de cada indivíduo, suas referências, expectativas e aculturamento.

A qualidade de software basicamente consiste em um sistema atender as

necessidades e expectativas de seus usuários, oferecendo informações e

resultados corretos, tempo de resposta adequado, ter uma tela de uso fácil e

agradável e estar disponível sempre que solicitado.

As revisões de softwares são ferramentas poderosas que ajudam a equipe de

CQS na tarefa de inspecionar e avaliar os softwares desenvolvidos. Estas

podem ocorrer das seguintes formas:

Revisões gerenciais: Tem o objetivo de garantir o progresso do

desenvolvimento do software, recomendar ações corretivas e garantir a correta

alocação dos recursos disponíveis.

Revisões técnicas: Tem o objetivo de avaliar que o software atenda aos

requisitos especificados e garantir a integridade das mudanças ocorridas.

Inspeções: Tem o objetivo de encontrar anomalias no software, identificar

medidas equivocadas e verificar a qualidade final do sistema.

Auditorias: É uma avaliação independente, ocorre e identifica problemas por

amostragens e visa cumprir padrões e regulamentações vigentes.

Page 32: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

32

2. FURPS

FURPS é um acrônimo que significa Funcionalidade, Usabilidade,

Confiabilidade, Desempenho e Suportabilidade. Qualidades que devem fazer

parte do software e por isso, avaliadas antes de chegarem ao usuário final.

Nada é pior que o usuário ao receber um novo software diga frases do tipo:

“Uso complicado”, ou “Lento esse sistema”, ou “Esse sistema trava a todo o

momento e não confio nele”.

Para evitar esse transtorno é que as equipes de controle de qualidade de

software devem estar atentas a essas características.

Figura 10 - FURPS

Funcionalidade: Avalia todo o aspecto funcional do sistema e o cumprimento

dos requisitos contratados.

Funcionalidade

Usabilidade

ConfiabilidadeDesempenho

Compatibilidade

Page 33: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

33

Usabilidade: É a característica que avalia a interface com o usuário. É

avaliado por prevenção de erros, acesso fácil as funcionalidades, botão de

ajuda, estética e design do sistema.

Confiabilidade: Avalia a integridade do software, tolerância a erros, precisão

de cálculos, exatidão nas informações e tempo de resposta as falhas.

Desempenho: Avalia os recursos de desempenho do sistema, como tempo de

resposta as consultas realizadas, tempo de gravação e recuperação de dados,

capacidade de carga de dados, utilização de CPU e disponibilidade do sistema.

Suportabilidade: Avalia a capacidade de instalação, configuração,

manutenção, estabilidade e escalabilidade do sistema.

3. O papel do CQS (Controle de qualidade de software)

A equipe do controle de qualidade de software é composta em sua maioria

por analistas de sistemas seniores e com grande experiência em

desenvolvimento de sistemas. Estes são responsáveis por realizar os testes

nas aplicações desenvolvidas, verificando e garantindo a aderência as

especificações e requisitos contratados pelos clientes além das qualidades

obrigatórias de softwares de qualidade, com FURPS, como visto acima.

As ocorrências identificadas pela equipe de CQS são registradas e

classificadas como RNC (Registro de não conformidade) e retornam para a

linha de produção para correção imediata. Toda RNC possui prioridade de

construção sobre qualquer atividade de construção em andamento, como as

OP (Ordens de Produção). Após serem corrigidas, as não conformidades

retornam para a área de CQS para serem novamente testadas.

A área de CQS apresenta ao final de cada projeto um painel estatístico

mostrando a quantidade de não conformidades identificadas no projeto, às

Page 34: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

34

reincidências, a classificação dos tipos de erros, o tempo médio de correção

pela equipe de construção e indicadores de desempenho da própria área.

4. O papel do SQA (Garantia da qualidade de software)

A área de garantia da qualidade de software atua junto ao processo definido

e aplicado na fábrica de softwares. Sua responsabilidade é acompanhar, medir

o desempenho e propor melhorias no mesmo.

Atua também auditando as equipes de desenvolvimento, gerentes de projetos e

o gerente da fábrica de softwares, buscando irregularidades no cumprimento

fiel dos processos estabelecidos.

Ao identificar uma irregularidade, deverá gerar um RNCP (Registro de não

conformidade no processo), indicar onde ocorreu a falha e comunicar o prazo

para solução do problema. O infrator terá de cumprir a determinação do SQA,

documentar no RNCP a solução adotada e o motivo da falha cometida no

processo.

Qualquer tipo de flexibilização no processo só poderá ocorrer com anuência da

área de SQA e do gerente da fábrica de softwares.

Page 35: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

35

CAPÍTULO IX

FINALIZAÇÃO DO PROJETO

1. Como encerrar um projeto

O encerramento de um projeto em uma fábrica de software deve ocorrer

com o TEP (Termo de Encerramento de Projeto) assinado pelo cliente e pelo

gerente da fábrica de softwares.

Este termo indica que todas as ordens de produção contratadas foram

entregues e aceitas pelo cliente, que os valores adicionais de contrato oriundos

de mudanças estão aceitos, incluindo valores monetários e pontos de função,

que o projeto foi entregue dentro do prazo contratado ou acordado e que a

fábrica poderá alocar os recursos em outros projetos, caso necessário.

Toda a documentação disponibilizada pelo cliente é devolvida, os fontes

entregues em mídia (CD, DVD ou Flash Memory), as baselines de gerência de

configuração apagadas e toda informação sigilosa destruída ou devolvida

imediatamente, tendo de ser assistida pelo cliente ou representante do mesmo.

2. Como desalocar a equipe do projeto

O projeto ao encaminhar-se para o fim terá sua equipe desalocada aos

poucos, de forma a garantir o término das atividades com sucesso e também

manter os programadores em uso, pois se ficarem parados, irão gerar um custo

elevado para a fábrica de softwares.

No entanto este fato deve ser planejado com antecedência para que a equipe

não se sinta pressionada ou temerosa com relação ao futuro. O plano deverá

mostrar perspectivas para a equipe como novos projetos ou atividades. Em

Page 36: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

36

caso contrário, perderão a motivação e buscarão inclusive outros empregos,

deixando a equipe enfraquecida em um momento crítico do projeto.

3. Documentar as lições aprendidas

Após o encerramento do projeto as “lições” aprendidas deverão ser

documentadas e analisadas pelo gerente de projeto e pelo gerente da fábrica

de softwares. Indicadores de produtividade deverão ser atualizados, riscos

encontrados catalogados assim como as soluções empregadas. Estes registros

servirão de base para novos projetos e para melhorias do processo de

desenvolvimento de software definido e empregado.

Page 37: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

37

ÍNDICE DE FIGURAS

Figura 1 - Modelo Conceitual de uma Fábrica de Softwares .............................. 9

Figura 2 - Fronteiras da Fábrica de Softwares ................................................. 10

Figura 3 - Avaliação do IP ................................................................................ 12

Figura 4 - Artefatos que Compõem uma Ordem de Produção ......................... 14

Figura 5 - Caso de Teste .................................................................................. 16

Figura 6 - Tarefas do Board ............................................................................. 18

Figura 7 - Estrutura de Desenvolvimento ......................................................... 19

Figura 8 - Solicitação de Mudança ................................................................... 20

Figura 9 - Classificação de Riscos ................................................................... 22

Figura 10 - FURPS ........................................................................................... 32

Page 38: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

38

BIBLIOGRAFIA CONSULTADA

AGUIAR, Maurício. http://www.bfpug.com.br/islig-rio/Downloads/

Gerencia_de_Riscos.pdf.

http://www.virtue.com.br/blog/?p=26

http://pt.wikipedia.org/wiki/Gerenciamento_de_riscos_do_projeto

http://qualidadebr.wordpress.com/2008/07/10/furps/

MONTEIRO, Armando Certificação PMP : Cobertura Completa do PMBOK 3°

Edição / Armando Monteiro. – Rio de Janeiro: Brasport, 2006.

VARGAS, Ricardo Viana. Manual Prático do Plano de Projeto / Ricardo Viana

Vargas, Rio de Janeiro: Brasport, 2003.

BRUZZI, Demerval Guilarducci. Gerência de Projetos: Uma Visão Prática /

Demerval Guilarducci Bruzzi. São Paulo: Érica, 2002.

Fiorini, Soeli T. Engenharia de Software com CMM / Soeli T. Fiorini, Arndt Von

Staa, Renan M. Baptista. Rio de Janeiro: Brasport, 1998.

Page 39: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

39

ÍNDICE

AGRADECIMENTOS ........................................................................................ 3

DEDICATÓRIA .................................................................................................. 4

RESUMO ........................................................................................................... 5

METODOLOGIA ................................................................................................ 6

SUMÁRIO .......................................................................................................... 7

INTRODUÇÃO................................................................................................... 8

CAPÍTULO I ..................................................................................................... 11

GERENCIAMENTO DE PROJETOS .............................................................. 11

1. A entrada do projeto na fábrica de softwares ......................................... 11

2. Reuniões de Acompanhamento ............................................................. 12

3. Reuniões de Equipe ............................................................................... 12

4. Papéis e Responsabilidades .................................................................. 13

CAPÍTULO II .................................................................................................... 14

FABRICAÇÃO DE SOFTWARES ................................................................... 14

1. A ordem de produção ............................................................................. 14

CAPÍTULO III ................................................................................................... 15

GERENCIAMENTO DE REQUISITOS ........................................................... 15

1. Tipos de requisitos ................................................................................. 15

CAPÍTULO IV .................................................................................................. 17

GERENCIAMENTO DE CONFIGURAÇÃO E MUDANÇAS ........................... 17

1. Gerenciamento de Configuração ............................................................ 17

2. Gerenciamento de Mudanças ................................................................. 20

CAPÍTULO V ................................................................................................... 22

GERENCIAMENTO DE RISCOS .................................................................... 22

1. Definição de riscos ................................................................................. 22

2. Classificação de alguns riscos na fábrica de softwares .......................... 23

3. Relação riscos x capital investido ........................................................... 24

CAPÍTULO VI .................................................................................................. 26

Page 40: UNIVERSIDADE CANDIDO MENDES PÓS-GRADUAÇÃO … · Controlar os itens de configuração, disponibilizar produtos nas baselines e manter a rastreabilidade dos produtos construídos

40

GERENCIAMENTO FINANCEIRO ................................................................. 26

1. O custo do projeto .................................................................................. 26

2. O custo da ordem de produção .............................................................. 26

3. O custo da mudança .............................................................................. 28

CAPÍTULO VII ................................................................................................. 29

GERENCIAMENTO DE ATIVIDADES ............................................................ 29

1. Atividades obrigatórias para o gerenciamento de projetos em uma fábrica

de softwares ................................................................................................. 29

2. Atividades de replanejamento de projeto................................................ 30

CAPÍTULO VIII ................................................................................................ 31

GERENCIAMENTO DA QUALIDADE ............................................................. 31

1. Características da qualidade de software ............................................... 31

2. FURPS ................................................................................................... 32

3. O papel do CQS (Controle de qualidade de software) ........................... 33

4. O papel do SQA (Garantia da qualidade de software) ........................... 34

CAPÍTULO IX .................................................................................................. 35

FINALIZAÇÃO DO PROJETO ........................................................................ 35

1. Como encerrar um projeto ...................................................................... 35

2. Como desalocar a equipe do projeto ...................................................... 35

3. Documentar as lições aprendidas .......................................................... 36

ÍNDICE DE FIGURAS ..................................................................................... 37

BIBLIOGRAFIA CONSULTADA ...................................................................... 38

ÍNDICE ............................................................................................................. 39