TÉCNICAS PARA IMPLEMENTAR PROCESSOS DE PRODUÇÃO DE SOFTWARE EM COM CARACTERÍSTICAS FABRIS José...
-
Upload
tania-mirandela-ferreira -
Category
Documents
-
view
224 -
download
1
Transcript of TÉCNICAS PARA IMPLEMENTAR PROCESSOS DE PRODUÇÃO DE SOFTWARE EM COM CARACTERÍSTICAS FABRIS José...
TÉCNICAS PARA IMPLEMENTAR PROCESSOS DE PRODUÇÃO DE SOFTWARE EM COM CARACTERÍSTICAS FABRISJosé Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Quem sou eu? Tecnólogo em Processamento de Dados –
FEMA. Mestre em Ciência da Computação – UFSCar. Doutor em Engenharia da Produção – EP-USP.
Professor de Engenharia de Software da FEMA e da FATEC.
Consultor na área de processo de produção e qualidade de software.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Departamento de Informática - FEMA
Vinte anos de existência. Em torno de 1200 alunos formados. Cursos: Tecnologia em Processamento de
Dados e Ciência da Computação. 13 professores da área atuam no
departamento. Pesquisa:
Engenharia de Software, IA, Interface Homem-Máquina.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Departamento de Informática da FATEC
FATEC: 50 unidades instaladas no Estado de SP.
FATEC – Ourinhos: 800 alunos formados. Quinze anos de existência. Curso de Analise de Sistemas e
Tecnologias da Informação. 30 professores atuam na área de
informática.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Estrutura do curso Parte 1 – Análise quantitativa e
qualitativa do mercado de produção de software na esfera do BRIC.
Parte 2 – Processo de produção de software.
Parte 3 – Processo de produção de software.
Parte 4 – As fábricas japonesas e brasileiras.
Parte Final – Framework para implementação de um processo fabril.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise quantitativa
BRICJosé Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise quantitativa Em um vôo para o Vale do Silício, viajam um
Brasileiro, um Russo, um Indiano e um Chinês. Todos eles estão levando um portfólio que
contempla as características tecnológicas e econômicas de seus respectivos países.
Em tempos de crise, a missão de nossos personagens é capturar capital externo, alavancando assim a produtividade de software em seus países.
Veja o que nossos personagens disseram aos americanos:
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise quantitativaBrasil Rússia Índia China
Habitantes 190 milhões 144 milhões 1.1 bilhões 1.3 bilhõesPIB 2007 U$ 1.5
trilhões. Sétimo maior do mundo.
U$ 1.45 trilhões.
U$ 2.9 trilhões
US$ 3.41 trilhões
PIB 2008 Crescimento de 5% em relação a 2007.
Crescimento de 8% em relação a 2007.
Crescimento de 8% em relação a 2007.
Crescimento de 9% em relação a 2007.
Inflação em 2007
4.5% 11,9% 5.5% 6.6%
Inflação em 2008
6.8% 12,5% 8% 7%
Exportações em 2008
US$ 194 bilhões.Superávit de 24 bilhões
US$ 283 bilhõesSuperávit de 110 bilhões
US$ 115 bilhões Déficit de 25%
US$ 937 bilhõesSuperávit de 28 bilhões
Análise quantitativaBrasil Rússia Índia China
Indústria Aeronáutica – 4ª do mundo.Automobilística – 6ª do mundo.
Gás.Química. Metais.Equipamentos agrícolas.
Software Alumínio. Armas. Têxtil. Roupas. Carros.Motos. Equipamentos eletrônicos. Cimento.
Alimentos Soja, café, cana e carne bovina.
x x x
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise quantitativaBrasil Rússia Índia China
Energia Auto-suficiente em petróleo desde de 2006,Grande exportador em 2014 (pré sal).Referência global em energia renovável (83% da produção em usinas hidrelétricas).Liderança mundial na produção de etanol.
Gás e petróleo movimentam a cadeia industrial russa.Exporta 5 milhões de barris por dia.
Importa 2 milhões de barris de petróleo por dia.
Importa 3 milhões de barris de petróleo por dia.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise quantitativaBrasil Rússia Índia China
Tecnologia 150 milhões de celulares.50 milhões de pessoas acessam a internet.Voto eletrônico.Sistema bancário financeiro.
170 milhões de celulares.30 milhões de pessoas acessam a internet.
269 milhões de celulares (crescimento de 327% no último ano).80 milhões de usuários de internet.
547 milhões de celulares.100 milhões de acesso a internet.
TI 2008/2009US$ 1.4 bi.offshore = US$ 70 bi.
Crescimento de 14% em 2007. 12% em 2008.1% das operações do off-shore.
Europa e Ásia excluindo a índia: 11%
Crescimento de 30% na área de TI 70% das operações off-shore.
3% das operações de off-shore.
Análise quantitativaBrasil Rússia Índia China
Meta 150.000 vagas.98.000 inscritos para o vestibular.44.000 matriculados.17.000 formados.
Possui o maior número de graduados se comparado a Europa.
Coloca no mercado 200 mil novos profissionais de TI no ano.
CMMI 79.8 no nível 5.
Menos que 10
323.151 no nível 5.
465.34 no nível 5
Idioma PortuguêsPoucos falam Inglês fluentemente.
Russo, grande parte da população fala Inglês fluentemente.
Inglês e Hindi
Chinês / Mandarim (suas variantes). A língua inglesa ainda não está institucionalizada.
Análise quantitativaBrasil Rússia Índia China
Salário anual programador
US$ 15.000 US$ 14.000 US$ 7.000 US$ 7.000
Salário anual gerente
US$ 32.000 US$ 36.000 US$ 19.000 US$ 36.000
Fuso (New York)
2 horas 8 horas 10 horas 11 horas
Conflitos Pacífico por natureza
Conflito com algumas ex-repúblicas URSS
Conflito constante com o Paquistão
Conflito constante com o Tibet
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Complemento da Análise quantitativa - Brasil
Maior comunidade de desenvolvedores JAVA do mundo (110.000).
Projeto brasileiro vencendo o JavaOne categoria inovação – 2004 e 2005.
Sistema bancário brasileiro – o melhor do mundo.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Complemento da Análise quantitativa - Brasil
Estados Unidos congregam 80% das operações de offshore do mundo.
Canada 1%
EMEA 17%
Asia/Pacific 2%
United States 80%
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Complemento da Análise quantitativa - Brasil
Brasil 1%
India84%
China2,1%
AL1,8%
Europe/Asia10,2%
MEA1%
Others 20%
United States 80%
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Complemento da Análise quantitativa - Brasil Brasil possui a maior plataforma
mainframe instalada no mundo. Brasil possui milhares de profissionais
com vasto conhecimento em COBOL. Grande parte das operações bancárias
ainda estão em COBOL.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Complemento da Análise quantitativa - Brasil
O Internet Home Banking Brasileiro possui o maior quantidade funcionalidades em um contexto mundial.
Proporcionalmente o Brasil possui o maior números de acesso a Internet Home Banking.
10% de todos os caixa eletrônicos instalados no mundo estão no Brasil.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa. Após a apresentação dos portfólios (BRIC), questiono:
1 – Se você fosse presidente de uma grande empresa de produção de software, em qual dos países do BRIC você investiria para estabelecer operações de offshore/outsourcing? Contra fatos não há argumentos, eu investiria na Índia. Eles falam inglês; ganham a metade quando comparado
com os russos e com os brasileiros; possuem 151 empresas certificadas CMMI-5; formam 200 mil profissionais TI por ano; irão movimentar USD 112 bilhões até 2012; congregam cerca de 70% das operações de offshore do mundo e o principal produto indiano é software, devido a sua qualidade. A Índia é um país emergente assim, como a Rússia, o Brasil e a China. A taxa de crescimento indiana só perde para a chinesa.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa 2 – A liderança na produção de aeronaves e de
automóveis, por parte do Brasil, não conta? O potencial produtivo na esfera energética não é um fator relevante para a tomada de decisão? Neste contexto não. Claro que não podemos desprezar
tais índices. Porém na cadeia produtiva, o setor agrícola é o que possui menor valor agregado. As aeronaves e os automóveis não possuem relevância direta na produção de software. A única vantagem brasileira e o seu sistema bancário financeiro e capacidade criativa de seus programadores. Para sanar esse problema, eu, enquanto empresa investidora, importo-os facilmente ou instalo uma pequena subsidiária no Brasil.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa.
O que fazer para virar o jogo?
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Melhorar as políticas:
No contexto governamental; No contexto empresarial; No contexto educacional.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera governamental:
carga tributária: pagamos 40% do que arrecadamos para sustentar o próprio governo.
Salário do programador no Brasil: US$ 15.000 – 40% = US$ 9.000 (fora a carga
tributária trabalhista) Salário do programador na índia:
US$ 7.000,00José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera empresarial:
69% das empresas de software desenvolvem controle de versão.
A gerência dos requisitos é feita 24,4%. Estimativa de custo é desenvolvida em 55% e a
estimativa de esforço em 45,7%. Já a estimativa de tamanho é feita em 29%. A Gerência de risco é feita em 11,8% das empresas. Gestão de mudança, 10,4%. Planejamento formal dos testes, 37,8%. Utilização de depurador, 39%.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera educacional:
Aluno e profissional de mercado: Existe algo mais do que JAVA e .NET... Quem de vocês conhece FPA?
Os brasileiros não conseguem ler textos em inglês.
Os brasileiros não conhecem teste de software.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera educacional:
A questão do teste: Agosto de 2008; Ministrando um tutorial sobre teste de software; Solicitei aos programadores a leitura do via
teclado de algumas variáveis: Código; Nome; Idade; CPF.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera educacional:
A questão do teste: Teste o produto antes da apresentação para o
cliente; Passado alguns minutos todos entregaram o produto
e me garantiram que o programa estava testado. Apliquei aquilo que chamo o teste do óbvio:
1 - Entre com zero para código; 2 - Entre com um número negativo para o código; 3 - Digite branco para o nome; 4 - Digite zero para idade;
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera educacional:
Apliquei aquilo que chamo o teste do óbvio: 5 - Digite um número negativo para idade; 6 - Digite a letra A para idade; 7 - Digite um CPF inválido.
Resultado: 9 programadores; 9 programas sendo desenvolvido; 7 casos de testes solicitados, totalizando assim 63 testes
efetuados; Percentual de erros encontrados detectados: 74% (47
erros); Média de erros por programadores neste programa: 5,22.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa Na esfera educacional:
As aberrações em programação:if (($_REQUEST["login"] == “admin”) &&
($_REQUEST["senha"] == “1234″)) { header(”Location: index_autenticado.php”);} else { header(”Location: index.php?mensagem=Login
%20invalido”);}
x = 5 + 3;
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Análise qualitativa
“Somos especialistas em organizar o processo de
produção das empresas dos outros porém somos
medíocres quando se trata da organização de nosso
próprio processo”.
Processo de produção de software
Definições sobre processo de
softwareJosé Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Processo de produção de software
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Processo de produção de software
Empinando um software ou
programando uma pipa?
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Processo de produção de software
Estruturando os dados gerados
após “empinar o software”
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Processo de produção de software
“Fábrica de software: a teoria
do óbvio.”José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábrica de software Segundo CUSUMANO (1989), o termo fábrica de
software foi utilizado, pela primeira vez, na década de 1960, no Japão. Várias empresas associam o termo ao mero desenvolvimento de software; entretanto, empresas que não atendam características como: produção em larga escala; padronização de tarefas; padronização de controle; divisão do trabalho; mecanização e automatização, não podem ser consideradas fábricas de software. Para o autor, o desenvolvimento de uma fábrica implica nas boas práticas da engenharia de software aplicadas sistematicamente.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábrica de Software Já BEMER (1969) define fábrica de software
como um ambiente no qual se constrói programas e se efetuam testes. Neste ambiente devem existir ferramentas para realizar as ações de construir e testar. Uma fábrica deve possuir medidas de produtividade e qualidade, os registros financeiros devem ser mantidos por custo da programação e a forma de gerenciamento deve dar subsídios à previsão e à estimativa de dados de futuros projetos.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábrica de Software Para BASILI et. al. (1992), uma
organização com características de fábrica de software deve possuir uma estrutura de construção de software baseada em componentes. Os componentes utilizados podem ser desenvolvidos pela fábrica de componentes (ou unidade de produção de componentes). Através desta definição pode-se concluir que uma fábrica de componentes é a base para a implementação de uma fábrica de software.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábrica de Software Segundo LI et. al. (2001), uma fábrica de
software deve possuir: um conjunto de ferramentas padronizadas para a construção do produto; bases históricas para o gerenciamento de projetos e; principalmente, um alto grau de reuso de código no processo de produção de um determinado software.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábrica de Software FERNSTROM et. al. (1992) definem que
uma organização fabril para o desenvolvimento de software deve estar calcada na questão “única do software”, isto é, todo software é único, porém partes individuais são repetidas em vários projetos. O conceito fabril deve alicerçar o desenvolvimento, armazenamento e montagem das partes repetidas em um produto único.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas japonesas da década de 70
Empresas InsumosLevantamento de Requisitos
Especificação de projeto
Projeto de software baseado em ordens de serviço
Hitachi Fábrica projetos ampliada
Toshiba Fábrica projetos ampliada
NEC Fábrica de projetos
Fujitsu Fábrica projetos ampliada
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas japonesas da década de 70
Empresas AtividadesHitachi Modelagem de negócio, projeto de software,
codificação, teste e entrega.Toshiba Levantamento de requisitos, modelagem de negócio,
projeto de software, codificação, teste, instalação e manutenção.
NEC Projeto de software, implementação, teste unitário, teste de integração e inspeção.
Fujitsu Análise de sistemas; projeto físico do software; projeto modular; programação; testes: modular, de integração de sistema, operacional e de aceitação; entrega e; manutenção.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas japonesas da década de 70
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas brasileirasEmpresas Insumos
Levantamento de Requisitos
Especificação de projeto
Projeto de software baseado em ordens de serviço
EMPRESA A Fábrica projetos ampliada
EMPRESA B Fábrica projetos ampliada
EMPRESA C Fábrica projetos ampliada
EMPRESA D Fábrica de projetos
EMPRESA E Fábrica projetos ampliada
EMPRESA F Fábrica projetos ampliada
Fábricas brasileirasEmpresas Tópicos da teoria de processo de software
Modelo de processo
Atividades Características (tendendo ao Unified Process ou ao eXtreme Program)
EMPRESA A Incremental Levantamentos de requisitos, modelagem de negócio, projeto de software, equalização, codificação, teste e entrega
Não utiliza práticas advindas da família de processo ágeis.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas brasileirasEmpresas Tópicos da teoria de processo de software
Modelo de processo
Atividades Características (tendendo ao Unified Process ou ao eXtreme Program)
EMPRESA B Incremental Levantamento de requisitos, modelagem de negócio, projeto de software, equalização, codificação e teste.
Não utiliza práticas advindas da família de processo ágeis.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas brasileirasEmpresas Tópicos da teoria de processo de software
Modelo de processo
Atividades Características (tendendo ao Unified Process ou ao eXtreme Program)
EMPRESA C Incremental Levantamento de requisitos, modelagem de negócio, projeto de software, equalização, codificação e teste.
Não utiliza práticas advindas da família de processo ágeis.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas brasileirasEmpresas Tópicos da teoria de processo de software
Modelo de processo
Atividades Características (tendendo ao Unified Process ou ao eXtreme Program)
EMPRESA D Incremental Levantamento de requisitos, projeto de software, equalização, codificação e teste
Não utiliza práticas advindas da família de processo ágeis.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas brasileirasEmpresas Tópicos da teoria de processo de software
Modelo de processo
Atividades Características (tendendo ao Unified Process ou ao eXtreme Program)
EMPRESA E Incremental Coleta dos requisitos, modelagem de negócio, projeto de software, equalização, produção de código, teste, implantação e revisão.
Utiliza algumas práticas advindas da família de processo ágeis
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Fábricas brasileirasEmpresas Tópicos da teoria de processo de software
Modelo de processo
Atividades Características (tendendo ao Unified Process ou ao eXtreme Program)
EMPRESA F Misto entre evolucionário, focado na técnica de prototipação e incremental
Levantamento de requisitos, análise de sistemas, projeto de software, equalização, codificação, teste, entrega e manutenção
Não utiliza práticas advindas da família de processo ágeis.
José Augusto Fabri – [email protected] 2009 – Ilhéus – Bahia
Comparando brasileiros e japoneses
Framework para implementação de um processo fabril.
José Augusto FabriERBASE 2009 – Ilhéus – Bahia
Conclusões e Debate junto ao público
http://engenhariasoftware.wordpress.com