Post on 22-Jul-2020
07
Fábrica de Software Trabalho de Seminários I
Fábrica de Software
Trabalho para a disciplina de Seminários I do curso de
Gerência de Projetos de Software para a PUC-Rio.
Alam Braga – 072.069.003
Bruno Cunha - 072.069.002
Fernanda Smiderle - 072.069.001
Michel Saddock - 072.069.013
Professor Joaquim dos Santos Neto
Rio de Janeiro
2007
SUMÁRIO
1 Introdução ....................................................................................................... 3
2 Visão Geral ..................................................................................................... 4
2.1 A Organização ............................................................................................ 4
2.2 Estratégia de Terceirização ........................................................................ 5
3 Conceituação .................................................................................................. 7
3.1 O que é Fábrica de Software ...................................................................... 7
3.2 Tipos de Fábrica de Software ..................................................................... 7
3.2.1 Fábricas de Programas ........................................................... 7
3.2.2 Fábricas de Projetos ................................................................ 8
3.3 Técnicas para utilização bem-sucedida da Fábrica de Software ................. 9
4 Seleção de Fornecedores ............................................................................. 11
4.1 Determinação de Pontuação Técnica ....................................................... 13
4.2 Procedimentos de Determinação da Pontuação Técnica .......................... 16
5 Modelo de Trabalho com a Fábrica de Software ........................................... 19
5.1 Categorias da produção de SW ................................................................ 19
5.1.1 Projeto de desenvolvimento de software ............................... 19
5.1.2 Processos de manutenção de software ................................. 19
5.1.3 Programação (codificação) .................................................... 20
5.2 Ciclo de vida do processo ......................................................................... 20
5.3 Processo de Desenvolvimento e descrição dos artefatos a serem usados21
5.4 Fluxo Operacional de Trabalho ................................................................. 22
6 Modelo de gestão da Fábrica de Software .................................................... 24
6.1 SLA 24
6.2 Métricas .................................................................................................... 25
7 Planejamento da Demanda de Projetos ........................................................ 28
8 Processo para implantação da FS na organização........................................ 29
8.1 Passos para o planejamento da implantação da fábrica ........................... 29
8.2 Características importantes que devem ser utilizadas no projeto .............. 30
9 Conclusão ..................................................................................................... 31
10 Bibliografia .................................................................................................... 32
Fábrica de Software 2
Tabelas
Tabela 1 – Critérios de Qualificação Obrigatórios .............................................. 12
Tabela 2 - Fator: Qualidade (Peso 6) ................................................................. 13
Tabela 3 - Fator: Padronização Técnica (Peso 2) .............................................. 15
Tabela 4 - Fator: Desempenho (Peso 2) ............................................................ 15
Tabela 5 - Procedimentos de Determinação da Pontuação Técnica .................. 16
Tabela 6 - Tabela de Fases ............................................................................... 17
Tabela 7 - Fases do Ciclo de Vida ..................................................................... 20
Tabela 8 - Fases x Artefatos .............................................................................. 21
Tabela 9 - Fluxo Operacional de Trabalho ......................................................... 22
Tabela 10 - SLA ................................................................................................. 24
Tabela 11 - Métricas .......................................................................................... 25
Fábrica de Software 3
1 Introdução
O termo Fábrica de Software surgiu no mercado como uma solução para
alcançar maior produtividade e menor custo na produção de sistemas de
software.
Neste projeto apresentaremos o conceito de Fábrica de Software, um
pouco de seu histórico, os tipos de Fábrica de Software existentes, juntamente
com os requisitos de cada uma delas.
O tipo de Fábrica de Software a ser solicitado adotado para este projeto foi
Fábrica de Projetos de Software, o qual abrange desde o projeto conceitual até
os testes de aceitação.
O objetivo é mostrar a utilização de uma Fábrica de Software através de
uma empresa fluminense, cujo foco não é Tecnologia da Informação, que
resolveu terceirizar o serviço de desenvolvimento de software.
Aqui serão apresentadas a estratégia de terceirização, critérios de seleção
de fornecedores, as fases do sistema, o modelo de trabalho entre contratante e
contratada, o modelo de gestão e o processo de implantação da Fábrica de
Software na organização.
Fábrica de Software 4
2 Visão Geral
2.1 A Organização
A organização é composta por cinco Instituições que trabalham de forma
integrada para o desenvolvimento do Estado fluminense. Juntas, promovem
ações para garantir uma posição de destaque para o Estado no cenário nacional
nos níveis político, econômico e social. Todas as Instituições se caracterizam
fortemente como prestadoras de serviços às empresas.
A Federação representa a classe fluminense nas esferas regional e
nacional, congregando os interesses dos sindicatos a ela filiados. É uma
Instituição prestadora de serviços às empresas e atua como fórum de debates e
de gestão da informação para o crescimento econômico e social do Estado.
As ações da Federação, tanto na área técnica quanto política, são
orientadas por Conselhos e Fóruns Empresariais. Os Conselhos Empresariais
atuam nas seguintes áreas estratégicas: Assuntos Legislativos, Comércio
Exterior, Competitividade, Economia, Energia, Infra-estrutura, Meio Ambiente,
Política Social e Trabalhista, Recursos Hídricos, Representações Regionais
Responsabilidade Social e Tecnologia.
Já os Fóruns Empresariais têm o objetivo de estimular o crescimento de
setores específicos e trabalhar para a redução dos entraves de ordem fiscal,
legislativa e burocrática. Hoje, representantes de mais de 600 empresas
industriais constituem os Conselhos e Fóruns Empresariais.
O Serviço Social, além de ser uma instituição prestadora de serviços,
trabalha intensamente para elevar o nível de escolaridade da população e
ampliar seu acesso à saúde. A instituição atua nas seguintes áreas: Educação
(Educação Infantil / Educação de Jovens e Adultos / programas especiais para
empresas), Saúde, Esporte, Lazer e Cultura.
No ano de 2006, foram realizadas cerca de 202 mil consultas na área
médico-ambulatorial, 669 mil exames complementares, além de 156 mil
consultas odontológicas. O programa de Saúde Ocupacional realizou, neste
mesmo ano, 84 mil consultas, e conta com a adesão de mais de 2.032
empresas, beneficiando 196 mil trabalhadores.
Com a criação do Clube, cerca de 90 mil pessoas tiveram acesso ao
segmento de Esporte e Lazer e 29 mil alunos participaram de atividades de
formação esportiva.
Fábrica de Software 5
Além de desenvolver programas com recursos próprios, o Serviço Social
realiza projetos sociais em parceria com órgãos governamentais, empresas e
organizações não governamentais.
O Serviço de Aprendizagem promove cursos e projetos educacionais que
possibilitam a formação e qualificação de trabalhadores em diversos segmentos.
Também garante o acesso das empresas às mais modernas tendências
tecnológicas e processos, por meio de serviços e pesquisas na área de
Tecnologia. Seus cursos, além de atenderem a comunidade, podem ser
preparados sob medida para uma empresa, mediante um diagnóstico realizado
por um técnico.
As 28 Unidades Operacionais distribuídas pelo Estado viabilizam o
atendimento às empresas e às comunidades em todos os municípios. Além da
infra-estrutura própria instalada nestas Unidades, conta com 18 Unidades
Móveis que levam cursos a qualquer lugar do Estado, preparando pessoas para
exercerem atividades produtivas de forma autônoma.
O Serviço de Aprendizagem também desenvolve cursos e programas
especiais para as empresas, em diversos segmentos tecnológicos. São projetos
sob medida, que vão desde o diagnóstico até a solução de problemas práticos
da produção, podendo incluir pesquisas, protótipos e simulações em plantas-
piloto em diversas áreas.
As empresas formam um sistema único onde às áreas administrativas,
financeiras, tecnologia da informação, suprimentos, recursos humanos e jurídico
(áreas meio) são unificadas e dão suporte a todas as empresas do grupo.
Devido as suas características, seu regimento está baseado na LEI Nº
8.666, DE 21 DE JUNHO DE 1993, que estabelece necessidade de licitação
para aquisição de bens e serviços a partir de um valor pré-estabelecido.
2.2 Estratégia de Terceirização
A Tecnologia da Informação devido ao intenso volume de demandas de
projetos de desenvolvimento e manutenções e pela impossibilidade de
contratação de novos recursos internos para assumir essas demandas decidiu
contratar fábrica de software para atender seus clientes internos.
Uma das diretivas colocadas para a terceirização é que a empresa não
poderia estar dependente de apenas um fornecedor.
Fábrica de Software 6
A estratégia criada para atender as demandas de forma ágil, que traga
uma competição saudável entre fornecedores e que reduza o custo ao longo do
tempo para a organização será qualificar um grupo de fornecedores, levandando
em consideração critérios técnicos de qualidade, e a cada nova demanda os
fornecedores que estiverem tecnologicamente aptos a atender aquela
necessidade serão consultados e solicitados a apresentarem suas propostas
onde a de menor custo prezao, em igual proporção, será selecionada para o
atendimento da demanda.
Fábrica de Software 7
3 Conceituação
3.1 O que é Fábrica de Software
O termo Fábrica de Software vem sendo discutido desde o final dos anos
60 e evoluindo até os dias atuais [2].
No Brasil, o conceito começou a ser aplicado no início da década de 90 em
empresas de prestação de serviços
em tecnologia da informação e intensificou-se a partir de meados dessa
década. [1]
Como o nome já diz, a Fábrica de Software, para ser considerada desta
forma, deve possuir alguns atributos oriundos de uma Fábrica Industrial. Um
processo fabril constitui-se na produção de produtos em massa, incluindo
operações centralizadas de larga escala, tarefas simples e padronizadas,
controles padronizados, trabalhadores especializados, mas com poucas
habilidades, divisão de trabalho, mecanização e automação do processo.
A Fábrica de Software pode ter vários escopos de atuação, desde um
projeto de software completo até um projeto físico ou a codificação de programas
de computador.
Fábrica de Software pode ser definida como: “Um processo estruturado,
controlado de forma contínua considerando abordagens de engenharia
industrial, orientado para o atendimento a múltiplas demandas de natureza e
escopo distintas, visando a geração de produtos de software, conforme os
requerimentos documentados dos usuários e/ou clientes, da forma mais
produtiva e econômica possível.” [1]
3.2 Tipos de Fábrica de Software
As Fábricas de Software têm se organizado em dois tipos básicos:
Fábricas de Programas e Fábricas de sistemas [1].
3.2.1 Fábricas de Programas
Caracterizam-se por atuarem em apenas uma porção do processo
produtivo do software. Seu objetivo é codificar e testar programas conforme um
Fábrica de Software 8
acordo de níveis de serviços com o cliente ou usuário, considerando
especificação padrão de programas, critérios de qualidade e tempo de entrega.
Consiste na menor unidade de fábrica, consequentemente a menos complexa,
onde as etapas de modelagem do negócio, análise e projeto do sistema já foram
feitas, o principal insumo é uma ordem de serviço com uma especificação de
programa (padrão), cabendo à fábrica a execução das etapas de construção,
testes e ajustes unitários.
3.2.2 Fábricas de Projetos
As Fábricas de Projetos, por sua vez, atua com um pouco mais de
abrangência no processo de produção, englobando além das atividades
inerentes à Fábrica de Programas, fases como projeto conceitual, especificação
lógica, projeto detalhado da solução, realização de testes de integação e de
aceitação.
A Fábrica de Projetos pode se caracterizar como Fábrica de Projetos
Físicos, Fábrica de Projetos de Software ou Fábrica de Projetos Ampliada.
3.2.2.1 Fábrica de Projetos Físicos
Engloba somente o projeto detalhado, a construção e teste unitário
(Fábrica de Programas), o teste integrado e o teste de aceitação.
3.2.2.2 Fábrica de Projetos de Software
Engloba além da Fábrica de Projetos Físicos o projeto conceitual e a
especificação lógica. Fábrica de Projetos (Ampliada) tem esse tero, pois abrange
o que denominamos arquitetura de solução, que nada mais é do que um estágio
anterior à conceituação do software e que se preocupa em projetar uma solução
em que o software é somente um dos componentes. Outros componentes
podem ser as implantações de processos, hardware e serviços e equipamentos
de rede e de telecomunicações, por exemplo.
Fábrica de Software 9
3.2.2.3 Modelo Outsourcing de Sistemas
Existe também o modelo outsourcing de sistemas, que é como uma
especialização da Fábrica de Projetos dedicada exclusivamente a um cliente,
sendo que a operação deve ser absorvida por um terceiro de acordo com um
conjunto de critérios e regras previamente estabelecidas, normalmente através
de um SLA (Service Level Agreement), que descreve estes critérios, restrições e
procedimentoss de mudança no escopo e na avaliação do serviço.
3.3 Técnicas para utilização bem-sucedida da Fábric a de Software
Para um relacionamento bem sucedido entre o cliente e a Fábrica de
Programas é preferível que haja somente um ponto de contato entre ambos. Do
lado do cliente deve haver um responsável por organizar a demanda e enviá-la a
fabrica, gerenciar os níveis de serviço, as questões contratuais e demais
negociações do dia-a-dia. Do lado da fábrica, um responsável pelo recebimento
das ordens de serviço e pela expedição do produto para o cliente.
Para a utilização bem-sucedida de uma Fábrica de Programas deve ter um
compromisso de demanda mínima deve ser negociado e colocado em contrato,
assim como o tempo necessário para ajustes na fábrica que visam ao
atendimento de uma nova linguagem de programação (se for o caso). É
importante também saber os picos de demanda pois isso pode influenciar
negativamente nos acordos de níveis de serviço. Grandes flutuações de
demanda devem ser com antecedência pelo cliente.
Deve haver padronização de ordens de serviço independente do padrão do
cliente, e também padrão de especificação de programas. Deve ser incluído em
contrato um padrão a ser seguido. A fábrica deve ter tabelas padrões com
estimativas de atendimentos para serem usadas pelo cliente quando este enviar
ordens de serviço para a Fábrica de Programas.
A Fábrica de Programas deve demonstrar capacidade de garantir Plano de
Contingência (ou de risco) e segurança de todas as informações contidas no
projeto.
É importante flexibilidade através dos programadores e do programa de
parceria que a fábrica venha a ter. Cada programador deve saber mais de uma
Fábrica de Software 10
linguagem para que se possa expandir a capacidade da Fábrica de Programas.
A fábrica deve montar algum esquema de preparação contínua de mão-de-obra.
Os modelos de qualidade de software ou aplicáveis, tais como CMM, ISO e
PMI por exemplo podem fazer grande diferença no tanto para excelência quanto
no ponto de vista do marketing. Em licitações governamentais estes são itens
qualificadores.
Para um bom relacionamento entre o cliente e a Fábrica de Projetos, como
na Fábrica de Programas, é preferível eu haja somente um ponto de contato
entre ambos.
Para uma Fábrica de Projetos ser uma operação bem-sucedida, todos os
compromissos devem ser colocados em contrato, como o de demanda, assim
como citado em Fábrica de Programas. Também deve haver padronização das
ordens de serviço, treinamento contínuo da mão de obra, controle da execução
da Ordem de Serviço, gestão dos riscos e da segurança, gestão e controle da
qualidade. A estimativa deve ser feita com base no escopo do projeto e suas
regras devem constar claramente no contrato de prestação de serviços.
As Ordens de Serviço de uma Fábrica de Projetos são mais complexas
pois tratam de requisitos preliminares do cliente ou usuário, contendo
funcionalidades do software, onde o mesmo será usado, quem irá usá-lo,
quando, restrições de uso, legislação e normas a serem seguidas, desenho da
arquitetura preliminar, requisitos não funcionais e requisitos não técnicos. A
Fábrica de Projetos deve possuir um padrão, podendo absorver o padrão do
cliente, sendo estabelecido em contrato.
Os modelos de qualidade de software também são muito importantes
neste caso.
Fábrica de Software 11
4 Seleção de Fornecedores
De acordo com a necessidade imposta pelo regimento da organização
será elaborado um edital de qualificação de empresas.
Todas as empresas desenvolvedoras de software que atuem no modelo
de fábrica de projetos e que possuam escritório no RJ poderão participar do
processo de qualificação.
As empresas qualificadas deverão atingir um índice técnico mínimo
(descrito abaixo) para poderem formar o banco de dados de fornecedores.
As empresas qualificadas ficarão registradas com seu índice de
qualificação (IQ) e a tecnologia que estão aptas a atuar. A cada ano haverá um
processo de re-qualificação para atualizar o banco de dados da empresas e
permitir que novas empresas tornem-se aptas a trabalhar com a organização.
Os fornecedores que já tiverem atuado em projetos terão seu Índice de
desempenho em Projetos (IDP) registrado no banco de dados.
Tanto o IQ quanto o IDP serão usados como critério de desempate no
caso de fornecedores empatarem em preços em uma proposta.
Um fornecedor poderá ser desqualificado e retirado do banco de dados
caso o desempenho do mesmo em um projeto não tenha atingido os SLAs
enviados na ordem de Serviços.
Quando uma ordem de serviço for enviada aos fornecedores, esta deverá
indicar em que fases do ciclo de vida de desenvolvimento / manutenção o
fornecedor irá atuar.
As propostas enviadas pelos fornecedores deverão ser custeadas pela
técnica de contagem de pontos de função e devem explicitar claramente a o total
de pontos, o preço médio cobrado por ponto de função e a produtividade que se
está utilizando. E só poderão custear as fases indicadas na ordem de serviço. A
contagem detalhada também deverá fazer parte da proposta.
Fábrica de Software 12
Tabela 1 – Critérios de Qualificação Obrigatórios
CRITÉRIOS
COMERCIAL
Vedada à participação de empresa em regime de falência ou concordata.
Não poderá participar desta licitação empresa que tenha sócio ou funcionário que seja
integrante, titular ou suplente, de órgãos diretivos, normativos ou consultivos de
quaisquer das entidades integrantes.
Capital mínimo de R$ 100.000,00 (cem mil reais)
Situação regular perante o Fundo de Garantia por Tempo de Serviço (Certificado de
Regularidade do FGTS (CRF))
Situação regular perante a seguridade social (Certidão Negativa de Débito do INSS
(CND))
Declaração de possuir escritório ou sua sede na cidade do Rio de Janeiro
TÉCNICO
No mínimo 01 (um) Atestado de Aptidão Técnica em nome da empresa licitante,
fornecidos por órgãos públicos ou empresas privadas, que comprovem de forma clara e
objetiva a realização de serviços compatíveis com o objeto desta licitação em cada uma
das tecnologias em que a empresa se qualifica. Cada atestado deverá totalizar 10.000
(dez mil horas) de serviços.
Os atestados deverão conter nome, função e telefone (para pedido de informações) do
responsável pelo fornecimento da declaração, bem como manifestação sobre os
serviços prestados. Não serão aceitos atestados fornecidos pela própria organização.
Comprovação de que o Gerente de Projetos a ser alocado neste projeto possui
Certificação PMP (Project Management Professional), emitido pelo Project Management
Institute (PMI) ou órgão competente autorizado por este.
Comprovação de que o Analista de Requisito a ser alocado neste projeto possui CFP
(Certified Function Point), emitido pelo IFPUG (International Function Point Users
Group).
Fábrica de Software 13
4.1 Determinação de Pontuação Técnica
Tabela 2 - Fator: Qualidade (Peso 6)
ITEM DESCRIÇÃO PONTOS
PROCESSO
01
A Licitante comprovou que possui certificado(s) de
qualidade na norma Séries ISO-9001:2000, emitido por
órgão credenciado pelo Inmetro, abrangendo
explicitamente Fábrica de Software
30
02
A Licitante comprovou que possui certificado(s) de
qualidade na norma Séries ISO-9001:2000, emitido por
órgão credenciado pelo Inmetro.
10
03
A Licitante comprovou Certificação CMM - Nível 2 ou
superior , por meio de Certificado emitido por Órgão ou
Consultoria credenciado para este fim.
10
RH
04
A Licitante será pontuada em função da quantidade de profissionais
contratados pela empresa devidamente certificados na categoria PMP
(Project Management Professional) sendo que a certificação deverá ser
emitida pelo PMI - Project Management Institute ou representante
credenciado para este fim.
- A Licitante comprovou possuir 2 profissionais no seu 1
- A Licitante comprovou possuir 3 profissionais no seu 5
- A Licitante comprovou possuir 5 ou mais profissionais no
seu quadro de pessoal 10
05
A Licitante será pontuada em função da quantidade de profissionais
contratados pela empresa devidamente certificados como IBM
Rational Consultant na disciplina RUP (Rational Unified Process) sendo
que a certificação deverá ser emitida pela IBM ou representante
credenciado para este fim.
- A Licitante comprovou possuir 1 profissional no seu
quadro de pessoal. 5
Fábrica de Software 14
ITEM DESCRIÇÃO PONTOS
- A Licitante comprovou possuir 2 ou mais profissionais no
seu quadro de pessoal. 10
06
A Licitante será pontuada em função da quantidade de profissionais
contratados pela empresa devidamente certificados na técnica de
Análise de Ponto de Função , por meio do CFPS (Certified Function
Point Specialist) vigente, em conformidade com a Metodologia IFPUG-
International Function Point Users Group, sendo que a certificação
deverá ser emitida pelo IFPUG ou representante credenciado para este
fim.
Apresentou 2 profissionais certificados 1
Apresentou 3 profissionais certificados 5
Apresentou 4 ou mais profissionais certificados 10
07
A Licitante comprovou parceria técnica em software com
fabricantes/fornecedores de tecnologia mediante apresentação de
declaração ou certificado emitido pelo fabricante ou seu representante
legal no Brasil.
Microsoft Certified Partner 1
Microsoft Gold Certified Partner 5
Microsoft Gold Certified Partner na competência:
Custom Development Solutions 10
08
A Licitante será pontuada em função da quantidade de
profissionais contratados pela empresa devidamente
certificados como MS MCP, MS MCAD, e MS MCSD emitida
pela Microsoft ou representante credenciado para este fim.
Apresentou 3 profissionais certificados 1
Apresentou 5 profissionais certificados 5
Apresentou 10 ou mais profissionais certificados 10
Fábrica de Software 15
Tabela 3 - Fator: Padronização Técnica (Peso 2)
ITEM DESCRIÇÃO PONTOS
1
A Licitante comprovou, através de atestado emitido por Órgão Público ou
Privado, experiência na prestação de serviços técnicos especializados de
desenvolvimento e/ou manutenção de sistemas de informação, utilizando-se de
uma ferramenta de apoio: Case UML com modelagem visual (entende-se
nesse quesito ferramentas como o Rational Rose e outros)
A Licitante apresentou 1 atestado 20
A Licitante apresentou 2 atestados 50
A Licitante apresentou 3 atestados 100
Tabela 4 - Fator: Desempenho (Peso 2)
ITEM DESCRIÇÃO PONTOS
1
A Licitante será pontuada em função da quantidade de horas contratadas de
serviços técnicos especializados de desenvolvimento e manutenção de sistemas
de informação nas tecnologias objeto deste contrato, tomando-se como base o
somatório do volume de horas dos atestados.
A Licitante apresentou atestado comprovando ter prestado
serviços com duração de 10.000 até 50.000 horas 20
A Licitante apresentou atestado comprovando ter prestado
serviços com duração de 50.001 até 100.000 horas 30
A Licitante apresentou atestado comprovando ter prestado
serviços com duração acima de 100.001 horas em um período de
um ano.
50
2
A Licitante será pontuada em função da quantidade de Pontos de Função de
serviços técnicos especializados de desenvolvimento e manutenção de sistemas
de informação.
A Licitante apresentou atestados comprovando ter prestado
serviços de 1.000 até 5.000 pontos de função. 20
A Licitante apresentou atestados comprovando ter prestado
serviços de 5.001 até 10.000 pontos de função. 30
A Licitante apresentou atestados comprovando ter prestado
serviços com duração acima de 10.001 pontos de função. 50
Fábrica de Software 16
4.2 Procedimentos de Determinação da Pontuação Técn ica
Para obter a pontuação técnica deverá ser somada a pontuação obtida
em cada um dos itens de cada fator da tabela anterior e multiplicando pelos seus
pesos correspondentes.
A soma dos pontos de cada fator será a Pontuação Técnica, como
demonstra a tabela abaixo.
Tabela 5 - Procedimentos de Determinação da Pontuação Técnica
FATOR PESO PONTUAÇÃO
MÍNIMA
PONTUAÇÃO NO
FATOR
TOTAL DE
PONTOS
Qualidade 6 18 PONTOS
Padronização
Técnica 2 20 PONTOS
Desempenho 2 40 PONTOS
PONTUAÇÃO TÉCNICA
(ÍNDICE QUALIFICAÇÃO – IQ)
Fábrica de Software 17
Tabela 6 - Tabela de Fases
FASE ATIVIDADE ARTEFATO % NO
PROJETO
Requisito
O objetivo desta fase é definir um
projeto, capaz de atender a
solicitação de serviço, identificando
as características do serviço, o tipo
de projeto, a estratégia a ser
seguida, as ações, os recursos
necessários e o prazo para a
execução do serviço solicitado.
Ordem de Serviço
(OS)
Escopo do Projeto
Requisitos de
Negócio
Estratégia
Cronograma
Protótipos
10%
Analise
O objetivo desta fase é definir como
sistema deverá responder às
requisições dos usuários através da
construção dos casos de uso do
sistema.
Requisitos do
Sistema
Modelo Lógico de
classes
Diagrama de
Estado
Diagrama de
Seqüência
Infra-estrutura
Tecnológica
5%
Projeto
O objetivo dessa fase e definir como
o sistema será implementado em
requisitos tecnológicos de acordo
com a linguagem de programação
escolhida.
Especificação
Física 10%
Implementação
Desenvolver os códigos necessários
ao funcionamento do sistema em
questão.
Aplicações, SP`s,
Triggers,
Constraints
Planejamento de
Testes
Distribuição do
Software
30%
Fábrica de Software 18
FASE ATIVIDADE ARTEFATO % NO
PROJETO
Teste
Efetuar os devidos testes na
aplicação para garantir que a mesma
funciona adequadamente.
Preparação de
Base de Dados
para Teste
Realização dos
Testes
Relatório de
Testes
Garantia de
Qualidade
10%
Homologação
Avaliar o funcionamento do sistema
verificando se o mesmo atende os
requisitos especificados para a
aplicação
Formulário de
Inconformidades 10%
Implantação Disponibilizar o sistema em ambiente
de produção
Plano de
Instalação
Sistema em
Funcionamento
5%
Gestão projeto Gerenciar a execução do projeto
Cronograma
Atas
Estabilidade de
Requisitos
10%
Gestão
configuração
Gerenciar as diversas versões do
sistema
Documento de
versões
Requisições de
Mudança
5%
Garantia
qualidade
Procedimentos para garantia de
qualidade do sistema
Relatório de
inconformidade 5%
Fábrica de Software 19
5 Modelo de Trabalho com a Fábrica de Software
5.1 Categorias da produção de SW
A produção de software pode ser vista sobre três categorias:
5.1.1 Projeto de desenvolvimento de software
Segue todo ciclo de vida de software ate a entrega do produto para o
cliente.
As fases principais desse ciclo de vida são: Requisito, Analise, Projeto,
Implementação, Teste, Homologação, Implantação, Gestão projeto, Gestão
configuração, Garantia qualidade.
5.1.2 Processos de manutenção de software
Os processos de manutenção de software são classificados como
manutenção corretiva, manutenção adaptativa e manutenção evolutiva.
5.1.2.1 Manutenção corretiva
Consiste na retirada de defeitos ou eliminação de falhas do software que
causem interrupção de alguma funcionalidade. A manutenção corretiva pode ser
emergencial ou não.
5.1.2.2 Manutenção adaptativa
Consiste na alteração de funcionalidade do software em virtude de
mudanças em legislação ou de requisitos de regulação, ou na otimização do
mesmo em face de mudanças tecnológicas. Este tipo de manutenção pode ser
emergencial
Fábrica de Software 20
5.1.2.3 Manutenção evolutiva
Introdução de novas funcionalidades ao software, face aos requisitos
donegocio, operacionais ou gerenciais.
5.1.3 Programação (codificação)
A partir de um projeto de especificação de programas é feito a codificação.
5.2 Ciclo de vida do processo
As fases do ciclo de vida são:
Tabela 7 - Fases do Ciclo de Vida
FASE ATIVIDADE
Requisito
O objetivo desta fase é definir um projeto, capaz de atender a
solicitação de serviço, identificando as características do serviço, o tipo
de projeto, a estratégia a ser seguida, as ações, os recursos
necessários e o prazo para a execução do serviço solicitado.
Analise
O objetivo desta fase é definir como sistema deverá responder às
requisições dos usuários através da construção dos casos de uso do
sistema.
Projeto
O objetivo dessa fase e definir como o sistema será implementado em
requisitos tecnológicos de acordo com a linguagem de programação
escolhida.
Implementação Desenvolver os códigos necessários ao funcionamento do sistema em
questão.
Teste Efetuar os devidos testes na aplicação para garantir que a mesma
funciona adequadamente.
Homologação Avaliar o funcionamento do sistema verificando se o mesmo atende os
requisitos especificados para a aplicação
Fábrica de Software 21
FASE ATIVIDADE
Implantação Disponibilizar o sistema em ambiente de produção
Gestão projeto Gerenciar a execução do projeto
Gestão
configuração Gerenciar as diversas versões do sistema
Garantia
qualidade Procedimentos para garantia de qualidade do sistema
5.3 Processo de Desenvolvimento e descrição dos art efatos a serem usados
Para cada fase do ciclo de desenvolvimento serão necessários os
artefatos, conforme a tabela a seguir:
Tabela 8 - Fases x Artefatos
FASE ARTEFATO
Requisito
Ordem de Serviço (OS)
Escopo do projeto
Requisitos de Negócio
Estratégia
Cronograma
Protótipos
Analise
Requisitos do Sistema
Modelo Lógico de classes
Diagrama de Estado
Diagrama de Seqüência
Infra-estrutura Tecnológica
Projeto Especificação Física
Fábrica de Software 22
FASE ARTEFATO
Implementação
Aplicações, SP`s, Triggers, Constraints
Planejamento de Testes
Distribuição do Software
Teste
Preparação de Base de Dados para Teste
Realização dos Testes
Relatório de Testes
Garantia de Qualidade
Homologação Formulário de Inconformidades
Implantação Plano de Instalação
Sistema em Funcionamento
Gestão projeto
Cronograma
Atas
Estabilidade de Requisitos
Gestão configuração Documento de versões
Requisições de Mudança
Garantia qualidade Relatório de inconformidade
5.4 Fluxo Operacional de Trabalho
Tabela 9 - Fluxo Operacional de Trabalho
PROCEDIMENTO RESPONSÁVEL
Elaborar a Ordem de Serviços com as definições do projeto e a
indicação das fases contratadas; CONTRATANTE
Buscar no banco de dados de fornecedores os candidatos
habilitados para a tecnologia escolhida CONTRATANTE
Enviar Ordem de serviços aos fornecedores qualificados
solicitando proposta CONTRATANTE
Fábrica de Software 23
PROCEDIMENTO RESPONSÁVEL
Efetuar Contagem Estimativa de Pontos de Função e elabora
estimativa de recursos, Custos e Prazos baseando-se nos Pontos
de Função e Produtividade.
PROPONENTE
Selecionar proposta de menor custo e prazo usando os critérios
de IQ quanto o IDP em caso de empate. CONTRATANTE
Divulga as proponentes a empresa vencedora da Ordem de
Serviços e elabora o contrato. CONTRATANTE
Elabora o plano do projeto para ser executado CONTRATADA
Disponibiliza o ambiente inicial desenvolvimento do projeto CONTRATADA
Acompanha o andamento do projeto, avalia as métricas e SLAs de
atendimento CONTRATANTE
Aprova os produtos entregues em cada fase, mediante aprovação
formal e efetua os pagamentos combinados.
Obs.: Esta deve constar na fatura de pagamento da fase.
CONTRATANTE
No final do projeto deve ser realizada atualização na Contagem de
Prontos de Função, que guiará os acertos financeiros. CONTRATADA
Encerrar o projeto atualizando o IDP do fornecedor para aquele
projeto. CONTRATANTE
Fábrica de Software 24
6 Modelo de gestão da Fábrica de Software
6.1 SLA
Tabela 10 - SLA
Índice Nível Esperado Tolerância Não Atendimento Pe nalidade Aferição
* Entrega do projeto no prazo
estimado
* Entrega do projeto no
prazo estimado no contrato
* Não entrega do projeto no
prazo estimado no contrato
* Multa de 10% do valor do projeto
a cada 10% de atraso no
cronograma do projeto
Data Fim do Projeto
* Taxa de Erros por Ponto de
Função
* 0,25 por Ponto de Função * 5% a mais que o nível
esperado
* Taxa de erro acima do
tolerado
* Multa no valor de 2% do custo
do projeto. Em caso de
reincidência, a contratante poderá
solicitar a troca da equipe.
Mensal
* Taxa de Bugs corrigidos * 100% de correção dos
erros encontrados
* 100% de correção dos
erros graves, 50% de
correção dos erros
médios e 30% de
correção dos erros
simples
* Correção de erros abaixo
dos níveis tolerados
* Alocação de esforços extras,
pela contratada, sem prejuízo do
andamento do projeto, aos custos
da contratada, para correção dos
Bugs até a próxima aferição
Mensal
* Atendimento das Solicitações
de Mudanças
* Máximo de 5 dias úteis
para o começo do
atendimento da solicitação
* Mais 3 dias úteis para o
atendimento da
solicitação
* Não começar o
atendimento da Solicitação
de Mudança após 8 dias
úteis
* Aumento de recursos pela
contratada, com possível
negociação de preço com a
contratante
A Cada dois meses
Fábrica de Software 25
6.2 Métricas
Tabela 11 - Métricas
Tipos de Medições Questões Medições
Medições realizadas para o desenvolvimento * Qual o progresso do projeto em relação ao
planejado?
* Dias em atraso para alcance dos milestones
Medições realizadas para o desenvolvimento * Qual o esforço gasto em cada fase de
desenvolvimento do projeto?
* Distribuição do esforço por fase de desenvolvimento
Medições realizadas para o desenvolvimento * Qual a previsão de custo para o projeto? * Estimativa de Custo
Medições realizadas para o desenvolvimento * Qual o progresso do projeto em relação ao
planejado?
* Estimativa de prazo
Medições realizadas para o desenvolvimento * Qual o progresso do projeto em relação ao
planejado?
* Estimativa de produtividade
Medições realizadas para o desenvolvimento * Qual o nível de qualidade esperada para o
Projeto?
* Estimativa de qualidade
Medições realizadas para o desenvolvimento * Qual o tamanho estimado do software? * Estimativa de tamanho do software
Medições realizadas para o desenvolvimento * Qual a produtividade média da equipe? * Produtividade da equipe por fase de desenvolvimento
Fábrica de Software 26
Tipos de Medições Questões Medições
Medições no desenvolvimento
* Em que fase do desenvolvimento as solicitações
de mudanças ocorrem com maior freqüência?
* O número de solicitações de mudança está
diminuindo com o tempo?
* Número de mudanças de requisitos solicitadas por fase
de desenvolvimento
Medições no desenvolvimento * Qual o tamanho do software? * Complexidade do software
Medições no desenvolvimento * Qual o orçamento gasto até o momento no
projeto?
* Custo realizado
Medições no desenvolvimento * Qual o desvio entre o esforço real utilizado e o
planejado para cada atividade?
* Esforço planejado x realizado por iteração
Medições no desenvolvimento
* Qual o número de problemas registrados nas
revisões?
* Quantos problemas ainda não foram resolvidos?
* Qual a fase do projeto com maior número de
problemas registrados?
* Número de problemas registrados x Número de
problemas resolvidos
Medições no desenvolvimento * Qual a quantidade de bugs em aberto? * Número de bugs registrados x Número de bugs fechados
Medições no desenvolvimento * Qual o andamento do projeto? * Número de Pontos de Função implementados x
planejados por iteração
Medições no desenvolvimento * Os requisitos planejados para serem atendidos * Número de mudanças de requisitos realizadas x Número
Fábrica de Software 27
Tipos de Medições Questões Medições
no release estão sendo implementados? de mudanças solicitadas
Medições realizadas para a gestão do produto * O sistema está sendo entregue com um
percentual aceitável de erros?
* Número de Bugs/PF registrados por teste da iteração
Medições realizadas para a gestão do produto * O sistema está sendo entregue com um
percentual aceitável de erros?
* Número de Bugs encontrados após release
Medições realizadas para a melhoria dos
processos
* Qual o custo por atendimento das solicitações? * Custo e produtividade do atendimento
Medições realizadas para a melhoria dos
processos
* Qual o tamanho real do software entregue? * Tamanho do software entregue
Estratégica * Qual a produtividade da fábrica de software? * Benchmarking da produtividade do desenvolvimento
Estratégica * Qual a produtividade das equipes e tecnologias? * Análise de produtividade entre equipes e tecnologias
Estratégica * Qual a qualidade do software produzido pela
fábrica de software?
* Benchmarking da qualidade do software
Fábrica de Software 28
7 Planejamento da Demanda de Projetos
Para que os forncedores possam se preparar para o atendimento às
necessidades da organização, trimestralmente serão enviados a todos os
fornecedores as estimativas de demanda para o trimestre em cada tecnologia.
A elaboração das necessidades será dividida de acordo com o tipo de
demanda: projetos, manutenções evolutivas e necessidades de correções em
sistemas fora de garantia.
As demandas de projetos serão feitas com base no planejamento
estratégico da organização e os projetos derivados destes.
As demandas de melhorias e evoluções em sistemas seguirão através
das listas de pendências mantidas pelos gestores dos sistemas e pela TI e das
indicações de mudanças em relação às exigências legais.
As demandas de correção serão avalidas e planejadas em função de
histórico de chamados existentes em anos anteriores.
Fábrica de Software 29
8 Processo para implantação da FS na organização
Partimos do pressuposto que as questões de estrutura e infra-estrutura já
estejam definidas.
Passos do projeto para operação:
Figura 1 - Processo para implantação da FS na organização
A implantação da fabrica por ser um projeto de risco deve ser formalmente
documentada e colocada sob controle de configuração.
Devemos definir uma estratégia de desenvolvimento do projeto de
implantação, cuja principal missão é reduzir a complexidade do projeto.
A entrada principal para o planejamento da implementação é constituída
por suas especificações técnicas e pela estratégia de desenvolvimento.
8.1 Passos para o planejamento da implantação da fá brica
Estes dados vão orientar a equipe pela execução do projeto:
- Definição do WBS do projeto
- Definição das atividades para geração de cada produto previsto para ser
entregue pelo projeto.
Identificação dos Itens de Qualificadores e Ganhadores de Pedido
Determinação dos Objetivos de desenpenho da Operação
Determinação da Estrutura de Operação
Determinação da Infra-Estrutura da Operação
Especificação para Fábrica
Fábrica de Software 30
- Definição sobre precedência entre as atividades
- Estimativa de prazos e recursos
- Estimativa de custos
- Elaboração do plano de qualidade
- Elaboração do plano organizacional
- Elaboração do plano de aquisições de recursos
- Elaboração do plano de riscos
- Elaboração do plano de comunicação
- Elaboração do cronograma do projeto
- Elaboração do orçamento de custo do projeto
- Elaboração dos critérios de controle de cronograma, custo e escopo
- Elaboração do plano do projeto.
8.2 Características importantes que devem ser utili zadas no projeto
- Selecionar um gerente de projetos com autoridade(formal e informal)
dentro da empresa para ser o responsável pelo projeto.
- Adotar uma abordagem incremental para implantação da fabrica, pois é
muito difícil implantar tudo de uma só vez.
- Priorizar a gestão de operação, gestão do projeto e processo de
construção
- Implementar as ferramentas básicas para automação da fabrica,
principalmente gestão de demanda.
- Se for fazer desenvolvimento interno de ferramentas de apoio, alocar
recursos dedicados.
- O projeto tem que ter um orçamento especifico e deve haver
comprometimento da empresa em seguir o planejamento.
Fábrica de Software 31
9 Conclusão
Este trabalho tem como objetivo especificar o modelo de trabalho que será
adotado pela empresa contratante, e pela empresa contratada, para atender a
necessidade de terceirização dos trabalhos de Tecnologia da Informação quanto
ao desenvolvimento de Sistemas de Informação. Este processo visa criar
vínculos de trabalho com diversos prestadores de serviços de TI, montando uma
rede de fornecedores conhecidos e qualificados para a prestação dos serviços
de desenvolvimento de software.
A contratação de fornecedores foi o meio escolhido pela empresa para
reduzir os custos com o desenvolvimento de sistemas, já que a área de negócio
principal da empresa não é voltada para serviços de TI, sendo estes apenas
para suporte dos processos de negócio da empresa.
A adoção do modelo de fábrica de projetos, para as empresas contratadas,
retira da contratante o peso da gerência de todo o ciclo de vida do
desenvolvimento do projeto, mas mantém o conhecimento do modelo de negócio
dentro da empresa contratante.
Este processo aumentará a qualidade dos produtos desenvolvidos,
reduzirá os prazos para desenvolvimento de novos sistemas, reduzirá o ciclo das
manutenções corretivas e permitirá o maior controle do alinhamento dos projetos
de TI com o modelo de negócio da organização.
Fábrica de Software 32
10 Bibliografia
Fernandes, Aguinaldo Aragon e Teixeira, Descartes d e Souza. 2007.
Fábrica de Software: Implantação e Gestão de Operações. 3. São Paulo : Atlas,
2007. ISBN 978-85-224-3690-3.
The Software Factory: a historical Interpretation. Cusumano, M. A. s.l. :
IEEE.