domingo, 29 de maio de 2011

Continuação.....

Caros leitores, a continuação deste trabalho encontra-se no meu site:



sábado, 11 de dezembro de 2010

NBR ISO/IEC 12207:1998 - Tecnologia da Informação

NBR ISO/IEC 12207:1998 - Tecnologia da Informação - Processos de Ciclo de Vida de Software. (6 - Processos de apoio - 6.2 Processo de Gerência de Configuração)‏.

Esta norma define que Software é uma parte fundamental da tecnologia de informação e de sistemas convencionais, tais como sistemas de transporte, militares, da área médica e financeiros. Tem havido uma proliferação de normas, procedimentos, métodos, ferramentas e ambientes de desenvolvimento e de gerência de software. Esta proliferação tem criado dificuldades na gerência e engenharia de software, principalmente na integração de produtos e serviços. A disciplina de software necessita migrar desta proliferação para uma estrutura comum que possa ser usada por profissionais de software para “falar a mesma língua” na criação e gerência de software. Esta Norma provê tal estrutura comum.

A NBR ISO/IEC 12207 foi preparada pela CE-21:101.03 - Processos de Ciclo de Vida de Software, do CB-21 - Comitê Brasileiro de Processamento de Dados.

Seu objetivo é ser a norma que define todas as tarefas necessárias para o desenvolvimento e manutenção de software, agrupando as atividade que podem ser executadas durante o ciclo de vida de software em cinco processos fundamentais, oito processo de apoio e quatro processos organizacionais. Cada um dos processo de ciclo de vida é dividido em conjuntos de atividades e cada atividade é então dividida em um conjunto de tarefas.

  • Processos de apoio

Para esta norma a gerência de configuração de software é definida como um processo de apoio. Os processos de apoio de ciclo de vida (seção 6 da norma), constituem um conjunto de oito processos, cada processo de apoio auxilia um outro processo como uma parte integrante, com um propósito distinto, e contribui para o sucesso e qualidade do projeto de software.

Nos iremos tratar do processo de gerência de configuração (subseção 6.2 da norma), este processo define as atividades de gerência de configuração.

A norma NBR ISO/IEC 12207:1998 define:

O processo de gerência de configuração é um processo de aplicação de procedimentos administrativos e técnicos, por todo o ciclo de vida de software, destinado a: identificar e definir os itens de software em um sistema, e estabelecer suas linhas básicas (baseline); controlar as modificações e liberações dos itens; registrar e apresentar a situação dos itens e dos pedidos de modificação; garantir a completeza, a consistência e a correção dos itens; e controlar o armazenamento, a manipulação e a distribuição dos itens.

  • Lista de atividades

Este processo define uma lista de atividades que devem ser realizadas:

  1. Implementação do processo – a principal tarefa neste atividade desenvolver um plano de gerência de configuração. Este plano deve descrever as atividades da gerência de configuração, procedimentos e cronograma para executar estas atividades, quais serão os responsáveis pela execução destas atividades e seu relacionamento com os responsáveis de outras áreas, o plano deve ser documentado e implementado.

  2. Identificação da configuração – deve ser definido qual será a sistemática para identificação dos itens de software e suas versões que serão controladas, sendo que para cada item de software e suas versões devemos identificar a documentação que estabelece a linha de base, as referências de versão e outros detalhes de identificação.

  3. Controle da configuração – Nesta atividade deve ser identificado o registro dos pedidos de alterações, analises e avaliações das alterações, aprovação ou rejeição do pedido, implementação, verificação e liberação do item de software modificado. Devemos produzir registros para auditorias, de forma que cada alteração tenha o registro da razão e da autorização rastreados, Devem ser realizados controles de auditorias de todos os acesso aos itens controlados que trata de funções críticas de proteção e segurança.

  4. Relato da situação da configuração – Devem ser realizados registros de gerenciamento e providenciado relatórios da situação que mostrem o histórico dos itens de software controlados, estes relatórios devem incluir a linha de base. Relatórios de situação devem incluir o número de alterações em um projeto, as últimas versões dos itens, identificadores de liberação, a quantidade de liberações e a comparação entre elas deve estar presente.

  5. Avaliação da configuração – Esta avaliação deve garantir a completeza funcional dos itens de configuração de software em relação aos seus requisitos e a completeza física dos itens de software, isto é, se o projeto e o código refletem uma descrição técnica atualizada.

  6. gerência de liberação e distribuição – A liberação e a distribuição de produtos de software devem ser documentadas e formalmente controladas. Cópias principais do código e da documentação devem ser mantidas durante a vida do produto de software. O código e a documentação que contenham funções criticas de proteção e segurança devem ser manipuladas, armazenadas, empacotadas e distinguidas de acordo com as políticas definidas pelas organizações envolvidas.

