Norma ISO/IEC 12207 – Processos do Ciclo de Vida do Software

 

Introdução

Atualmente os softwares, a cada dia que passa, recebem maior importância no controle de sistemas. Levanta-se então a bandeira da “Qualidade de software” desenvolvido pela Indústria do software.
Organizações como o ISO (Institute of Organization for Standardization), IEC (International Electrotechnical Commission),  IEEE (Institute of Electrical and Electronics Engineers), PMI (Project Management Institute), SEI (Software Engineering Institute) dentre outros, propõem  modelos e padrões que visão a melhoria no desenvolvimento de software.

ISO/IEC 12207 – Processos do Ciclo de Vida do Software
A norma ISO/IEC 12207 foi criada em 1995 com o objetivo de estabelecer uma estrutura comum para os processos do ciclo de vida de um software (MACHADO, 2006).

Defende que as atividades devem atingir o propósito do processo e para isso deve adotar as seguintes premissas:

  • Que procedimentos e métodos serão usados para a execução das atividades;
  • Que ferramentas e equipamentos suportarão a realização das atividades, de forma a simplificar e automatizar o trabalho;
  • Qual o perfil adequado de quem irá executar as atividades e qual o treinamento requerido nos procedimentos, métodos, ferramentas para que se possam realizar as atividades de forma adequada;
  • Quais as métricas de processo que poderão ser empregadas para que a execução do processo possa ter a qualidade avaliada.

A norma ISO/IEC 12207 estabelece uma arquitetura de alto nível do ciclo de vida de software que é construída a partir de um conjunto de processos e seus inter-relacionamentos. Os processos são descritos tanto em nível de propósito/saídas como em termos de atividades.

Esta norma é dividida em  três diferentes classes de processos, que são:

  • Processos fundamentais;
  • Processo de apoio;
  • Processos organizacionais.

Os processos fundamentais são necessários para que um software seja executado. Eles iniciam o ciclo de vida e comandam outros processos. São eles:

  • Aquisição;
  • Fornecimento;
  • Desenvolvimento;
  • Operação;
  • Manutenção.

Os processos de apoio auxiliam outro processo. Eles são usados para garantir a qualidade, mas não são fundamentais. São eles:

  • Documentação;
  • Aderência de configuração;
  • Garantia da qualidade;
  • Verificação;
  • Validação;
  • Revisão conjunta;
  • Auditoria;
  • Resolução de problema;
  • Usabilidade;
  • Contrato.

Os processos organizacionais auxiliam a organização e gerência geral dos processos e podem ser empregados fora do domínio de projetos e contratos específicos, servindo para toda a organização. São eles:

  • Gerência;
  • Infra-estrutura;
  • Melhoria;
  • Recursos humanos;
  • Gestão de ativos;
  • Gestão de programa de reuso;
  • Engenharia de domínio.

 Fonte: Wikipédia 

EXTREME PROGRAMMING (XP)

Caros bacherelandos de Sistemas de Informações,

O Marialdo, nosso colega, me enviou um artigo interessantíssimo sobre Extreme Programming (XP).

“Extreme Programming (XP) é uma metodologia de desenvolvimento de software, nascida nos Estados Unidos ao final da década de 90. Vem fazendo sucesso em diversos países, por ajudar a criar sistemas de melhor qualidade, que são produzidos em menos tempo e de forma mais econômica que o habitual. Tais objetivos são alcançados através de um pequeno conjunto de valores, princípios e práticas, que diferem substancialmente da forma tradicional de se desenvolver software.”

No link abaixo está disponível uma palestra sobre o assunto (para assistir e para baixar) e uma resenha sobre o libro, para os que querem conhecer melhor XP. 

EXTREME PROGRAMMING (XP)

aproveitem, 
abraços.

Comparação entre Metodologias RUP e XP

Metodologias para o desenvolvimento de software independente de seus processos específicos buscam reduzir riscos e aumentar a qualidade do produto gerado. As metodologias RUP e XP têm esse fim, pois presentam mesmos valores como, envolvimento do cliente, iterações, testes contínuos e flexibilidade. Porém busca-se esses objetivos de forma diferente, através de implementações diferentes.

 

De forma geral o XP se apresenta como uma metodologia a ser utilizada em projetos onde os requisitos são voláteis ou não claros sendo assim muito flexível, porém existe uma limitação de uso em equipes pequenas, pois não dá ênfase à documentação e sim a comunicação oral restringindo sua aplicação em projetos com equipes distribuídas geograficamente. A divisão de atividades (tarefas e papéis) no XP também não é muito  específica, sendo uma desvantagem para a divisão de responsabilidades em projetos grandes.

 

O RUP estrutura o projeto fazendo uma divisão bem definida de atividades (tarefas e papéis) e define uma coleção de artefatos que são usados como produtos de entrada e de saída de processos. Essa estruturação (com auxílio de softwares) do processo permite que o RUP seja utilizado em projetos grandes, e com distribuição geográfica, com um custo (esforço) adicional de gerência do projeto. Esse custo adicional pode não ser justificável em pequenas equipes.

Veja artigo completo.

Creditos:
Programa de Pós Graduação em Informática Aplicada
PUC – Curitiba, PR
Carlos G. Vasco,
Marcelo Henrique Vithoft,
Paulo Roberto C. Estante