48
Normas de Qualidade nos Normas de Qualidade nos Processos de Desenvolvimento de Processos de Desenvolvimento de Software Software edi edição: ão: Maio/2006 Maio/2006 RICARDO J. MACHADO RICARDO J. MACHADO (DEng DEng, MSc MSc, PhD PhD , MOEng, MIEEE) MOEng, MIEEE) Email Email: rmac rmac@dsi dsi.uminho uminho.pt pt URL: http:// URL: http://www www.dsi dsi.uminho uminho.pt pt/~ /~rmac rmac Departamento de Sistemas de Informação

Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

  • Upload
    trannhi

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

1

Normas de Qualidade nosNormas de Qualidade nosProcessos de Desenvolvimento deProcessos de Desenvolvimento de

SoftwareSoftware11ªª ediediçção: ão: Maio/2006Maio/2006

RICARDO J. MACHADORICARDO J. MACHADO((DEngDEng,, MScMSc,, PhDPhD ,, MOEng, MIEEE)MOEng, MIEEE)

EmailEmail:: rmacrmac@@dsidsi..uminhouminho..ptptURL: http://URL: http://wwwwww..dsidsi..uminhouminho..ptpt/~/~rmacrmac

Departamento de Sistemas de Informação

Page 2: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

2

©R

MA

C 2

005/

06

2

SumSumááriorio

1.1. Normas em TIC (Normas em TIC (ICT standardsICT standards))

22.. Normas Abertas (Normas Abertas (open standardsopen standards))

3.3. Qualidade no Software (Qualidade no Software (software qualitysoftware quality))

4.4. Melhoria do Processo (Melhoria do Processo (process improvementprocess improvement))

Page 3: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

3

©R

MA

C 2

005/

06

3

1. 1. Normas em TICNormas em TIC (1/5)(1/5)

nn DefiniDefiniçção de ão de ““normanorma”” [Jacobs 2000][Jacobs 2000]

nn Questões...Questões...–– ““publicly availablepublicly available”” sempre desejsempre desejáável?vel?–– ““procedures, rules and requirementsprocedures, rules and requirements”” cobre todo o tipo de cobre todo o tipo de

objecto alvo?objecto alvo?–– normas emitidas somente por normas emitidas somente por ““legitimate and recognized legitimate and recognized

authorityauthority”” não sernão seráá limitativo?limitativo?–– ......

Page 4: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

4

©R

MA

C 2

005/

06

4

1. Normas em TIC 1. Normas em TIC (2/5)(2/5)

nn DefiniDefiniçção de ão de ““normanorma”” [ISO/IEC 2004][ISO/IEC 2004]

nn Questões...Questões...–– deixa ddeixa dúúvidas em relavidas em relaçção ao tipo de organizaão ao tipo de organizaçções que pode ões que pode

emitir normasemitir normas–– parece aplicarparece aplicar--se a se a ááreas como o direitoreas como o direito

Page 5: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

5

©R

MA

C 2

005/

06

5

1. Normas em TIC 1. Normas em TIC (3/5)(3/5)

nn DefiniDefiniçção de ão de ““normanorma”” [De Vries 1999][De Vries 1999]

nn Questões...Questões...–– resolve, aparentemente, todos os problemas das definiresolve, aparentemente, todos os problemas das definiçções ões

anterioresanteriores–– serseráá??

Page 6: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

6

©R

MA

C 2

005/

06

6

1. Normas em TIC 1. Normas em TIC (4/5)(4/5)

nn normas devem ser vistas como solunormas devem ser vistas como soluçções para determinados ões para determinados problemasproblemas

nn a norma estabelece uma correspondência entre as propriedades a norma estabelece uma correspondência entre as propriedades das entidades correlacionadas (soludas entidades correlacionadas (soluçção e problema)ão e problema)

nn uma entidade pode seruma entidade pode ser§§ uma pessoa ou grupo de pessoasuma pessoa ou grupo de pessoas§§ um objecto, um acontecimento, uma ideia ou um processoum objecto, um acontecimento, uma ideia ou um processo§§ uma combinauma combinaçção dos anterioresão dos anteriores

Page 7: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

7

©R

MA

C 2

005/

06

7

1. Normas em TIC 1. Normas em TIC (5/5)(5/5)

nn desta forma, uma norma pode estabelecer diferentes tipos de desta forma, uma norma pode estabelecer diferentes tipos de correspondências:correspondências:§§ entre entre ““coisascoisas”” e e ““coisascoisas”” (ex. fichas e tomadas)(ex. fichas e tomadas)§§ entre pessoas e entre pessoas e ““coisascoisas”” (ex. normas de seguran(ex. normas de segurançça ou de ergonomia)a ou de ergonomia)§§ entre pessoas e pessoas (ex. procedimentos para sistemas de gestentre pessoas e pessoas (ex. procedimentos para sistemas de gestão)ão)

nn em normas TIC, pelo menos uma das entidades estem normas TIC, pelo menos uma das entidades estáá relacionada relacionada com sistemas (ou partes) de TICcom sistemas (ou partes) de TIC§§ normas TIC que relacionam normas TIC que relacionam ““coisascoisas”” com com ““coisascoisas”” são são ““normas normas