Percebemos o quanto de tarefas, atividades e processo são necessários para que tenhamos uma gerência de configuração de software implantada e esta norma brasileira vem justamente nos orientar no que deve ser feito.

sábado, 4 de setembro de 2010

Auditoria de Configuração

Esta atividade tem por objetivo assegurar se o produto esta de acordo com os requisitos pré-estabelecidos e que correspondam as informações de configuração de produto. As auditorias devem ser conduzidas de acordo com processos bem definidos e documentados, estes processos possuem vários papéis e responsabilidades de auditores. Deve ser planejada cuidadosamente a auditoria.

A norma recomenda dois tipos de avaliação que podem ser feitas: a funcional e a física. A avaliação funcional compreende de um exame formal que vai verificar se um item de configuração possui o desempenho especificado e atende as características funcionais no item de configuração do produto que foi implementado como documentado e acordado. A avaliação física corresponde em verificar se o item de configuração possui as características físicas especificadas e deve ser realizada no fim de cada fase do ciclo de vida do produto.

Contabilização da Situação de Configuração

Esta atividade compreende o registros e os relatórios, é a uma ação permanente durante todo ciclo de vida do produto, o conjunto de atividades de configuração irão registrar uma grande quantidade de situações e correções salvas, tornando um grande histórico de lições aprendidas de desenvolvimento.

Durante a realização das atividades de gerência de configuração houve a criação de registros e esta atividade tem como meta manter todos os envolvidos no projeto informados sobre os controles de alterações ocorridos nos itens de configuração. Os registros vão permitir a visibilidade e a rastreabilidade garantindo que a gestão de configuração seja eficiente, nestes registros teremos informações de quem fez as modificações de um Item de configuração, quem está modificando, quando ocorreu a ultima modificação, quais itens serão afetados por uma alteração, porque a alteração foi aprovada. Os membros da organização devem possuir níveis de acesso para garantir que somente pessoas autorizadas realizem alterações e que alterações não aprovadas ou que possam comprometer a integridade do produto não sejam executadas, além da segurança é necessário que as pessoas que podem ter acesso a tais informações possam ter acesso rápido. A norma também recomenda que sejam utilizados programas de computador, banco de dados e soluções de contingências que permitam a recuperação e reestabelecimento dos trabalhos caso ocorra algum imprevisto.

Esta atividade gera vários tipos de relatórios que vão ajudar a gestão de configuração. Os relatórios que a norma recomenda devem incluir:
  • Lista de informações de configuração de produto;
  • Lista de itens de configuração e suas configurações básicas;
  • Detalhes da situação da revisão atual e histórico de alterações;
  • Relatórios da situação das alterações e concessões
  • Detalhes da situação do produto e números para rastreabilidade.

sábado, 24 de julho de 2010

Controle de Alterações

O Controle de Alterações tem por objetivo controlar e registrar as mudanças realizadas nos itens de configuração ao longo do ciclo de vida de desenvolvimento.

A Norma NBR ISO 10007: 2005 orienta que o processo de controle das alterações seja documentado e siga as orientações abaixo:
  • Descrever, justificar e registrar as solicitações para alteração e possíveis alterações depois de aprovadas;
  • Categorização da alteração em termos de complexidade, recursos e programação;
  • Uma avaliação das consequências da alteração;
  • Detalhes de como a alteração deve ser disposta;
  • Detalhes de como a alteração deve ser implementada e verificada.
As possíveis alterações podem ser pedidas por quaisquer dos interessados, sendo documentado, avaliado pela pessoa que possui autoridade para julgar a mudança, observando todas as características e possíveis impactos no ciclo de vida do projeto.

