Formação de Comunidades Open Source como fomento à inovação na indústria (em três atos) joa@deinfo.ufrpe.br
o início 2002
Mercado Academia (2002) Fábricas de Software? Comunidades de Software Livre?
o desenvolvimento sem processo... SISTEMAS SÃO ENTREGUES!! Mas... Acúmulo de Trabalho Descontinuidade de planos Prazos, custos... Estouram Time de heróis Clientes sem atendimento
Produção de Software: histórico 60´s Fábrica de Software 70´s Kanbam 70´s Just In Time 80´s SIGMA 90´s CMM 00´s Fábrica de Software... de novo! 10´s Fábrica de Componentes? Open-Source? Distribuída? Enaltecer que desde os anos 60 há o conceito definido e que modelos como o 6sigma surgiram nos anos 80 e só agora são utilizados pela comunidade de TIC. Explicar por alto tais modelos e suas utilidades na indústria... E questionar o público sobre qual será a fábrica de software dos próximos anos... Fonte: sixsigmatutorial.com
factories X Business X OSS development... conjunções e intersecções métodos e ferramentas processo modelos licenças vendas
Free Software Projects Nascem como iniciativa isolada e particular Usuários são co-desenvolvedores Divulgação “boca-a-boca” Teste massificado pelos usuários Gerência de versões é complexa e “bem-definida”
Open Source Projects 231,649 projects nov 29 BRT 2007! (Sun apr 22 20:18:32 BRT 2007) 189,827 projects! Communications (18979) Database (7090) Desktop Environment (3843) Education (5076) Formats and Protocols (3014) Games/Entertainment (17723) Internet (29002) Multimedia (15900) Office/Business (9960) Other/Nonlisted Topic (2620) Printing (526) Religion and Philosophy (341) Scientific/Engineering (15436) Security (3350) Sociology (442) Software Development (29007) System (23545) Text Editors (3275) 231,649 projects nov 29 BRT 2007! 268,668 projects apr 24 BRT 2008! Atualizar este slide com dados do dia no sourceforge e comparar com estes! http://sourceforge.net/
sourceforge.net 2005 jun 100K 2006 apr 134K 2007 apr 189K
Causas de Descontinuidade de Projetos SW Livre Falta de interesse, tempo ou motivação mudança de liderança nos projetos impactam sua continuidade Code Forking cada usuário tem acesso ao código e pode alterá-lo e redistribuí-lo sem o conhecimento do líder do projeto http://www.math.uconn.edu/~bass/scdp.pdf
Free Software Engineering: A Field to Explore Gonzáles-Barahona and Robles UPGRADE Vol. IV No. 4 August 2003 http://www.upgrade-cepis.org/issues/2003/4/upgrade-vIV-4.html
Free Software Engineering Resume “A Field to Explore” “is still in its infancy” (2003!) “How to create free software? Issues: Classification of free software projects Creation of a methodology Methods + classification + models ++ Simulation (intelligent agents) = Free SW Engineering”
A Framework for creating hybrid-open source software communities Srinarayan Sharma et. al. Info Systems (2002), 12.
The OSS model Three dimensions: structure, process and culture Division of labour Co-ordination mechanisms Distribution od decision-making Organizational boundaries Informal structure Political structure Legitimate basis of authority Eletronic communication Multicultural community Values: reciprocity, gift giving, reputation, ideology Core assumptions structure culture process
Framework for creating Hybrid-OSS communities Principles: Community building Community governance Shared governance Membership management Incentives and rewards Community infrastructure
Discussion ... open source communities versus Software Factories? personal time and autonomy ... freelancers ... project-oriented ... there are several avenues for future research ... to refine the proposed framework and validate it empirically
fábricas de software princípios conceitos ilusões
Conceitos The factory is an organization inhabited by people engaged in a common effort, work is organized one way or the other, standardization is used for coordination and formalization, and systematization is important, but there will be several options for the design of a particular software factory [Aaen, Botcher, Mathiassen, Software Factories, 1997] http://www.cin.ufpe.br/~in953/papers/Software_Factories_17.pdf
fábricas de software: 4 estratégias... Japonesa (1981,1987) SWB – Software Work Bench Européia (1991,1992) ISDE – Integrated Software Development Environment Norte-Americana – experiência produção (1989,1993) Norte-Americana – níveis de maturidade (1990,1993)
...considerações... The four approaches are important contributions towards this goal. At the same time the approaches individually may lead to unfortunate illusions. Learning from the relative strengths and weaknesses between the approaches may help us avoid becoming victims of these illusions [Aaen, Botcher, Mathiassen, Software Factories, 1997] http://www.cin.ufpe.br/~in953/papers/Software_Factories_17.pdf
fábrica de software ≠ produção em massa ...e ilusões... fábrica de software ≠ produção em massa padronização, formalização, especialização, controle ≠ produção de software com qualidade o que fazer? Experimentar...
2003 3 Fábricas 1 único projeto, 3 resposta a RFPs Nenhum cliente externo (Jones e Silvio) Alunos são rapidamente absorvidos pelo mercado local!!
Fábrica 1 The Factory Fábrica 3
2004 3 Fábricas 3 projetos, clientes reais Engenharia de Vendas! Protótipos dão contribuem ou dão origem a projetos reais, financiados!!
Fábricas OpenGadgets Engenho de Software USina
Projetos Canto Livre MHP Simulare
2005 4 Fábricas 4 projetos, clientes reais, atração de colaboradores externos Fábrica OXE vende solução OSS! Soluções são reais e geram negócios...
Projetos CAOS VENSSO RISE PMK
Fábricas FABRICK OXE DONE Open Knowledge
Lições Aprendidas RIBEIRO, R. A. ; Guimarães, R. ; MORARES, A. K. O. ; MEIRA, S. R. L. ; ALBUQUERQUE, J. O. . Open Source Business Models Patterns. In: SugarLoafPLoP 07 - 6th Latin American Conference on Pattern Languages of Programming, 2007, Porto de Galinhas - PE. 6th Latin American Conference on Pattern Languages of Programming, 2007. MORARES, A. K. O. ; MEIRA, S. R. L. ; ALBUQUERQUE, J. O. . Open Source Software Factory: Step by Step: A Case Report. In: First International Conference on Open Source Collaborative Development Platforms (Héphaïstos), 2006, Paris, France. First International Conference on Open Source Collaborative Development Platforms (Héphaïstos), 2006. RIBEIRO, R. A. ; Silva, F. Q. B. ; MORARES, A. K. O. ; ALBUQUERQUE, J. O. ; MEIRA, S. R. L. . Towards a software licensing guide for Open Source Business Models. In: First International Conference on Open Source Collaborative Development Platforms (Héphaïstos), 2006, Paris, France. First International Conference on Open Source Collaborative Development Platforms (Héphaïstos), 2006. MORARES, A. K. O. ; MEIRA, S. R. L. ; ALBUQUERQUE, J. O. . Desafios na avaliação individual e coletiva em um curso de Engenharia de Software direcionado para utilização de processos de desenvolvimento distribuído de software. In: International Conference on Engineering and Computer Education, 2006, Santos, Brasil. International Conference on Engineering and Computer Education, 2006. ALBUQUERQUE, J. O. ; MEIRA, S. R. L. ; MORARES, A. K. O. . Software Engineering in Practice: Building Software Factories (Revised - Invited Paper). In: 3rd Experimental Software Engineering Latin American Workshop, 2006, Rio de Janeiro, Brasil. 3rd Experimental Software Engineering Latin American Workshop, 2006. GARCIA, Vinicius Cardoso; LUCRÉDIO, Daniel; DURÃO, Frederico Araujo; SANTOS, Eduardo Cruz Reis; ALMEIDA, Eduardo Santana de; FORTES, Renata Pontin de Mattos; MEIRA, Silvio Romero de Lemos. From Specification to the Experimentation: A Software Component Search Engine Architecture. In the 9th International Symposium on Component-Based Software Engineering (CBSE 2006), Lecture Notes in Computer Science (lncs), Mälardalen University, Västerås near Stockholm, Sweden, 2006. Cavalcanti, A. P. C., Lucena, L. R., Lucena, M. J. N. R., Moraes, A. K. O. de, Fernandes, D. Y. S., Pereira, S. C., Albuquerque, J. O. and Meira, S. R. L. 2005. Towards an Open Source Software Factory. In: 2nd Experimental Software Engineering Latin American Workshop, Uberlândia, MG, 2005. V. Garcia, F. Durão, M. dos Santos, E. Almeida, D. Lucrédio, J. Albuquerque, S. Meira. Especificação, Projeto e Implementação de uma Arquitetura para um Engenho de Busca de Componentes. WDBC2005 - 5o. Workshop de Desenvolvimento Baseado em Componentes. SBC - Sociedade Brasileira de Computação. Juiz de Fora - MG, 2005. FABRICKS et. al. An Experience of Modeling and Implementing an Open Source Software Factory Methodology. SIMS2005 X Simpósio de Informática. SBC - Sociedade Brasileira de Computação, Uruguaiana - RS, 2005. Jones Albuquerque and Silvio Meira. Software Engineering in Practice: Building Software Factories. ESELAW04 - 1st Experimental Software Engineering Latin American Workshop. SBC - Brazilian Computer Society and IEEE/TCSE-Technical Council on Software Engineering. October, 18. Brasília - DF, 2004. Breno Spindola, Carlos Albuquerque, Jorge Mascena, Karine Coelho, Ryan Albuquerque e Thayssa Rocha. Definição e Melhoria de Processos em uma Fábrica de Software Livre. SIMPROS2004 - VI Simpósio Internacional de Melhoria de Processos de Software, São Paulo, 24-26 de novembro de 2004. Regiane Brito, Patrícia Ferreira, Kleber Silva, Vanilson Burégio e Ivan Leite. Uma Experiência na Implantação de Processo em uma Fábrica de Software Livre. SIMPROS2004 - VI Simpósio Internacional de Melhoria de Processos de Software, São Paulo, 24-26 de novembro de 2004. Vivianne da Nóbrega Medeiros, Carlos Andreazza Rego Andrade, Eduardo Santana de Almeida, Jones Albuquerque e Silvio Meira. Construindo uma Fábrica de Software: da Concepção às Lições Aprendidas. CLEI2004 - XXX Latin-American Conference on Informatics, oct-2004, Arequipa, Peru. Alexandre Alvaro, Thiago Luiz Santos, Paulo Rogério Andrade, João Marcos Vasconcelos, Jones Albuquerque, Silvio Meira. Lições Aprendidas na Criação de uma Fábrica de Software Open-Source. 5o. Workshop de Software Livre, WSL'2004, Porto Alegre, RS, 2-5 de junho de 2004. Helena Marques, Rodrigo Teixeira e Ismênia Silva. Adaptação de um Processo de Desenvolvimento para Fábricas de Software Distribuídas. 7o. Workshop Ibero-Americano de Engenharia de Requisitos e Ambientes de Software, IDEAS'2004, Arequipa, Perú, 3-7 maio 2004.
o meio 2006 ...
linhas-mestras IN953 – Engenharia de Software Process Implementation – Software Factories (Gibeon, Ana Paula, Thayssa) F/L/OSS (Alan) OSS Business Model (Alan, Ana Paula, Aisa) Scientific Relevant Projects (Convidados) Business & Humanitas (TODOS!)
2004, 2005,... X 2008 factories X OSS development? conjunções e intersecções métodos e ferramentas processo modelos licenças Vendas e modelos de negócio X
e o mercado? http://mshiltonj.com/software_wars/
e o mercado? De novo...
What is institutionalization? No, not that kind!
o que “sabemos” aqui? TODO o pressman ou sommerville (Software Engineering) ou seja: requisitos, especificações, refinamento, validação e verificação, métodos, técnicas, linguagens e ferramentas, componentes, reutilização, manutenção, modelagem de processos, qualidade, reengenharia,, verificação, validação e teste... além de programação JAVA++!... {faltaria o quê?}
Alan Kelon Silvio Meira Jones Albuquerque Recife, 21th May 2007 Hukarz Alan Kelon Silvio Meira Jones Albuquerque Recife, 21th May 2007
OSS Factory — Step by Step 1. Definir o modelo de negócios 2. Definir a organização da fábrica 3. Definir processo de desenvolvimento 4. Habilitar o trabalho de forma distribuída 5. Prover um site para a fábrica 6. Prover um site exclusivo para cada novo projeto 7. Definir papéis para cada novo projeto 0. Trabalhar em harmonia
Hukarz Fases
Hukarz ... hukarz-l@googlegroups.com, hukarz-l@cin.ufpe.br,
how IN953 works? if you don´t know yet! silvio jones alan
Building Software Factories - Metodology Teams 1st month! Software Factories Models Lifecicle Software Factories infrastructure and organization Internal Evaluation Business Model External 2nd Month REAL Operation! PILOT
Como se trabalha... Horas de estudo Horas de trabalho Cenários reais Projetos reais Inovações Oportunidades Negócios Experiências Publicações http://www.behavioradvisor.com/
SCORES - and the winner is... Individuals x team Tests Deliverables Client Teachers http://www.coolrunning.com/
teams people skills curricula
2006 7 Fábricas!! Disciplina aberta ao Porto Digital! 7 projetos, clientes reais Soluções são hospedadas no CESAR
Projetos Trulog iRedes Web 2.0 TV Digital Móvel PMK Learning Environment GVS - Grid Versioning Service ToolDAy - Tool for Domain AnalYsis
Fábricas 1. SunRise 2. Garage 3. Cooper 4. J.O.S.E. 5. T.R.E.N.D. 6. O.S.S.O 7. OpenMind
2007 5 Fábricas no CIn 4 Fábricas no CESAR.EDU Projetos secretos, unidades de negócio...
Project AMIGOS Factory CHOPP Projetos e Fábricas no CIn Project AMIGOS Factory CHOPP Project ANKOS Factory O3S Project Maracatwo Factory Bodega Project Cesar Desktop Factory Skankrado Project Telescope Factory OpenBox
Fábricas no CESAR.EDU WHEreis xFactory FIRE CORE
CIn-UFPE tem cursos na Graduação e Pós-Graduação CESAR tem o GARAGE! CESAR.edu tem a metodologia de Fábrica de Software
Lições Aprendidas Bons Times Excelentes Projetos Excelentes Técnicas
MDA e SPL, referências... MDA http://www.omg.org/mda/ http://modeldrivenarchitecture.esi.es/mda_publicDocuments.html SPL http://www.sei.cmu.edu/productlines/
e há engenharia para vendas? Há sim… http://www.engenhariadevendas.com.br/ http://novateceditora.com.br/livros/vendendosoftware/
OSS Business models Based on the seven business models identified on (Koenig, 2004), seven business patterns were proposed Koenig (2004) Seven open source business strategies for competitive advantage. IT Manager’s Journal
OSS Licenses Licensing is such a complex subject that we can find books about it * New Zealand government has developed a research in where the licenses where categorized as: strongly infectious weakly infectious permissive *Laurent, Andrew M. St. 2004. Understanding Open Source and Free Software Licensing. O'Reilly Media,Inc. State Services Commission (2006) Guide to Legal Issues in Using Open Source Software. New Zealand Government Policy. [ http://www.e.govt.nz/policy/open-source/open-source-legal/guide-to-legal-issues-in-using-open-source-software.pdf ]
Strongly infectious licensing Problem: How to estimulate the return of the enhancements of an open source software to the community or author. Solution: Have the software or product licensed using the GNU General Public License (GPL) Known uses: MySQL SGBD, Cyclades products Ribeiro, R. A., Guimarães, R. A., Moraes, A. K. O., Albuquerque, J. O., Meira, S. R. L. (2007) Padrões para Negócios Open Source. 6ª Conferência Latino Americana em Linguagens de Padrões para Programação, Porto de Galinhas, Brasil, 2007.
e as pessoas?... (c) MERX LLC
o fim? 20xx
Prediction is difficult, especially of the future. tendências? Prediction is difficult, especially of the future. Niels Bohr (1885-1962)
tempo?
computer power!!
computer power? BUT, ... “Computer Science is no more about computers than astronomy is about telescopes.” E. W. Dijkstra, holandês, (1930-2002)
produtividade?
mas há outras estratégias mas há outras estratégias... diminuir a ociosidade no escritório, por exemplo...
diminuindo os custos de desenvolvimento? Primate Programming Inc!
mas o dia a dia dos programadores... até na PPI é assim Reunião de acompanhamento Pair Programming
uma fábrica de software… a médio prazo… DESENVOLVIMENTO Modelagem e implementação usando Mozart, UML, SDL… Componentes http://www.cin.ufpe.br/~in1045/ Acompanhamento de atividades simulação de processos modelagem de seres humanos agentes IA como gerente de projetos Análise interativa e iterativa COMERCIAL TOC – based on risks Análise interacional Análise psicológica como instrumento determinante de estratégia de vendas http://php.cin.ufpe.br/~pmk/hp/portugues/home.php 77-23
Toyota ifoot Honda Azimo Bioinformatics
nova força de trabalho: robôs http://silviomeira.blog.terra.com.br/nova_forca_de_trabalho_robos Robô ASIMO comanda Orquestra Sinfônica de Detroit http://www.geek.com.br/modules/noticias/ver.php?id=20112&sec=3 http://www.irobot.com/
e o que mais tem vindo por aí… trilhas da engenharia de produção framework para fábricas constraint logic solvers simuladores de modelagem editores sintáticos visuais autômatos celulares … 80-23
www.xiscanoe.org Moving Things Around Smashing Gliders para saber mais... www.xiscanoe.org
E o que vem depois??