ttéécnicascnicas””§§ normas TIC que contemplam entidades do tipo normas TIC que contemplam entidades do tipo ““pessoapessoa””

§§ terminologia e simbologiaterminologia e simbologia§§ modelos de referência, frameworks e linguagensmodelos de referência, frameworks e linguagens§§ interfaces HCI e ergonomiainterfaces HCI e ergonomia§§ biometria e indentificabiometria e indentificaçção pessoalão pessoal

Page 8: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

8

©R

MA

C 2

005/

06

8

2. Normas Abertas 2. Normas Abertas (1/9)(1/9)

sistemas abertos (sistemas abertos (open systemsopen systems))arquitectura aberta (arquitectura aberta (open architectureopen architecture))norma aberta (norma aberta (open standardopen standard))ccóódigo aberto (digo aberto (open sourceopen source))

nn estestáá na moda falar em na moda falar em ““abertoaberto””, mas o que significa isso?, mas o que significa isso?

nn ou o que deveria significar?ou o que deveria significar?

Page 9: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

9

©R

MA

C 2

005/

06

9

2. Normas Abertas 2. Normas Abertas (2/9)(2/9)

nn ProtoProto--histhistóória da confusãoria da confusão

–– a a ““X/Open Company, Ltd.X/Open Company, Ltd.””, fundada em 1984, propõe, fundada em 1984, propõe--se se desenvolver uma variante aberta e normalizada do UNIX para desenvolver uma variante aberta e normalizada do UNIX para permitir que as 10 empresas accionistas consigam competir permitir que as 10 empresas accionistas consigam competir no mercado com o sistema operativo proprietario dos no mercado com o sistema operativo proprietario dos mainframemainframe da IBMda IBM

–– em 1996, a X/Open fundeem 1996, a X/Open funde--se com a Open Software se com a Open Software Foundation (OSF) para dar origem ao The Open GroupFoundation (OSF) para dar origem ao The Open Group

–– o The Open Group Architecture Framework (TOGAF) constitui o The Open Group Architecture Framework (TOGAF) constitui uma arquitectura e muma arquitectura e méétodos para o planeamento e todos para o planeamento e implementaimplementaçção de sistemas de informaão de sistemas de informaçção organizacioanaisão organizacioanais

Page 10: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

10

©R

MA

C 2

005/

06

10

2. Normas Abertas 2. Normas Abertas (3/9)(3/9)

nn PrPréé--histhistóória da confusãoria da confusão

–– a coincidência nos nomes da Open Software Foundation (OSF) a coincidência nos nomes da Open Software Foundation (OSF) e da Free Software Foundation (FSF) podere da Free Software Foundation (FSF) poderáá estar na gestar na géénese nese da confusão entre software aberto e cda confusão entre software aberto e cóódigo livredigo livre

–– a Open Software Foundation (OSF) pretendia desenvolver a Open Software Foundation (OSF) pretendia desenvolver uma variante aberta e normalizada do UNIXuma variante aberta e normalizada do UNIX

–– a Free Software Foundation (FSF) pretendia promover a a Free Software Foundation (FSF) pretendia promover a utilizautilizaçção, cão, cóópia, estudo e modificapia, estudo e modificaçção livre de softwareão livre de software

–– todo o software licenciado pela FSF, atravtodo o software licenciado pela FSF, atravéés de licens de licençças GNU, as GNU, éé do tipo cdo tipo cóódigo aberto (digo aberto (open sourceopen source))

Page 11: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

11

©R

MA

C 2

005/

06

11

2. Normas Abertas 2. Normas Abertas (4/9)(4/9)

nn ccóódigo aberto (digo aberto (open sourceopen source) designa um processo aberto de ) designa um processo aberto de desenvolvimento de softwaredesenvolvimento de software

nn por vezes, as iniciativas de cpor vezes, as iniciativas de cóódigo aberto recorrem a normas digo aberto recorrem a normas abertas de sistemas operativos, de interfaces ou de ferramentas abertas de sistemas operativos, de interfaces ou de ferramentas de desenvolvimentode desenvolvimento

nn o propo propóósito de uma iniciativa de csito de uma iniciativa de cóódigo aberto digo aberto éé o suporte o suporte ààmelhoria contmelhoria contíínua do softwarenua do software

nn uma arquitectura aberta (uma arquitectura aberta (open architectureopen architecture) refere) refere--se a um se a um sistema cujas interfaces internas e/ou externassistema cujas interfaces internas e/ou externas

–– estão definidas por normas abertasestão definidas por normas abertase/oue/ou

–– implementadas implementadas àà custa de solucusta de soluçções de software abertoões de software aberto

Page 12: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

12

©R

MA

C 2

005/

06

12

2. Normas Abertas 2. Normas Abertas (5/9)(5/9)

nn norma aberta norma aberta –– visão dos criadoresvisão dos criadores

Page 13: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

13

©R

MA

C 2

005/

06

13

2. Normas Abertas 2. Normas Abertas (6/9)(6/9)

nn norma aberta norma aberta –– visão dos implementadoresvisão dos implementadores

–– os implementadores pretendem competir no mercado em pos implementadores pretendem competir no mercado em pééde igualdade com os seus competidores directosde igualdade com os seus competidores directos