A norma identifica alguns itens que devem serem incluídos nas alterações:
  • Itens de configuração e informação pertinente a ser alterado, incluindo detalhes de seus títulos e situação da revisão atual;
  • Descrição da alteração proposta;
  • Detalhes de outros itens de configuração ou informação de configuração que possam ser afetadas pela alteração;
  • A parte interessada que elaborou a proposta e a data em que foi elaborada;
  • A razão para a alteração;
  • A categorização da alteração.
Cada análise de pedido de alteração é identificado, todos os passos precisam ser documentados e avaliados tendo por base a solicitação de alteração, os responsáveis pelo projeto deverão analisar o pedido de alteração e fornecer um parecer. Este parecer será novamente avaliado pela equipe responsável pelo controle de alterações e o responsável pelo item de configuração. Após estas analises haverá um parecer final que irá permitir ou não a alteração.

A norma estipula que a avaliação leve em consideração a complexidade do produto e a categoria da alteração proposta, incluindo:
  • Os méritos técnicos da alteração proposta;
  • Os riscos associados à alteração;
  • O impacto potencial sobre o contrato, cronograma e custo.
O resultado da análise deve ser público e todos os interessados deverão ser notificados, independente de ser ou não aprovada a solicitação. Caso seja aprovado o responsável pela alteração deverá implementá-la, encaminhando para nova análise.

Para implementação o responsável por fazê-la precisa obter a última versão do item de configuração a ser alterado, realizar as mudanças de acordo com a alteração aprovada, submeter o item alterado para homologação e registrar para posteriormente permitir uma fácil rastreabilidade.

domingo, 25 de abril de 2010

Identificação de Configuração

A Identificação de Configuração convém iniciar com a escolha da estrutura do produto e escolha dos itens de configuração que serão utilizados, criados ou usados para todas as tarefas ou fases do ciclo de vida do produto. A identificação deve refletir a estrutura do produto envolvendo a identificação da estrutura e os tipos de componentes, tornando-os únicos e acessíveis, atribuindo a cada um dos componentes um nome, uma identificação de versão e uma identificação de configuração.

Os itens de configuração devem obedecer aos critérios descritos no plano de gestão de configuração. É parte do gerenciamento de configuração garantir que serão selecionados estes itens de configuração para um sistema e registrados suas características físicas e funcionais na documentação técnica. 

A norma orienta que convém considerar os seguinte critérios:

Requisitos estatuários e regulamentares;
Criticidade em termos de riscos e segurança;
Tecnologia, projeto ou desenvolvimento novo ou modificado;
Interfaces com outros itens de configuração;
Condições de aquisição;
Suporte e serviços.

A próxima etapa para a identificação de configuração é a informação de configuração de produto, este deve incluir informações do produto e informações operacionais. Contendo requisitos, especificações, programas utilizados, modelos, documentos e qualquer tipo de material ou produto que seja utilizado para o desenvolvimento do projeto.

Os itens de configuração devem ser guardados em local seguro, enumerados de forma única e sequencial, para garantir o controle e a rastreabilidade de todos os artefatos. 

Sendo qualquer artefato criado como parte da definição, manutenção ou uso de um processo, o interessante para os itens de configuração selecionados é a ajuda da otimização da capacidade de controlar e analisar o produto em todo seu ciclo de desenvolvimento. 

O sistema de armazenamento deve permitir a rápida localização de uma determinada versão em qualquer estado e tempo dentro do ciclo de vida do produto.

Na última parte da identificação de configuração é a configuração básica, esta é a informação de produto aprovado e representa a definição do produto. Esta configuração básica integrará o produto para definir as atividades que se seguem e irá servir como entrada para estas, as configurações básicas e suas possíveis alterações aprovadas formaram a configuração básica atual.

domingo, 18 de abril de 2010

Norma NBR ISO 10007: 2005 – Sistema de Gestão da Qualidade

NBR ISO 10007: 2005 – Sistema de Gestão da Qualidade – Diretrizes para gestão de configuração. Seu propósito é aumentar o entendimento do assunto, promover o uso da gestão de configuração e auxiliar organizações a aplicar gestão de configuração para melhorar seu desempenho, tem como objeto atender aos requisitos de identificação e rastreabilidade especificados na ABNT NBR ISO 9001.

