A certificação dos softwares

Deve-se ter um planejamento adequado para que a qualidade do software seja atingida, conforme a definição de qualidade que deverá ser alcançada. Para isso são necessários modelos, padrões, procedimentos e técnicas para atingir essas metas de qualidade propostas. Na verdade, a indústria de software reconhece o valor das micro-organizações (Very Small Entities – VSE) no fornecimento de importantes serviços e produtos. Uma VSE é uma entidade (empresa, organização, departamento ou projeto) que tem até 25 pessoas. As VSE também desenvolvem e/ou mantêm software usado em sistemas maiores; consequentemente, muitas vezes é requerido o reconhecimento das VSE como fornecedores de software de alta qualidade.

software2Hayrton Rodrigues do Prado Filho –

Atualmente, qualquer produto não tem sua própria qualidade, mas esta passa a ser a sua capacidade de atender às expectativas do cliente. A qualidade se tornou como o grau no qual um conjunto de características inerentes a um produto, processo ou serviço satisfaz a requisitos ou as necessidades ou expectativas implícitas ou explícitas de clientes.

Dessa forma, a qualidade de um software é um objetivo do processo de desenvolvimento. A se desenvolver um produto, deve-se ter previamente estabelecidas, como perspectiva, as características de qualidade que se deseja alcançar.

O setor de desenvolvimento de softwares também vem evoluindo profundamente desde a fase em que o seu desenvolvimento era considerado arte, sendo agora um dos setores mais dinâmicos da economia. É um setor no qual a criatividade e a inovação são características intrínsecas.

A presença do software no dia a dia das pessoas e das organizações é absoluta. Essa evolução tem sido acompanhada pelo desenvolvimento de conhecimento, técnicas, métodos e processos que lhe dão suporte, enriquecendo a própria engenharia de software.

O setor de software tem buscado diversas alternativas para tratar o tema da qualidade, razão pela qual a engenharia de software tem consagrado a abordagem por processos. A abordagem por processos vem se desenvolvendo e sofisticando e isso vem resultando em vários modelos de referência que estão em uso.

A implementação efetiva dos processos pode ser verificada mediante usuais avaliações e auditorias e se pode mesmo atestar publicamente a efetiva implementação dos processos, por meio de uma certificação. O primeiro modelo nesse sentido foi o CMM (e depois CMMI). Porém, modelos como o CMMI são mais apropriados para uso em grandes projetos e grandes empresas e não se mostraram adequados para pequenas organizações que desenvolvem software.

O modelo de qualidade de software CMM – Capability Maturity Model é um modelo de avaliação e melhoria da maturidade de processo de software. O CMM é uma iniciativa do SEI (Software Engineering Institute) para avaliar e melhorar a capacitação de empresas que desenvolvem e mantém software através de seus funcionários ou de contratados terceirizados. Já o CMMI – Capability Maturity Model Integration foi criado, a partir do modelo CMM, para suprir as limitações do CMM, com a criação de: um método comum; unificar os vários modelos do mesmo existentes; permitir a representação contínua com áreas de processos independentes dos níveis de maturidade.

Além de modelos de métricas para qualidade de software, nota-se que a constante busca por ela se tornou uma atividade essencial dentro das empresas. Colocando-se todos esses conceitos dentro do contexto apresentado, pode-se dizer que a qualidade não é uma fase do ciclo de desenvolvimento de software … é parte de todas as fases.

Portanto, é necessário um planejamento adequado para que a qualidade do software seja atingida, conforme a definição de qualidade que deverá ser alcançada. Para isso são necessários modelos, padrões, procedimentos e técnicas para atingir essas metas de qualidade propostas. Para tanto, todas as etapas do ciclo de vida de engenharia de software devem ser contempladas com atividades que visam garantir a qualidade tanto do processo quanto do produto.

A NBR ISO/IEC 29110-4-1 de 02/2012 – Engenharia de Software – Perfis de ciclo de vida para micro-organizações (VSE) – Parte 4-1 : Especificações de perfil: Grupo Perfil Genérico aplica-se a micro-organizações. As VSE são empresas, organizações, departamentos ou projetos com até 25 pessoas. Os processos de ciclo de vida descritos na NBR ISO/IEC 29110-4-1 não têm a intenção de restringir ou desencorajar seu uso em organizações maiores.