–– os implementadores consideram que uma norma os implementadores consideram que uma norma éé aberta aberta quandoquandonn a sua implementaa sua implementaçção não implica custos directosão não implica custos directosnn se adequa ao mercado que pretendem em que se pretendem se adequa ao mercado que pretendem em que se pretendem

posicionarposicionarnn não torna obsoletas as suas implementanão torna obsoletas as suas implementaçções anterioresões anterioresnn não impõe inovanão impõe inovaçções consequentesões consequentesnn não favorece os outros competidoresnão favorece os outros competidores

Page 14: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

14

©R

MA

C 2

005/

06

14

2. Normas Abertas 2. Normas Abertas (7/9)(7/9)

nn norma aberta norma aberta –– visão dos utilizadoresvisão dos utilizadores

–– os utilizadoresos utilizadores pretendem obter o mpretendem obter o mááximo retorno possximo retorno possíível no vel no investimento (ROI) feito na aquisiinvestimento (ROI) feito na aquisiçção de uma implementaão de uma implementaçção ão de uma determinada normade uma determinada norma

–– os utilizadores consideram que uma norma os utilizadores consideram que uma norma éé aberta quandoaberta quandonn a implementaa implementaçção cumpre as imposião cumpre as imposiçções legais inerentes ões legais inerentes àà sua sua

utilizautilizaççãoãonn a utilizaa utilizaçção de novas implementaão de novas implementaçções da norma não implica ões da norma não implica

descontinuidade (por falta de compatibilidade) com versões descontinuidade (por falta de compatibilidade) com versões anterioresanteriores

nn existem diversas implementaexistem diversas implementaçções distintas da mesma norma ões distintas da mesma norma realizadas por diferentes entidadesrealizadas por diferentes entidades

nn a implementaa implementaçção ão éé suportada ao longo de todo o ciclo de suportada ao longo de todo o ciclo de utilizautilizaççãoão

Page 15: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

15

©R

MA

C 2

005/

06

15

2. Normas Abertas 2. Normas Abertas (8/9)(8/9)

nn norma aberta norma aberta –– visão da Comissão Europeiavisão da Comissão Europeia

Page 16: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

16

©R

MA

C 2

005/

06

16

2. Normas Abertas 2. Normas Abertas (9/9)(9/9)

nn critcritéérios desejrios desejááveis para normas abertasveis para normas abertas–– open meetingsopen meetings: reuniões abertas a todos os interessados: reuniões abertas a todos os interessados–– consensusconsensus: decisões por consenso dos participantes: decisões por consenso dos participantes–– due processdue process: aprova: aprovaçção faseadaão faseada–– open worldopen world: aplicabilidade generalizada no espa: aplicabilidade generalizada no espaççoo–– open IPRopen IPR: propriedade intelectual liberalizada: propriedade intelectual liberalizada–– open changeopen change: altera: alteraçções ões àà norma cumprem critnorma cumprem critéérios rios

anterioresanteriores–– open documentsopen documents: documenta: documentaçção intermão interméédia e versões finais dia e versões finais

agilmente disponibilizadasagilmente disponibilizadas–– open interfaceopen interface: interface não escondida e não controlada: interface não escondida e não controlada–– open useopen use: cumprimento de directivas de utiliza: cumprimento de directivas de utilizaçção não danosaão não danosa–– ongoing supportongoing support: suporte da norma at: suporte da norma atéé que o interesse do que o interesse do

utilizador cesseutilizador cesse

Page 17: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

17

©R

MA

C 2

005/

06

17

3. Qualidade no Software 3. Qualidade no Software (1/15)(1/15)

nn DefiniDefiniçções de ões de ““qualidadequalidade””

–– A totalidade dos aspectos e caracterA totalidade dos aspectos e caracteríísticas de um produto ou sticas de um produto ou serviserviçço que suportam a sua capacidade de satisfazer as o que suportam a sua capacidade de satisfazer as necessidades explnecessidades explíícitas e implcitas e implíícitas. citas. [ISO/IEC 1994][ISO/IEC 1994]

–– A conformidade com os requisitos de desempenho, os A conformidade com os requisitos de desempenho, os requisitos funcionais explicitamente declarados, as normas de requisitos funcionais explicitamente declarados, as normas de desenvolvimento explicitamente documentadas e, finalmente, desenvolvimento explicitamente documentadas e, finalmente, as caracteras caracteríísticas implsticas implíícitas esperadas em todo o software citas esperadas em todo o software desenvolvido de uma forma profissional. desenvolvido de uma forma profissional. [Pressman 1997][Pressman 1997]

Page 18: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

18

©R

MA

C 2

005/

06

18

3. Qualidade no Software 3. Qualidade no Software (2/15)(2/15)

nn DefiniDefiniçções de ões de ““qualidadequalidade”” (cont.)(cont.)

–– As organizaAs organizaçções de software devem observar e analisar os ões de software devem observar e analisar os seus produtos e processos de desenvolvimento. Devem seus produtos e processos de desenvolvimento. Devem sintetizar e sintetizar e ““empacotarempacotar”” o que aprenderam de modo a o que aprenderam de modo a compreender o que tem que ser feito para melhorar os seus compreender o que tem que ser feito para melhorar os seus esforesforçços de desenvolvimento de software. os de desenvolvimento de software. [Basili 2004][Basili 2004]

