37. Procesos de desarrollo de software (Por Priscilla Garbanzo Tencio. Setiembre 2005)

Septiembre 2005 - Informes

Debe ser Afiliado e ingresar a su cuenta para descargar el informe.

Resumen ejecutivo

Dentro de la Ingeniería del software se propone el uso de una metodología que defina y especifique el proceso de desarrollo de un producto de software, esto con el propósito de contar con un marco de trabajo claramente definido y estandarizado, que apoye obtener productos que garanticen los requerimientos de calidad, que cumplan con las expectativas del cliente, se desarrollen en el tiempo estimado y los costos presupuestados, entre otras cosas.

Actualmente se cuenta con una buena cantidad de propuestas que definen este marco de trabajo, escuchamos hablar de metodologías tradicionales como Rational Unified Process (RUP), Microsoft Solutions Framework (MSF) y Métrica 3.0 o metodologías ágiles como Extreme Programming, Scrum, Crystal y Open Source Software Development, pero las experiencias indican que no existe una receta mágica y no se trata de solo seleccionar una de las propuestas y seguirla.

Al elegir una metodología se debe realizar una evaluación de las propuestas existentes buscando que sea flexible y adaptable a las necesidades y naturaleza de la organización y sus proyectos.

El propósito de este informe es ofrecer una herramienta inicial que permita evaluar propuestas de marcos de trabajo o procesos para el desarrollo de software (metodologías). Para ello se va a definir claramente qué es un proceso de desarrollo de software, qué elementos lo componen y los diferentes modelos de proceso existentes. Para ejemplificar y evaluar la definición de proceso estudiaremos las metodologías Rational Unified Process y Métrica 3.0, ya que estas son metodologías robustas, muy populares y con amplia trayectoria.

Estructura del informe

Este trabajo se encuentra organizado en los siguientes capítulos:

Capítulo 1: Introducción al proceso de desarrollo de software

Se presenta el contexto de la Ingeniería del software y el papel que desempeña el proceso de desarrollo de software. Se define el término proceso de desarrollo de software, y se describen los principales modelos, además se ofrece una categorización de metodologías de desarrollo.

Capítulo 2: Rational Unified Process

En este capítulo se realiza un resumen de la metodología de desarrollo de software Rational Unified Process (RUP), propuesta por Rational Software Corporation. El resumen incluye la evolución de la metodología, características principales y estructura del proceso (ciclo de vida, roles, actividades, artefactos).

Capítulo 3: Métrica 3.0

En este capítulo se presenta un resumen de la metodología de desarrollo de software Métrica 3.0 promovida por el Consejo Superior de Informática, órgano colegiado encargado de la elaboración y desarrollo de la política informática del Gobierno Español. El resumen incluye las características principales y la estructura del proceso (procesos principales, roles, actividades, artefactos).

Capítulo 4: Reflexiones

Este capítulo brinda diversas reflexiones referentes al proceso de desarrollo de software y las metodologías RUP y Métrica 3.0.

De la autora

Priscilla Garbanzo es ingeniera en Computación graduada del Instituto Tecnológico de Costa Rica. Obtuvo su maestría en Ingeniería del Software de la Universidad Politécnica de Valencia, España y actualmente es estudiante del programa de doctorado Aplicaciones de la Informática de la Universidad de Alicante en convenio con la Universidad Latina de Costa Rica. Ha realizado diversas labores relacionadas con las disciplinas modelado del negocio, requerimientos de software, análisis y diseño orientado a objetos, implementación N-capas. Actualmente es profesora y consultora de CENFOTEC donde imparte cursos para el programa de Bachillerato en Ingeniería del Software, junto a capacitaciones y mentorías a las empresas del sector público y privado costarricense, colaborando con la actualización del sector en materia de Ingeniería del software. Su investigación se ha orientado a definir procesos de desarrollo de software basados en las necesidades de las organizaciones y de los productos de software, apoyados por estándares y guías.

Agradecimientos

Un especial agradecimiento al Sr. Ignacio Trejos por confiar nuevamente en mi labor.

A Carlos Pravia – de Internexo – y Patricio Letelier – de la Universidad Politécnica de Valencia – por su invaluable contribución en las charlas y experimentos conjuntos que me brindan experiencia y filosofía sobre el desarrollo de software.

A las empresas costarricenses – Epson de Costa Rica, Corporación de Compañías Agroindustriales (CCA), Tribunal Supremo de Justicia, Poder Judicial, Caja de ANDE, Ministerio de Educación, BAC de San José, Acueductos y Alcantarillados, Municipalidad de Puntarenas, Municipalidad de Alajuela, SONDA/DataDec, RECOPE, Fundación Omar Dengo, Colegio Panamericano, Clínica Dr. Carlos Durán, CENFOTEC – y las personas que de una u otra forma me han permitido participar en su camino y me han ayudado en mi crecimiento profesional.

Revisión editorial

Este informe fue revisado por Federico Rodríguez, David Guido e Ignacio Trejos y fue editado por este último.