350 likes | 611 Views
SWEBOK . Antonio Nascimento ajnf@cin.ufpe.br. Roteiro. Introdução Objetivos Áreas de Conhecimento Certificações Conclusões Referências. Introdução.
E N D
SWEBOK Antonio Nascimento ajnf@cin.ufpe.br
Roteiro • Introdução • Objetivos • Áreas de Conhecimento • Certificações • Conclusões • Referências
Introdução • O SWEBOK (Guide to the Software Engineering Body of Knowledge) é um documento criado com a finalidade de servir de referência em assuntos considerados como essenciais na área de Engenharia de Software e foi conduzido pelo IEEE (Institute of Electrical and Electronics Engineers).
Introdução • O porquê do guia? • Surgiu da necessidade da comissão de especialistas da área de Engenharia de Software, visando uma definição das fronteiras que a delimitam. [SWEBOK, 2004]. • Subsídios para o reconhecimento da profissão de Engenheiro de Software.
Introdução • Onde surgiu o guia? • O projeto SWEBOK foi iniciado em 1998 pela SWECC (Software Engineering Coordinating Committee). • SWECC surgiu com a colaboração do IEEE Computer Society e a Association for Computing Machinery (ACM) com o intuito de promover a profissionalização da engenharia de software.
Objetivos • Caracterizar o conteúdo da disciplina de engenharia de software; • Estabelecer um conjunto apropriado de critérios e normas para a prática profissional da Engenharia de Software; • Marcar as fronteiras entre a Engenharia de Software e as demais disciplinas relacionadas; • Prover uma fundação para certificação individual e para licenciamento de profissionais.
SWEBOK 2010 • Adicionado material sobre Interfaces Humano-Computador no design de software e Teste de Software; • Remoção da seção Ferramentas e métodos de Engenharia de Software (distribuídos para outras áreas de conhecimento); • Redistribuição de matérias entre as áreas de conhecimento.
Requisitos de Software • Elicitação, Análise, Especificação e Validação de Requisitos; • Sub-áreas: • Fundamentos dos Requisitos; • Processo de Requisitos; • Elicitação de Requisitos; • Análise de Requisitos; • Especificação de Requisitos; • Validação de Requisitos; • Considerações Práticas.
Projeto de Software • O Projeto de software é a atividade do ciclo de vida da Engenharia de Software em que os requisitos são analisados a fim de produzir uma descrição da estrutura interna do software. [Swebok, 2004].
Projeto de Software • Sub-áreas: • Fundamentos do Projeto de Software; • Questões Chave no Design de Software; • Estrutura e Arquitetura de Software; • Evolução e Análise de Qualidade do Projeto de Software; • Notações do Projeto de Software; • Estratégias e Métodos para o Projeto de Software.
Construção de Software • Área envolvida com todas as áreas de conhecimento do guia, entretanto existe um relacionamento maior com o projeto de software e com teste de software. Fazem parte desta área as atividades de implementação do software, verificação, testes de unidade, teste de integração e depuração. [Swebok, 2004].
Teste de Software • O teste é uma atividade realizada para avaliação da qualidade do produto, efetuando sua melhoria através da identificação de defeitos e problemas. [SWEBOK, 2004].
Teste de Software • Sub-áreas: • Fundamentos do teste de software; • Níveis de Teste de Software; • Técnicas de Teste de Software; • Medidas de Teste de Software; • Processo de Teste; • Considerações Práticas.
Manutenção de Software • Nesta área de conhecimento sua principal responsabilidade é totalizar as atividades requeridas para fornecer suporte custo-efetivo a um sistema de software, que pode ocorrer antes ou depois da entrega. [SWEBOK, 2004].
Manutenção de Software • Sub-áreas: • Fundamentos da Manutenção de Software; • Questões Chave sobre Manutenção de Software; • Problemas técnicos até questões de gestão. • Processo de Manutenção de Software; • Técnicas de Manutenção de Software;
Gerência de Conf. de Software • Tem o papel de identificar a configuração de um sistema em pontos distintos no tempo com a finalidade de controlar sistematicamente as mudanças para configurar e manter a integridade e rastreabilidade de todos os artefatos ao longo do ciclo de vida do sistema [Swebok, 2004].
Gerência de Conf. de Software • Sub-áreas: • Processo de Gerenciamento de Configurações; • Identificação da Configuração; • Controle da Configuração; • Gestão durante todo o ciclo de vida. • Registro do Estado da Configuração; • Auditoria da Configuração; • Entrega e Gerenciamento de Versões.
Gerência de Eng. de Software • É definida como a aplicação da gestão de atividades de planejamento, coordenação, medição, monitoramento, controle e comunicação de forma a garantir a manutenção sistemática e desenvolvimento dos projetos de software [SWEBOK, 2004].
Gerência de Eng. de Software • Sub-áreas: • Iniciação e Definição de Escopo; • Planejamento do Projeto; • Declaração do Plano de Projeto; • Revisão e avaliação; • Fechamento; • Evolução da Engenharia de Software.
Processo de Eng. de Software • Envolve vários outros processos, como o de desenvolvimento o de gerenciamento, e o de qualidade. Esta área está ligada com todas as partes do gerenciamento do processo de ciclo de vida do software.
Processo de Eng. de Software • Sub-áreas: • Mudança e Implementação do Processo; • Infra-Estrutura, modelos, práticas e etc. • Definição do Processo; • Avaliação do Processo; • Processo contínuo ou escalonado. • Medidas de Produtos e Processos (ISO/IEC 15939).
Qualidade de Software • A qualidade de software está diretamente ligada com a qualidade do processo através do qual o software é desenvolvido, portanto, para se ter qualidade em um produto de software é necessário ter um processo de desenvolvimento bem definido, que deve ser documentado e acompanhado [SWEBOK, 2004].
Qualidade de Software • Sub-áreas: • Fundamentos da Qualidade de Software; • Valor e custo, modelos, melhoria da qualidade e etc. • Processo de Gerenciamento da Qualidade de Software; • Considerações Práticas sobre a Qualidade de Software. • Recomendações, medição da qualidade e etc.
Certificações • Certificação CSDA (Certificação de Associação no Desenvolvimento de Software). • Certificação CSDP (Certificação de Desenvolvimento Profissional de Software)
Conclusões • Com as constantes e evoluções na Engenharia de Software o guia não é definitivo e não deve ser a única fonte de referências; • O guia fornece um conhecimento básico da Engenharia de Software, contudo é fundamental que o Engenheiro domine outros padrões.
Perguntas ???
Referências • Capuano, Tiago. Guide of the Software Engineering Body of Knowledge (SWEBOK). Passo Fundo, RS, Brasil. • Embiruçu, David L.; Neto, José B.F.A; Barbosa, Leandro M; Viana, Pablo A. B; Sette, Sergio S. TheGuide to the Software EngineeringBodyofKnoledge - SWEBOK. UFPE, Recife, PE, Brasil,2008 • Lopes, Edvaldo. Swebok - Software EngineeringBodyofKnowledge. UFPE, Recife, PE, Brasil, 2007. • SWEBOK. Guide to the Software EngineeringBodyofKnowledge. 2004 Version. A projectofthe IEEE ComputerSociety Professional PracticesCommittee. Disponível em: http://www.swebok.org.