uma introdução ao swebok jairo c. de oliveira [email protected] milena rocha [email protected]...

89
Uma introdução ao Uma introdução ao SWEBOK SWEBOK Jairo C. de Oliveira Jairo C. de Oliveira [email protected] [email protected] Milena Rocha Milena Rocha [email protected] [email protected] Tópicos Avançados de ES 3 Tópicos Avançados de ES 3

Upload: internet

Post on 22-Apr-2015

110 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao Uma introdução ao SWEBOK SWEBOK

Jairo C. de OliveiraJairo C. de [email protected]@cin.ufpe.brMilena RochaMilena Rocha

[email protected]@cin.ufpe.br

Tópicos Avançados de ES 3Tópicos Avançados de ES 3

Page 2: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 2

AgendaAgenda• Engenharia de SoftwareEngenharia de Software• Reconhecimento da ProfissãoReconhecimento da Profissão• Desenvolvimento da ProfissãoDesenvolvimento da Profissão• SWEBOK SWEBOK

– Descrição geralDescrição geral– ObjetivosObjetivos– Audiência PretendidaAudiência Pretendida– Princípios BásicosPrincípios Básicos– Time do ProjetoTime do Projeto– Fases de DesenvolvimentoFases de Desenvolvimento– Áreas de ConhecimentoÁreas de Conhecimento– Disciplinas RelacionadasDisciplinas Relacionadas

• ConclusõesConclusões

Page 3: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 3

Engenharia de SoftwareEngenharia de Software

• É uma disciplina que está em É uma disciplina que está em desenvolvimento e existe uma desenvolvimento e existe uma grande tendência ao aumento no seu grande tendência ao aumento no seu nível de maturidadenível de maturidade

• Não é uma disciplina legítima de Não é uma disciplina legítima de engenharia, nem uma profissão engenharia, nem uma profissão reconhecidareconhecida

Page 4: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 4

Reconhecimento da Reconhecimento da ProfissãoProfissão

• É imperativo se chegar a um consenso É imperativo se chegar a um consenso sobre qual é núcleo do conhecimentosobre qual é núcleo do conhecimento

• Segundo Starr*Segundo Starr*– Conhecimento e competência de um Conhecimento e competência de um

profissional devem ser validados por profissional devem ser validados por uma comunidade de peso na áreauma comunidade de peso na área

– Conhecimento é validado se baseado Conhecimento é validado se baseado em fundamentos científicos e racionaisem fundamentos científicos e racionais

– O julgamento do profissional são O julgamento do profissional são direcionados para um conjunto de direcionados para um conjunto de valores reaisvalores reais

*P. Starr, The Social Transformation of American Medicine*P. Starr, The Social Transformation of American Medicine

Page 5: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 5

O que caracteriza uma O que caracteriza uma profissão?profissão?

• Segundo Gary Ford e Norman Gibbs, a Segundo Gary Ford e Norman Gibbs, a profissão de engenharia possui os seguintes profissão de engenharia possui os seguintes componentes:componentes:– Uma educação profissional inicial e um Uma educação profissional inicial e um

curriculum válido por uma sociedade de curriculum válido por uma sociedade de créditocrédito

– Registro da aptidão para praticar por meio Registro da aptidão para praticar por meio de certificação voluntária ou licença de certificação voluntária ou licença obrigatóriaobrigatória

– Desenvolvimento de talento especializado e Desenvolvimento de talento especializado e uma educação profissional contínuauma educação profissional contínua

Page 6: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 6

O que caracteriza uma O que caracteriza uma profissão?profissão?

• Segundo Gary Ford e Norman Gibbs (cont.):Segundo Gary Ford e Norman Gibbs (cont.):– Suporte público através de uma sociedade Suporte público através de uma sociedade

profissionalprofissional– Um comprometimento com normas de Um comprometimento com normas de

conduta, muitas vezes prescritas em um código conduta, muitas vezes prescritas em um código de éticade ética

• O guia SWEBOK contribui para os três O guia SWEBOK contribui para os três primeiros componentes primeiros componentes

• Estabelece um consensoEstabelece um consenso sobre a profissão de sobre a profissão de ESES

Page 7: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 7

Desenvolvimento da Desenvolvimento da ProfissãoProfissão

Sociedades Sociedades de de

ProfissionaisProfissionais

ReconhecimentReconhecimentoo

DesenvolvimentDesenvolvimento Profissionalo Profissional

Código de ÉticaCódigo de Ética

Status Status ProfissionaProfissional Completol Completo

Educação Educação Profissional Profissional

InicialInicial

DesenvolvimentDesenvolvimento de Habilidadeso de Habilidades

Um ou AmbosUm ou Ambos

CertificaçãoCertificação

LicenciamentoLicenciamento

Influências Influências da da Sociedade Sociedade ProfissionaProfissionall

Infra-estrutura de Infra-estrutura de Suporte da Suporte da ProfissãoProfissão

Desenvolvimento Desenvolvimento Individual do Individual do ProfissionalProfissional

Page 8: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 8

Guide to the Software Guide to the Software EngineeringEngineering

Body of Knowledge Body of Knowledge (SWEBOK)(SWEBOK)

• Começou como uma colaboração entre IEEE Começou como uma colaboração entre IEEE CS, ACM e a Université du Québec à MontréalCS, ACM e a Université du Québec à Montréal

• SWECC (Software Engineering Coordinating SWECC (Software Engineering Coordinating Committe) – 1998Committe) – 1998

• Participação internacional da indústria, Participação internacional da indústria, sociedades de profissionais, academia, autoressociedades de profissionais, academia, autores

• Quando o projeto estiver finalizado, Quando o projeto estiver finalizado, literalmente milhares de pessoas terão literalmente milhares de pessoas terão trabalhado neletrabalhado nele

• Após três ciclos de revisões a versão Trial foi Após três ciclos de revisões a versão Trial foi lançada em 2001lançada em 2001

Page 9: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 9

Fases de Fases de DesenvolvimentoDesenvolvimento

19981998 19991999 20002000 20012001 20022002 20032003 20020044

Straw ManStraw ManVersionVersion

Stone ManStone ManVersionVersion

Iron ManIron ManVersionVersion

TrialTrialVersionVersion

Page 10: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 10

Objetivos do Objetivos do SWEBOKSWEBOK

• Oferecer uma visão consistente da Oferecer uma visão consistente da engenharia de software no âmbito engenharia de software no âmbito mundialmundial

• Deixar claros os limites de Deixar claros os limites de planejamento de software com planejamento de software com respeito a outras disciplinasrespeito a outras disciplinas

( Ciência da computação, gerência ( Ciência da computação, gerência de projetos, matemática, entre de projetos, matemática, entre outros)outros)

Page 11: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 11

Objetivos do Objetivos do SWEBOKSWEBOK

• Caracterizar o conteúdo da Caracterizar o conteúdo da disciplina de Engenharia de disciplina de Engenharia de SoftwareSoftware

• Prover uma base para Prover uma base para desenvolvimento curricular e desenvolvimento curricular e material de licença individualmaterial de licença individual

Page 12: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 12

Audiência PretendidaAudiência Pretendida

• Organizações públicas e privadasOrganizações públicas e privadas• Sociedades profissionaisSociedades profissionais• Corporações de criação de Corporações de criação de

padrõespadrões• Estudantes de Engenharia de Estudantes de Engenharia de

SoftwareSoftware• Educadores e InstrutoresEducadores e Instrutores

Page 13: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 13

Categorias de Categorias de ConhecimentoConhecimento

• Conhecimento de um Engenheiro de SoftwareConhecimento de um Engenheiro de Software

Ciência Ciência da da

ComputaComputaçãoção

ConhecimenConhecimento to

EspecializadEspecializado em ESo em ES

ConhecimeConhecimento do nto do

domínio da domínio da aplicaçãoaplicação

MatemátMatemáticaica

ConhecimeConhecimento nto

avançado avançado em ESem ES

Page 14: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 14

Princípios Básicos do Princípios Básicos do ProjetoProjeto

• TransparênciaTransparência– O processo é totalmente documentado e O processo é totalmente documentado e

publicadopublicado

• Construção do consensoConstrução do consenso – IndústriaIndústria– Sociedades ProfissionaisSociedades Profissionais– Corporações de criação de padrões Corporações de criação de padrões – Ambientes AcadêmicosAmbientes Acadêmicos

• Totalmente livre na web Totalmente livre na web (www.swebok.org)(www.swebok.org)

Page 15: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 15

O que está fora do O que está fora do Escopo do SWEBOKEscopo do SWEBOK

• O guia contém os conhecimentos O guia contém os conhecimentos necessários, porém não suficientes para necessários, porém não suficientes para um engenheiro de softwareum engenheiro de software– Linguagem de programação específicaLinguagem de programação específica– Banco de Dados específicoBanco de Dados específico– Tecnologias de RedesTecnologias de Redes– Gerência de projetosGerência de projetos– Engenharia de sistemasEngenharia de sistemas– Ciência da ComputaçãoCiência da Computação

Page 16: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 16

Time do projetoTime do projeto

• Grupo de editoraçãoGrupo de editoração• Especialistas das áreas de Especialistas das áreas de

conhecimentoconhecimento• RevisoresRevisores

Page 17: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 17

Áreas de conhecimento Áreas de conhecimento (KA)(KA)

• Software RequiremetsSoftware Requiremets• Software DesignSoftware Design• Software ConstructionSoftware Construction• Software TestingSoftware Testing• Software MaintenanceSoftware Maintenance• Software Configuration ManagementSoftware Configuration Management• Software Engineering ManagementSoftware Engineering Management• Software Engineering ProcessSoftware Engineering Process• Software Engineering Tools and MethodsSoftware Engineering Tools and Methods• Software QualitySoftware Quality

Page 18: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 18

Disciplinas RelacionadasDisciplinas Relacionadas

• Cognitive Sciences and Human FactorsCognitive Sciences and Human Factors• Computer EngineeringComputer Engineering• Computer ScienceComputer Science• Management and Management ScienceManagement and Management Science• MathematicsMathematics• Project ManagementProject Management• Systems EngineeringSystems Engineering

Page 19: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 19

Organização das Áreas de Organização das Áreas de ConhecimentoConhecimento

Page 20: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 20

Áreas de conhecimentoÁreas de conhecimento

Page 21: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 21

Áreas de conhecimentoÁreas de conhecimento

Page 22: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 22

KA: Software RequirementsKA: Software Requirements

• Um requisito é definido como uma Um requisito é definido como uma característica que pode ser característica que pode ser demonstrada para resolver alguns demonstrada para resolver alguns problemas do mundo realproblemas do mundo real

Page 23: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 23

• Sub-áreas de conhecimentoSub-áreas de conhecimento– Requirement Engineering ProcessRequirement Engineering Process– Requirement ElicitationRequirement Elicitation– Requirement AnalysisRequirement Analysis– Requirement SpecificationRequirement Specification– Requirement ValidationRequirement Validation– Requirement ManagementRequirement Management

KA: Software RequirementsKA: Software Requirements

Page 24: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 24

KA: Software RequirementsKA: Software Requirements

Page 25: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 25

• Requirement Engineering ProcessRequirement Engineering Process– Apresenta o planejamento de requisitosApresenta o planejamento de requisitos– Orienta as outras 5 sub-áreasOrienta as outras 5 sub-áreas– Mostra como o planejamento de Mostra como o planejamento de

requisitos se encaixa com o processo requisitos se encaixa com o processo completo de planejamento de softwarecompleto de planejamento de software

– Descreve modelos de processo, atores e Descreve modelos de processo, atores e suporte ao gerenciamento de requisitossuporte ao gerenciamento de requisitos

KA: Software RequirementsKA: Software Requirements

Page 26: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 26

• Requirement ElicitationRequirement Elicitation– Origem dos requisitosOrigem dos requisitos– Controle do requisitos Controle do requisitos – Fontes de requisitos Fontes de requisitos – Técnicas para ElicitaçãoTécnicas para Elicitação

KA: Software RequirementsKA: Software Requirements

Page 27: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 27

• Requirement AnalysisRequirement Analysis– detectar e resolver conflitos entre detectar e resolver conflitos entre

requisitosrequisitos– descobrir os limites do sistema e como descobrir os limites do sistema e como

ele deve interagir com o seu ambienteele deve interagir com o seu ambiente– aprimorar requisitos do sistema para aprimorar requisitos do sistema para

requisitos de softwarerequisitos de software– IncluiInclui

• Classificação de requisitosClassificação de requisitos• Modelo Conceitual, design arquitetural e alocação de Modelo Conceitual, design arquitetural e alocação de

requisitosrequisitos• Negociação de requisitos.Negociação de requisitos.

KA: Software RequirementsKA: Software Requirements

Page 28: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 28

• Requirement SpecificationRequirement Specification– Descreve e estrutura o documento de Descreve e estrutura o documento de

requisitosrequisitos– Geração dos documentos de definição e Geração dos documentos de definição e

especificação dos requisitos do sistemaespecificação dos requisitos do sistema

KA: Software RequirementsKA: Software Requirements

Page 29: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 29

• Requirement ValidationRequirement Validation– Levanta os problemas antes que os Levanta os problemas antes que os

recursos sejam comprometidosrecursos sejam comprometidos– Verifica se o documento de requisitos Verifica se o documento de requisitos

define o sistema corretodefine o sistema correto• Descrições do comportamento das revisões Descrições do comportamento das revisões

dos requisitosdos requisitos• Criação do ProtótipoCriação do Protótipo• Validação do Modelo Validação do Modelo • Testes de AceitaçãoTestes de Aceitação

KA: Software RequirementsKA: Software Requirements

Page 30: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 30

• Requirement ManagementRequirement Management– Está presente em todo o ciclo de vida de Está presente em todo o ciclo de vida de

um softwareum software– Controla a mudança dos requisitosControla a mudança dos requisitos– Gerencia Características dos requisitosGerencia Características dos requisitos

KA: Software RequirementsKA: Software Requirements

Page 31: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 31

• Processo de definição da Processo de definição da arquitetura, componentes, interfaces arquitetura, componentes, interfaces e outras características de um e outras características de um sistema ou componentesistema ou componente

• Tem como base a definição dos Tem como base a definição dos requisitosrequisitos

KA: Software DesignKA: Software Design

Page 32: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 32

• Sub-áreas de ConhecimentoSub-áreas de Conhecimento– Basic ConceptsBasic Concepts– Key Issues of SoftwareKey Issues of Software– Structure and ArchitectureStructure and Architecture– Software Design Quality Analysis and Software Design Quality Analysis and

EvaluationEvaluation– Desing NotationsDesing Notations– Software Design Strategies and Software Design Strategies and

MethodsMethods

KA: Software DesignKA: Software Design

Page 33: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 33

KA: Software DesignKA: Software Design

Page 34: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 34

• Basic ConceptsBasic Concepts– formam uma base fundamental para o formam uma base fundamental para o

entendimento da função e do escopo do entendimento da função e do escopo do design de softwaredesign de software• conceitos básicos de designconceitos básicos de design• contexto do design de softwarecontexto do design de software• processo de designprocesso de design• técnicas que permitem o design de técnicas que permitem o design de

software.software.

KA: Software DesignKA: Software Design

Page 35: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 35

• Key Issues of SoftwareKey Issues of Software– ConcorrênciaConcorrência– Controle e tratamento de eventosControle e tratamento de eventos– DistribuiçãoDistribuição– Tratamento de erros e de exceçõesTratamento de erros e de exceções– Sistemas interativos Sistemas interativos – PersistênciaPersistência

KA: Software DesignKA: Software Design

Page 36: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 36

• Structure and ArchitectureStructure and Architecture– Estruturas e Pontos de VistasEstruturas e Pontos de Vistas– EstilosEstilos– Padrões de DesignPadrões de Design– FrameworksFrameworks

KA: Software DesignKA: Software Design

Page 37: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 37

• Software Design Quality Analysis Software Design Quality Analysis and Evaluationand Evaluation– Trata da qualidade do design do Trata da qualidade do design do

softwaresoftware– Atributos de qualidadeAtributos de qualidade– Análise de qualidadeAnálise de qualidade– Avaliação de ferramentas Avaliação de ferramentas – MétricasMétricas

KA: Software DesignKA: Software Design

Page 38: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 38

• Design NotationsDesign Notations– Notações estruturais e comportamentaisNotações estruturais e comportamentais

• Software Design Strategies and Software Design Strategies and MethodsMethods– Estratégias GeraisEstratégias Gerais– Métodos Orientados a FunçõesMétodos Orientados a Funções– Métodos Orientados a ObjetoMétodos Orientados a Objeto– Métodos Centrados em Dados EstruturadosMétodos Centrados em Dados Estruturados– Métodos FormaisMétodos Formais

KA: Software DesignKA: Software Design

Page 39: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 39

KA: Software KA: Software ConstructionConstruction

Page 40: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 40

• Construção de software é um ato Construção de software é um ato fundamental do planejamento de fundamental do planejamento de software:software:– CodificaçãoCodificação– ValidaçãoValidação– Verificação (testes unitários)Verificação (testes unitários)

• Requer que o desenvolvedor seja lógico Requer que o desenvolvedor seja lógico e preciso.e preciso.

• Produz software executávelProduz software executável• Relação entre design e construçãoRelação entre design e construção

KA: Software KA: Software ConstructionConstruction

Page 41: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 41

• Uso de Ferramentas para aumento Uso de Ferramentas para aumento de produtividade e qualidadede produtividade e qualidade

• Princípios BásicosPrincípios Básicos– Redução da ComplexidadeRedução da Complexidade

• Remoção, Automação e Localização da Remoção, Automação e Localização da ComplexidadeComplexidade

– Antecipação da DiversidadeAntecipação da Diversidade• Técnicas de Generalização e ExperimentaçãoTécnicas de Generalização e Experimentação

– Estruturação para Validação Estruturação para Validação – Uso de Padrões ExternosUso de Padrões Externos

KA: Software KA: Software ConstructionConstruction

Page 42: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 42

• Estilos/Métodos para Construção de Estilos/Métodos para Construção de SoftwareSoftware– LingüísticoLingüístico

• Uso de linguagem naturalUso de linguagem natural

– FormalFormal– VisualVisual

• Visual C++ Visual C++ • Visual BasicVisual Basic

KA: Software KA: Software ConstructionConstruction

Page 43: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 43

• Consiste na verificação Consiste na verificação dinâmicadinâmica do do comportamento de um programa comportamento de um programa com um conjunto com um conjunto finitofinito de casos de de casos de testes, testes, selecionadosselecionados de um domínio de um domínio geralmente infinito de execuções, geralmente infinito de execuções, para confirmar o comportamento para confirmar o comportamento especificado especificado esperadoesperado..

KA: KA: Software TestingSoftware Testing

Page 44: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 44

• Sub-áreas de ConhecimentoSub-áreas de Conhecimento– Basic ConceptsBasic Concepts– Test LevelsTest Levels– Test Techniques Test Techniques – Test MeasuresTest Measures– Test ManagementTest Management

KA: KA: Software TestingSoftware Testing

Page 45: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 45

KA: KA: Software TestingSoftware Testing

Page 46: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 46

• Basic ConceptsBasic Concepts– Apresentação da terminologia de testesApresentação da terminologia de testes– Bases teóricasBases teóricas– Relacionamento dos testes com outras Relacionamento dos testes com outras

atividadesatividades

• Test LevelsTest Levels– Alvos e ObjetivosAlvos e Objetivos

• Test Techniques Test Techniques – Seleção de Técnicas apropriadasSeleção de Técnicas apropriadas

KA: KA: Software TestingSoftware Testing

Page 47: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 47

• Test MeasuresTest Measures– Trata métricas de testes relacionadosTrata métricas de testes relacionados

• Test ManagementTest Management– Gerenciamento específico para o Gerenciamento específico para o

processo de testesprocesso de testes• GerenciamentoGerenciamento• AtividadesAtividades

KA: KA: Software TestingSoftware Testing

Page 48: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 48

• Uma vez em execução, anomalias Uma vez em execução, anomalias são descobertas, ambientes de são descobertas, ambientes de execução são modificados, e novos execução são modificados, e novos requisitos do usuário surgem.requisitos do usuário surgem.

• Sub-áreas de ConhecimentoSub-áreas de Conhecimento– Basic ConceptsBasic Concepts– Maintenance ProcessMaintenance Process– Key IssuesKey Issues– Techniques for MaintenanceTechniques for Maintenance

KA: KA: Software MaintenanceSoftware Maintenance

Page 49: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 49

KA: KA: Software MaintenanceSoftware Maintenance

Page 50: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 50

• Basic ConceptsBasic Concepts– Definições, Terminologias e EvoluçãoDefinições, Terminologias e Evolução

• Maintenance ProcessMaintenance Process– AtividadesAtividades

• Key IssuesKey Issues– Problemas Técnicos e GerenciamentoProblemas Técnicos e Gerenciamento

• Techniques for MaintenanceTechniques for Maintenance– Compreenção do Programa, Re-Compreenção do Programa, Re-

engenharia, Engenharia Reversa, Análise engenharia, Engenharia Reversa, Análise de Impactode Impacto

KA: KA: Software MaintenanceSoftware Maintenance

Page 51: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 51

• Modelo de Processos de ManutençãoModelo de Processos de Manutenção– IEEE:IEEE:

KA: KA: Software MaintenanceSoftware Maintenance

Solicitação Solicitação de de ModificaçãModificaçãoo

Classificação e

Identificação

Classificação e

Identificação

AnáliseAnálise

DesignDesign

Implementação

Implementação

TesteTesteTeste de AceitaçãoTeste de

Aceitação

EntregaEntrega

Page 52: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 52

KA: Software Configuration KA: Software Configuration Management (SCM)Management (SCM)

• Identifica a configuração de um Identifica a configuração de um sistemasistema– Controle de mudanças Controle de mudanças – Manutenção da integridade da Manutenção da integridade da

configuração durante o ciclo de vida do configuração durante o ciclo de vida do sistemasistema

Page 53: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 53

• Sub-áreas de ConhecimentoSub-áreas de Conhecimento– Management of the SCM processManagement of the SCM process– Software Configuration IdentificationSoftware Configuration Identification– Software Configuration ControlSoftware Configuration Control– Software Configuration Status Software Configuration Status

AccountingAccounting– Software Configuration AuditingSoftware Configuration Auditing– Software Release Management and Software Release Management and

DeliveryDelivery

KA: Software Configuration KA: Software Configuration ManagementManagement

Page 54: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 54

KA: Software Configuration KA: Software Configuration ManagementManagement

Page 55: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 55

• Management of the SCM processManagement of the SCM process– Trata dos tópicos do contexto Trata dos tópicos do contexto

organizacionalorganizacional– Limitações e direcionamentoLimitações e direcionamento– PlanejamentoPlanejamento– Software Configuration Management Software Configuration Management

Plan (SCMP)Plan (SCMP)– Monitoramento do SCMMonitoramento do SCM

KA: Software Configuration KA: Software Configuration ManagementManagement

Page 56: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 56

• Software Configuration Software Configuration IdentificationIdentification– Identifica itens a serem controladosIdentifica itens a serem controlados– Estabelece esquemas de identificação Estabelece esquemas de identificação

para os itens e suas versõespara os itens e suas versões– Estabelece as ferramentas e técnicas a Estabelece as ferramentas e técnicas a

serem usadas para adquirir e gerenciar serem usadas para adquirir e gerenciar itens controláveisitens controláveis

KA: Software Configuration KA: Software Configuration ManagementManagement

Page 57: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 57

KA: Software Configuration KA: Software Configuration ManagementManagement

• Software Configuration ControlSoftware Configuration Control– Gerencia as mudanças durante o ciclo Gerencia as mudanças durante o ciclo

de vida do softwarede vida do software

• Software Configuration Status Software Configuration Status AccountingAccounting– Informações sobre o status da Informações sobre o status da

configuração de softwareconfiguração de software– Relatórios do statusRelatórios do status

Page 58: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 58

• Software Configuration AuditingSoftware Configuration Auditing– Auditoria de configuração funcional do Auditoria de configuração funcional do

softwaresoftware– Auditoria de configuração física do Auditoria de configuração física do

softwaresoftware– Auditoria Auditoria In-ProcessIn-Process

• Software Release Management and Software Release Management and DeliveryDelivery– Gerência de construção e de entrega de Gerência de construção e de entrega de

softwaresoftware

KA: Software Configuration KA: Software Configuration ManagementManagement

Page 59: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 59

• Representação GráficaRepresentação Gráfica

KA: Software Configuration KA: Software Configuration ManagementManagement

Mgmt. & Mgmt. & PlanningPlanning

SCMSCMPP

Mgmt. & Mgmt. & PlanningPlanning

SCMSCMPP

ControlControlMgmt.Mgmt.

ControlControlMgmt.Mgmt.

Status Status AccountiAccounti

ngng

Status Status AccountiAccounti

ngng

Release Release ProcessiProcessi

ngng

Release Release ProcessiProcessi

ngngAuditingAuditingAuditingAuditing

Configurantion IdentificationConfigurantion IdentificationConfigurantion IdentificationConfigurantion Identification

Page 60: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 60

KA: Software Engineering KA: Software Engineering ManagementManagement

• Corresponde ao gerenciamento, Corresponde ao gerenciamento, medição e modelagem do medição e modelagem do desenvolvimento de softwaredesenvolvimento de software

• Sub-áreas de conhecimentoSub-áreas de conhecimento– Organizacional ManagementOrganizacional Management– Process/Project managementProcess/Project management– Software Engineering MeasurementSoftware Engineering Measurement

Page 61: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 61

KA: Software Engineering KA: Software Engineering ManagementManagement

Page 62: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 62

• Organizacional ManagementOrganizacional Management– Política de GerenciamentoPolítica de Gerenciamento– Gerência de PessoalGerência de Pessoal– Gerência de ComunicaçãoGerência de Comunicação– Gerência de AquisiçãoGerência de Aquisição

KA: Software Engineering KA: Software Engineering ManagementManagement

Page 63: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 63

• Process/Project managementProcess/Project management– Definição de escopoDefinição de escopo

• Determinação de requisitos, análise de Determinação de requisitos, análise de viabilidade e revisão dos requisitosviabilidade e revisão dos requisitos

– PlanejamentoPlanejamento• Processo, projetos, Processo, projetos, deliverablesdeliverables, estimativa , estimativa

de esforço, cronograma, alocação de de esforço, cronograma, alocação de recursos, riscos, qualidaderecursos, riscos, qualidade

– EnactmentEnactment• Planos de implementação, processo de Planos de implementação, processo de

medição, monitoração, controle e relatóriosmedição, monitoração, controle e relatórios

KA: Software Engineering KA: Software Engineering ManagementManagement

Page 64: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 64

• Process/Project managementProcess/Project management– Definição de revisão e avaliaçãoDefinição de revisão e avaliação

• Determinação dos requisitos de satisfação, Determinação dos requisitos de satisfação, revisão e avaliação de desempenhorevisão e avaliação de desempenho

– FechamentoFechamento

KA: Software Engineering KA: Software Engineering ManagementManagement

Page 65: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 65

• Software Engineering MeasurementSoftware Engineering Measurement– Objetivos do programa de mediçãoObjetivos do programa de medição– Seleção de medidasSeleção de medidas– Medição do software e do seu Medição do software e do seu

desenvolvimentodesenvolvimento– Coleta de DadosColeta de Dados– Modelos de MétricasModelos de Métricas

KA: Software Engineering KA: Software Engineering ManagementManagement

Page 66: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 66

KA: Software Engineering KA: Software Engineering ProcessProcess

• Preocupa-se com:Preocupa-se com:– DefiniçãoDefinição– ImplementaçãoImplementação– MedidaMedida– GerenciamentoGerenciamento– MudançaMudança– MelhoramentoMelhoramento

Page 67: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 67

• Sub-áreas de conhecimentoSub-áreas de conhecimento– Basic ConceptsBasic Concepts– Process InfrastructureProcess Infrastructure– Measurements Specific to Software Measurements Specific to Software

Engineering ProcessEngineering Process– Process DefinitionProcess Definition– Qualitative Process AnalysisQualitative Process Analysis– Process Implementation and ChangeProcess Implementation and Change

KA: Software Engineering KA: Software Engineering ProcessProcess

Page 68: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 68

KA: Software Engineering KA: Software Engineering ProcessProcess

Page 69: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 69

• Basic ConceptsBasic Concepts– Temas Temas – TerminologiasTerminologias

• Process InfrastructureProcess Infrastructure– Descreve o conceito de grupo e fábricaDescreve o conceito de grupo e fábrica

• Measurements Specific to Software Measurements Specific to Software Engineering ProcessEngineering Process– Apresenta a metodologia e paradigmas Apresenta a metodologia e paradigmas

de medida para diagnóstico quantitativo de medida para diagnóstico quantitativo do processodo processo

KA: Software Engineering KA: Software Engineering ProcessProcess

Page 70: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 70

• Process DefinitionProcess Definition– Vários tipos de definições de processo Vários tipos de definições de processo – Ciclo de vida de modelos de frameworkCiclo de vida de modelos de framework– Ciclo de vida de modelos de softwareCiclo de vida de modelos de software– Notações usadas para representar essas Notações usadas para representar essas

definiçõesdefinições– Métodos de definições de processosMétodos de definições de processos– Automação relativa às várias definiçõesAutomação relativa às várias definições

KA: Software Engineering KA: Software Engineering ProcessProcess

Page 71: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 71

• Qualitative Process AnalysisQualitative Process Analysis– Revisão do processo de definiçãoRevisão do processo de definição– Análise da causa de origemAnálise da causa de origem

• Process Implementation and ChangeProcess Implementation and Change– Descreve os paradigmasDescreve os paradigmas– Descreve as linhas de direção para Descreve as linhas de direção para

implementação e mudança do processoimplementação e mudança do processo– Avaliação do resultado de Avaliação do resultado de

implementação e mudançaimplementação e mudança

KA: Software Engineering KA: Software Engineering ProcessProcess

Page 72: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 72

KA: Software Engineering KA: Software Engineering Tools and MethodsTools and Methods

• Inclui tanto o ambiente de Inclui tanto o ambiente de desenvolvimento de software como desenvolvimento de software como as áreas de conhecimento de as áreas de conhecimento de métodos de desenvolvimentométodos de desenvolvimento

Page 73: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 73

KA: Software Engineering KA: Software Engineering Tools and MethodsTools and Methods

Page 74: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 74

• Ambiente de desenvolvimento de softwareAmbiente de desenvolvimento de software– são ferramentas computacionais com o intuito de são ferramentas computacionais com o intuito de

auxiliar o processo de desenvolvimento de auxiliar o processo de desenvolvimento de software software

• Métodos de DesenvolvimentoMétodos de Desenvolvimento– Impõe estrutura na atividade de desenvolvimento Impõe estrutura na atividade de desenvolvimento

de software, com o objetivo de tornar a atividade de software, com o objetivo de tornar a atividade sistemática e propícia ao sucessosistemática e propícia ao sucesso• HeurísticosHeurísticos• FormaisFormais• PrototipagemPrototipagem• HíbridoHíbrido

KA: Software Engineering KA: Software Engineering Tools and MethodsTools and Methods

Page 75: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 75

KA: Software QualityKA: Software Quality

• Qualidade de Software:Qualidade de Software:– Uso eficiente, efetivo e confortável por Uso eficiente, efetivo e confortável por

um dado conjunto de usuários para um um dado conjunto de usuários para um determinado propósito sob determinado propósito sob determinadas condições.determinadas condições.

• Presente em grande parte das áreas Presente em grande parte das áreas de conhecimento do guiade conhecimento do guia

Page 76: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 76

• Sub-áreas de conhecimentoSub-áreas de conhecimento– Software Quality ConceptsSoftware Quality Concepts– Purpose and Planning of Software Quality Purpose and Planning of Software Quality

Assurance and Verification&ValidationAssurance and Verification&Validation– Activities and Techniques for Software Activities and Techniques for Software

Quality Assurance and Quality Assurance and Verification&ValidationVerification&Validation

– Measurement Applied to Software Quality Measurement Applied to Software Quality Assurance and Verification&ValidationAssurance and Verification&Validation

KA: Software QualityKA: Software Quality

Page 77: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 77

KA: Software QualityKA: Software Quality

Page 78: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 78

• Software Quality ConceptsSoftware Quality Concepts– Trata da medida do valor da qualidadeTrata da medida do valor da qualidade– Trata da descrição ISO 9126 de Trata da descrição ISO 9126 de

qualidadequalidade– Dependência Dependência – Outros tipos especiais de sistemaOutros tipos especiais de sistema

KA: Software QualityKA: Software Quality

Page 79: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 79

• Purpose and Planning of Software Purpose and Planning of Software Quality Assurance (SQA) and Quality Assurance (SQA) and Verification&Validation (V&V)Verification&Validation (V&V)– Atividades de Planejamento da Atividades de Planejamento da

qualidadequalidade– SQA PlanSQA Plan– V&V PlanV&V Plan

KA: Software QualityKA: Software Quality

Page 80: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 80

• Activities and Techniques for SQA Activities and Techniques for SQA and V&Vand V&V– Técnicas Estáticas Técnicas Estáticas – Técnicas People-IntensiveTécnicas People-Intensive– Técnicas AnalíticasTécnicas Analíticas– Técnicas DinâmicasTécnicas Dinâmicas

KA: Software QualityKA: Software Quality

Page 81: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 81

• Measurement Applied to SQA and Measurement Applied to SQA and V&VV&V– Inclui os fundamentos de medição Inclui os fundamentos de medição – Modelos de MediçãoModelos de Medição– Técnicas de análise de medidasTécnicas de análise de medidas– Caracterização de falhaCaracterização de falha

KA: Software QualityKA: Software Quality

Page 82: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 82

Crescimento no interesse Crescimento no interesse na profissão de engenharia na profissão de engenharia

de softwarede software• Diversos centros de estudos e Diversos centros de estudos e

universidades, por todo o mundo universidades, por todo o mundo oferecem graduação em engenharia oferecem graduação em engenharia de software ou possuem algum de software ou possuem algum grupo voltado a estudos do corpo do grupo voltado a estudos do corpo do conhecimento dessa áreaconhecimento dessa área

Page 83: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 83

Crescimento no interesse Crescimento no interesse na profissão de engenharia na profissão de engenharia

de softwarede software• University of New South Wales University of New South Wales

(Australia)(Australia)• McMaster University (Canadá)McMaster University (Canadá)• Rochester Institute of Technology (US)Rochester Institute of Technology (US)• The Canadian Information Processing The Canadian Information Processing

Society tem publicado critérios que Society tem publicado critérios que acreditam em programas de acreditam em programas de engenharia de software para engenharia de software para estudantes ainda não graduadosestudantes ainda não graduados

Page 84: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 84

Crescimento no interesse Crescimento no interesse na profissão de engenharia na profissão de engenharia

de softwarede software• CMM, CMMI e a família ISO 9000 de CMM, CMMI e a família ISO 9000 de

padrões são usados para avaliar a padrões são usados para avaliar a capacidade organizacional para a capacidade organizacional para a engenharia de softwareengenharia de software

• The Texas Board of Professional The Texas Board of Professional Engineers tem começado a licenciar Engineers tem começado a licenciar profissionais de engenharia de profissionais de engenharia de softwaresoftware

Page 85: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 85

Crescimento no interesse Crescimento no interesse na profissão de engenharia na profissão de engenharia

de softwarede software• The Association for Computing MachineryThe Association for Computing Machinery

(ACM) e o Computer Society of the (ACM) e o Computer Society of the Institute ofInstitute of

Electrical and Electronics Engineers (IEEE)Electrical and Electronics Engineers (IEEE)

têm aderido ao desenvolvimento e adotado têm aderido ao desenvolvimento e adotado umum

código de ética para profissionais de código de ética para profissionais de engenharia deengenharia de

softwaresoftware

Page 86: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 86

Crescimento no interesse Crescimento no interesse na profissão de engenharia na profissão de engenharia

de softwarede software

• The Institute for Certification of The Institute for Certification of ComputingComputing

Professionals (ICCP) oferece Professionals (ICCP) oferece certificação tantocertificação tanto

para desenvolvedores de software para desenvolvedores de software quanto paraquanto para

engenheiros de softwareengenheiros de software

Page 87: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 87

Considerações FinaisConsiderações Finais

• É provável que o projeto SWEBOK É provável que o projeto SWEBOK torne-se tão importante dentro da torne-se tão importante dentro da área de Tecnologia da Informação área de Tecnologia da Informação quanto o PMBOK é dentro da área quanto o PMBOK é dentro da área de Gerência de Projetosde Gerência de Projetos

• E seus padrões se tornem guias para E seus padrões se tornem guias para um profissional de Tecnologia da um profissional de Tecnologia da informaçãoinformação

Page 88: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 88

ReferênciasReferências

• Guide to the Software Engineering Body of Guide to the Software Engineering Body of Knowledge. A Project of the Software Knowledge. A Project of the Software Engineering Coordinating Committee - Engineering Coordinating Committee - Leonard Leonard L. TripL. Tripp, Chair, Professional Practices p, Chair, Professional Practices Committee, IEEE Computer SocietyCommittee, IEEE Computer Society

• The Emerging Consensus on Software The Emerging Consensus on Software Engineering Body of Knowledge –Pierre Bourque, Engineering Body of Knowledge –Pierre Bourque, École de technologie supérieure Robert Dupuis, École de technologie supérieure Robert Dupuis, february,2002 february,2002

• Description of the SWEBOK Knowledge Area Description of the SWEBOK Knowledge Area Software Engineering Process- Software Engineering Process- El-Emam, K. El-Emam, K. March 2001March 2001

Page 89: Uma introdução ao SWEBOK Jairo C. de Oliveira jco@cin.ufpe.br Milena Rocha mrl@cin.ufpe.br Tópicos Avançados de ES 3

Uma introdução ao SWEBOK v2.0 89

ReferênciasReferências

• http://www.ipenz.org.nz/ipenz/http://www.ipenz.org.nz/ipenz/publications/Convention/publications/Convention/Steve_McDonell_SWEBOK.pptSteve_McDonell_SWEBOK.ppt

• http://www.site.uottawa.ca/~tcl/http://www.site.uottawa.ca/~tcl/presentations/presentations/SWEBOKandUottMar2000CSEET.pptSWEBOKandUottMar2000CSEET.ppt

• http://www.stevemcconnell.com/http://www.stevemcconnell.com/NovumOrganum.pdfNovumOrganum.pdf