A NBR ISO/IEC 29110, sob o título geral Engenharia de Software – Perfis de ciclo de vida para micro-organizações (VSE), tem a previsão de conter as seguintes partes: Parte 1: Visão Geral; Parte 2: Estrutura e taxonomia; Parte 3: Guia de avaliação (Relatório Técnico); Parte 4-1: Especificações de perfis: Grupo perfil Genérico; Parte 5-1-2: Guia de engenharia e gestão: Grupo perfil Genérico: Perfil básico (Relatório Técnico).

Segundo a norma, a indústria de software reconhece o valor das micro-organizações no fornecimento de importantes serviços e produtos. Para o propósito da ISO/IEC 29110, uma micro-organização é uma entidade (empresa, organização, departamento ou projeto) que tem até 25 pessoas. As VSE também desenvolvem e/ou mantêm software usado em sistemas maiores; consequentemente, muitas vezes é requerido o reconhecimento de VSE como fornecedores de software de alta qualidade.

De acordo com o relatório da Organization for Economic Co-operation and Development (OECD), as pequenas e médias empresas (PME) constituem a forma dominante de organização em todos os países do mundo, respondendo por mais de 95 % e até 99 % da população dos negócios, dependendo do país. O desafio enfrentado pelos governos ligado à OECD é prover um ambiente de negócios que apoie a competitividade desta grande população heterogênea de empresas e promova uma cultura empreendedora vibrante.

Os estudos e pesquisas conduzidos deixam claro que a maioria das normas não contempla as necessidades das VSE. A conformidade com essas normas é difícil, se não impossível. Assim, as VSE ficam limitadas ou não têm meios de serem reconhecidas como entidades que produzem software de alta qualidade no seu domínio. Consequentemente, VSE são muitas vezes excluídas de algumas atividades econômicas.

Descobriu-se que as VSE acham difícil relacionar as normas com as suas necessidades de negócio e justificar sua aplicação em suas práticas empresariais. Muitas VSE não dispõem de recursos, em termos de número de empregados, orçamento e tempo, nem veem benefício real no estabelecimento de processos de ciclo de vida do software. Para aliviar algumas dessas dificuldades, foi desenvolvido um conjunto de guias de acordo com um conjunto de características das VSE.

Os guias baseiam-se em conjuntos apropriados de elementos de normas, denominados perfis de VSE. O propósito de um perfil de VSE é definir um subconjunto de normas relevantes para o contexto da VSE, como, por exemplo, os processos e resultados da NBR ISO/IEC 12207 e produtos da ISO/IEC 15289.

A NBR ISO/IEC 29110, orientada por audiência, foi desenvolvida para melhorar a qualidade do produto e/ou serviço, e o desempenho do processo (ver a tabela abaixo). A NBR ISO/IEC 29110 não se destina a impedir a utilização de diferentes ciclos da vida, como cascata, iterativo, incremental, evolucionário ou ágil.

software3

Se for necessário um novo perfil, as NBR ISO/IEC 29110-4 e ABNT ISO/IEC TR 29110-5 podem ser expandidas sem impactar os documentos existentes e se tornar, respectivamente, NBR ISO/IEC 2911 0-4-m e NBR ISO/IEC 2911 0-5-m-n, seguindo o processo ABNT. A ISO/IEC TR 29110-1 define a terminologia empresarial comum ao Conjunto de Documentos dos Perfis de VSE. Introduz conceitos de processos, ciclo de vida e normalização, e a série ISO/IEC 29110. Também introduz as características e requisitos de uma VSE e esclarece a razão para se ter perfis, documentos, normas e guias específicos para VSE.

Esta parte introduz os conceitos de perfis padronizados de engenharia de software para as VSE e define os termos comuns ao conjunto de documentos Perfis de VSE. Estabelece a lógica por trás da definição e aplicação de perfis padronizados. Especifica os elementos comuns a todos os perfis padronizados (estrutura, conformidade, avaliação) e introduz a taxonomia (catálogo) de perfis da NBR ISO/IEC 29110.

A ISO/IEC TR 29110-3 define as diretrizes para avaliação de processos e requisitos de conformidade necessários para alcançar o propósito dos Perfis de VSE definidos. Também contém informação que pode ser útil aos desenvolvedores de métodos de avaliação e ferramentas de avaliação. É dirigida àqueles que têm relação direta com o processo de avaliação, como o avaliador e o patrocinador da avaliação, que precisam de orientação para assegurar que os requisitos para realização da avaliação sejam alcançados.

A NBR ISO/IEC 2911 0-4-m provê a especificação para todos os perfis do grupo Genérico de Perfis. O Grupo Genérico de Perfis de é aplicável a VSE que não desenvolvem produtos críticos de software. Os perfis são baseados em subconjuntos apropriados de elementos de normas.

