Guaratinguetá - SP 2016 SILAS DIAS ROMANHA UM MODELO DE FÁBRICA DE SOFTWARE EM INSTITUIÇÕES DE ENSINO SUPERIOR 1 Silas Dias Romanha UM MODELO DE FÁBRICA DE SOFTWARE EM INSTITUIÇÕES DE ENSINO SUPERIOR Dissertação de Mestrado apresentado ao Conselho do Curso de Mestrado Profissional em Engenharia de Produção da Faculdade de Engenharia do Campus de Guaratinguetá, Universidade Estadual Paulista, como parte dos requisitos para obtenção do diploma de Mestrado Profissional em Engenharia de Produção. Orientador: Prof. Dr. José Roberto Dale Luche Co-orientador: Prof. Dr. Jorge Muniz Júnior Guaratinguetá 2016 2 R758u Romanha, Silas Dias Um Modelo de Fábrica de Software em Instituições de Ensino Superior / Silas Dias Romanha – Guaratinguetá, 2016. 106p. f : il. Bibliografia: f. 59-65 Dissertação (Mestrado) – Universidade Estadual Paulista, Faculdade de Engenharia de Guaratinguetá, 2016. Orientador: Prof. Dr. José Roberto Dale Luche Coorientadora: Prof. Dr. Jorge Muniz Junior 1. Software – desenvolvimento. 2. Ensino superior. I. Título CDU 681.3.06(043) 3 Silas Dias Romanha BANCA EXAMINADORA: Maio de 2016 4 DADOS CURRICULARES Silas Dias Romanha NASCIMENTO 20.12.1987 – BELO HORIZONTE / MG FILIAÇÃO Wagner de Souza Romanha Telma Dias Romanha 2006/2009 Curso de Graduação Sistemas de Informação – Associação Educacional Dom Bosco 2010/2012 Curso de Pós-Graduação em Gestão de Negócios e Finanças, na Associação Educacional Dom Bosco. 5 de modo especial, à minha esposa Alanna, sem a qual eu não teria sido capaz de chegar onde cheguei e que sempre me apoiou em todos os momentos. 6 “Cada sonho que você deixa para trás, é um pedaço do seu futuro que deixa de existir. ” Steve Jobs 7 ROMANHA, S. D. UM MODELO DE FÁBRICA DE SOFTWARE EM INSTITUIÇÕES DE ENSINO SUPERIOR. 2016. Dissertação de Mestrado Profissional (Mestrado Profissional em Engenharia de Produção) – Faculdade de Engenharia do Campus de Guaratinguetá, Universidade Estadual Paulista, Guaratinguetá, 2016. RESUMO Este trabalho aborda os aspectos relacionados à implantação de Fábrica de Software (FS) em Instituições de Ensino Superior (IES) no Brasil e busca identificar fatores que influenciam tais instituições na decisão de adotar o referido modelo, assim como os fatores de risco e dificuldades normalmente encontradas durante o processo. A análise realizada neste estudo permite que IES possam se atentar a aspectos que facilitem a implementação de uma Fábrica de Software em seu ambiente acadêmico. O trabalho utiliza como método a pesquisa de campo, a pesquisa documental e apresenta uma análise dos resultados com as instituições pesquisadas. A partir dos resultados observados nestas IES, é apresentada uma proposta de implementação e gerenciamento de Fábrica de Software Acadêmica (FSA), aprovada e implementada na Associação Educacional Dom Bosco (AEDB), incluindo seus resultados parciais. PALAVRAS-CHAVE: Fábrica de Software. Métodos ágeis de Desenvolvimento de Software. Scrum. Instituição de Ensino Superior. 8 ROMANHA, S. D. A MODLE OF SOFTWARE FACTORY IN HIGHER EDUCATION INSTITUTION. 2015. Master’s Degree Dissertation (Master’s Degree in Industrial Engineering) - Faculdade de Engenharia do Campus de Guaratinguetá, Universidade Estadual Paulista, Guaratinguetá, 2015. ABSTRACT This paper addresses the issues related to Software Factory deployment (FS) in Higher Education Institutions (HEIs) in Brazil and aims to identify factors that influence such institutions in the decision to adopt that model, as well as the risk factors and difficulties usually during the process. The analysis in this study allows IES can pay attention to aspects that facilitate the implementation of a Software Factory in their academic environment. The work uses as a method of field research, desk research and analyzes the results of the surveyed institutions. The results observed in these HEIs, the study presents a proposal for deployment and management Academic Software Factory (FSA), approved and implemented in Associação Educacional Dom Bosco (AEDB), including its partial results. KEYWORDS: Software factory. Agile Software Development. Scrum. Higher Education Institution. 9 LISTA DE FIGURAS Figura 1 – Justificativa de negócio para o projeto resultante da pesquisa ............................... 18 Figura 2 – Escopo de Fábrica de Software .............................................................................. 23 Figura 3 – Etapas da Pesquisa Realizada................................................................................. 32 Figura 4 – Membros das equipes de projeto FSA da AEDB ................................................... 48 Figura 5 – Ciclo máximo de permanência dos alunos na Fábrica de Software ....................... 49 Figura 6 – Origens de projetos da FSA da AEDB ................................................................... 50 Figura 7 – Cronograma macro da FSA da AEDB ................................................................... 53 Figura 8 – Tela principal do primeiro software desenvolvido pela FSA da AEDB ................ 55 Figura 9 – Tela principal do segundo software desenvolvido pela FSA da AEDB ................ 56 10 LISTA DE GRÁFICOS Gráfico 1 – Metodologias ágeis mais utilizadas atualmente no mundo .................................. 37 Gráfico 2 – Motivação de IES ao implementar FSA ............................................................... 40 Gráfico 3 – Principais dificuldades relatadas ao implementar uma FSA ................................ 43 11 LISTA DE TABELAS Tabela 1 – Exemplos de Fábricas de Software no Brasil ........................................................ 16 Tabela 2 – Evolução do Conceito de Fábrica de Software ...................................................... 22 Tabela 3 – Exemplos de Fábricas de Software em IES no Brasil ........................................... 38 Tabela 4 – Fatores que influenciam para a implementação de Fábrica de Software em IES .. 41 Tabela 5 – Principais dificuldades encontradas por cada IES durante o processo de implementação de Fábrica de Software ................................................................................... 44 Tabela 6 – Vantagens da participação na FSA da AEDB por perfil de aluno ......................... 47 12 LISTA DE ABREVIATURAS E SIGLAS AEDB Associação Educacional Dom Bosco AMP Avaliação e Melhoria do Processo Organizacional APG Adaptação do Processo para Gerência de Projeto AQU Aquisição ARQ Análise e Resolução de Causas CenPRA Centro de Pesquisas Renato Archer CESAR Centro de Estudos e Sistemas Avançados de Recife CMM Capability Maturity Model CMMI Capability Maturity Model - Integration DEP Desempenho do Processo Organizacional DFP Definição de Processo Organizacional DRE Desenvolvimento de Requisitos FS Fábrica de Software FSA Fábrica de Software Acadêmica GCO Gerência de Configuração GPR Gerência de Projetos GQA Gerência da Qualidade GQP Gerência Quantitativa do Projeto GRE Gerência de Requisitos GRI Gerência de Riscos IES Instituição de Ensino Superior IIO Inovação e Implantação na Organização INEP Instituto Nacional de Estudos e Pesquisas ISO International Organization for Standartization ISP Instalação do Produto ITP Integração do Produto LIP Liberação do Produto MCTI Ministério da Ciência, Tecnologia e Inovação MEC Ministério da Educação MED Medição MPS.BR Melhoria de Processos do Software Brasileiro MR-MPS Modelo de referência para melhoria do processo de software PIB Produto Interno Bruto POO Programação Orientada à Objetos RUP Rational Unified Process SEI Software Engineering Institute SGDB Sistema Gerenciador de Banco de Dados SPYCE Software Process Improvement and Capability Determination STE Solução Técnica SW Software TI Tecnologia da Informação TRE Treinamento VAL Validação VER Verificação XP Extreme Programming 13 SUMÁRIO 1 INTRODUÇÃO ....................................................................................................... 15 1.1 OBJETIVOS E DELIMITAÇÃO .............................................................................. 16 1.2 JUSTIFICATIVAS .................................................................................................... 17 1.3 ORGANIZAÇÃO DO TRABALHO ........................................................................ 19 2 FUNDAMENTAÇÃO TEÓRICA .......................................................................... 20 2.1 HISTÓRICO DO DESENVOLVIMENTO DE SOFTWARE .................................. 20 2.2 FÁBRICA DE SOFTWARE ..................................................................................... 21 2.2.1 Recursos Humanos em Fábricas de Software ....................................................... 25 2.2.2 As Fábricas de Software no mundo ....................................................................... 28 2.2.3 Perspectiva para as Fábricas de Software no Brasil ............................................ 29 2.2.4 Fábricas de Software Acadêmicas.......................................................................... 29 3 MÉTODO DE PESQUISA ..................................................................................... 31 3.1 A ASSOCIAÇÃO EDUCACIONAL DOM BOSCO ............................................... 31 3.2 MÉTODO UTILIZADO............................................................................................ 32 3.2.1 Definição do projeto ................................................................................................ 33 3.2.2 Pesquisa Documental e Elaboração de Objetivos Específicos ............................. 33 3.2.3 Delimitação da Pesquisa .......................................................................................... 34 3.2.4 Elaboração e Envio de Questionário ...................................................................... 34 3.2.5 Elaboração da Proposta .......................................................................................... 34 3.2.6 Aplicação do Modelo Elaborado e Análise dos Resultados Parciais................... 35 4 FÁBRICAS DE SOFTWARE EM INSTITUIÇÕES DE ENSINO SUPERIOR NO BRASIL ........................................................................................................................... 36 4.1 ASPECTOS BEM SUCEDIDOS DAS FSA PESQUISADAS ................................. 36 4.2 MOTIVAÇÃO PARA A IMPLEMENTAÇÃO DE UMA FSA .............................. 39 4.3 PRINCIPAIS DIFICULDADES ENFRENTADAS PELAS IES DURANTE O PROCESSO DE IMPLEMENTAÇÃO DE SUAS FSA ......................................................... 42 5 PROPOSTA DE FÁBRICA DE SOFTWARE PARA A ASSOCIAÇÃO EDUCACIONAL DOM BOSCO (AEDB) .......................................................................... 45 5.1 O CURSO DE SISTEMAS DE INFORMAÇÃO ..................................................... 45 5.2 A PROPOSTA ........................................................................................................... 46 5.2.1 Membros da Fábrica de Software da AEDB ........................................................ 46 5.2.2 Ciclo de Permanência dos Alunos nº FSA ............................................................. 49 14 5.2.3 Metodologias e Procedimentos ............................................................................... 50 5.2.4 Impacto Acadêmico do Projeto .............................................................................. 52 5.2.5 Cronograma e Planejamento .................................................................................. 53 5.3 RESULTADOS PARCIAIS ...................................................................................... 53 5.3.1 Projeto de Interface Entre os Sistemas Gennera e TopAcesso ............................ 54 5.3.2 Projeto de Interface Entre os Sistemas Gennera e Moodle ................................. 56 6 CONCLUSÃO .......................................................................................................... 58 6.1 SUGESTÃO PARA TRABALHOS FUTUROS ...................................................... 58 REFERÊNCIAS ...................................................................................................... 59 APÊNDICE A - QUESTIONÁRIO APLICADO A GESTORES DE FÁBRICAS DE SOFTWARE EM OUTRAS INSTITUIÇÕES DE ENSINO SUPERIOR .. 66 APÊNDICE B - ESTUDOS DE CASO: FÁBRICAS DE SOFTWARE EM INSTITUIÇÕES DE ENSINO SUPERIOR NO BRASIL ................................... 72 APÊNDICE C - METODOLOGIAS E BOAS PRÁTICAS DE DESENVOLVIMENTO DE SOFTWARE ........................................................... 79 APÊNDICE D – FORMULÁRIO DE INSCRIÇÃO DE ALUNOS PARA TRABALHO REMOTO VOLUNTÁRIO NA FÁBRICA DE SOFTWARE DA AEDB ........................................................................................................................ 89 APÊNDICE E – PESQUISA DE SATISFAÇÃO DOS PRODUTOS GERADOS PELA FÁBRICA DE SOFTWARE DA AEDB .................................................... 92 APÊNDICE F - TABULAÇÂO DA REVISÃO LITERÁRIA ............................ 93 ANEXO A – EMENTA DA DISCIPLINA “METODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS” DO CURSO DE SISTEMAS DE INFORMAÇÃO..................................................................................................... 104 15 1 INTRODUÇÃO Sistemas de Informação são componentes importantes em atividades de negócio, uma vez que influenciam na vantagem competitiva organizacional. Na medida em que os mercados crescem, aumenta também a demanda por softwares que os atendam em seus diversos aspectos. Essa demanda crescente faz com que as empresas do ramo de desenvolvimento de software busquem formas mais eficientes de produção, ou seja, com maior produtividade, melhor qualidade e menor custo. Diferentes metodologias vêm sendo discutidas e avaliadas no intuito de promover melhorias na gestão do processo de desenvolvimento de software e é notável que algumas vertentes apontam para a utilização dos modelos originários da gestão da manufatura, adequando-se às suas particularidades do setor de software e levando em consideração que muitas atividades em ambos os setores possuem grande similaridade (DORIGAN, 2010). Neste contexto, as Fábricas de Softwares, que são plantas de desenvolvimento de aplicativos que seguem conceitos similares às plantas industriais, como reaproveitamento de componentes e divisão do processo produtivo em etapas bem definidas, têm representado uma solução de fornecimento de produtos com qualidade e preço competitivos, além de contribuir para a capacitação de mão de obra especializada. Tal modelo de desenvolvimento de software vem recebendo destaque no Brasil devido a instalação de diversos parques de alta capacidade de produção no país (FERNANDES e TEIXEIRA, 2004). Além de empresas especializadas, a crescente demanda por mão de obra e a necessidade de proporcionar experiência prática aos alunos de cursos de tecnologia fez surgir uma nova modalidade de negócio, a Fábrica de Software Acadêmica, cujas unidades de produção fazem uso dos recursos do corpo acadêmico da instituição de ensino, como laboratórios, alunos e professores. A Tabela 1 apresenta alguns exemplos de Fábricas de Software bem-sucedidas no Brasil, tanto de empresas especializadas quanto de instituições de ensino: 16 Tabela 1 – Exemplos de Fábricas de Softwares no Brasil Fábrica de Software Ano de inauguração Destaque IBM (BRASIL, 2016) 2001 Primeira organização no Brasil a obter o nível mais alto de maturidade do CMMI (Apêndice C) Accenture (DIGITAL, 2016) 2010 Possui unidades em 8 estados brasileiros e seus produtos atendem setores como telecomunicações, energia e finanças Universidade Federal do Pará (PACHECO, 2008) 2005 7º lugar dentre as 25 instituições de ensino de ciência e tecnologia da América Latina que atuam na área de Engenharia de Software (2008); 2º lugar no Prêmio Dorgival Brandão Junior de Qualidade e Produtividade de Software do MCT pelo projeto do Software Livre WebAPSEE, em 2007 Instituto Federal de Educação Ciência e Tecnologia do Rio Grande do Sul – Campus Porto Alegre (BORGES, CARVALHO e MORAES, 2012) 2010 Esta Fábrica de Software Acadêmica, por meio de suas diversas ações, atendeu em média 60 alunos por ano, contribuindo para o objetivo de proporcionar experiência prática em Engenharia de Software. Fonte: Elaborado pelo autor 1.1 OBJETIVOS E DELIMITAÇÃO O objetivo geral deste trabalho é elaborar um plano de implementação e gerenciamento de Fábrica de Software Acadêmica para a IES AEDB, atentando-se a aspectos relevantes indicados por outras IES que implementaram projetos de mesma natureza. Objetivos específicos:  Analisar os aspectos bem-sucedidos das Fábricas de Software Acadêmicas existentes;  Identificar as principais motivações para a implementação de Fábricas de Software em ambiente acadêmico;  Elencar as principais dificuldades enfrentadas durante o processo de implementação do conceito. Este estudo analisa casos de implementação de Fábricas de Software em Instituições de Ensino Superior no Brasil, onde equipes sejam compostas principalmente pelo corpo acadêmico das mesmas. 17 1.2 JUSTIFICATIVAS O Brasil ocupava a oitava colocação no ranking do Mercado Mundial de Software e Serviços, de acordo com o estudo publicado em 2014 pela ABES (Associação Brasileira das Empresas de Software) e o IDC (International Data Corporation), sendo que o mercado brasileiro representava 3% do mercado mundial e 47,4% da América Latina, com tendência de crescimento desta representatividade, segundo mesmo estudo. Além dos esforços individuais de cada profissional, é necessário que as empresas, órgãos governamentais e as universidades se esforcem para criarem mecanismos que suportem o crescimento contínuo da indústria de software e que a faça atingir patamares ainda maiores. A literatura analisada sobre Fábricas de Software em IES indica a oportunidade de aprofundar os estudos sobre adaptação de metodologias de desenvolvimento de software ao ambiente acadêmico, como indicam os estudos realizados na Universidade Federal de Pernambuco (SOARES et al., 2007) e na Universidade Federal de São Carlos (LEITE e LUCRÉDIO, 2014). Outra oportunidade é a análise sobre estrutura organizacional das fábricas de software acadêmicas, pois são encontradas diferenças importantes entre as universidades que implementaram esta solução, conforme apresenta a Tabela 3, no Capítulo 4. Um estudo comparativo entre as fábricas de software acadêmicas nacionais pode indicar aspectos relevantes a serem considerados na implementação de novas fábricas. Durante a pesquisa não foi possível encontrar estudos nesse sentido nas bases de dados de artigos, portanto, a análise realizada permitirá que, através do estudo comparativo realizado, instituições de ensino superior possam atentar a aspectos que facilitem a implementação de fábrica de software em seu ambiente acadêmico. Este estudo também contribui com orientações para a adequação de instituições de ensino à necessidade de proporcionar experiência prática aos alunos das disciplinas ligadas à Engenharia de Software, determinação contida nas Diretrizes Curriculares de Cursos da Área de Computação e Informática do Ministério de Educação (CEEInf, 1999), que diz que a instituição de ensino deve possibilitar que o aluno adquira experiência na aplicação destes conceitos por meio da prática em laboratórios e estágios. Além disso, autores como Sarinho (2005) e Teixeira e Cukierman (2005) afirmam que os aspectos técnicos da Engenharia de Software precisam ser trabalhados na prática para garantir a assimilação do conteúdo administrado. A justificativa de negócio para o projeto resultante da pesquisa, segundo a direção da IES a qual ele se destina, pode ser resumida em quatro aspectos principais: 18  Proporcionar experiência prática em Engenharia de Software aos alunos de seu curso de Sistemas de Informação, mantendo o corpo discente atualizado em relação às mais modernas técnicas e ferramentas de desenvolvimento e gerenciamento de projetos de software, além de contribuir para o aprendizado em empreendedorismo e o desenvolvimento de habilidades necessárias para a vida profissional do egresso.  Atender às demandas internas da instituição, que carece de softwares personalizados para diversos tipos de situações, desde metodologias de ensino, passando pela interação extraclasse entre alunos e o corpo docente, até a controladoria, direção e secretarias da faculdade.  Contribuir para o desenvolvimento das empresas da região onde a instituição está inserida por meio de soluções sistêmicas de baixo custo, gerando consequentemente recursos financeiros a serem revertidos em melhorias na própria fábrica e na instituição.  O projeto de Fábrica de Software da AEDB vai ao encontro também do planejamento estratégico da instituição, que visa diversificar os serviços prestados pela mesma, garantindo uma maior adaptabilidade a novos cenários e às mudanças pelas quais passa o mercado de ensino superior no Brasil e no mundo. Figura 1 - Justificativa de negócio para o projeto resultante da pesquisa Fonte: Elaborado pelo autor. Proporcionar experiência prática para os alunos Atender à demandas internas da instituição Contribuir para o desenvolvimento regional Diversificar os serviços prestados pela instituição Objetivos da Fábrica de Software da AEDB 19 1.3 ORGANIZAÇÃO DO TRABALHO Este documento está organizado da seguinte maneira: no próximo Capítulo são apresentados os fundamentos teóricos que servem de base para a realização deste estudo. Nele, primeiramente é apresentado o histórico do desenvolvimento de software, em seguida, o conceito de Fábrica de Software, onde são abordadas suas principais características, incluindo aspectos como recursos humanos, gerenciamento, fatores de sucesso e ferramentas de apoio, assim como um breve panorama da realidade do conceito no Brasil e no exterior. No Capítulo 3 são apresentados os aspectos metodológicos utilizados para a pesquisa. No Capítulo 4 é apresentado o resultado da pesquisa realizada, que visou encontrar e documentar casos de sucesso da implementação de Fábricas de Software em instituições de ensino superior no Brasil. Já no Capítulo 5 é apresentada a proposta de FSA encomendada, aprovada e implementada na AEDB, baseada principalmente nas experiências relatadas pela IES pesquisadas, conforme objetivo geral estabelecido. No Capítulo 6 encontram-se as conclusões e perspectivas de pesquisas futuras. 20 2 FUNDAMENTAÇÃO TEÓRICA Neste Capítulo, são apresentados os conceitos abordados no trabalho, começando com a evolução do processo de desenvolvimento de software ao longo das últimas décadas, em seguida, são apresentados os conceitos e características de uma Fábrica de Software. 2.1 HISTÓRICO DO DESENVOLVIMENTO DE SOFTWARE No final da década de 60, a demanda por novos aplicativos era crescente e os problemas que estes resolviam se tornavam cada vez mais complexos. Este cenário somado a ausência de técnicas bem estabelecidas de desenvolvimento software ficou conhecido como a “Crise do Software”. Como resultado, no ano de 1968 foi criada a disciplina de Engenharia de Software, após uma conferência da OTAN em Garmisch, Alemanha, que tinha como objetivo estabelecer práticas mais maduras para o processo de desenvolvimento. Daí em diante, surgiram diversas técnicas para lidar com equipes de desenvolvedores e com as várias etapas de um projeto de software (REZENDE, 2005). A partir da década de 90, consolidaram-se três modelos de produção predominantes no desenvolvimento de software, adotados de acordo com o tipo de produto oferecido pela empresa ao mercado, são eles (MOTTA e VASCONCELOS, 2006):  Empresas de informática que desenvolvem softwares inteiramente personalizados, conhecidas pelo termo Job-shop organizations, que elaboram projetos únicos e adaptados especificamente às necessidades de cada cliente. Cada projeto pode utilizar componentes, regras e ferramentas diferentes para seu desenvolvimento. Nessas empresas, as equipes de trabalho podem mudar constantemente, dependendo do projeto em que atuam, os profissionais são altamente qualificados e geralmente são especialistas em um tipo de sistema específico.  Empresas que trabalham com um modelo flexível de projeto e produção, ou Flexible design and production system, por sua vez, fabricam softwares semipadronizados. Também conhecidas como Fábricas Flexíveis de Software, nessas organizações os produtos quase prontos são separados em módulos que são mantidos em estoque e depois adaptados, configurados e finalizados de acordo com as necessidades específicas dos clientes no momento da instalação.  Fábrica Convencional de Projeto e Produção, ou Conventional factory production and design, é o modelo onde os produtos são inteiramente padronizados, com 21 componentes intercambiáveis. Neste modelo, a produção em massa e os altos volumes são obtidos graças à utilização de procedimentos e formas de produção inteiramente padronizados, o que permite economias de escala significativas. Em 2001, Kent Beck e outros 16 especialistas em desenvolvimento de software elaboraram um documento que ficou conhecido como o Manifesto para o desenvolvimento ágil de software (SOMMERVILLE, 2011). Este documento foi uma “reação” ao movimento que vinha crescendo dos métodos orientados a processo como o CMM e o CMMI que exigem dos programadores uma disciplina de trabalho muito rígida e burocrática. O documento declarava o seguinte: Estamos descobrindo melhores formas de desenvolvimento de software fazendo e ajudando outros a fazê-lo. Por meio desse trabalho passamos a valorizar:  Indivíduos e interações ao invés de processos e ferramentas.  Software funcionando ao invés de documentação abrangente.  Colaboração do cliente ao invés de negociação de contratos.  Resposta a modificações em vez de seguir um plano. A partir deste manifesto surgiram novas metodologias de desenvolvimento de software como o Extreme-Programming, Scrum, entre outros, abordados no Apêndice C. 2.2 FÁBRICA DE SOFTWARE Existe uma tendência, já percebida pela indústria de Tecnologia da Informação, que aponta para o fato de que muitas metodologias para a criação de software se assemelham cada vez mais com a abordagem da criação de produtos na gestão da manufatura, apesar de alguns autores, como Armour e Miller (2000), argumentarem que software não seria de fato um produto, mas sim uma forma de armazenamento de conhecimento, de modo que seu desenvolvimento não equivale a produzir um produto, mas adquirir conhecimento. Em paralelo a isso, o mercado consumidor de TI está cada vez mais exigente no que diz respeito aos aspectos relacionados à produtividade, ao custo e a qualidade. As empresas do ramo têm procurado se transformar buscando um modelo que possa suprir eficientemente estas necessidades (OLIVEIRA e NETO, 2003). Nesse contexto, surgiu o termo “Fábrica de Software”, que traz para o ambiente de desenvolvimento de aplicativos conceitos e metodologias análogas ao processo de produção 22 fabril tradicional, baseado em componentes com características semelhantes e com a mesma qualidade. Historicamente, o conceito de Fábrica de Software, que surgiu em sua forma mais simples em meados da década de 60, vem evoluindo com o passar dos anos, como mostra a Tabela 2: Tabela 2 - Evolução do conceito de Fábrica de Software Fase Características Período 1 Gerência da estrutura e Organização básica Objetivos da manufatura de software são estabelecidos; Foco no produto é determinado; começa a coleta de dados sobre o processo. meados dos anos 60 2 Padronização e Customização da Tecnologia Objetivos dos sistemas de controle são estabelecidos; Métodos padrões são estabelecidos para o desenvolvimento; Desenvolvimento em ambiente online; Padronização das habilidades por meio de treinamento de empregados; Bibliotecas de código-fonte são introduzidas; surgem metodologias integradas e ferramentas de desenvolvimento. início dos anos 70 3 Mecanização e Suporte ao processo Introdução de ferramentas para apoio ao controle de projetos; Introdução de ferramentas para a geração de código, teste e documentação; Integração com ferramentas de banco de dados. final dos anos 70 4 Refinamento do Processo e Extensão Revisão dos padrões; Introdução de novos métodos e ferramentas; Estabelecimento de controle de qualidade e círculos da qualidade; Transferência de métodos e ferramentas para subsidiárias e terceiros. década de 80 5 Automação Flexível Introdução de ferramentas de automação de design; Introdução de ferramentas de apoio à reutilização; Introdução de ferramentas de apoio à análise de requisitos; Integração de ferramentas em plataformas de desenvolvimento; Disseminação de metodologias ágeis de desenvolvimento, como Scrum. a partir da década de 90 Fonte: (FERNANDES e TEIXEIRA, 2004) 23 Assim como nas organizações fabris idealizadas por Taylor, Fayol e Ford no século XX, nas fábricas de software também há uma busca pela qualidade, produtividade e baixo custo de produção, naturalmente fazendo com que vários paradigmas encontrados no processo fabril tradicional também estejam presentes no dia a dia das operações de uma fábrica de software. De maneira análoga ao processo de fabricação de produtos em linhas de montagem, os padrões atuais de desenvolvimento de software, como a Programação Orientada a objetos (POO), determinam que os softwares sejam compostos por módulos ou partes menores que são acopladas para a montagem do produto final, possibilitando que partes individuais possam ser desenvolvidas independentemente das demais. Dessa forma, os projetos de software podem ser planejados em termos estruturais, permitindo a participação de diversos programadores, na própria empresa ou de forma terceirizada, onde cada um recebe requisições de novos processos e produzem componentes com características determinadas e específicas, atendendo a níveis de qualidade previamente determinados, podendo estes módulos ou partes serem posteriormente utilizados em outras soluções, o que é conhecido como reaproveitamento de código (ROCHA, OLIVEIRA e VASCONCELOS, 2004). Alguns requisitos devem ser previstos durante o planejamento de uma fábrica de software, tais como: definir os perfis funcionais e as respectivas atividades a serem desempenhadas por cada perfil; definir a metodologia de desenvolvimento de software a ser utilizada; definir um plano de processos que inclua a descrição das atividades, relacionando-as com seus respectivos artefatos e perfis funcionais e definir ferramentas de apoio a serem utilizadas. Além disso, a Fábrica de Software pode ter vários escopos, que podem variar desde um projeto completo de software, até mesmo um projeto físico ou somente a codificação de programas, conforme demonstrado abaixo: Figura 2 - Escopo de Fábrica de Software Fonte: (FERNANDES e TEIXEIRA 2004). Fábrica de Projetos Fábrica de Projetos de Software Fábrica de Projetos Físicos Arquitetura de Solução Projeto Conceitual Especificação Lógica Projeto Detalhado Teste Integrado Teste de Aceitação Fábrica de Programa s Construção e Teste Unitário 24 O sucesso de uma Fábrica de Software passa pela adoção de processos de desenvolvimento que auxiliem na definição e na distribuição das tarefas, na definição dos responsáveis pelas várias etapas do ciclo de vida do software, em uma boa comunicação tanto com o cliente quanto e entre os membros da equipe, na previsão da demanda, em fazer uso de mecanismos de controle e melhoria contínua dos processos, na gestão do conhecimento e de recursos humanos e na utilização de bibliotecas para reutilização de código e componentes. (ROCHA, OLIVEIRA e VASCONCELOS, 2004). A produtividade é outro fator que determina o sucesso de uma Fábrica de Software. Para Toledo (2008), a produtividade na produção de software pode ser influenciada por três grupos de fatores: • Fatores tecnológicos, como linguagens de programação, ferramentas de projeto, ambientes de desenvolvimento e capacidade dos equipamentos utilizados. • Fatores humanos onde são considerados o perfil, formação, motivação, comprometimento e capacitação das pessoas, além do modelo de gerenciamento utilizado. • Fatores organizacionais referentes aos processos de trabalho utilizados como metodologia, prática gerencial, ambiente físico referente a acomodações, conforto e bem-estar dos recursos humanos. Ainda segundo Toledo (2008), o uso de ferramentas de apoio é importante para o desenvolvimento das tarefas pertinentes a uma Fábrica de Software. Tais ferramentas visam garantir uma maior produtividade e suporte à comunicação com o cliente. Trata-se de ferramentas como as seguintes: • Ferramentas de desenvolvimento e modelagem; • Ferramentas para relatar erros durante o desenvolvimento; • Ferramentas de gerenciamento de projetos; • Ferramentas para comunicação instantânea entre os participantes; • Ferramentas para controle de versão, possibilitando uma melhor organização das atividades e dos documentos do projeto; • Sistema Gerenciador de Banco de Dados (SGDB). Para as Fábricas de Software, assim como para as fábricas tradicionais, existem certificações e boas práticas que regem os processos e legitimam a qualidade dos produtos e serviços oferecidos, como o MPS.Br e o CMM/CMMI, abordados em detalhes no Apêndice C. 25 2.2.1 Recursos Humanos em Fábricas de Software Na produção industrial, os equipamentos interferem diretamente nas medidas de produtividade, o que requer estratégias que os faça produzir com o mínimo possível de interrupções. Por outro lado, em uma “linha de produção” de softwares, o elemento fundamental é o ser humano. Os recursos humanos em uma fábrica de software, assim como em qualquer outra área, precisam ser planejados e bem treinados para as tarefas que irão desenvolver e alinhados ao tipo de demanda, levando em consideração a natureza e complexidade do trabalho a ser realizado (PMBOK, 2004). A partir da década de 90, o profissional de sistemas passou por uma mudança de perfil, deixando de ser um especialista e passando a atuar como um generalista, de maneira que hoje em dia, muitas empresas chegam a não utilizar uma definição de cargo detalhada, podendo o profissional assumir diferentes funções, em diferentes projetos, até mesmo simultaneamente. Dessa maneira, o cargo acaba funcionando como mera referência para a remuneração. Para entender melhor esse contexto, é preciso deixar claro o significado de alguns termos (PESSOA FILHO, 2008):  Habilidades Técnicas – Conhecimento prático e teórico adquirido ao longo da formação acadêmica, e em cursos complementares. Inclui metodologias, técnicas, ferramentas metodológicas, linguagens de programação e etc.  Habilidades de Negócio - Estas são adquiridas ao longo do exercício profissional, por meio do desenvolvimento de soluções efetivas para empresas. Podem ser funções empresariais, de administração, processos, procedimentos, idiomas e etc.  Habilidades Comportamentais ou Humanas - Ligadas à educação, cultura, filosofia de vida e com os relacionamentos humanos e corporativos. É possível listar como exemplo destas habilidades, a pró-atividade; a criatividade; a comunicação; a capacidade de expressão e o relacionamento pessoal; o espírito de equipe; a administração participativa; o planejamento pessoal; a capacidade de organização, concentração, atenção, disponibilidade e responsabilidade. Ainda segundo Pessoa Filho (2008), além de habilidades técnicas e comportamentais, é desejável que os funcionários em uma fábrica de software, assim como nas demais modalidades de empresas que prestam serviços de software, possuam também conhecimentos em outras áreas de negócio, visto que para resolver problemas é preciso primeiramente entendê-los. 26 Dentre os principais papéis existentes em uma equipe funcional requerida para uma fábrica de software e suas respectivas atividades, é possível destacar (MEDEIROS, ANDRADE, ALMEIDA, ALCUQUERQUE e MEIRA, 2005):  Gerente de Negócios: responsável pela prospecção do mercado e pela venda dos serviços.  Analista de Sistemas: a este, cabe realizar o levantamento de requisitos, a análise, definição da arquitetura e a elaboração da documentação do sistema a ser desenvolvido.  Analista de Qualidade: responsável pela revisão dos artefatos gerados, pelo controle de mudanças, a definição e a validação da qualidade do processo utilizado.  Engenheiro de Software: garante que o sistema seja implementado de acordo com as especificações em sua documentação e seguindo o processo de desenvolvimento definido.  Analista de Testes: realiza o desenvolvimento, a validação e a execução de testes de software que visam assegurar a qualidade e integridade do software produzido.  Líder de Equipe: faz a coordenação e a atribuição de tarefas entre os membros da equipe, fornecendo relatórios periódicos ao gerente de projetos sobre o andamento das atividades. Em cada equipe de uma Fábrica de Software é recomendado que existisse também a figura do Gerente do Projeto, que é um profissional dedicado exclusivamente a este papel, o que o habilita a atuar fortemente na interface com o cliente do projeto em questão. Segundo o PMBOK (2004), os processos de iniciação, planejamento, execução, monitoramento, controle e encerramento, devem ser integrados e aplicados pelo gerente de projeto. Também fazem parte das atribuições deste profissional identificar as necessidades; estabelecer objetivos; balancear demandas de qualidade, escopo, tempo e custo além de adaptar especificações e planos às necessidades das diversas partes interessadas. O gerente ainda deverá atuar de maneira a garantir que o produto final atenda aos requisitos de qualidade previamente estabelecidos, seguindo métodos e padrões de estimativas baseados em históricos; utilizar métricas específicas para estimar tempos padrões de atendimento levando em consideração a tecnologia, o tamanho e o domínio da demanda; possuir e fazer uso de mecanismos de apuração, apropriação e controle de custos e manter o controle sobre os níveis de serviço. No que diz respeito ao mercado de trabalho, de acordo com os dados divulgados pela Brasscom - Associação Brasileira de Empresas de Tecnologia da Informação e Comunicação, o setor de Tecnologia da Informação (TI) possui alta demanda por profissionais por um conjunto de fatores: 27  Cresce historicamente a taxas superiores ao Produto Interno Bruto (PIB) nacional.  A TI está inserida em todos os setores da economia moderna, ajudando a aumentar a competitividade e a produtividade das empresas.  A sociedade utiliza tecnologia cada vez mais intensamente no cotidiano.  Novas tecnologias – como computação em nuvem, redes sociais, dispositivos móveis e segurança da informação – demandam profissionais com novas habilidades. A pesquisa da Brasscom, denominada de “O mercado de profissionais de TI” (2014), também aponta que o setor emprega atualmente cerca de 1,3 milhão de profissionais no Brasil. A pesquisa revela também que, até 2020, haverá uma demanda de 750 mil novos trabalhadores, levando em consideração a meta de elevar sua participação no PIB do país para 6,5%. Para o jovem que se especializar nessa área, o resultado poderá ser uma carreira sólida e até mesmo com possibilidade de projeção internacional. A pesquisa apontou também que dez cargos da área representam mais de 90% das contratações no setor no país. E este trabalhador qualificado irá atuar, provavelmente, nas áreas de serviços ou comércio, pois 90,91% da movimentação de saldos da área de TI estão concentradas nestas atividades econômicas. Este dado vale para os oito estados pesquisados: Bahia, Distrito Federal, Minas Gerais, Paraná, Pernambuco, Rio de Janeiro, Rio Grande do Sul e São Paulo. Os cargos com maior demanda no país, segundo a pesquisa, são: analista de desenvolvimento de sistemas; analista de suporte computacional; programador de sistema da informação; técnico em manutenção de equipamentos de informática; help-desk; analista de redes e de comunicação de dados; operador de computador; operador de rede de teleprocessamento; analista de sistemas de automação e programador de internet. Dessas dez profissões com maior demanda dentro da área de tecnologia de informação, cinco tem sua mão de obra formada pelo do curso de Sistemas de informação: analista de desenvolvimento de sistemas, analista de suporte computacional, programador de sistema da informação, analista de redes e de comunicação de dados e programador de internet. Além disso, o curso fornece conhecimentos básicos também para que seu egresso possa atuar nos demais cargos, apesar de não ser o foco do mesmo. 28 2.2.2 As Fábricas de Software no Mundo Um dos principais modelos de negócio para uma fábrica de software, principalmente no exterior, é a exportação. Vários países são considerados grandes exportadores de software, e muitos outros tentam alcançar competitividade neste mercado. Carmel (2003) divide estes países em quatro níveis, levando em consideração três aspectos: maturidade da indústria; quantidade de organizações e o total de exportações. Assim, para o país se enquadrar em cada nível, a indústria de desenvolvimento de software precisa ter: • Nível 1: mais de 15 anos, centenas de empresas e no mínimo 1 bilhão de dólares em exportação de software. Exemplo de países neste nível: Estados Unidos, Canadá, Reino Unido, Alemanha, França, Bélgica, Holanda, Suécia, Finlândia, Japão, Suíça, Austrália, Irlanda, Israel e Índia. • Nível 2: mais de 10 anos, pelo menos 100 empresas e no mínimo 200 milhões de dólares em exportação de software. Exemplo de países neste nível: Apenas a Rússia e a China. • Nível 3: mais de 5 anos, algumas dezenas de empresas e no mínimo 25 milhões de dólares exportados. Exemplo de países neste nível: Brasil, Costa Rica, México, Filipinas, Malásia, Sri-Lanka, Coréia, Paquistão, Romênia, Bulgária, Ucrânia, Polônia, República Tcheca, Hungria, Estônia, Latvia, Lituânia, Eslovênia, Chile, Argentina, Tailândia e África do Sul. • Nível 4: países que estão começando a amadurecer sua indústria de desenvolvimento de software, e possuem alguma exportação. Exemplo de países neste nível: Cuba, El Salvador, Jordânia, Egito, Bangladesh, Vietnã, Indonésia, Iran e algumas outras nações que não possuem dados disponíveis. Um exemplo em especial merece ser citado, o da Índia. Seu sucesso na área de exportação de software a colocou rapidamente no mesmo patamar dos países mais desenvolvidos neste critério. Carmel (2003) cita oito fatores para o sucesso nesta área, o que ele chama de “Modelo Oval”: 1. Visão e políticas governamentais, incluindo benefício em impostos e fundos de desenvolvimento. 2. Capital humano, incluindo a orientação e tradição do país, a quantidade, a composição, o conhecimento de línguas e a capacidade gerencial. 3. Remuneração. 4. Qualidade de vida. 29 5. Afinidades entre indivíduos, grupos de trabalho, entre empresas e entre países, por razões geográficas, culturais, linguísticas ou étnicas. 6. Infraestrutura tecnológica. 7. Fontes externas ou internas de capital. 8. Características da indústria, incluindo efeitos de clusters, número de empresas, o tamanho dessas empresas, as associações que organizam estas firmas, as marcas e os padrões que as empresas buscam alcançar. 2.2.3 Perspectiva para as Fábricas de Software no Brasil Grandes empresas de tecnologia têm distribuído seus centros de produção de software em países onde seja possível reduzir custos e aumentar a competitividade. Por este motivo o Brasil também tem atraído empresas estrangeiras do ramo. O investimento externo proporciona o surgimento de parques tecnológicos, que surgem por meio de associações de empresas com universidades e órgãos governamentais. O crescimento de um ambiente de pesquisa científica e desenvolvimento tecnológico como este é extremamente benéfico para o país. Bastos (2012) constatou que a isenção fiscal foi o principal fator para atrair investimentos de grandes empresas multinacionais de tecnologia para o país, como a americana IBM, que hoje possui umas das mais modernas fábricas de software do país. Desta forma, é importante incluir esta estratégia no planejamento que visa o aumento da competitividade do país, mantendo os investimentos já realizados e atraindo novos. Em termos gerais, a Indústria Brasileira de TI está posicionada em 7º lugar no ranking mundial, com um investimento de US$ 60 bilhões em 2014. O estudo aponta que o Brasil é o 1º lugar no ranking de investimentos no setor de TI na América Latina, representando 46% desse mercado que, só em 2014, somou US$ 128 bilhões. Um fato a se considerar é a ainda baixa representação das exportações no mercado de software nacional, cerca de 2%, ou US$225 milhões, segundo estudo publicado em 2014 pela ABES (Associação Brasileira das Empresas de Software), o que pode indicar uma boa oportunidade para as Fábricas de Software nacionais. 2.2.4 Fábricas de Software Acadêmicas Fábrica de Software Acadêmica (FSA) é uma modalidade de FS cujas unidades de produção são compostas principalmente pelo corpo acadêmico de instituições de ensino superior. Um dos principais objetivos de uma FSA é promover a interdisciplinaridade nos 30 cursos de TI, agregando em um mesmo ambiente as competências dos diversos componentes do corpo acadêmico, fazendo uso de métodos e processos de criação de software que incluem novas tecnologias, arquiteturas e metodologias de desenvolvimento, estimulando assim o corpo docente e discente a se atualizar constantemente e realizarem atividades de transferência de tecnologia, treinamento empresarial e produção científica. Outro fator motivador para a implantação de uma Fábrica de Software Acadêmica é a necessidade de proporcionar aos alunos experiência prática associada às disciplinas ligadas à Engenharia de Software, determinação contida nas Diretrizes Curriculares de Cursos da Área de Computação e Informática do Ministério de Educação (CEEInf, 1999), que diz que a instituição deve possibilitar que o aluno adquira experiência na aplicação destes conceitos por meio da prática em laboratórios e estágios. Além disso, autores como Sarinho, Teixeira e Cukierman (2005) afirmam que os aspectos técnicos da Engenharia de Software precisam ser trabalhados na prática para garantir a assimilação do conteúdo administrado. Já Prikladnicki (2009) afirma que as atividades práticas vivenciadas pelos estudantes fornecem uma assimilação complementar às aulas expositivas. No Brasil, um bom número de instituições de ensino superior vem adotando o modelo de Fábrica de Software. No Capítulo 4 é apresentado um panorama das experiências relacionadas à FS relatadas por algumas IES no Brasil que se destacam neste cenário. 31 3 MÉTODO DE PESQUISA Neste Capítulo, são apresentados os objetos de estudo e procedimentos realizados durante o desenvolvimento da pesquisa. Os objetos de estudo são Instituições de Ensino Superior no Brasil que possuem cursos de computação e laboratórios de produção de software onde atuam membros do corpo acadêmico e onde é aplicado o conceito de Fábrica de Software. O estudo tem como objetivo principal gerar, baseado nas informações coletadas pela pesquisa, um projeto de implementação de Fábrica de Software Acadêmica destinado à Associação Educacional Dom Bosco (AEDB). Para ajudar a compreender o contexto ao qual o projeto se aplica, as características da instituição que o encomendou também serão apresentadas neste Capítulo. 3.1 A ASSOCIAÇÃO EDUCACIONAL DOM BOSCO A AEDB está instalada na cidade de Resende-RJ, na região Sul Fluminense, que é conhecida por seu potencial turístico e pela presença de grandes indústrias, como as siderúrgicas CSN (Companhia Siderúrgica Nacional) e Votorantim, e as automobilísticas MAN Latin América, Peugeot-Citroen, Nissan, Hyundai e Land Rover. A instituição concentra em seu Campus três faculdades: Faculdade de Filosofia, Ciências e Letras Dom Bosco - FFCLDB; Faculdade de Engenharia de Resende – FER e Faculdade de Ciências Econômicas, Administrativas e da Computação Dom Bosco FCEACDB, que juntas oferecem 18 cursos de graduação, sendo 5 deles tecnológicos de curta duração, totalizando assim cerca de 2.500 alunos no ensino superior. Por meio do CPGE - Centro de Pesquisa, Pós- Graduação e Extensão, a AEDB oferece diversos cursos de pós-graduação, MBA, em convênio com a Fundação Getúlio Vargas – FGV, além de um mestrado profissional em parceria com a Universidade Estadual Paulista – UNESP. A Associação também mantém o Colégio de Aplicação, com classes de Educação Infantil até o Ensino Médio. Após conhecer o porte e o ambiente no qual a instituição está inserida, na próxima seção será apresentado o método de pesquisa, visando melhor entender os resultados. 32 3.2 O MÉTODO UTILIZADO A pesquisa de campo com análise qualitativa se mostrou a melhor opção para o trabalho devido à natureza da investigação. Por meio desse tipo de pesquisa é possível conceituar um problema de forma ampla, ao invés de simplesmente relacionar variáveis quantificáveis. Uma característica importante deste tipo de trabalho é permitir captar aquilo que ainda não foi percebido, assim, são revelados aspectos relevantes que não foram previamente identificados pelo pesquisador (SILVERMAN, 1993; GERHARDT e SILVEIRA, 2009). O método de pesquisa utilizado é exploratório, pois segundo Quivy e Campenhoudt (1998), é o método mais interessante para os investigadores quando estes estão atuando em uma área nova para eles e possui as seguintes características: os indicadores têm natureza empírica; a partir da observação empírica se desenvolvem os conceitos, novas hipóteses, e depois, o modelo de análise. Quando o objetivo de uma pesquisa é entender como e por que alguns fenômenos ocorrem, há pouca possibilidade de controle sobre os eventos estudados e o foco de interesse está sobre fenômenos atuais, que só poderão ser analisados dentro de algum contexto da vida cotidiana, é quando o uso de estudos de caso se torna a estratégia de pesquisa mais adequada. Para realizar uma pesquisa deste tipo, é necessário analisar vários exemplos, por isso, o trabalho é um estudo exploratório, abordando um grupo definido de pessoas, dentro de um conjunto de entidades representativo para a área pesquisada (GODOY, 1995). O fluxograma abaixo mostra as etapas da pesquisa: Figura 3 – Etapas da pesquisa realizada Fonte: Elaborado pelo autor. Definição do projeto Pesquisa Documental e elaboração dos objetivos específicos Delimitação da pesquisa Elaboração e envio de questionário Elaboração da proposta de FSA para a AEDB Aplicação do modelo elaborado e análise dos resultados parciais 33 3.2.1 Definição do Projeto O projeto surgiu a partir de necessidades relatadas durante entrevistas com a direção da AEDB, que apontou as vantagens que a instituição desejava ao implementar sua própria Fábrica de Software Acadêmica. Após isto, foi realizada uma pesquisa de modo a comprovar a relevância do tema no atual cenário acadêmico. A pesquisa indicou poucos estudos detalhados, principalmente de caráter comparativo entre as diferentes experiências relatadas por outras instituições, por meio de artigos científicos, conforme já explicado no item 1.3. 3.2.2 Pesquisa Documental e Elaboração dos Objetivos Específicos A maior parte da coleta de dados foi realizada por meio da leitura de artigos científicos, teses, livros e dissertações que descrevem aspectos relevantes relacionados à implementação de Fábricas de Software em instituições de ensino superior no Brasil, assim como artigos que tratam de conceitos importantes para compor a fundamentação teórica necessária para garantir o devido embasamento acadêmico e científico para as propostas. Também foram consultadas bases de dados e indicadores produzidos por órgãos do governo (federal e estadual), tanto na área de tecnologia quanto na área de educação. Foram utilizados dados do site do MCTI (www.mcti.gov.br), onde se encontram estudos sobre qualidade do software nacional, com pesquisas realizadas nas empresas a cada dois anos, verificando vários aspectos relacionados. A pesquisa também faz uso de dados da ABES - Associação Brasileira das Empresas de Software, que realiza e publica anualmente um estudo com um panorama e tendências do mercado brasileiro de software. Além disso, o estudo conta com dados complementares do MEC, por meio do portal do INEP, para permitir a localização das instituições que atuam com cursos de Sistemas de Informação e potenciais Fábricas de Software, além de outras consultas relacionadas aos cursos de educação técnica e tecnológica. Após a análise documental, levando em consideração as informações nela obtidas, as necessidades relatadas pela IES AEDB e os relatos documentados por outras IES, foram elaboradas as questões relevantes a serem respondidas pela pesquisa, de maneira a aumentar as chances de sucesso do projeto. Tais questões compõem os objetivos específicos deste estudo, apresentados no Tópico 1.2. No Apêndice F é apresentado um resumo tabulado dos principais documentos analisados. 34 3.2.3 Delimitação da Pesquisa O universo desta pesquisa é composto por instituições de ensino superior no Brasil que tenham documentado experiências relacionadas à implementação de Fábrica de Software no ambiente acadêmico. A amostra foi escolhida pelo critério de tipicidade, que segundo Zanella (2009), melhor se aplica a cenários como o desta pesquisa. Não foi possível identificar ou mensurar o total de IES no Brasil que se enquadram nos critérios estabelecidos pela pesquisa. Assim, foram analisadas apenas as IES que disponibilizaram em seus sites ou em bases de artigos científicos, material que comprovasse a realização de projetos de implementação ou gerenciamento de Fábricas de Software Acadêmicas. No Capítulo 4 são apresentadas as IES analisadas, por meio de quadros comparativos. 3.2.4 Elaboração e Envio de Questionário Devido ao caráter qualitativo do trabalho, também foi elaborado um questionário com perguntas abertas e fechadas, método indicado como uma opção adequada para a coleta de dados, como sugerido por Gerhardt e Silveira (2009). O questionário foi enviado para os principais ocupantes de cargos de chefia ou técnicos diretamente envolvidos com os processos das fábricas de software nas instituições. O questionário utilizado encontra-se no Apêndice A. Após a análise documental e das respostas ao questionário, foi possível elaborar uma análise de comparação entre as principais características e lições aprendidas pelas Fábricas de Software Acadêmicas identificadas. A análise que serviu de base para a elaboração da proposta apresentada à AEDB pode ser vista no Capítulo 4. 3.2.5 Elaboração da Proposta A proposta apresentada no Capítulo 5 tem como base, além da fundamentação teórica, a análise elaborada no Capítulo 4, que respondeu às questões de pesquisa levantadas, atendendo assim, aos objetivos específicos deste estudo. Dessa forma, a proposta faz uso das lições aprendidas por outras IES para minimizar as chances de insucesso e melhorar os resultados da implementação de uma Fábrica de Software Acadêmica. As necessidades e particularidades da AEDB também foram consideradas para a formulação da proposta. 35 3.2.6 Aplicação da Modelo Elaborado e Análise dos Resultados Parciais Após elaboração da proposta, a mesma foi apresentada para a direção da instituição e a coordenação do curso de Sistemas de Informação da AEDB, que a aprovaram e colaboraram para o estabelecimento de um cronograma e uma estratégia de implementação do projeto, que pode ser encontrado no Capítulo 5, assim como os resultados parciais alcançados até o momento, conclusões e perspectivas futuras. 36 4 FÁBRICAS DE SOFTWARE EM INSTITUIÇÕES DE ENSINO SUPERIOR NO BRASIL Neste capítulo serão apresentadas as IES analisadas, assim como as informações consolidadas a respeito das similaridades e diferenças entre elas no que tange às metodologias adotadas, objetivos esperados, dificuldades encontradas e resultados obtidos. A amostra analisada é composta por dez IES que relataram por meio de artigos científicos suas experiências de implementação e gerenciamento de FSA. As conclusões apresentadas neste Capítulo serviram de base para a elaboração do plano destinado à AEDB, apresentado no Capítulo 5. 4.1 ASPECTOS BEM SUCEDIDOS DAS FSA PESQUISADAS De maneira geral, as instituições analisadas optaram por iniciar as atividades de suas FSAs atendendo as demandas internas, pois, segundo elas, dessa maneira é possível aumentar o grau de amadurecimento dos processos estabelecidos enquanto atende a um cliente menos exigente e mais acessível, ou seja, a própria instituição, antes de se comprometer a atender demandas de clientes externos. Tal estratégia contribui também para uma melhor aceitação dos produtos e serviços da FSA no mercado, uma vez que os clientes externos poderão observar e comprovar a aplicabilidade e qualidade dos produtos e serviços oferecidos pela FSA já em uso na instituição (OLIVEIRA e NETO, 2003; BORGES, CARVALHO e MORAES, 2012; BRITO, SILVA e CABRAL, 2013; LEITE e LUCRÉDIO, 2014). Outra clara tendência que pode ser observada é a que aponta para a adoção por FSA de metodologias de desenvolvimento de software derivadas do método ágil Scrum, seguindo uma tendência do mercado de Fábricas de Software convencionais. Pesquisas recentes indicam que esta metodologia é utilizada por cerca de 56% das empresas que utilizam metodologias ágeis, conforme pode ser observado no Gráfico 1 (VERSIONONE, 2015). Dentre as dez IES pesquisadas, seis relataram terem obtido sucesso ao adaptar e utilizar esta metodologia para operacionalizar a produção de software em suas fábricas. As demais instituições utilizam outras metodologias ou não informaram, conforme pode ser observado na Tabela 3. O Gráfico 1 mostra como o Scrum domina o cenário de metodologias ágeis de desenvolvimento de software: 37 Gráfico 1 – Metodologias ágeis mais utilizadas atualmente no mundo Fonte: Adaptado de (VERSIONONE, 2015) Apesar de adotarem diferentes estruturas internas em suas Fábricas de Software; estarem inseridas em diferentes contextos e de possuírem variados níveis de maturidade em seus processos como apresentado na Tabela 3, as instituições analisadas relatam por unanimidade a ocorrência de uma relativa satisfação em relação aos resultados obtidos após a implementação de suas referidas FSA. Os artigos analisados e respostas obtidas apontam que de maneira geral, as FSA, após passarem pela fase de implementação, atendem às expectativas iniciais de suas instituições, apesar das dificuldades encontradas durante o processo de implementação das mesmas. Tanto as expectativas quanto as dificuldades relatadas são apresentadas em detalhes nos tópicos 4.2 e 4.3, respectivamente. Maiores detalhes, inclusive aspectos técnicos relacionados à experiência de cada IES com o conceito de Fábrica de Software podem ser encontrados no Apêndice B. A Tabela 3 apresenta as IES analisadas por este estudo, juntamente com o ano de inauguração de suas FSA, o modelo de negócio de cada uma (privada ou pública), o Estado em que se localizam, a estrutura interna e a metodologia ou padrão adotado no processo das equipes de desenvolvimento: 1% 1% 1% 1% 1% 2% 2% 3% 4% 5% 6% 8% 10% 56% METODOLOGIAS ÁGEIS MAIS UTILIZADAS NO MUNDO 38 Tabela 3 – Exemplos de Fábricas de Software em IES no Brasil Instituição Tipo UF Ano Estrutura (divisão interna) Metodologias de processo Universidade Federal do Pará (PACHECO, 2008) Pública PR 2005 Informação indisponível MPS.Br Faculdade Lourenço Filho (http://www.flf.edu.br/fab rica/home/quemsomos, 2012) Privada CE 2012 Engenharia de Software Linguagens de Programação Ambientes e Redes Scrum Faculdade de Tecnologia de Jundiaí (OLIVEIRA e NETO, 2003) Pública SP 2001 Gestão de Projetos Fábrica Lógica Fábrica Física CMM Universidade Federal de São Carlos (LEITE e LUCRÉDIO, 2014) Pública SP 2012 Gerência de Projetos Desenvolvimento Scrum Universidade Federal de Pernambuco (SOARES, MARIZ, CAVALCANTI, RODRIGUES, BASTOS, NETO, ALMEIDA, PEREIRA, ARAÚJO e ALBUQUERQUE, 2007) Pública PE 2007 Comitê gestor Pré-venda Planejam. /Acompanhamento Desenvolvimento Pós-venda Configuração/Mudanças Scrum Instituto Federal de Goiás - Campus Inhumas (BRITO, SILVA e CABRAL, 2013) Pública GO 2010 Informação indisponível Scrum Instituto Federal de Educação Ciência e Tecnologia do Rio Grande do Sul – Campus Porto Alegre (BORGES, CARVALHO e MORAES, 2012) Pública RS 2010 Gerência de Projetos Desenvolvimento Scrum XP Universidade Federal de Lavras (AMÂNCIO, COSTA, CAMARGO e PENTEADO, 2009) Pública M G 2009 Gerência de Projetos Desenvolvimento RUP Universidade Estadual de Londrina (GAFFO, BARROS e BRANCHER, 2012) Pública PR 2008 Informação indisponível MPS.Br Universidade de Brasília - Faculdade do Gama (VERGARA, 2014) Pública DF 2011 Informação indisponível Scrum Fonte: Elaborado pelo autor. 39 4.2 MOTIVAÇÕES PARA A IMPLEMENTAÇÃO DE UMA FSA A principal motivação apontada pelas IES pesquisadas para a implementação de uma Fábrica de Software é a necessidade de proporcionar experiência prática aos alunos das disciplinas relacionadas à Engenharia de Software. Tal necessidade, além de ser facilmente percebida pelos professores das disciplinas, também é uma determinação do Ministério da Educação (MEC) por meio das Diretrizes Curriculares de Cursos da Área de Computação e Informática (CEEInf, 1999), portanto, as instituições que melhor proporcionam um ambiente de aprendizado prático aos seus alunos tendem a serem melhor avaliadas pelo MEC e a cumprirem de forma satisfatória a missão de preparar bons profissionais para o mercado de trabalho. O segundo motivo mais apontado pelas instituições pesquisadas para a implementação de uma FSA é a possibilidade de atender a demandas internas por softwares vindas dos diversos setores da instituição. Isso se deve principalmente ao fato de que com a FSA é possível atender a essas demandas com um custo mais baixo se comparado ao custo de contratação de empresas especializadas. Nas IES que utilizam sua FSA para este fim, as equipes da Fábrica ficam responsáveis não só pelo desenvolvimento das soluções sistêmicas, mas também pelo suporte técnico necessário para garantir o funcionamento adequado dos produtos utilizados. Outro fator que influencia as instituições a adotarem este modelo é o alto nível de personalização das ferramentas desenvolvidas, uma vez que são feitas sob medida para atender as necessidades locais, ao contrário das soluções de mercado, que não se adequam em sua plenitude a tais necessidades, pois são criadas para atender a um grande número de clientes, que possuem necessidades variadas. A diminuição da evasão e da desistência dos alunos é outro fator que levam as IES a implementar Fábricas de Software segundo estudo realizado. As instituições relatam que ao criar um ambiente interativo para a prática dos conhecimentos adquiridos no curso, o interesse dos alunos tende a aumentar, diminuindo assim a taxa de desistência. Vale ressaltar também, que este é um fator particularmente importante em contextos de crise econômica, onde cada aluno é disputado de maneira mais agressiva pelas IES. Foi relatado também por algumas instituições uma preocupação em relação ao desenvolvimento da região onde estão inseridas. Tais IES esperam que ao oferecerem serviços e produtos de custo reduzido e com qualidade por meio de suas FSA, além de gerarem recursos financeiros a serem revertidos para a própria instituição, podem também melhorar a produtividade das empresas da região, promovendo assim um melhor ambiente de negócios, 40 onde empregos e riqueza são gerados, atraindo novos habitantes e, consequentemente, mais alunos, em um ciclo que beneficia a todas partes envolvidas. Por meio de suas FSA, algumas instituições buscam promover não somente a capacitação adequada de seus alunos, mas também de seus professores, uma vez que em uma FSA estes possuem papel central no acompanhamento e gerenciamento dos projetos em andamento, forçando com que se mantenham ainda mais atualizados em relação às práticas de mercado e novas tecnologias e ferramentas. Algumas instituições incluem nos custos de suas fábricas investimentos em treinamentos específicos para os docentes envolvidos, uma maneira também de aumentar a satisfação do profissional e consequentemente a retenção de talentos em seu quadro. No Gráfico 2 aparece a quantidade de instituições pesquisadas que apontaram cada um dos fatores motivacionais mencionados anteriormente: Gráfico 2 - Motivações de IES ao implementar FSA Fonte: Elaborado pelo autor. A Tabela 4 indica quais instituições apontaram cada um dos principais fatores identificados durante a pesquisa: 0 1 2 3 4 5 6 7 8 9 10 Motivações de IES ao implementar FSA Capacitação do corpo docente Diminuir evasão e desistência dos alunos Desenvolvimento regional Atender a demandas internas Proporcionar experiência prática aos alunos 41 Tabela 4 – Fatores que influenciam para a implementação de Fábrica de Software em IES Instituição Proporcionar experiência prática aos alunos Atender demandas internas da instituição Desenvol- vimento regional Diminuir evasão e desistência dos alunos Capacitação do corpo docente Universidade Federal do Pará (PACHECO, 2008) X X Faculdade Lourenço Filho (http://www.flf.edu.br/fab rica/home/quemsomos, 2012) X X X Faculdade de Tecnologia de Jundiaí (OLIVEIRA e NETO, 2003) X X X X Universidade Federal de São Carlos (LEITE e LUCRÉDIO, 2014) X X Universidade Federal de Pernambuco (SOARES, MARIZ, CAVALCANTI, RODRIGUES, BASTOS, NETO, ALMEIDA, PEREIRA, ARAÚJO e ALBUQUERQUE, 2007) X Instituto Federal de Goiás - Campus Inhumas (BRITO, SILVA e CABRAL, 2013) X X Instituto Federal de Educação Ciência e Tecnologia do Rio Grande do Sul – Campus Porto Alegre (BORGES, CARVALHO e MORAES, 2012) X X X Universidade Federal de Lavras (AMÂNCIO, COSTA, CAMARGO e PENTEADO, 2009) X Universidade Estadual de Londrina (GAFFO, BARROS e BRANCHER, 2012) X X Universidade de Brasília - Faculdade do Gama (VERGARA, 2014) X Fonte: Elaborado pelo autor. 42 4.3 PRINCIPAIS DIFICULDADES ENFRENTADAS PELAS IES DURANTE O PROCESSO DE IMPLEMENTAÇÃO DE SUAS FSA A análise das informações disponíveis sobre a experiência relatada por cada IES aponta algumas dificuldades relevantes encontradas durante o processo de implementação de suas referidas Fábricas de Software. A dificuldade mais comumente relatada foi o desafio para conciliar os horários de disponibilidade de cada aluno membro de equipe de desenvolvimento. Isso porque nessas instituições as tarefas em um projeto não são distribuídas apenas entre estagiários de horário fixo, mas também entre alunos que trabalham de forma remota em horários alternativos, uma possibilidade pensada para viabilizar a participação daqueles que já exercem atividade remunerada em horário convencional. Para mitigar tal dificuldade, as instituições pesquisadas tiveram que adotar ferramentas e procedimentos que permitissem o trabalho remoto, incluindo ferramentas para reuniões virtuais e para controle de versão dos artefatos gerados, facilitando também a divisão de tarefas entre um número maior de participantes. A segunda dificuldade mais mencionada foi a necessidade de adaptar certas características das metodologias de desenvolvimento adotadas. Isso se deve ao fato de que tais metodologias, como o Scrum, mais comumente utilizado, foram concebidas para serem aplicadas em um cenário onde a equipe de desenvolvimento é composta por profissionais experientes e cuja jornada de trabalho possui uma alta carga horária, geralmente em horário fixo, características que não estão presentes em equipes formadas por alunos de graduação, conforme já mencionado no parágrafo anterior. As principais adaptações relatadas estão relacionadas à frequência das reuniões periódicas e à quantidade de documentação gerada por cada projeto. Um exemplo mais específico desse tipo de adaptação é a mudança nos períodos padrões adotada para os ciclos de desenvolvimento, também chamados de Sprints, que normalmente são curtos, podendo ser de um a dois dias, mas que em FSA necessitam ser mais longos, como uma ou duas semanas. Mas vale ressaltar que isso não necessariamente significa um maior tempo de desenvolvimento, uma vez que isso vai depender também de outros fatores, como o tamanho das equipes, solidez da base de conhecimento da fábrica e capacidade técnica dos integrantes, incluindo o gerente do projeto, cargo ocupado por um professor em uma FSA. Devido ao fato de boa parte da mão de obra em uma Fábrica de Software Acadêmica ser composta por alunos de graduação, a rotatividade nas equipes é particularmente alta. Os principais motivos relatados para a saída de alunos foram: a conclusão do curso e propostas de emprego no mercado. Vale ressaltar também que por se tratar de alunos em formação, a curva de aprendizagem dos mesmos nas metodologias e ferramentas adotadas é maior que a 43 apresentada por profissionais experientes, outra dificuldade citada pelas instituições pesquisadas, fazendo com que o impacto da alta taxa de rotatividade seja ainda maior. Para minimizar o impacto desse problema e manter a constância das operações da Fábrica de Software, atendendo aos prazos estabelecidos, as instituições pesquisadas adotam medidas como a estruturação de uma base de conhecimento organizada, online, acessível mediante identificação, de maneira que novos integrantes das equipes possam se adequar mais rapidamente à metodologia utilizada e aprenderem com as lições ali armazenadas. Segundo algumas IES pesquisadas, fazer estimativas em relação a capacidade de produção de cada equipe de desenvolvimento se mostrou uma tarefa complicada, principalmente durante a elaboração dos primeiros projetos da fábrica, pois não há base histórica que sirva de suporte para previsões de esforço necessário e também devido à alta taxa de rotatividade entre os membros das equipes, problema já mencionado anteriormente. Esta é uma dificuldade que tende a ser minimizada naturalmente com o passar do tempo, na medida em que as equipes adquirem experiência, o repositório de artefatos reaproveitáveis cresce e a base de conhecimento a respeito dos projetos anteriores permite gerar dados estatísticos de desempenho por tipo de componente criado. O Gráfico 3 apresenta quantas instituições pesquisadas apontaram cada uma das dificuldades mencionadas anteriormente: Gráfico 3 – Principais dificuldades relatadas ao implementar uma FSA Fonte: Elaborado pelo autor. 0 1 2 3 4 5 Principais dificuldades relatadas ao implementar uma FSA Estimar capacidade de produção Curva de aprendizagem Rotatividade dos alunos Adequação da metodologia de desenvolvimento Indisponibilidade dos alunos 44 A Tabela 5 apresenta as principais dificuldades relatadas por cada IES no que diz respeito à implementação e ao gerenciamento de suas referidas Fábricas de Software: Tabela 5 – Principais dificuldades encontradas por cada IES durante o processo de implementação de Fábrica de Software Instituição Indisponi -bilidade dos alunos Adequação da metodologia de desenvolvi- mento Rotatividade dos alunos Curva de aprendi -zagem Estimar capacidade de produção Universidade Federal do Pará (PACHECO, 2008) X Faculdade Lourenço Filho (http://www.flf. edu.br/fabrica/home/que msomos, 2012) X Faculdade de Tecnologia de Jundiaí (OLIVEIRA e NETO, 2003) X Universidade Federal de São Carlos (LEITE e LUCRÉDIO, 2014) X X Universidade Federal de Pernambuco (SOARES, MARIZ, CAVALCANTI, RODRIGUES, BASTOS, NETO, ALMEIDA, PEREIRA, ARAÚJO e ALBUQUERQUE, 2007) X X Instituto Federal de Goiás - Campus Inhumas (BRITO, SILVA e CABRAL, 2013) X X Instituto Federal de Educação Ciência e Tecnologia do Rio Grande do Sul – Campus Porto Alegre (BORGES, CARVALHO e MORAES, 2012) X Universidade Federal de Lavras (AMÂNCIO, COSTA, CAMARGO e PENTEADO, 2009) X X Universidade Estadual de Londrina (GAFFO, BARROS e BRANCHER, 2012) X Universidade de Brasília - Faculdade do Gama (VERGARA, 2014) X X Fonte: Elaborado pelo autor. 45 5 PROPOSTA DE FÁBRICA DE SOFTWARE PARA A ASSOCIAÇÃO EDUCACIONAL DOM BOSCO (AEDB) A proposta apresentada neste capítulo adequa-se às necessidades e particularidades da instituição e tem como base, além das experiências relatadas pelas demais Instituições de Ensino Superior estudadas, a ampla pesquisa documental e bibliográfica realizada. Primeiramente é apresentado um panorama do curso de Sistemas de Informação, de modo a contextualizar o ambiente em que está inserido o aluno participante da FS, em seguida, são apresentados os detalhes da proposta de implementação da FSA da AEDB e posteriormente, os resultados parciais obtidos. 5.1 O curso de Sistemas de Informação O curso de Bacharelado em Sistemas de Informação (S.I) tem por objetivo a formação de profissionais para atuação focada no planejamento, na análise, na utilização e na avaliação de modernas tecnologias de informação aplicadas às áreas administrativas e industriais, em organizações públicas e privadas. Este curso é definido pelo MEC (2000) como atividade meio. Isto quer dizer que o profissional não tem o planejamento do seu perfil voltado para a criação de novas tecnologias (como é o caso do perfil desejado para o egresso de Ciência da Computação), mas para a aplicação das tecnologias disponíveis na obtenção de resultados para as empresas. O bacharel em Sistemas de Informação é o profissional responsável por planejar, manipular e administrar os fluxos de informação, gerados e distribuídos por redes de computadores, dentro de uma organização. Seu foco é analisar os problemas, apontar suas causas raízes e, fazendo uso de recursos tecnológicos, eliminá-los ou diminuí-los, aumentando com isso o controle, produtividade e/ou reduzindo as perdas e prejuízos que uma empresa possa vir a ter pela má administração/utilização de seus recursos. Esse profissional planeja e orienta o processamento, o armazenamento e a recuperação de informações e o acesso de usuários a elas. Desenvolve novos sistemas, administra banco de dados e redes corporativas, cria programas e soluções que viabilizam a tramitação das informações por estas redes utilizando a tecnologia adequada para os diversos tipos de problemas que uma corporação possa vir a ter. No curso de S.I da AEDB, os alunos têm à sua disposição laboratórios de informática com equipamentos modernos e softwares de última geração, necessários para um aprendizado prático e atualizado. Tais laboratórios são utilizados durante as aulas, que ocorrem no período 46 noturno e passarão a ser utilizados pela FSA durante o dia, evitando que fiquem ociosos e valorizando ainda mais os ativos da instituição. 5.2 A PROPOSTA Nesta sessão são apresentados os detalhes da proposta de FSA que foi elaborada, e apresentada à direção da AEDB e à coordenação do curso de Sistemas de Informação da mesma, que a aprovaram sem ressalvas. Inicialmente é abordada a composição das equipes de projeto da fábrica, em seguida são explicados os detalhes a respeito do ciclo de permanência dos alunos na FSA. Posteriormente são apresentadas metodologias e procedimentos estabelecidos para o bom funcionamento da unidade de produção e, por último, é mostrado o cronograma e o planejamento da FSA para os próximos anos, assim como as etapas já cumpridas nos anos anteriores. 5.2.1 Membros da Fábrica de Software da AEDB Conforme metodologia de desenvolvimento recomendada pelas instituições pesquisadas e escolhida para a FS da AEDB, o Scrum, haverá sempre três papéis em cada projeto da FSA:  Project Owner: responsável pela macro gerência, ou seja, por gerenciar “o que” deve ser feito. Na FSA da AEDB este papel poderá ser desempenhado por: um representante do setor onde o projeto será utilizado depois de finalizado, caso seja produto para uso interno; um representante de um cliente externo à instituição, que domine os requisitos do produto a ser desenvolvido ou um professor analista, com ampla visão de negócio, responsável por realizar o intermédio entre o cliente e a equipe técnica.  Scrum Master: responsável por gerenciar o processo, ou seja, garantir que a metodologia do Scrum está sendo posta em prática. Este papel será exercido por professores do curso de Sistemas de Informação da AEDB que possuem o conhecimento técnico necessário.  Equipe de desenvolvimento: responsável pela micro gerência, ou seja, responsáveis por executar o trabalho operacional seguindo procedimentos e métodos estabelecidos, papel que será desempenhado pelos alunos do curso de Sistemas de Informação. As equipes de desenvolvimento da FSA da AEDB poderão ser compostas por três diferentes perfis de alunos, são eles: 47  Alunos que participam dos projetos de maneira não presencial na maioria do tempo, tendo flexibilidade de horário e que, por isso, fazem uso de ferramentas de trabalho remoto. Tais alunos tem como atrativo para participar da FS a possibilidade de conseguir horas complementares exigidas pelo curso, além do aprendizado prático a respeito do conteúdo aprendido em sala de aula.  Alunos estagiários da instituição, com carga horária e período de trabalho bem definidos. Estes alunos têm como benefício pela participação nos projetos, além do aprendizado prático, o cumprimento do estágio obrigatório exigido pelo curso e, no caso da AEDB, a isenção do pagamento pelos estudos, por meio de bolsa integral acrescida de uma remuneração extra.  Alunos do último ano do curso, que optem por incluir seu trabalho de conclusão na lista de projetos da FS, seguindo assim as metodologias e procedimentos por ela estabelecidos. Para estes alunos, o atrativo adicional para incluir seus projetos no portfólio da fábrica é o fato de poderem utilizar da estrutura física e lógica da FS para o desenvolvimento de seu trabalho de conclusão do curso, dessa maneira adicionando robustez e profissionalismo ao mesmo. Os dois primeiros grupos de alunos citados acima podem cooperar simultaneamente no mesmo projeto, fazendo com que a dinâmica do gerenciamento destas equipes demande uma atenção especial daqueles que exercem esta função, no caso, os professores do curso de Sistemas de Informação. A Tabela 6 apresenta os atrativos para os diferentes perfis de alunos da FS da AEDB: Tabela 6 – Vantagens da participação na FSA da AEDB por perfil de aluno: Perfil do aluno Aprendizado prático Horas complementares Estágio obrigatório Profissionalizar o projeto Participam remotamente X X Estagiários X X Formandos X X Fonte: Elaborado pelo autor. 48 No caso dos alunos do último ano do curso que tiverem seus projetos incluídos no portfólio da FS, estes terão que desenvolvê-lo sem a ajuda técnica dos demais alunos e tendo seu professor orientador exercendo o papel de gerente de projeto, conforme demanda a metodologia de desenvolvimento adotada pela fábrica. Após o término do projeto, estando os alunos formados, os mesmos terão duas opções para que seu produto seja continuado: assumirem a responsabilidade pelo mesmo, ou seja, empreendendo, ou deixa-lo a cargo das equipes da FS para que o mantenham disponível para ser oferecido a futuros clientes interessados. Para que esta segunda opção seja possível, os alunos terão de assinar um termo no início do projeto se comprometendo a utilizarem as tecnologias e metodologias da fábrica de software, de modo a possibilitar a manutenção do produto pela mesma posteriormente. A figura abaixo ajuda a entender a distribuição dos membros das equipes de projeto da FSA da AEDB: Figura 4 - Membros das equipes de projeto FSA da AEDB Fonte: Elaborado pelo autor. A fábrica poderá ser composta por diversas equipes, sendo cada equipe detentora de suas próprias células de produção, distribuídas levando-se em consideração a competência de seus participantes. As primeiras equipes deverão trabalhar em projetos que atendam a demandas internas da instituição, de modo a proporcionar amadurecimento dos processos estabelecidos antes de lidar com clientes externos, estratégia seguida por diversas instituições que obtiveram sucesso em projetos semelhantes, conforme já apresentado no Tópico 4.1. Equipe de Desenvolvimento Scrum Master Project Owner Representente do cliente Professor do curso de S.I. Alunos com participação remota Alunos Estagiários Professor Orientador Alunos do último ano 49 5.2.2 Ciclo de permanência dos alunos na FSA Diferente da maioria das faculdades do Brasil, onde os cursos são divididos em semestres, na AEDB eles são divididos em anos, sendo cada ano dividido em quatro bimestres. O curso de Sistemas de Informação é composto por quatro períodos de um ano e baseando-se nisso, esta proposta prevê um ciclo de permanência dos estudantes na fábrica de até três anos, sendo cada ano dedicado a uma diferente etapa do processo de aprendizado. A primeira etapa, de duração de um ano, é destinada preferencialmente aos alunos do segundo ano do curso e visa promover a capacitação tecnológica, etapa que será realizada por meio da formação de grupos de estudos com orientação personalizada. Na segunda etapa, destinada preferencialmente aos alunos do terceiro ano do curso, os próprios estudantes terão liberdade para apresentar suas propostas de projetos ou serem recrutados para compor equipes de projetos já em andamento. Neste período os estudantes receberão, além da contínua capacitação tecnológica, orientação para a montagem de planos de negócios e assumirão maior responsabilidade na equipe em que estiverem inseridos. A terceira e última fase, que visa a participação preferencial dos alunos do quarto e último ano do curso, busca estimular os estudantes a fazerem uso dos ensinamentos das fases anteriores para apresentarem seus próprios planos de negócios, que poderão vir a serem hospedados em uma incubadora de empresas de tecnologia, a qual será proposto que funcione na própria AEDB. Um dos principais objetivos desta última fase é estimular o senso empreendedor dos alunos e transmitir a eles melhores noções de atendimento ao cliente e visão de mercado. A Figura 5 apresenta o ciclo de permanência proposto: Figura 5 - Ciclo máximo de permanência dos alunos na Fábrica de Software Fonte: Elaborado pelo autor. 50 5.2.3 Metodologias e procedimentos A metodologia de desenvolvimento a ser adotada pelo corpo técnico envolvido nos projetos, Scrum (Apêndice B), precisou ser adaptada para se adequar a realidade da instituição, as principais mudanças estão relacionadas aos períodos padrões adotados para os ciclos de desenvolvimento, também chamados de Sprints, e também na forma de comunicação entre os membros das equipes, fazendo uso de ferramentas de comunicação instantânea e trabalho remoto, conforme fizeram outras IES já mencionadas no Capítulo 4. Os projetos da FSA da AEDB poderão ser provenientes de diferentes fontes, tais como:  Demandas internas à instituição: projetos que visam atender necessidades de setores da AEDB que buscam adquirir soluções sistêmicas para seus problemas operacionais.  Demandas de outras empresas ou da sociedade: projetos originados de demandas de mercado, os quais podem gerar recursos financeiros para a instituição, a ser revertido para melhorias na própria FSA.  Projetos meramente acadêmicos: provenientes de ideias apresentadas pelo corpo acadêmico da AEDB, que podem ou não vir atender a demandas existentes, ou seja, podem ser projetos que visam apenas testar conceitos, novas tecnologias ou atender a demandas que ainda não foram formalmente manifestadas. Projetos originados de qualquer uma das três origens mencionadas acima, podem vir a ser desenvolvidos tanto no formado de projetos de conclusão de curso quando no formato convencional, conforme já explicado no Tópico 5.2.1. A imagem abaixo ilustra as possíveis origens dos projetos da FSA da AEDB: Figura 6 – Origens dos projetos da FSA da AEDB Fonte: Elaborado pelo autor. Projetos acadêmicos Demandas de mercdo Demandas internas Produto da FSA 51 Os diversos artefatos ou subprodutos gerados durante o desenvolvimento serão armazenados em um banco de componentes, onde serão devidamente catalogados de acordo com suas características e funcionalidades, permitindo que tais elementos possam ser utilizados em novos projetos. O reaproveitamento de código irá reduzir o tempo de desenvolvimento dos projetos e melhorar as estimativas de capacidade. Os objetos deverão ser armazenados em uma base de dados de acesso restrito, hospedada na nuvem privada da instituição. Estão sendo avaliadas possíveis parcerias entre a recém-criada Fábrica de Software da instituição e empresas de desenvolvimento de software da região. Tais parcerias tem se mostrado vantajosas para ambos os lados, uma vez que a Fábrica poderá fazer uso, principalmente em seu período inicial, de todo o conhecimento operacional e técnico já acumulado por essas empresas, no que tange à gerenciamento de projetos, uso de ferramentas específicas e do próprio mercado, enquanto às empresas poderão se beneficiar de todo o conhecimento e ambiente acadêmico da instituição de ensino. Uma das empresas que já se mostrou interessada é a Empório High-Tech (http://www.emporiohightech.com.br/), também com sede em Resende-RJ. Um bom exemplo de parceria semelhante à que está sendo proposta é a existente entre a empresa Sofhar (http://www.sofhar.com.br/) e o Parque Tecnológico da Pontifícia Universidade Católica do Paraná (PUCPR), que em 2013 lançaram em conjunto um sistema de BI (Business Inteligence), onde a empresa entrou com o know-how de negócios e a universidade com o conhecimento científico e mão de obra (MELLO, 2013). Há também a preocupação de que a metodologia de gerenciamento de equipes e de projetos adotada na fábrica não seja demasiadamente burocrática, permitindo certo nível de flexibilidade nos processos, ideia fundamentada por meio da Metodologia de Gerenciamento de Projetos do Sistema de Administração de Recursos de Tecnologia da Informação do Governo Federal (SISP, 2011). Segundo o SISP, o gerenciamento do projeto não deve ter esforço maior do que a própria execução. Ou seja, a quantidade de artefatos gerados em um determinado projeto deve ser adequada ao tamanho do projeto e ao esforço do seu gerenciamento. A FSA da AEDB fará uso de um sistema de controle de chamados implementado recentemente na instituição, facilitando com isso a manutenção dos sistemas disponibilizados e garantindo a devida padronização dos processos da área de suporte. 52 5.2.4 Impacto acadêmico do projeto A literatura analisada, que relata a experiência com Fábricas de Software de outras IES, aponta para a necessidade de garantir que as ementas das disciplinas do curso de tecnologia contemplem o conhecimento básico necessário para que os alunos tenham condições de se adequar às técnicas, ferramentas e métodos adotados pela fábrica. Desta forma, foi feita uma revisão de todas as ementas do curso de Sistemas de Informação da AEDB, visando identificar a necessidade de adaptações em função desta nova demanda. A análise resultou em alterações nas ementas das seguintes disciplinas:  Gerência de Projetos – Inclusão de aspectos relacionados especificamente a projetos de desenvolvimento de software utilizando métodos ágeis, como o Scrum. Passou a prever a realização de simulações práticas para familiarizar os alunos com os procedimentos deste novo paradigma.  Engenharia de Software – Ementa alterada para contemplar explicações a respeito da documentação gerada em projetos de uma Fábrica de Software, assim como estimular por meio de exercícios em aula e competições entre equipes a agilidade dos alunos.  Modelagem de Sistemas – Melhor explicação a respeito da fase de testes de um sistema, para que os alunos entendam a importância desta etapa e conheçam os principais modelos de documentos e práticas relacionados a ela.  Criação de uma nova disciplina denominada “Metodologias de Desenvolvimento de Sistemas”, para contemplar em detalhes cada uma das principais metodologias de desenvolvimento ágil da atualidade, como XP, Scrum, RUP, assim como abordar as diferentes certificações de processos de software existentes, como CMMI e o MPS.BR. A ementa elaborada para esta disciplina encontra-se no Anexo A. Além das mudanças em ementas, alguns professores passaram a considerar a participação dos alunos nas atividades da Fábrica de Software como parte do sistema de avaliação de suas disciplinas, o que motiva os alunos a buscarem participar e dá oportunidade ao professor de reforçar o conteúdo ministrado com atividades práticas reais e não apenas hipotéticas. Com estas mudanças, que entraram em vigor em 2016, o curso de Sistemas de Informação da AEDB passou a preparar melhor seus alunos para atuarem em Fábrica de Software, atendendo às demandas do mercado por mão de obra especializada para este cenário e também contribuindo para uma menor curva de aprendizado dos alunos envolvidos na FSA da própria instituição. 53 5.2.5 Cronograma e planejamento A Fábrica de Software da AEDB passou por testes preliminares em 2015 e entrou em funcionamento oficialmente ainda no primeiro semestre do ano letivo de 2016. Inicialmente estava prevista a contratação de alunos estagiários já em 2016 para comporem os quadros da FSA, no entanto, devido aos impactos da atual crise econômica tais contratações tiveram de ser adiadas para o próximo ano, de modo que em 2016 a fábrica funcionará apenas com grupos alunos trabalhando remotamente e também pelos formandos, além de grupos de formandos do curso de S.I, conforme possibilidade levantada no Tópico 5.2.1 desde documento. Para o ano de 2017 é previsto que a fábrica seja patrocinada por meio de uma linha de pesquisa criada especificamente para esse propósito. Em 2018, o nível de maturidade dos processos da FSA será analisado por uma comissão interna, que irá determinar o esforço necessário para que a instituição possa buscar o primeiro nível de certificação do MPS.BR, certificação que melhor se adequa a unidades de produção de pequeno porte, conforme explicado no Apêndice C, desta forma melhorando a confiança dos clientes na qualidade dos produtos oferecidos. A certificação é recomendada para este tipo de ramo de atuação, conforme indicado tanto pela revisão bibliográfica, quanto pelas Instituições de Ensino Superior pesquisadas. Figura 7 – Cronograma macro da FSA da AEDB Fonte: Elaborado pelo autor 5.3 RESULTADOS PARCIAIS Conforme já mencionado, no ano de 2015 foram realizados alguns testes de conceito, onde foram aplicadas as metodologias e procedimentos descritos no Tópico 5.2. Neste período a fábrica contou com a participação de um professor especialista, um aluno estagiário, um profissional de TI da instituição e grupos de alunos trabalhando remotamente. Este grupo inicial 54 pôde gerar nesse período alguns produtos piloto, que conforme estratégia já explicada, visaram atender a demandas internas da instituição. O processo de recrutamento dos alunos que iriam trabalhar nestes projetos de forma remota se deu da seguinte maneira: foram divulgadas nas turmas de 2º, 3º e 4º ano do curso de Sistemas de Informação a oportunidade de 3 alunos participarem dos projetos piloto da Fábrica de Software, em seguida foi disponibilizado um formulário online de inscrição dos interessados. Ao todo, 7 alunos se inscreveram para participar do processo seletivo, sendo que destes, 3 foram selecionados, após passarem também por uma breve entrevista. O formulário elaborado exigia a realização prévia pelos candidatos de uma lista de 4 cursos online gratuitos sobre programação, maneira encontrada para nivelar a equipe quanto ao mínimo de conhecimento prévio necessário, visto que as oportunidades foram abertas para alunos em diferentes momentos do curso. O formulário também visava medir o grau de experiência dos interessados, por meio de perguntas específicas com esse propósito. O formulário na íntegra encontra-se no Apêndice E. Nos tópicos a seguir serão apresentados os dois projetos pilotos elaborados pela FSA da AEDB entre outubro de 2015 e janeiro de 2016. O primeiro deles, foi desenvolvido para a área de trabalho do sistema operacional Windows, utilizando a linguagem de programação C#.NET. Já o segundo projeto baseou-se em desenvolvimento Web, mas para ser utilizado na intranet da instituição, desenvolvido na linguagem de programação PHP para ser executado em navegadores de internet. Após a implementação de cada solução, foi realizada uma pesquisa com o respectivo Project Owner, por meio de um formulário online, onde os mesmos puderam, além de demonstrar seu grau de satisfação, indicar possíveis pontos de melhoria ou fazer elogios. O formulário utilizado encontra-se no Apêndice F. 5.3.1 Projeto de interface entre os sistemas Gennera e TopAcesso A AEDB hoje faz uso de diferentes softwares nas suas operações do dia a dia. Cada uma dessas ferramentas visa atender às necessidades de um setor específico da instituição. O primeiro projeto elaborado pela FSA procurou estabelecer comunicação entre o sistema responsável pelo controle de acesso dos alunos na instituição, o gerenciador de catracas chamado TopAcesso, e o sistema de gerenciamento acadêmico utilizado pela AEDB, chamado Gennera. 55 O problema a ser resolvido consistia na dificuldade em manter atualizada no sistema da catraca (TopAcesso) a lista dos alunos autorizados, informação proveniente do sistema acadêmico (Gennera), de modo que cada atualização de status da matrícula de um aluno no sistema acadêmico demandava uma atualização manual no sistema de controle de acesso à Faculdade. Nesse projeto, a equipe de desenvolvimento foi composta por um aluno estagiário e 3 alunos trabalhando remotamente, tendo um professor do curso de Sistemas de Informação, como Scrum Master e o chefe do CPD (Centro de processamento de Dados) da AEDB como Projetct Owner. O projeto teve duração de dois meses, sendo entregue no mês de dezembro. Hoje a solução desenvolvida encontra-se em pleno funcionamento, fazendo com o pressionar de alguns botões a atualização de todos os alunos de uma só vez no sistema de controle de acesso, de acordo com informações do sistema acadêmico. Figura 8 – Tela principal do primeiro software desenvolvido pela FSA da AEDB Fonte: Elaborado pelo autor. O cliente, que nesse caso é o próprio Project Ownder, ao responder a pesquisa realizada após a implementação do sistema, indicou grau máximo de satisfação com o produto e deixou o seguinte comentário: 56 “Poderia rodar automaticamente, sem precisar disparar manualmente, mas em comparação a como era feito, está muito melhor. Atendeu ao que foi proposto. ” Marcelo Oliveira – Coordenador do CPD da AEDB 5.3.2 Projeto de interface entre os sistemas Gennera e Moodle O segundo projeto desenvolvido pela FSA da AEDB consistiu em criar uma interface de comunicação entre o sistema responsável pelo gerenciamento das disciplinas de Educação à Distância (EAD) e o sistema principal de gerenciamento acadêmico (Gennera). Este projeto procurou resolver o fato de os professores das disciplinas EAD terem trabalho dobrado ao lançar as not