Esta norma define a Gestão de Configuração como um conjunto de atividades de apoio ao desenvolvimento possibilitando que as mudanças que forem surgindo com o desenvolvimento do produto sejam absorvidas pelo projeto de maneira controlada, mantendo a estabilidade na evolução do produto. Com esta definição esta norma utiliza-se desta prática para em um sistema de gestão de qualidade fornecer as diretrizes para a gestão de configuração.

A norma traz a seguinte definição de Gerência de Configuração:

A gestão de configuração é uma atividade gerencial que fornece orientações técnicas e administrativas para o ciclo de vida de um produto, seus itens de configuração e informações de configuração de produto concernentes. A gestão de configuração documenta a configuração do produto. Proporciona meios para a identificação e rastreabilidade, identificação da situação de atendimento dos requisitos físicos e funcionais e o acesso à informação acurada em todas as fases do ciclo de vida. (ABNT NBR ISO 10007:2005).

A norma fornece uma orientação sobre a utilização de Gestão de Configuração nas empresas, definindo sua aplicação em todo ciclo de vida do produto, dando suporte e orientando desde a concepção até a entrega do produto.

A norma orienta a atribuição de responsabilidades e autoridades , em seguida descreve o processo de Gestão de Configuração, através das atividades de planejamento, identificação, controle, contabilização e auditorias.

As atribuições de responsabilidades e autoridades devem ser identificados e estabelecidos pela empresa levando em consideração a implementação e verificação do processo de gerência de configuração. A norma recomenda que seja levada em conta complexidade e natureza do projeto, necessidades existentes em diferentes pontos do ciclo de vida e outras prioridades direta ou indiretamente relacionadas com esse processo.

O gerente de configuração deve disponibilizar o ambiente e a infra-estrutura do Gerenciamento de Configuração para a equipe de desenvolvimento do produto. Sua função é oferecer suporte à atividade de desenvolvimento de produtos para que os desenvolvedores, analistas de requisitos e testes tenham espaços de trabalho condizentes com suas funções para criar e testar seus trabalhos, permitindo que todos os produtos gerados fiquem disponíveis.

O gerente deve fazer a verificação das atividades de implementação e controle de mudanças. O responsável pela projeto antes de autorizar uma mudança deve estudar se a alteração proposta é necessária e adequada à documentação do projeto, qual o impacto que esta alteração provocará e se for implementado irá satisfazer a deficiência do produto.

A norma também define que a gerência de configuração pode ser representada uma pessoa ou um grupo de pessoas, dependendo das necessidades do projeto e politica da empresa.

O processo de gerência de configuração conforme a norma recomenda:

A gerência de configuração deve possuir um Plano de Configuração onde descreve as atividades de requisitos do cliente, o ambiente de desenvolvimento, as características e procedimentos que serão realizados para conduzir o projeto durante todo o ciclo de vida.

O planejamento deve ter como saída o Plano de Gestão de Configuração que contém as atividades de configuração, as ferramentas, os procedimentos utilizados e o que será controlado durante o ciclo de vida do produto.

A norma especifica que a gestão de configuração irá cuidar de como os artefatos obtidos devem ser nomeados, marcados e numerados, como e onde a documentação será armazenada, um controle de versões, o controle de mudanças e os procedimentos necessários cada aprovação , procedimentos gerais adotados pela empresa, as responsabilidades e autoridades referentes à gestão de configuração. Dependendo da complexidade, tanto da empresa como do projeto, o plano pode ser simples e objetivo, complexo, ou ainda pode ser parte de outros planos.

A Norma NBR ISO 10007: 2005 especifica a seguinte estrutura de um plano de gestão de configuração.
  1. Generalidades
  2. Introdução
    • Seção introdutória fornecendo informações gerais contendo os seguintes tópicos:
      • a. Propósito e Escopo
      • b. Descrição do Produto e dos Itens de Configuração
      • c. Cronograma
      • d. Descrição da Ferramentas de Gestão de Configuração
      • e. Documentos Relacionados
  3. Políticas
    • Descrição das políticas de gestão de configuração acordadas com os stakeholders.
  4. Identificação de Configuração
    • Métodos e convenções em geral para identificação.
  5. Controle de Alterações
    • Métodos e procedimentos relacionados a mudanças.
  6. Contabilização da Situação de Configuração
  7. Auditoria de Configuração