Formação de Comunidades Open Source como fomento à inovação na indústria ( em três atos)
description
Transcript of Formação de Comunidades Open Source como fomento à inovação na indústria ( em três atos)
Formação de
Comunidades Open Source como fomento à inovação na indústria
(em três atos)
o início
2002
Mercado Academia (2002)
Fábricas de Software?
Comunidades de Software Livre?
o desenvolvimento sem processo...
SISTEMAS SÃO SISTEMAS SÃO ENTREGUES!!ENTREGUES!! Mas...Mas...
Acúmulo de TrabalhoAcúmulo de Trabalho
Descontinuidade de Descontinuidade de planosplanos
Prazos, custos... Prazos, custos... EstouramEstouram
Time de heróisTime de heróis
Clientes sem Clientes sem atendimentoatendimento
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?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• (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)
http://sourceforge.net/
231,649 projects nov 29 BRT 2007!268,668 projects apr 24 BRT 2008!
sourceforge.net
• 2005 jun 100K• 2006 apr 134K• 2007 apr 189K• 2008 apr 269K
0
50
100
150
200
250
300
2004 2005 2006 2007 2008 2009
Série1
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 2003http://www.upgrade-cepis.org/issues/2003/4/upgrade-vIV-4.html
Free Software EngineeringResume
• “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
structure culture
process
Eletronic communication
Multicultural community
Values: reciprocity, gift giving, reputation, ideology
Core assumptions
Division of labour
Co-ordination mechanisms
Distribution od decision-making
Organizational boundaries
Informal structure
Political structure
Legitimate basis of authority
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ípiosconceitosilusõ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
...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...
20033 Fábricas1 único projeto, 3 resposta a RFPsNenhum cliente externo (Jones e Silvio)Alunos são rapidamente absorvidos pelo mercado local!!
Fábrica 1
The Factory
Fábrica 3
20043 Fábricas3 projetos, clientes reaisEngenharia de Vendas!Protótipos dão contribuem ou dão origem a projetos reais, financiados!!
Fábricas
OpenGadgetsEngenho de SoftwareUSina
Projetos
Canto LivreMHPSimulare
20054 Fábricas4 projetos, clientes reais, atração de colaboradores externosFábrica OXE vende solução OSS!Soluções são reais e geram negócios...
Projetos
CAOSVENSSORISEPMK
Fábricas
FABRICKOXEDONEOpen Knowledge
Lições Aprendidas1. 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.
2. 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.
3. 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.
4. 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.
5. 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.
6. 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.
7. 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.
8. 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.
9. 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.
10. 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.
11. 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.
12. 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.
13. 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.
14. 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.
15. 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-mestrasIN953 – 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? 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ê?}
Hukarz
Alan KelonSilvio Meira
Jones Albuquerque
Recife, 21th May 2007
OSS Factory — Step by Step
1. Definir o modelo de negócios2. Definir a organização da fábrica3. Definir processo de desenvolvimento4. Habilitar o trabalho de forma distribuída5. Prover um site para a fábrica6. Prover um site exclusivo para cada novo projeto7. Definir papéis para cada novo projeto0. Trabalhar em harmonia
Hukarz
• Fases
Hukarz
<<Disciplina>>Construção
<<Disciplina>>Arquitetura de
Software
<<Disciplina>>Testes
<<Disciplina>>Gerenciamento de Configuração de
Software
<<Disciplina>>Engenharia de
Processo
<<Disciplina>>Planejamento &
Acompanhamento de Projetos
<<Disciplina>>Gerenciamento de
Requisitos
Hukarz [email protected],[email protected],[email protected]
how IN953 works?
if you don´t know yet!
silviojonesalan
Building Software Factories - Metodology
Teams
1st month!
SoftwareFactoriesModels
SoftwareLifecicle
Software Factories infrastructure and
organization
InternalEvaluation
BusinessModel
ExternalEvaluation
2nd Month
REALOperation!
PILOTOperation!
http://www.behavioradvisor.com/
Horas de estudoHoras de trabalhoCenários reaisProjetos reaisInovaçõesOportunidadesNegóciosExperiênciasPublicações
Como se trabalha...
SCORES - and the winner is...
• Individuals x team
• Tests
• Deliverables
• Client
• Teachers
http://www.coolrunning.com/
teams
• people
• skills
• curricula
20067 Fábricas!!Disciplina aberta ao Porto Digital!7 projetos, clientes reaisSoluções são hospedadas no CESAR
Projetos
TrulogiRedesWeb 2.0TV Digital MóvelPMK Learning EnvironmentGVS - Grid Versioning ServiceToolDAy - Tool for Domain AnalYsis
Fábricas
1. SunRise2. Garage3. Cooper4. J.O.S.E.5. T.R.E.N.D.6. O.S.S.O7. OpenMind
20075 Fábricas no CIn4 Fábricas no CESAR.EDUProjetos secretos, unidades de negócio...
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
WHEreisxFactoryFIRECORE
CIn-UFPE tem cursos na Graduação e Pós-GraduaçãoCESAR 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
1. http://www.omg.org/mda/
2. http://modeldrivenarchitecture.esi.es/mda_publicDocuments.html
• SPL
1. 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
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... diminuir a ociosidade no escritório, por exemplo...
diminuindo os custos de desenvolvimento?
PrimateProgrammingInc!
mas o dia a dia dos programadores... até na PPI é assim
Pair Programming
Reunião de acompanhamento
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
77-23
http://php.cin.ufpe.br/~pmk/hp/portugues/home.php
Toyota ifoot
Honda Azimo
Bioinformatics
nova força de trabalho: robôshttp://silviomeira.blog.terra.com.br/
nova_forca_de_trabalho_robos
Robô ASIMO comanda Orquestra Sinfônica de Detroithttp://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
Moving Things Around
www.xiscanoe.orgpara saber mais...
Smashing Gliders
E o que vem depois??