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

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

Embed Size (px)

Citation preview

Page 1: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process

Julio Maravitch Maurício Neto [email protected]

VI Encontro CIn sobre Qualidade, Processos e Gestão de Software 27/03/2007

Page 2: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 3: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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?

Page 4: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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”

Page 5: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Open Source Projects

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

Page 6: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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)

Page 7: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 8: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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”

Page 9: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 10: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

OSS development process

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

Page 11: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

building a software factory...[Making the software factory work... 1990-1999]

http://www.cin.ufpe.br/~in953/papers/MakingTheSoftwareFactoryWorkLessonsFromADecadeOfFactory.pdf

1. to define a detailed software development process2. staff members were given extensive training in the

new process3. process specification separated from process

execution4. data collection and analysis

1. interviews2. software process assesments3. process attributes for each project4. configuration management system5. project tracking data

Page 12: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

o PROCESSO é complexo!

(c) MERX LLC

Page 13: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Elaborado: OJS - Revisão: CAB, JPML, GMR - Aprovado: CAB - Versão 0

Fábrica de Software da Ampla Consultoria em Informação

Prospecção

Execução

PLT

Execução

Proposta

Proposta

Encerramento

Garantia

Execução

PPPP

PC

PCPP PP

PROT

PPF

PT

DR

PC

PC PROTDRPTPPF

MER

DR

PPF

PT

PC

PPF

PP

PT

MER

UC

MER

UC

DR

DRDR

MER

UC

DR

PROT

DR

DRPROT

DR

UC

AR

MER

PROT

N

S

N

S

S

N

OK?

RevisarRequisitos,

interfaces, casosde uso e MER

Gc

Criar PropostaComercial

Líder Equipe 2

Validar requisitos

Criar PropostaTécnica e Plano

de Projeto

Validar interfacese requisitos

Técnicos

Cl

Líder Equipe 1

Gc

Gerente de Projetos

Di

Agendar visitaspara apresentaçãoe/ou elicitação de

requisitos

Diretor

Identificardemandas que

possam seratendidas pelas

áreas deconhecimento

Gp

Projetar interfaces

Técnicos

Gc

Cliente

Requisitos/escopoestão claros?

Gp

Prototiparinterfaces

Projetarinterfaces?

1

Técnicos

De

Gerente ComercialGerente de Tecnologia

Gerente de Processos e Qualidade

Início

Gp

Líder Equipe n

Análise de Pontosde Função

Gc Di

Gc Gp

GcCl Gp

Gp

Gp Gc

Gp

N

S

S Revisões?

Projetoaprovado? C

1

Registrarsuspensão do

projeto

Apresentar PC,PT e DR

Revisar DR, PT,PPF, PC e PROT.

Di GpGc

Gp

N

S Renegociar?

Revisarcronograma

Revisar PropostaComercial

Avaliar riscos

Preparar ambientede

desenvolvimento

Lp

Lp

Reavaliarnecessidades de

treinamento

Lp

Gp

Reavaliar recursoshumanos,software ehardware

LpGp

Lp

Gp GcDi

S

S

N

S

N

S

N

N

S

S N

Fim

PP

OK?

MER MER

DR

Implementar

A

Projetar banco dedados

PT

Apresentarrequisito paradesenvolvedor

PC

DS (o)

BIntegrar?

Corrigir

Preparar Plano deTeste

Lp

B

Solicitação demudanças

PLT

SM

Selecionarrequisito

Cl

Avaliar solicitação

DR

PLT

Problemas naimplementação?

Realizar Teste deUnidade

Comunicar Líderdo Projeto

PC

Revisar requisitos,plano de projeto

De

Realizar casos deuso

De

DI (o) Nãoconformidades?

PP

DS (o)

Agendar reuniãocom cliente

MER

PT

B-1

PC

Aprovarmudanças?

PLT

DR

Lp

PP

A

DI (o)

PP

Revisar requisitose plano de projeto

3

DR

Renegociar

PT

Lp

PT

Pode ser resolvidointernamente?

A-1

B-2

Encerrarsolicitação

DC

B-2

Especif icar casosde teste de

unidade

A-2

PC

RIT

Lp

Gp

DC

GpSM

Início

De

Gc

SM

Lp

Gp Gc

Gp Gc

LpCl

Di

GpLp

Lp

De

De

S

N

S

N

PP

B

Nãoconformidades?

PP

PP

3

RIT

Analisar nãoconformidades e

planejarimplementação

Gp

RIT

DeGq

Analisar nãoconformidades e

planejarimplementação

B

Realizar Teste deSistema

Realizar Teste deIntegração

Nãoconformidades?

NS

N

S

S

N

Iniciar período degarantia(90 dias)

Analisar

Gq

PP

Preparar materialde treinamento

PO

PP

B

DR

De

Agendartreinamento

Gp

B

Realizartreinamento

DRProblema

encontrado?

PT

Gp

PC

Instalar econfigurarsoftware

Aceitação totalou parcial?

Procede?

Analisar

DR

De

AR

Teste deaceitação

(com cliente)

De

DeGp

Realizar pesquisade opinião

C

Reunião deencerramento

(equipe)

RM

KB

De

Gp

AR

Di

Gp

Avaliar resultadosdo projeto

Gq

Lp

Registrarencerramento do

projeto

Fim

PO

Gp

Artefato

Artefato fonte

Artefato produzido

Fluxo do processo

Processo

Ponto de decisão

Responsabilidade

Di DiretorCl ClienteGc Gerente ComercialGt Gerente de TecnologiaGp Gerente de ProjetosGq Gerente de Processos e QualidadeLp Líder do ProjetoDe Desenvolvedor

Atores

Artefatos

AR_<Cód. do Projeto>_<aaaammdd> Ata de ReuniãoDR_<Cód. do Projeto>_V<99>.<99> Documento de RequisitosPT_<Cód. do Projeto>_V<99>.<99> Proposta TécnicaPC_<Cód. do Projeto>_V<99>.<99> Proposta ComercialPP_<Cód. do Projeto>_V<99>.<99> Plano de ProjetoMER_<Cód. do Projeto>_V<99>.<99> Modelo de Entidades e RelacionamentosPLT_<Cód. do Projeto>_V<99><99> Plano de TesteRIT_<Cód. do Projeto>_V<99><99> Relatório de Incidentes de TesteMU_<Cód. do Projeto>_V<99>.<99> Manual do UsuárioPO_<Código do Projeto> Pesquisa de OpiniãoPROT_<aaaammdd> Protótipo (Na pasta I)SM_<Cód. do Projeto>_V<99>.<99> Solicitação de MudançasUC_<Cód. do Projeto>_V<99>.<99> Caso de UsoPPF_<Código do Projeto>_V<99>.<99> Pontos por FunçãoDC_<Código do Projeto>_V<99>.<99> Diagrama de ClassesDS_<Código do Projeto>_V<99>.<99> Diagrama de SequênciaDI_<Código do Projeto>_V<99>.<99> Diagrama de InteraçãoRA_<Código do Projeto>_V<99>.<99> Relatório de AceitaçãoRM_<Código do Projeto>_V<99>.<99> Relatório de Melhorias no ProcessoKB Knowledge Base

(o) = Opcional

Gp DeGq

GpCl

GpGq

Gq

Gq Gp De

Gq

PP

RA

Encerramento

MER

DR

PPF

PT

PC

PPF

PP

PT

MER

UC

MER

UC

DR

DRDR

MER

UC

DR

ReviseRequirements,

interfaces, E-Rand Use Cases

Gc

Build CommercialProposal

Build TechnicalProposal and

Project Plan

DiGc

Gp

1

Gp

Function PointAnalysis

Gp Gc

Gp

Contrato

Execução

Entrega

Prospecção

processo é complexo... Ex.: Amplaprocesso é complexo... Ex.: Ampla

Page 14: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com
Page 15: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 16: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 17: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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.

Page 18: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

PSP is not...

• a Silver Bullet solution• a radically different approach to

development

Page 19: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 20: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

What does PSP provide?

• Measurements– Size– Time– Defects

Page 21: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Time estimating error

Page 22: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Defect Level Improvement

Page 23: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Productivity Results

Page 24: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

PSP processes

Page 25: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

PSP Process Flow

Page 26: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 27: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 28: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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.

Page 29: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 30: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 31: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

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

Page 32: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

ReferênciasAlvaro, 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. 16-18Belleza, 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 PernambucoCavalcanti, 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, 2005. 

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. 744-751Feller, 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. 586-601Ferguson, P., Humprey, W., Khajenoori, S., Macke, S. and Matvya, A. (1997) “Introducing the Personal Software Process: Three

Industry Cases”, IEEE Computer 30(5), pp. 24-31 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. 57-62

Goth, G. (2005) “Open Source Business Models: Ready for Prime Time”, Disponível em:http://www.computer.org/portal/cms_docs_software/software/content/promo/promo4.pdf. Acessado em: 07/05/2006.

Page 33: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

ReferênciasGosh, 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. 209-223 Humprey, W. (1989) “Managing the Software Process”, The SEI Series in software engineering. Addison-WesleyHumprey, 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.105-109.Michlmayr, M. (2004) “Managing Volunteer Activity in Free Software Projects”, In: Proceedings of the 2004 USENIX Annual

Technical Conference, FREENIX Track, Boston, USA, pp. 93-102Mockus, 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. 263-272.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. 309-346Morisio M. (2000) “Applying the PSP in industry”, IEEE Software, 17(6), pp. 90-95O’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, 2001OpenBRR (2005) “Modelo de Levantamento para Avaliação de Preparo para Negócios”, Disponível em:

http://www.openbrr.org, Acessado em: 18/02/2007.OSMM (2005) “Making the Open Source Ready for the Enterprise: The Open Source Maturity Model”, Disponível em:

http://www.navicasoft.com/Newsletters/OSMMWhitepaper.pdf, Acessado em: 18/02/2007.

Page 34: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

ReferênciasPerens, B. (1999) “The open source definition. in Open Sources: Voices from the OpenSource 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. 36-

45Prechelt, L. and Unger, B. “An Experiment Measuring the Effect of Personal Software Process (PSP) Training”, IEEE

Transactions on Software EngineeringPorter, 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. 355-379Raymond, 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. 529-551Schulmeyer, G., McManus, J. (1999) “Handbook of Software Quality Assurance”, Prentice hallSison, 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: http://www2.cs.uh.edu/~schwu/nOSS_TermPaper1.pdf.

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. 65-75

Page 35: Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process Julio Maravitch Maurício Neto maravitch@gmail.com

Melhoria da Qualidade do Processo em Fábricas de Software Open Source através do Personal Software Process

Julio Maravitch Maurício Neto [email protected]

VI Encontro CIn sobre Qualidade, Processos e Gestão de Software 27/03/2007