Os Perfis de VSE aplicam-se e são endereçados a autores/fornecedores de guias, ferramentas e outros materiais de suporte. A ISO/IEC TR 2911 0-5-m-n provê um guia de implementação de engenharia e gestão para o Perfil de VSE descrito na NBR ISO/IEC 2911 0-4-m. A figura abaixo descreve a série NBR ISO/IEC 29110 e posiciona as partes dentro da estrutura de referência. Os resumos e guias são publicados como Relatórios Técnicos (TR) e os Perfis são publicados como normas.

software4

Esta parte da NBR ISO/IEC 29110 pode ser implementada por desenvolvedores de produtos que facilitam a implementação e utilização desta parte da NBR ISO/IEC 29110 nas organizações e exemplos de tais produtos são métodos, cursos, material didático, ferramentas e formulários; organizações ou projetos que implementam e usam os processos e produtos prescritos por esta parte da NBR ISO/IEC 29110. Portanto, a conformidade pode ser reivindicada pelos desenvolvedores de produtos e organizações, com interpretações diferentes, e diferentes métodos de avaliação da conformidade.

Ela pode ser atestada por uma terceira parte. Pode ser encomendada como parte de aquisições e processos contratuais. A VSE que reivindicar conformidade com esta parte da NBR ISO/IEC 29110 deve implementar e utilizar todos os elementos obrigatórios de perfil, como identificados na Seção 7, e as propriedades e requisitos associados descritos nas normas-base, quando aplicável.

A conformidade é alcançada quando demonstrado que: os requisitos obrigatórios para os produtos de ciclo de vida (elementos de informação) foram satisfeitos, usando o conteúdo de produtos de trabalho conformes como evidência; os requisitos obrigatórios para os processos de ciclo de vida foram satisfeitos, usando os objetivos (resultados) e produtos como evidência. A conformidade com esta parte da NBR ISO IEC 29110 implica a conformidade com a NBR ISO/IEC 12207 e a ISO/IEC 15289:2006, de acordo com suas seções de conformidade que permitem a conformidade parcial ou adaptada.

Um produto que reivindicar conformidade com esta parte da NBR ISO/IEC 29110 deve implementar todos os elementos obrigatórios do perfil identificados na Seção 7, e as propriedades e requisitos associados e descritos nas normas-base, quando aplicável. A conformidade é alcançada pela demonstração de que o produto conforme não exclui, modifica ou contraria qualquer um dos elementos obrigatórios do perfil.

A certificação está relacionada com o Perfil Básico para VSE que deve definir um subconjunto de processos e resultados da NBR ISO/IEC 12207 e produtos da ISO/IEC 15289:2006 para a implementação de software e gerenciamento de projetos. As principais razões para incluir a implementação de software e o gerenciamento de projetos são que o negócio principal da VSE é o desenvolvimento de software e seu sucesso financeiro depende da conclusão bem-sucedida do projeto dentro do cronograma e orçamento.

A preparação do Perfil Básico para VSE segue os seguintes passos: o reconhecimento das características da VSE relacionadas a: finanças, recursos, interface com o cliente, processos de negócio internos, aprendizado e crescimento; a identificação das necessidades e competências sugeridas da VSE que derivam dessas características; a especificação dos elementos de Perfil Básico para VSE adequados para responder às necessidades e competências sugeridas da VSE, de acordo com a NBR ISO/IEC 29110-2; a seleção e o vínculo do subconjunto dos elementos de Perfil Básico para VSE que mapeiam para os elementos de processos e resultados da ABNT NBR ISO/IEC 12207 e dos elementos de produtos da ISO/IEC 15289:2006 relacionados com os elementos de Perfil Básico para VSE; e a definição dos Guias de Perfil Básico para VSE: ABNT ISO/IEC TR 29110-5-1-2, Guia de Gestão e Engenharia para a implementação do Perfil Básico para VSE.A figura abaixo ilustra as etapas para preparar o Perfil Básico para VSE.

software5

A interpretação da notação de diagrama é a seguinte: o retângulo representa os elementos da VSE; a elipse representa a norma ou um subconjunto de seus elementos; seta sólida é uma relação rotulada e círculo com seta tracejada é um número da etapa de preparação. Para implementar um Perfil Básico para VSE, um contrato ou acordo com a declaração do trabalho deve ser estabelecido com base nas demandas do cliente e complementado pelas práticas de negócios/convenções e aceito pelo Cliente VSE.

