Software Engineering Body of Knowledge
O Guide to the Software Engineering Body of Knowledge, conhecido pela sigla SWEBOK, é um documento criado sob o patrocínio da IEEE Computer Society e publicado pela mesma com a finalidade de servir de referência em assuntos considerados, de forma generalizada pela comunidade, como pertinentes a área de Engenharia de Software. Por isso em seu conteúdo mais recente, o SWEBOK V3 publicado em 2014, foi sumarizado em 15 KAs (knowledge areas, em português, áreas de conhecimento) referentes a Engenharia de Software. Em sua 1ª versão publicada em 2004 haviam 10 KAs específicos a área citada anteriormente.[1]
O SWEBOK surgiu através de uma parceria entre o IEEE, a Computer Society e ACM a fim de promover a profissionalização da Engenharia de Software e criar um consenso sobre as áreas de conhecimento da Engenharia de Software e seu escopo. Sendo iniciado em 1998 pelo Software Engineering Coordinating Committee (SWECC) e financiado por organizações como a ACM, a Boeing, o Conselho Canadense de Engenheiros Profissionais, Construx Software, MITRE Corporation, entre outras. O SWEBOK é recomendado para diversos tipos de público, em todo o mundo, com o objetivo de ajudar organizações a terem uma visão consistente da Engenharia de Software. É endereçado a gerentes, engenheiros de software, às sociedades profissionais, estudantes, professores e instrutores desta área de conhecimento.[2]
O SWEBOK apresenta uma classificação hierárquica dos tópicos tratados pela Engenharia de Software, onde o nível mais alto são as Áreas do Conhecimento.
A criação desse documento também tem como objetivos a promoção da profissionalização da Engenharia de Software, a criação de um consenso das principais áreas de conhecimento da mesma e a localização e definição dos limites entre a área/disciplina de Engenharia de Software e outras áreas/disciplinas, como por exemplo a Engenharia da Computação.[3]
Evolução Histórica
[editar | editar código-fonte]Desde os primeiros computadores comerciais, os softwares implantados ou lançados no mercado se caracterizam, na sua maioria, pela presença de erros encontrados nas fases de verificação e validação, como por exemplo: erros em estimativas, dificuldade no domínio da área de conhecimento específica do software proposto, especificações obscuras, requisitos mal elaborados e mal interpretados, conflitos nos objetivos e mudanças intermináveis e mal controladas. Tais erros aumentaram a importância e responsabilidade dos especialistas ligados a uma das áreas da computação, conhecida como Engenharia de Software. Com isso, o Institute of Electrical and Electronics Engineers (IEEE) e a Association for Computing Machinery (ACM) conduziram estudos de modo a promover ativamente a Engenharia de Software como uma profissão desde 1993, definindo as fronteiras que delimitam a Engenharia de Software, através do Corpo de Conhecimento em Engenharia de Software.
O SWEBOK surgiu através de uma parceria entre o IEEE, a Computer Society e ACM a fim de promover a profissionalização da Engenharia de Software e criar um consenso sobre as áreas de conhecimento da Engenharia de Software e seu escopo. Sendo iniciado em 1998 pelo Software Engineering Coordinating Committee (SWECC) e financiado por organizações como a ACM, a Boeing, o Conselho Canadense de Engenheiros Profissionais, Construx Software, MITRE Corporation, entre outras. O SWEBOK é recomendado para diversos tipos de público, em todo o mundo, com o objetivo de ajudar organizações a terem uma visão consistente da Engenharia de Software.[2]
Versões
[editar | editar código-fonte]O Guia SWEBOK possui 2 versões, a primeira publicada em 2004 foi reconhecida internacionalmente no ano seguinte pela ISO através do comitê ISO/IEC JTC 1/SC 7, cujo
escopo é Software e Engenharia de Sistemas, o mesmo pode ser descrito como um comitê horizontal que produz padrões genéricos que são agnósticos de tecnologia e independentes do domínio da aplicação. Esses padrões são focados principalmente em modelos de processos e boas práticas (Métodos e técnicas). Sua ISO é identificada como ISO/IEC TR 19759:2005.[2]
O Guia SWEBOK V3 publicado em 2013 foi criada pois desde a publicação do 1º SWEBOK, o comitê responsável pelo conteúdo entendia a necessidade de revisão do mesmo devido ao crescimento da área, o surgimento de novos pontos de vista devido a outras áreas relacionadas que surgiram ou se expandiram e a mudança de conhecimento, métodos e ferramentas.[2]
Contando com uma equipe de editores para revisar e melhorar as KAs e outra equipe para revisões e melhorias gerais, houve mais de 1500 mudanças submetidas e julgadas a serem parte da nova versão do SWEBOK ou não.[2]
Versão SWEBOK V3 2013 e suas KAs
[editar | editar código-fonte]O Guia SWEBOK V3 possuí as mesmas KAs, revisadas e melhoradas, com o complemento de mais 5 KAs. Suas disciplinas relacionas também são as mesmas, porém revisadas e melhoradas, porém não há mais “Ergonomia de Software”. Seguem:
- Requisitos de Software: Se refere a análise, especificação e validação dos requisitos de software.
- Desenho de Software: Se refere a análise dos requisitos de software com a finalidade de produzir uma descrição da estrutura interna do software que sirva como base para a construção do mesmo.
- Construção de Software: Se refere a criação detalhada do software mediante a combinação de codificação, verificação, testes unitários, testes de integração e depuração.
- Testes de Software: Se refere a avaliação da qualidade de um produto mediante seus defeitos e/ou problemas para melhorá-lo.
- Manutenção de Software: Se refere ao software após criado e “entregue”, pois devem haver melhorias e atualizações para que a qualidade se mantenha.
- Gestão de Configuração de Software: Se refere ao controle e entendimento de diferentes partes do software, para que mudanças realizadas sejam feitas da melhor e mais correta maneira para que a qualidade e funcionalidade do software não sejam comprometidas.
- Gestão de Engenharia de Software: Se refere a aplicação consistente de atividades de gestão para assegurar que o desenvolvimento e manutenção de um software estão sendo realizados de forma sistemática, disciplinada e quantificável.
- Processos de Engenharia de Software: Se refere a definição, implementação, validação, medição,gestão, mudanças e melhorias existentes dentro do próprio ciclo de vida do software.
- Ferramentas e Métodos: Se refere ao uso de ferramentas e métodos que ajudam no processo de criação e manutenção de um software.
- Qualidade de Software: Se refere as técnicas que auxiliam a alcançar uma maior qualidade em um software.
- Prática Profissional de Engenharia de Software.
- Economia na Engenharia de Software.
- Fundamentos de Computação.
- Fundamentos de Matemática.
- Fundamentos de Engenharia.
Certificações
[editar | editar código-fonte]O guia, como é convencionalmente chamado, divide a Engenharia de Software em dez áreas de Conhecimento - KnowLedge Areas (KAs): (1) requisitos, (2) Projeto, (3) Construção, (4) testes, (5) manutenção, (6) configuração, (7) gerenciamento, (8) processo, (9) ferramentas e métodos, (10) Qualidade, além de disciplinas relacionadas à Engenharia de Software. É importante comentar que o IEEE oferece duas modalidades de certificação sobre o SWEBOK, disponibilizadas para engenheiros e desenvolvedores. São elas:
- Certificação de associados para o desenvolvimento de Software - Certified Software Development Associate (CSDA);
- Certificação Profissional para desenvolvimento de Software - Certified Software Development Professional (CSDP).
Depois de pesquisa extensa, os líderes do IEEE reconheceram a necessidade de um endereçamento do programa de certificação aos iniciantes e profissionais no desenvolvimento de software. O propósito do programa de CSDA é estabelecer um nível mínimo de habilidades e conhecimento, sendo o primeiro passo para se tornar um Profissional de Desenvolvimento de Software Certificado (CSDP). A certificação CSDP é recomendada para profissionais mais experientes e tem como objetivo ampliar as habilidades e conhecimentos técnicos especializados relevantes sobre o SWEBOK.
Objetivos
[editar | editar código-fonte]- Promover uma visão consistente da engenharia de software no mundo.
- Clarear e marcar as fronteiras entre a engenharia de software e as outras disciplinas relacionadas
- Caracterizar o conteúdo da disciplina de engenharia de software
- Classificar em tópicos a área de conhecimento da engenharia de software (programas)
- Prover uma fundação para o desenvolvimento do currículo, para certificação individual e para licenciamento de material
Áreas do Conhecimento
[editar | editar código-fonte]O SWEBOK 3.0 é composto por 15 áreas do conhecimento.
- Requisitos de Software
- Projeto de Software
- Construção de Software
- Teste de Software
- Manutenção de software
- Gerência de Configuração de Software
- Gerência da Engenharia de Software
- Processos de Engenharia de Software
- Ferramentas e Métodos da Engenharia de Software
- Qualidade de Software
- Práticas Profissionais em Engenharia de Software
- Economia da Engenharia de Software
- Fundamentos de Computação
- Fundamentos de Matemática
- Fundamentos de Engenharia
Disciplinas relacionadas
[editar | editar código-fonte]- Ciência da computação
- Engenharia da computação
- Engenharia de sistemas
- Engenharia de software
- Ergonomia de software
- Gestão
- Gestão da qualidade
- Gestão de projeto
- Matemática
- Sistemas de informação
Ver também
[editar | editar código-fonte]- ↑ «Software Engineering Body of Knowledge (SWEBOK) | IEEE Computer Society» (em inglês). Consultado em 25 de junho de 2019
- ↑ a b c d e http://www.cin.ufpe.br/~processos/TAES3/Livro/00-LIVRO/11-SWEBOK-v8_CORRIGIDO_Versao_Final_OK.pdf
- ↑ Dinsmore, Paul C. (2009). AMA - Manual de Gerenciamento de Projetos. Brasil: Braspot
Ligações externas
[editar | editar código-fonte]- SWEBOK - Neste sítio é possível baixar o guia pela Web.
- SWEBOK Traduzido - Trabalho acadêmico do Marco Rogerio Santiago, uma tradução do SWEBOK 2004