–– Se estamos sSe estamos séérios sobre a qualidade, eu recomendo que rios sobre a qualidade, eu recomendo que [Pressman 1997][Pressman 1997]::nn se requeira planos detalhados e realistas do trabalhose requeira planos detalhados e realistas do trabalhonn se realizem medise realizem mediçções e se gira a qualidadeões e se gira a qualidadenn se estabelese estabeleçça como meta organizacional que cada produto tenha melhor a como meta organizacional que cada produto tenha melhor

qualidade que o anteriorqualidade que o anteriornn se planeie a realizase planeie a realizaçção de trabalho de qualidadeão de trabalho de qualidade

Page 19: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

19

©R

MA

C 2

005/

06

19

3. Qualidade no Software 3. Qualidade no Software (3/15)(3/15)

nn ObservaObservaççõesões

–– os requisitos explos requisitos explíícitos são a origem incontroversa da citos são a origem incontroversa da medimediçção das caracterão das caracteríísticas de qualidade do produto finalsticas de qualidade do produto final

–– as normas documentadas permitem definir orientaas normas documentadas permitem definir orientaçções e ões e critcritéérios de validarios de validaçção de todo o desenvolvimento e avaliar o ão de todo o desenvolvimento e avaliar o desempenho do processodesempenho do processo

–– os requisitos não explicitamente declarados têm um papel os requisitos não explicitamente declarados têm um papel muitas vezes esquecido na satisfamuitas vezes esquecido na satisfaçção do cliente e, por isso, ão do cliente e, por isso, devem tambdevem tambéém ser considerados na medim ser considerados na mediçção das ão das caractercaracteríísticas de qualidade do produtosticas de qualidade do produto

Page 20: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

20

©R

MA

C 2

005/

06

20

3. Qualidade no Software 3. Qualidade no Software (4/15)(4/15)

nn Modelo de McCall Modelo de McCall [McCall [McCall et al.et al., 1977], 1977]

–– contempla três grupos de caractercontempla três grupos de caracteríísticas de qualidade sticas de qualidade segundo uma perspectiva externa do softwaresegundo uma perspectiva externa do software

–– relaciona as caracterrelaciona as caracteríísticas externas com as caractersticas externas com as caracteríísticas sticas internas do produtointernas do produto

–– propõe mpropõe méétricas subjectivas e indirectas para estimar os tricas subjectivas e indirectas para estimar os factores de qualidade em anfactores de qualidade em anááliselise

Page 21: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

21

©R

MA

C 2

005/

06

21

3. Qualidade no Software 3. Qualidade no Software (5/15)(5/15)

nn Modelo de McCallModelo de McCall

Page 22: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

22

©R

MA

C 2

005/

06

22

3. Qualidade no Software 3. Qualidade no Software (6/15)(6/15)

nn Modelo GQM (Modelo GQM (Goal/Question/MetricGoal/Question/Metric) ) [Basili e Rombach 1988][Basili e Rombach 1988]

–– explicita o porquê da recolha de dados inerente explicita o porquê da recolha de dados inerente àà aplicaaplicaçção de ão de mméétricas como forma de caracterizar a semântica tricas como forma de caracterizar a semântica recomendrecomendáável para a interpretavel para a interpretaçção das medião das mediççõesões

–– exemplo:exemplo:nn G1: dentro de 1 ano, reduzir a duraG1: dentro de 1 ano, reduzir a duraçção dos testes em 10%, ão dos testes em 10%,

mantendo o nmantendo o níível de defeitosvel de defeitosnn Q1.1: qual Q1.1: qual éé a duraa duraçção mão méédia dos testes?dia dos testes?nn Q1.2: quanto tempo Q1.2: quanto tempo éé gasto no teste dos componentes, de gasto no teste dos componentes, de

integraintegraçção e final?ão e final?nn Q1.3: Qual Q1.3: Qual éé o no níível de defeitos final?vel de defeitos final?nn M1.1.1: duraM1.1.1: duraçção mão méédia dos testesdia dos testesnn ......

Page 23: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

23

©R

MA

C 2

005/

06

23

3. Qualidade no Software 3. Qualidade no Software (7/15)(7/15)

nn Modelo GQMModelo GQM

Page 24: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

24

©R

MA

C 2

005/

06

24

3. Qualidade no Software 3. Qualidade no Software (8/15)(8/15)

nn Modelo Nance e Arthur Modelo Nance e Arthur [Nance e Arthur 2002][Nance e Arthur 2002]

–– todas as mtodas as méétricas propostas estão relacionadas com os tricas propostas estão relacionadas com os princprincíípios que orientam o processo de desenvolvimento e pios que orientam o processo de desenvolvimento e contribuem para o cumprimento de um determinado contribuem para o cumprimento de um determinado objectivo ao nobjectivo ao níível do projecto de softwarevel do projecto de software

–– abordagem sistabordagem sistéémica para examinar a qualidade do produto e mica para examinar a qualidade do produto e do processodo processo

–– contrasta com os 2 modelos de qualidade anteriores (McCall e contrasta com os 2 modelos de qualidade anteriores (McCall e GQM)GQM)

Page 25: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

25

©R

MA

C 2

005/

06

25

3. Qualidade no Software 3. Qualidade no Software (9/15)(9/15)

nn Modelo Nance e ArthurModelo Nance e Arthur

Page 26: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

26

©R

MA

C 2

005/

06

26

3. Qualidade no Software 3. Qualidade no Software (10/15)(10/15)

nn Normas Normas ISO/IEC JTC1/SC7 ISO/IEC JTC1/SC7 ((http://www.jtc1http://www.jtc1--sc7.org/sc7.org/))

–– ISO committee responsible to develop ISO standards in the ISO committee responsible to develop ISO standards in the area of Software and Systems Engineeringarea of Software and Systems Engineering

nn WG 2 System software documentationWG 2 System software documentationnn WG 4 Tools and environmentWG 4 Tools and environmentnn WG 6 Evaluation and metricsWG 6 Evaluation and metricsnn WG 7 Life cycle managementWG 7 Life cycle managementnn WG 9 Software integrityWG 9 Software integritynn WG 10 Process assessmentWG 10 Process assessmentnn WG 12 Functional size measurementWG 12 Functional size measurementnn WG 13 Process measurement frameworkWG 13 Process measurement frameworknn WG 17 ODP WG 17 ODP -- Enterprise languageEnterprise languagenn WG 18 Quality managementWG 18 Quality managementnn WG 19 Open distributed processing and modelling languagesWG 19 Open distributed processing and modelling languagesnn WG 20 Software Engineering Body of KnowledgeWG 20 Software Engineering Body of Knowledgenn WG 21 Software assessment managementWG 21 Software assessment management

Page 27: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

27

©R

MA

C 2

005/

06

27

3. Qualidade no Software 3. Qualidade no Software (11/15)(11/15)

nn Normas Normas IEEE S2ESC IEEE S2ESC ((http://standards.computer.org/sesc/http://standards.computer.org/sesc/))

–– IEEE software and systems engineering standards committeeIEEE software and systems engineering standards committee

nn WG 730 Software Software Quality Assurance PlansWG 730 Software Software Quality Assurance Plansnn WG 829 Software Test DocumentationWG 829 Software Test Documentationnn WG 982.1 Dictionary of Measures to Produce Reliable SoftwareWG 982.1 Dictionary of Measures to Produce Reliable Softwarenn WG 1008 Software Unit Testing WG 1008 Software Unit Testing nn WG 1012 Software Verification and ValidationWG 1012 Software Verification and Validationnn WG 1016 Software Design Descriptions WG 1016 Software Design Descriptions nn WG 1028 Software ReviewsWG 1028 Software Reviewsnn WG 1045 Software Productivity Metrics WG 1045 Software Productivity Metrics nn WG 1062 Software AcquisitionWG 1062 Software Acquisitionnn WG WG 1074 Developing Software Life Cycle Processes1074 Developing Software Life Cycle Processesnn WG 1175.1WG 1175.1--.5 Various CASE tool.5 Various CASE tool

Page 28: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

28

©R

MA

C 2

005/

06

28

3. Qualidade no Software 3. Qualidade no Software (12/15)(12/15)

nn WG 1644 Software Nomenclature WG 1644 Software Nomenclature -- Software Naming Conventions for Software Naming Conventions for Application Software Application Software

nn WG 1648 Establishing and Managing Software Development Efforts UWG 1648 Establishing and Managing Software Development Efforts Using sing Agile MethodsAgile Methods

nn WG 2063 Software and System Life Cycle Processes WG 2063 Software and System Life Cycle Processes -- Requirements Requirements EngineeringEngineering

nn WG WG 12207.012207.0--2 Industry Implementation of International Standard 2 Industry Implementation of International Standard ISO/IEC 12207:1995 Standard for Information TechnologyISO/IEC 12207:1995 Standard for Information Technology--Software life Software life cycle processes cycle processes –– Software Life Cycle ProcessesSoftware Life Cycle Processes

nn WG WG 14764 Software Maintenance14764 Software Maintenancenn WG 16085 Software Life Cycle Processes WG 16085 Software Life Cycle Processes -- Risk ManagementRisk Managementnn WG 16326 Information Technology WG 16326 Information Technology -- Software Engineering Software Engineering -- Software Software

Project ManagementProject Managementnn WG 90003 Software and Systems Engineering WG 90003 Software and Systems Engineering -- Guidelines for the Guidelines for the

Application of ISO 9001:2000 to Computer SoftwareApplication of ISO 9001:2000 to Computer Software

Page 29: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

29

©R

MA

C 2

005/

06

29

3. Qualidade no Software 3. Qualidade no Software (13/15)(13/15)

nn Destaque de algumas normas Destaque de algumas normas ISO/IEC JTC1/SC7ISO/IEC JTC1/SC7

–– a norma ISO/IEC 9126:1991 deu origem a duas normasa norma ISO/IEC 9126:1991 deu origem a duas normas

nn ISO/IEC 9126: 2001 (ISO/IEC 9126: 2001 (product qualityproduct quality))define um modelo de qualidade do produto de softwaredefine um modelo de qualidade do produto de softwarepode ser utilizada parapode ser utilizada para

–– identificaidentificaçção de requisitosão de requisitos–– identificaidentificaçção de critão de crit éérios de aceitarios de aceitaçção para o produto finalão para o produto final–– identificaidentificaçção de critão de crit éérios para a garantia da qualidaderios para a garantia da qualidade–– definir objectivos para os testes do softwaredefinir objectivos para os testes do software

nn ISO/IEC 14598:1998ISO/IEC 14598:1998--2001 (2001 (software product evaluationsoftware product evaluation))define um processo de avaliadefine um processo de avaliaççãoãofornece orientafornece orientaçções para três situaões para três situaçções distintasões distintas

–– empresas que desenvolvem sw e pretendem melhorar a qualidadeempresas que desenvolvem sw e pretendem melhorar a qualidade–– empresas que compram sw e pretendem avaliar aquisiempresas que compram sw e pretendem avaliar aquisiççãoão–– empresas que certificam sw de terceirosempresas que certificam sw de terceiros

Page 30: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

30

©R

MA

C 2

005/

06

30

3. Qualidade no Software 3. Qualidade no Software (14/15)(14/15)

nn ISO/IEC 9126 ISO/IEC 9126 Software engineering Software engineering -- Product qualityProduct quality

–– ISO/IEC 9126ISO/IEC 9126--1:2001 Part 1: Quality model1:2001 Part 1: Quality model–– ISO/IEC 9126ISO/IEC 9126--2:2003 Part 2: External metrics2:2003 Part 2: External metrics–– ISO/IEC 9126ISO/IEC 9126--3:2003 Part 3: Internal metrics3:2003 Part 3: Internal metrics–– ISO/IEC 9126ISO/IEC 9126--4:2004 Part 4: Quality in use metrics4:2004 Part 4: Quality in use metrics

nn ISO/IEC 14598 ISO/IEC 14598 Information technology Information technology -- Software product evaluationSoftware product evaluation

–– ISO/IEC 14598ISO/IEC 14598--1:1999 Part 1: 1:1999 Part 1: General overviewGeneral overview–– ISO/IEC 14598ISO/IEC 14598--2:2000 Part 2: 2:2000 Part 2: Planning and managementPlanning and management–– ISO/IEC 14598ISO/IEC 14598--3:2000 Part 3: 3:2000 Part 3: Process for developersProcess for developers–– ISO/IEC 14598ISO/IEC 14598--4:1999 Part 4: 4:1999 Part 4: Process for acquirersProcess for acquirers–– ISO/IEC 14598ISO/IEC 14598--5:1998 Part 5: 5:1998 Part 5: Process for evaluatorsProcess for evaluators–– ISO/IEC 14598ISO/IEC 14598--6:2001 Part 6: 6:2001 Part 6: Documentation of evaluation modulesDocumentation of evaluation modules

Page 31: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

31

©R

MA

C 2

005/

06

31

3. Qualidade no Software 3. Qualidade no Software (15/15)(15/15)

nn Relacionamento entre as normas Relacionamento entre as normas ISO/IEC 9126 e 14598ISO/IEC 9126 e 14598

Page 32: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

32

©R

MA

C 2

005/

06

32

4.4. Melhoria do ProcessoMelhoria do Processo (1/16)(1/16)

nn Visão holVisão holíística do processo de softwarestica do processo de software

–– definidefiniçção dos processos: especificaão dos processos: especificaçção das actividades, ão das actividades, procedimentos, infraprocedimentos, infra--estruturas e recursos necessestruturas e recursos necessááriosrios

–– institucionalizainstitucionalizaçção do processo: transferência do ão do processo: transferência do conhecimento (aprendizagem) para os recursos humanos conhecimento (aprendizagem) para os recursos humanos responsresponsááveis pela execuveis pela execuççãoão

–– visão dos resultados: recolher dados que permitam avaliar o visão dos resultados: recolher dados que permitam avaliar o desempenho do processo e que possam ser utilizados para desempenho do processo e que possam ser utilizados para elaborar acelaborar acçções de melhoriaões de melhoria

Page 33: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

33

©R

MA

C 2

005/

06

33

4.4. Melhoria do ProcessoMelhoria do Processo (2/16)(2/16)

nn Visão holVisão holíística do processo de softwarestica do processo de software

Page 34: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

34

©R

MA

C 2

005/

06

34

4.4. Melhoria do ProcessoMelhoria do Processo (3/16)(3/16)

nn ISO/IEC 12207:1995 ISO/IEC 12207:1995 Information technology Information technology -- Software Software life cycle processeslife cycle processes

–– primeira norma internacional a apresentar, de uma forma primeira norma internacional a apresentar, de uma forma detalhada, os processos, tarefas e actividades do ciclo de vida detalhada, os processos, tarefas e actividades do ciclo de vida do softwaredo software

–– foi emendada em 2002 e 2004 para alinhar com a ISO/IEC foi emendada em 2002 e 2004 para alinhar com a ISO/IEC 1550415504

–– processos propostos organizados em três camadas: primprocessos propostos organizados em três camadas: primáários, rios, de suporte e organizacionaisde suporte e organizacionais

Page 35: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

35

©R

MA

C 2

005/

06

35

4.4. Melhoria do ProcessoMelhoria do Processo (4/16)(4/16)

nn ISO/IEC 12207ISO/IEC 12207

Page 36: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

36

©R

MA

C 2

005/

06

36

4.4. Melhoria do ProcessoMelhoria do Processo (5/16)(5/16)

nn Paradigma do Paradigma do BenchmarkingBenchmarking

–– se não sabemos onde estamos, um mapa não vai ajudar se não sabemos onde estamos, um mapa não vai ajudar [Humphrey 1989][Humphrey 1989]

–– assenta na premissa de que o processo para desenvolver um assenta na premissa de que o processo para desenvolver um produto tem um grande impacto na qualidade final do produto tem um grande impacto na qualidade final do produtoproduto

–– baseiabaseia--se na identificase na identificaçção de organizaão de organizaçções excelentes, numa ões excelentes, numa áárea, e na documentarea, e na documentaçção das suas ão das suas ““boas prboas prááticasticas””

–– exemplos de modelos de melhoria de processo: CMM, SPICE e exemplos de modelos de melhoria de processo: CMM, SPICE e ISO/IEC 15504, SPIRE, ISO 9001:2001ISO/IEC 15504, SPIRE, ISO 9001:2001

Page 37: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

37

©R

MA

C 2

005/

06

37

4.4. Melhoria do ProcessoMelhoria do Processo (6/16)(6/16)

nn CMM CMM -- Capability Maturity ModelCapability Maturity Model((http://www.sei.cmu.edu/cmm/http://www.sei.cmu.edu/cmm/))

–– CMM desenvolvido pelo SEI em 1993CMM desenvolvido pelo SEI em 1993

–– deu origem ao CMMI em 2000deu origem ao CMMI em 2000

–– baseiabaseia--se num referencial de maturidade que fornece se num referencial de maturidade que fornece orientaorientaçções efectivas para um programa de melhoria do ões efectivas para um programa de melhoria do processoprocesso

–– utiliza um questionutiliza um questionáário de maturidade que permite rio de maturidade que permite caracterizar a capacidade da organizacaracterizar a capacidade da organizaççãoão

–– a melhoria do processo de software a melhoria do processo de software éé feita em pequenos feita em pequenos passos evolutivos e não em inovapassos evolutivos e não em inovaçções revolucionões revolucionááriasrias

Page 38: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

38

©R

MA

C 2

005/

06

38

4.4. Melhoria do ProcessoMelhoria do Processo (7/16)(7/16)

nn Os 5 nOs 5 nííveis de maturidade do CMMveis de maturidade do CMM

Page 39: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

39

©R

MA

C 2

005/

06

39

4.4. Melhoria do ProcessoMelhoria do Processo (8/16)(8/16)

nn Desafios chave/nDesafios chave/nííveis de maturidade no CMMveis de maturidade no CMM

Page 40: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

40

©R

MA

C 2

005/

06

40

4.4. Melhoria do ProcessoMelhoria do Processo (9/16)(9/16)

nn Perfil de maturidade CMMPerfil de maturidade CMM

Page 41: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

41

©R

MA

C 2

005/

06

41

4.4. Melhoria do ProcessoMelhoria do Processo (10/16)(10/16)

nn ISO/IEC 15504 ISO/IEC 15504 Information technology Information technology -- Process Process assessment assessment ((http://www.isospice.typepad.com/isospice_pt_is15504/http://www.isospice.typepad.com/isospice_pt_is15504/))

–– resultou do trabalho da WG10 do ISO/IEC JTC1/SC7, na resultou do trabalho da WG10 do ISO/IEC JTC1/SC7, na altura designado de altura designado de software process improvement and software process improvement and capability determinationcapability determination (SPICE)(SPICE)

–– originalmente publicada como um relatoriginalmente publicada como um relatóório trio téécnico cnico organizado em 9 partes (ISO/IEC TR 15504:1998)organizado em 9 partes (ISO/IEC TR 15504:1998)

–– apapóós alinhamento com ISO/IEC 12207 e com ISO 9001:2000 s alinhamento com ISO/IEC 12207 e com ISO 9001:2000 passou a norma formal, tendo, tambpassou a norma formal, tendo, tambéém, dado origem a duas m, dado origem a duas emendas na ISO/IEC 12207emendas na ISO/IEC 12207

Page 42: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

42

©R

MA

C 2

005/

06

42

4.4. Melhoria do ProcessoMelhoria do Processo (11/16)(11/16)

nn ISO/IEC 15504 como norma formalISO/IEC 15504 como norma formal

–– actualmente publicada como norma formal em 5 partesactualmente publicada como norma formal em 5 partesnn ISO/IEC 15504ISO/IEC 15504--1:2004 Part 1: Concepts and vocabulary1:2004 Part 1: Concepts and vocabularynn ISO/IEC 15504ISO/IEC 15504--2:2003 Part 2: Performing an assessment2:2003 Part 2: Performing an assessmentnn ISO/IEC 15504ISO/IEC 15504--3:2004 Part 3: Guidance on performing an 3:2004 Part 3: Guidance on performing an

assessmentassessmentnn ISO/IEC 15504ISO/IEC 15504--4:2004 Part 4: Guidance on use for process 4:2004 Part 4: Guidance on use for process

improvement and process capability determinationimprovement and process capability determinationnn ISO/IEC 15504ISO/IEC 15504--5:2006 Part 5: An exemplar Process Assessment 5:2006 Part 5: An exemplar Process Assessment

ModelModel

–– CT128 do IIMF publicarCT128 do IIMF publicaráá, via IPQ, durante 2006 as 4 , via IPQ, durante 2006 as 4 primeiras partes em Português como normas NP ISO/IECprimeiras partes em Português como normas NP ISO/IEC

Page 43: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

43

©R

MA

C 2

005/

06

43

4.4. Melhoria do ProcessoMelhoria do Processo (12/16)(12/16)

nn Abordagem da ISO/IEC 15504Abordagem da ISO/IEC 15504

–– fornece uma abordagem estruturada para a avaliafornece uma abordagem estruturada para a avaliaçção dos ão dos processos com um dos seguintes objectivosprocessos com um dos seguintes objectivosnn compreender o estado dos processos para melhoria do processo compreender o estado dos processos para melhoria do processo

global de softwareglobal de softwarenn determinar a adaptadeterminar a adaptaçção dos processos para uma necessidade ão dos processos para uma necessidade

particularparticularnn determinar a adaptadeterminar a adaptaçção dos processos de outra organizaão dos processos de outra organizaçção para ão para

um determinado contratoum determinado contrato

–– enquanto que no CMM, cada nenquanto que no CMM, cada níível define KPAs (vel define KPAs (key process key process areasareas), na ISO/IEC 15504 são definidas PAs (), na ISO/IEC 15504 são definidas PAs (process process atributesatributes) )

Page 44: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

44

©R

MA

C 2

005/

06

44

4.4. Melhoria do ProcessoMelhoria do Processo (13/16)(13/16)

nn Os 6 nOs 6 nííveis de maturidade da ISO/IEC 15504veis de maturidade da ISO/IEC 15504

Page 45: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

45

©R

MA

C 2

005/

06

45

4.4. Melhoria do ProcessoMelhoria do Processo (14/16)(14/16)

nn Relacionamento entre as partes da ISO/IEC 15504Relacionamento entre as partes da ISO/IEC 15504

Page 46: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

46

©R

MA

C 2

005/

06

46

4.4. Melhoria do ProcessoMelhoria do Processo (15/16)(15/16)

nn EficEficáácia da melhoria do processcia da melhoria do process

–– hháá uma evidência significativa que mostra que um projecto de uma evidência significativa que mostra que um projecto de melhoria do processo de software com sucesso resultarmelhoria do processo de software com sucesso resultaráá em em melhorias na qualidade do produto e no valor do negmelhorias na qualidade do produto e no valor do negóóciocio

–– mas hmas háá tambtambéém evidência que grande parte destes projectos m evidência que grande parte destes projectos falha no atingir dos seus objectivosfalha no atingir dos seus objectivos

–– porque serporque seráá??

Page 47: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

47

©R

MA

C 2

005/

06

47

4.4. Melhoria do ProcessoMelhoria do Processo (16/16)(16/16)

nn EficEficáácia da melhoria do process cia da melhoria do process [Kolmel e Eisenbiegler 2000][Kolmel e Eisenbiegler 2000]

Page 48: Normas de Qualidade nos Processos de …jpf/teach/TQS0506/NormasQualidadeProcessos... · n Definição de “norma ... n WG 90003 Software and Systems Engineering - Guidelines for

48

©R

MA

C 2

005/

06

48

nn Key Jacobs. Key Jacobs. Standardization Processes in IT: Impact, Problems and Benefits oStandardization Processes in IT: Impact, Problems and Benefits of User f User ParticipationParticipation, Braunschweig: Vieweg, 2000., Braunschweig: Vieweg, 2000.

nn Key Jacobs. Key Jacobs. Advanced Topics in Information Technology Standards and StandardAdvanced Topics in Information Technology Standards and Standardization ization ResearchResearch, Volume 1, Idea Group, 2006., Volume 1, Idea Group, 2006.

nn De Vries. De Vries. Standardization: A Business Approach to the Role of National StaStandardization: A Business Approach to the Role of National Standardization ndardization OrganizationsOrganizations, Dordrecht, Kluwer AP, 1999., Dordrecht, Kluwer AP, 1999.

nn International Organization for Standardization (ISO) & InternatiInternational Organization for Standardization (ISO) & International Electrotechnical Comission onal Electrotechnical Comission (IEC). (IEC). ISO/IEC 8402: Quality Management and Quality Assurance ISO/IEC 8402: Quality Management and Quality Assurance -- VocabularyVocabulary, 1994., 1994.

nn International Organization for Standardization (ISO) & InternatiInternational Organization for Standardization (ISO) & International Electrotechnical Comission onal Electrotechnical Comission (IEC). (IEC). ISO/IEC Guide 2: Standardization and Related Activities ISO/IEC Guide 2: Standardization and Related Activities –– General VocabularyGeneral Vocabulary, 8th , 8th edition, 2004.edition, 2004.

nn Michael Schmidt. Michael Schmidt. Implementing the IEEE Software Engineering Standards, SAMS PubliImplementing the IEEE Software Engineering Standards, SAMS Publishingshing, , 2000.2000.

nn IEEE Software Engineering StandardsIEEE Software Engineering Standards, IEEE Press, 2000., IEEE Press, 2000.nn Guide to the Software Engineering Body of Knowledge Guide to the Software Engineering Body of Knowledge ((SWEBOKSWEBOK)), IEEE Computer Society , IEEE Computer Society

Press, 2004.Press, 2004.nn ......

BibliografiaBibliografia