Um projeto de desenvolvimento de software segue o Guia de Gestão e Engenharia para cumprir a declaração do trabalho e gerar os produtos. A VSE pode executar outras atividades de apoio ao projeto. A figura abaixo ilustra o contexto da lógica de implementação para o Perfil Básico para VSE.

software6

A fim de implementar o Perfil Básico para VSE, a VSE pode seguir o ABNT ISO/IEC TR 29110-5-1-2, que é uma coleção de elementos de processo selecionados e estruturados, como, por exemplo: objetivos, atividades, tarefas, papéis e produtos de trabalho, úteis para a implementação do Perfil Básico para VSE. Para a definição dos conceitos, ver o ABNT ISO/IEC TR 29110-5-1-2. As VSE estão sujeitas a uma série de características, necessidades e competências sugeridas que afetam o conteúdo, a natureza e a extensão das suas atividades. O Perfil Básico para VSE contempla um subconjunto de VSE que são descritas a seguir, a partir das características, necessidades e competências sugeridas, classificadas em quatro categorias: finanças e recursos, interface com o cliente, processos de negócios internos e aprendizado e crescimento.

A NBR ISO/IEC 29110-2 – Engenharia de Software – Perfis de ciclo de vida para micro-organizações (VSE) – Parte 2: Estrutura e taxonomia se aplica a micro-organizações (VSE). Os processos de ciclo de vida descritos na NBR ISO/IEC 29110 não têm a intenção de restringir ou desencorajar seu uso em organizações maiores. Entretanto, certas questões contempladas por grandes organizações podem não ser cobertas pela NBRISO/IEC29110. Os processos de ciclo de vida definidos na NBR ISO/IEC 29110 podem ser usados pelas VSE ao adquirir e utilizar, assim como quando criar e fornecer, um sistema de software.

Eles podem ser aplicados a qualquer nível na estrutura de um sistema de software e a qualquer estágio no ciclo de vida. Os processos descritos na NBR ISO/IEC 29110 não têm intenção de impedir ou desencorajar o uso de processos adicionais que as VSE considerem úteis. A NBR ISO/IEC 29110-2 apresenta os principais conceitos para perfis de engenharia de software para as VSE e define os termos comuns ao conjunto de documentos associados aos perfis de VSE. Ela estabelece a lógica por trás da definição e aplicação de perfis. Ela especifica os elementos comuns a todos os perfis padronizados (estrutura, conformidade, avaliação) e introduz a taxonomia (catálogo) dos perfis da NBR ISO/IEC 29110 que se aplica a todos os perfis.

Esta parte da NBR ISO/IEC 29110 apresenta os principais conceitos para perfis de engenharia de software para as VSE e define os termos comuns ao conjunto de documentos associados aos perfis de VSE. Ela estabelece a lógica por trás da definição e aplicação de perfis. Ela especifica os elementos comuns a todos os perfis padronizados (estrutura, conformidade, avaliação) e introduz a taxonomia (catálogo) dos perfis da ABNT NBR ISO/IEC 29110. Esta parte da NBR ISO/IEC 29110 se aplica a todos os perfis, sendo destinada aos autores e revisores de perfis padronizados, autores de outras partes e autores de outros perfis de VSE.

É aceitável que uma implementação incorpore elementos além do que foi definido na especificação do perfil. Entretanto, isto pode causar problemas de interoperabilidade de implementação, e poderia ser acomodado definindo ou usando um perfil mais rico. Se um perfil permitir extensões, cada implementação deve suportar inteiramente todos os elementos requeridos na especificação do perfil exatamente como especificado e as extensões não podem contradizer nem causar a não conformidade dos elementos definidos na especificação do perfil.

Convém que a seção de conformidade de perfis que permitem extensões inclua alguns requisitos adicionais e mais específicos, como os seguintes: extensões não podem redefinir a semântica dos elementos existentes; extensões não podem fazer com que implementações em conformidade com a norma (por exemplo, processos que não usam as extensões) sejam realizadas incorretamente; extensões devem seguir os princípios e orientações da especificação que estendem, isto é, as especificações precisam ser estendidas de um modo padronizado.

Para implementações ou aplicações que contenham extensões, estas devem ser claramente descritas em documentação de apoio e as extensões devem ser assinaladas como tal dentro da implementação/aplicação. Para implementações que contenham extensões, deve haver um modo pelo qual a implementação possa ser dirigida para produzir apenas arquivos conformes (documentos) ou operar de maneira estritamente conforme.



Categorias:Normalização, Qualidade

Tags:, , , , , , , , ,

Deixe uma resposta

%d blogueiros gostam disto: