Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto

Slides:



Advertisements
Apresentações semelhantes
Parte III – Engenharia de Software para Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.
Advertisements

DIRETORIA ACADÊMICA NÚCLEO DE CIÊNCIAS HUMANAS E ENGENHARIAS DISCIPLINA: INGLÊS FUNDAMENTAL - NOITE PROFESSOR: JOSÉ GERMANO DOS SANTOS PERÍODO LETIVO
Introdução à Engenharia de Informação
Melhoria da Qualidade de Software utilizando o Modelo CMM
International Seminar on Bilateral and South- South Cooperation TUCA cooperation meeting South-South Cooperation: the perspective of Global Partnership.
Matheus dos Santos Lima
METODOLOGIA PARA DESENVOLVIMENTO DE SISTEMAS Prof. Dr. rer. nat. Daniel D. Abdala 1.
Situational Leadership II (SLII). O modelo SLII propõe que há quatro níveis de desenvolvimento pelos quais uma pessoa que aprende algo passa, e não importa.
XPRecife Madson Menezes Costa Ricardo de Oliveira Cavalcanti.
FVS 2014 Building OSS Factories
1Chart Album O que Fazemos? Inovação Aplicada Apoio a Start-Ups e PMEs Recupe- ração de Empresas Cultura de Inovação Internacionalização 2 Fonte: Roland.
Desenvolvimento Empresarial Aula 7 – Simulação
TREINAMENTO COMPLEMENTAR DE RCE
1 st HALF OF 2005 RESULTS. Grandes marcas, preços baixos, todos os dias. Bovespa: LAME3 (CS) LAME4 (PS) 2 Operating Highlights Expansion of Store Network.
Inovação no cluster de TICs de pernambuco... silvio lemos meira
Desenvolvimento de software em indústria, comunidades acadêmicas e científicas uma fábrica de software?...
INFORMATION SECURITY IN ORGANIZATIONS Ana Helena da Silva, MCI12017 Cristiana Coelho, MCI12013.
SWEBOK Guide to the Software Engineering Body of Knowledge Thayssa Rocha TAES 3 –
Chapter 1 - The Foundations for a New Kind of Science Wolfram, Stephen. A New Kind of Science. Wolfram Media, Inc
Fábrica de Software III
Free Software Engineering: A Field to Explore Gonzáles-Barahona and Robles UPGRADE Vol. IV No. 4 August 2003.
Free Software Engineering: A Field to Explore Gonzáles-Barahona and Robles UPGRADE Vol. IV No. 4 August 2003.
Desenvolvimento de software em indústria, comunidades acadêmicas e científicas uma fábrica de software?...
fábrica de software conceitos, idéias e ilusões
Europa. Portugal Montemor-o-Velho Associação Diogo de Azambuja School Year 2005/2006.
SCRUM Processo de Desenvolvimento de Software
1 PSP/TSP Definições e Questões Jones Albuquerque
DI-UFPE1 Sistemas CASE Visão Geral do Curso Alexandre M. L. de Vasconcelos.
W2i Digital Communities Best Practices Awards Wireless: Uma Rede de Cidadania Project Lead:Date: 30/10/2006 Organization: Prefeitura de Sud MennucciCountry:Brazil.
CIGRÉ/BRASIL – COMITÊ NACIONAL BRASILEIRO CE-B5 – PROTEÇÃO E AUTOMAÇÃO SEMINÁRIO INTERNO DE 2005.
Ferramenta de Modelagem de Requisitos e Agentes (TAOM4e) Laís Xavier Prof.: Jaelson Castro.
10 o Simpósio Brasileiro de Computação Musical3 a 6 de Outubro de A User-Friendly Graphical System for Room Acoustics Measurement and Analysis Leo.
Uma introdução ao SWEBOK
Plano de Neg ó cio e Capital de Risco ASIT e-Business 3 ª PARTE: Exemplos Fernando Machado 25-jun-02.
Gerenciamento de Programas The Standard for Program Management
Criando Comunidades de Desenvolvimento de Código Aberto Alan Kelon Oliveira de Moraes.
‘Internet rights and wrongs. Choices and challenges in a Networked World’ Hillary Clinton George Washington University, February 2011.
Referências Bibliográficas Artigos Técnicos Livros Conferências e Workshops Mini-cursos e Tutoriais Referências na Web.
Pontifícia Universidade Católica do Rio Grande do Sul Departamento de Engenharia Elétrica Fernando Soares dos Reis Didactic Platform for Power Electronics.
Universidade Estadual Paulista “Júlio de Mesquita Filho” campus de Rio Claro PPGEB-Programa Pós-Graduação em Ecologia e Biodiversidade.
O que são os alertas do Google?
Fábrica de software princípios, conceitos, e ilusões
Redes Sociais Online ISCTE – Instituto Universitário de Lisboa MCCTI Mónica Oliveira 13 de Março de 2013.
Instanciação de Processos de Software Ciro Coelho Grupo de Estudos em Processos CIn – UFPE 23/07/2002.
Um Modelo de Subcontratação de Desenvolvimento de Software
Uma Abordagem para o Estudo de Valor em Processos de Software: Aplicando VBSE ao EUP Gustavo Tibério
Modelos Computacionais para Simulação do Processo de Expansão da Esquistossomose na Área Litorânea de Pernambuco
Business Unit - Marketing Research. The Marketing Evolution Co. 2 Marketing Research with Strategic View Using its expertise in management, SMG applies.
Comunicação Assíncrona em Equipes Distribuídas: Requisitos e Meios Utilizados Cleyton Carvalho da Trindade Universidade Federal de.
Estudo Comparativo Entre Metodologias Ágeis e Tradicionais Aluno: Márcia Seabra Cabral Professor: Augusto Sampaio Disciplina: Tópicos Avançados em Engenharia.
Gerência de Processos Mestrado de Informática / UFPB Francilene Procópio Garcia, D.Sc. Chaos Report.
Luciana de Queiroz Leal Hermano Perrelli de Moura
Strategic dimensions of brazilian development Seminário internacional: Papel do Estado no Século XXI ENAP - Brasília, 3 de setembro de 2015 Mariano Francisco.
Universidade de Brasília Laboratório de Processamento de Sinais em Arranjos 1 Adaptive & Array Signal Processing AASP Prof. Dr.-Ing. João Paulo C. Lustosa.
Universidade de Brasília Laboratório de Processamento de Sinais em Arranjos 1 Adaptive & Array Signal Processing AASP Prof. Dr.-Ing. João Paulo C. Lustosa.
About Us iVenture Inc is a technology as well as comprehensive media company that facilitates businesses, institutes and individuals by providing simplified.
Benchmarking em gestão de carreiras. Ideias-chave  O conceito de sucesso organizacional mudou  “Being engaged in challenging work, continuous learning,
Adriano Melo IDE Eclipse + Subclipse Link para download: \\cin01\scratch_astm$\eclipse.zip
Marcio Patusco Lana Lobo Fevereiro de 2009 Estrutura das Reuniões da CBC3 GRN4 em Sugestão de estrutura para as reuniões da CBC3 GRN4 em 2009 Marcio.
Avaliação da Maturidade das Organizações Portuguesas em Projetos e Portfólios Oradores: Cristina Matias e Marco Duarte 28 e 29 NOVEMBRO 2014 Hotel TIVOLI.
Universidade de São Paulo - Escola de Engenharia de São Carlos Serviço de Biblioteca Skills developed by students of.
Processo de Desenvolvimento de Software – RUP 10. Certificação Márcio Aurélio Ribeiro Moreira
Abril 2016 Gabriel Mormilho Faculdade de Economia, Administração e Contabilidade da Universidade de São Paulo Departamento de Administração EAD5853 Análise.
Pesquisa Operacional aplicada à Gestão de Produção e Logística Prof. Eng. Junior Buzatto Case 3.
ERSS, 2004/05 Gestão de Requisitos
Teste e Qualidade de Software
Trainers and Co-Trainers
Submetendo a Periódicos
Transcrição da apresentação:

Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto VI Encontro CIn sobre Qualidade, Processos e Gestão de Software 27/03/2007

Agenda Modelo Open Source de Desenvolvimento Fábricas de Software Open Source Personal Software Process Utilizando PSP em Fábricas OS Conclusões e Trabalhos Futuros

Objetivo Entender como funciona o ecossistema OS Atender às necessidades do ambiente –Promover a melhoria da qualidade do processo de desenvolvimento –Pode ser melhorado? –Como?

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 16 00:10:21 BRT 2006)  133,421 projects! Communications (13469)Communications Database (5388)Database Desktop Environment (2822)Desktop Environment Education (3252)Education Formats and Protocols (1292)Formats and Protocols Games/Entertainment (12694)Games/Entertainment Internet (21951)Internet Multimedia (11518)Multimedia Office/Business (6136)Office/Business Other/Nonlisted Topic (2065)Other/Nonlisted Topic Printing (417)Printing Religion and Philosophy (274)Religion and Philosophy Scientific/Engineering (9942)Scientific/Engineering Security (2494)Security Sociology (355)Sociology Software Development (18587)Software Development System (17790)System Text Editors (2436)Text Editors

Open Source Projects (Tue mar 27 11:57:45 BRT 2007)  184,564 projects! Communications (18433) Database (6942) Desktop Environment (3760) Education (4920) Formats and Protocols (2870) Games/Entertainment (17237) Internet (28264) Multimedia (15505) Office/Business (9655) Other/Nonlisted Topic (2560) Printing (511) Religion and Philosophy (333) Scientific/Engineering (14895) Security (3274) Sociology (429) Software Development (28149) System (22952) Terminals (688) Text Editors (3187)

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

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”

The OSS model Three dimensions: –structure, process and culture structureculture 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

OSS development process Problem discovery Finding volunteers Solution identification Code development and testing Code change review Code commit and documentation Release management

building a software factory... [ Making the software factory work ] to define a detailed software development process 2.staff members were given extensive training in the new process 3.process specification separated from process execution 4.data collection and analysis 1.interviews 2.software process assesments 3.process attributes for each project 4.configuration management system 5.project tracking data

o PROCESSO é complexo! (c) MERX LLC

Encerramento Contrato Execução Entrega Prospecção processo é complexo... Ex.: Ampla

To do an effective job, you need to... Plan your work Do your work according to this plan Strive to produce the highest quality products

Personal Software Process (PSP) It is a disciplined way of writing software which can lead to dramatic improvements in –the quality of the software you write –your productivity –the quality of your plans and estimates. Following a discipline like this can lead to greater self-knowledge, a valuable thing in itself

Personal Software Process (PSP) It shows how to apply advanced engineering methods to their daily tasks Provides detailed estimating and planning methods Shows how to track sw engineers' performance against these plans Explains how defined process can guide their work Will lead you away from random hacking and towards professional software eng.

PSP is not... a Silver Bullet solution a radically different approach to development

PSP is a framework that allows detailed planning and tracking of project status a vehicle to collect “in process” metrics to provide insight and opportunities to improvement a way to protect development steps needed to “build in” quality

What does PSP provide? Measurements –Size –Time –Defects

Time estimating error

Defect Level Improvement

Productivity Results

PSP processes

PSP Process Flow

Benefits PSP has the potential to increase your effectiveness as a programmer dramatically The data you collect and the conclusions you infer from them can empower you in negotiations with your boss Deeper benefits are possible too. Any self- knowledge has the potential to lead to personal growth

Best practices Task breakdown (detailed planning) Time alloted to Design Size estimation methods Time alloted to Review/Inspection Time tracking Defect tracking Metric analysis Coding standards

Why are we doing all this? The quality of a software system is determined by the quality of its worst components. The quality of a software components is determined by the quality of its developer’s knowledge, discipline, and commitment. As software professionals you should now how to measure, track, and analyze your own performance. You should be able to learn from your past failures and improve your personal practices.

Utilizando PSP em OS Dificuldades das Fábricas OS –Motivação dos participantes Melhoria pessoal –Configuraçao inconstante no espaco-tempo –Coordenacao de atividades de forma isolada e assíncrona Modelos tradicionais se mostraram ineficientes Alternativa bottom-up

Utilizando PSP em OS Metodologia –Definição de um processo de desenvolvimento de fábricas OS –Execução do processo {caos...} –Identificação das necessidades de fábricas OS –Busca por alternativas de melhoria {PSP} Casamento de melhorias oferecidas com as necessidades requeridas

Conclusions & Future Work Open Source é um oceano azul a ser explorado A qualidade deve acontecer de forma bottom-up Indicativamente, PSP pode auxiliar OSS na busca por melhoria da qualidade Estudos Empíricos –Desenvolvedor –Gerente –Cliente

Referências Alvaro, A., Santos, T., Andrade, P., Vasconcelos, J. Albuquerque, J. and Meira, S. (2004) “Lições Aprendidas na Criação de uma Fábrica de Software Open-Source”, 5o Workshop de Software Livre, WSL’2004, Porto Alegre, RS. Baker, E. (2001) “Wich way, SQA?”, IEEE Software 18(1), pp Belleza, C., Levi, F., Ochner, J., Maravitch, J., Vieira, H. and Marcuschi, R. (2006) “Fases de Criação de uma Fábrica de Software Open Source Distribuída”, Universidade Federal de Pernambuco Cavalcanti, A., Lucena, L., Lucena, R., Moraes, A., de Fernandes, D., Pereira, S., Albuquerque, J. and Meira, S. (2005) “Towards an Open Source Software Factory”, In: 2nd Experimental Software Engineering Latin American Workshop, Uberlândia, MG, Crowston, K., Annabi, H., Howison, J. and Masango, C. (2004) “Effective Work Practices for Software Engineering: Free/Libre Open Source Software Development”, WISER. El Emam, K., Shostak, B. and Madhavji, N. (1996) “Implementing Concepts from the Personal Software Process in an Industrial Setting”, In: Proceedings of the 4th International Conference of Software Process, Brighton, England Fabriks (2005) “An Experience of Modelling and Implementing an Open Source Software Factory Methodology”, SIMS2005 X Simpósio de Informática. SBC – Sociedade Brasileira de Computação, Uruguaiana – RS. Fagan, M. (1986) “Advances in Software Inspections”, IEEE Transactions on Software Engineering 12(7), pp Feller, J. and Fitzgerald, B. (2002a) “Understanding Open Source software Development”, London: Addison-Wesley Feller, J. and Fitzgerald, B (2002b) “A further investigation of open source software: community, co-ordination, code quality and security issues”, Information Systems Journal, 12(1), pp. 3-7 Finkelstein, A. and Kramer, J. (2000) “Software Engineering: A Roadmap”, ICSE. Frank, P., Hamlet, R., Littlewood, B., Strigini, L. (1998) “Evaluating Testing Methods by Delivered Reliability”, IEE Transactions on Software Engineering 24(8), pp Ferguson, P., Humprey, W., Khajenoori, S., Macke, S. and Matvya, A. (1997) “Introducing the Personal Software Process: Three Industry Cases”, IEEE Computer 30(5), pp de Groot, A., Kugler, S., Adams, P.J. and Gousios, G. (2006) “Call for Quality: Open Source Quality Observation”, In: IFIP International Federation for Information Processing, Volume 203, Open Source Systems, eds. Damiani, E., Fitzgerald, B., Scacchi, W., Scotto, G., (Boston: Springer), pp Goth, G. (2005) “Open Source Business Models: Ready for Prime Time”, Disponível em: Acessado em: 07/05/2006.

Referências Gosh, R., Glott, R., Krieger, B. and Robles, G. (2002) “Free/Libre and Open Source Software: Survey and Study”, Part 4: Survey of Developers, International Institute of Infonomics, University of Maastricht Harris, B. (2006). “Virtual man chooses Internet over office”, DesMoinesRegister.com. Hayes, W. and Over, J. (1997) “The Personal Software Process (PSP): An Empirical Study of the Impact of PSP on Individual Engineers”, CMU/SEI-97-TR-001. von Hippel, E. and von Krogh, G. (2003) “Open source software and the private-collective innovation model: Issues for organization science”. Organization Science, 14(2), pp Humprey, W. (1989) “Managing the Software Process”, The SEI Series in software engineering. Addison-Wesley Humprey, W. (1994) “A Discipline for Software Engineering”, Addison-Wesley. Humprey, W. (1996) “Introduction to the Personal Software Process”, Addison-Wesley. Johnson, P. and Disney, M. (1998) “The Personal Software Process: A Cautionary Case Study”. IEEE Software, 15(6). Johnson, P. and Disney, M. (1999) “A Critical Analysis of PSP Data Quality: Results from a Case Study”, Empirical Software Engineering: An International Journal. Krishnamurthy, S. (2003) “An Analysis of Open Source Business Models”, University of Washington. Lessig, L. (2002) “The Future of Ideas: The Fate of the Commons in a Connected World”, New York: Vintage Books. Michlmayr, M. and Hill, B. (2003) “Quality and Reliance on Individuals in Free Software Projects”, In: Proceedings of the 3rd Workshop on Open Source Engineering, Portland, USA: ICSE, pp Michlmayr, M. (2004) “Managing Volunteer Activity in Free Software Projects”, In: Proceedings of the 2004 USENIX Annual Technical Conference, FREENIX Track, Boston, USA, pp Mockus, A., Fielding, R. and Herbsleb, J. (2000) “A Case Study of Open Source Software Development: the Apache Server”, In: The 22nd International Conference on Software Engineering, pp Mockus, A., Fielding, R. and Herbsleb, J, (2002) “Two Case Study of Open Source Software Development: Apache and Mozilla”, ACM Transactions on Software Engineering and Methodology, Vol. 11, No. 3, pp Morisio M. (2000) “Applying the PSP in industry”, IEEE Software, 17(6), pp O’Connor, R., Duncan, H., Coleman, G., Morisio, M., McGowan, C., Mercier, C. and Wang, Y., “Improving Professional Software Skills in Industry - A Training Experiment", Technical Report CA-0201, Dublin City University, 2001 OpenBRR (2005) “Modelo de Levantamento para Avaliação de Preparo para Negócios”, Disponível em: Acessado em: 18/02/2007. OSMM (2005) “Making the Open Source Ready for the Enterprise: The Open Source Maturity Model”, Disponível em: Acessado em: 18/02/2007.

Referências Perens, B. (1999) “The open source definition. in Open Sources: Voices from the Open Source Revolution” C. Dibona, S. Ockman, and M. Stone, Eds., O’Reilly, Sebastopol, Calif., 171–188. Perry, D., Staudenmayer, P., Votta, L. (1994) “People, Organizations, And Process Improvment”, IEEE Software 11(4), pp Prechelt, L. and Unger, B. “An Experiment Measuring the Effect of Personal Software Process (PSP) Training”, IEEE Transactions on Software Engineering Porter, A., Votta, L. (1995) “Comparing Detection Methods for Software Requirements Inspections: A Replication Using Professional Subjects”, Empirical Software Engineering: An International Journal 3(4), pp Raymond, E. (1999) “The Cathedral and the Bazaar”. 1st. O'Reilly & Associates, Inc. Raymond, E. (2001) “The Cathedral and the Bazaar. Musgins on Linux and Open Source by an Accidental Revolutionary”, revised edn, Sebastopol, CA: O’Reilly & Associates, Inc. Rothermel, G., Harrold, M. (1996) “Analyzing Regression Test Selecion Techniques”, IEEE Transaction on Software Engineering 22(8), pp Schulmeyer, G., McManus, J. (1999) “Handbook of Software Quality Assurance”, Prentice hall Sison, R., Diaz, D., Lam, E., Navarro, D. and Navarro, J. (2005) “Personal Software Process (PSP) Assistant”, In: Proceedings of the 12th Asia-Pacific Software Engineering Conference (APSEC’05) Stallman, R. (1999) “The GNU Operating System and the Free Software Movement”, In: Open Sources: Voices from the Open Source Revolution, O’Reilly, Sebastopol, Calif., 53–70. Turkle, S. (1985) “The Second Self: Computers and the Human Spirit”, New York: Simon and Schuster. Wu, S. (2004) “The Impact of Open Source Software”, Disponível em: Acessado em: 07/05/2006. Yang, C. (2006) “Problems in Quality Assurance under Open Source Development Model”, Freie Universitat, Berlin Zhao, L. and Elbaum, S. (2003) “Quality Assurance under the Open Source Development Model”, The Journal of Systems and Software, volume 66, pp

Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto VI Encontro CIn sobre Qualidade, Processos e Gestão de Software 27/03/2007