Método para la adquisición de software en pequeñas organizaciones

Software acquisition method for small organizations

GABY LORENA-GUERRERO

Ingeniera de sistemas
Grupo Investigación y Desarrollo en Ingeniería de Software- IDIS,
Universidad del Cauca
gguerrero@unicauca.edu.co
Popayán, Colombia

LEYDI ROCIO-ERAZO

Ingeniera de sistemas
Grupo Investigación y Desarrollo en Ingeniería de Software- IDIS,
Universidad del Cauca
leydierazo@unicauca.edu.co
Popayán, Colombia

FRANCISCO J. PINO

Doctor en Ingeniería de Sistemas
Profesor Titular, Departamento de Sistemas, Universidad del Cauca
Grupo Investigación y Desarrollo en Ingeniería de Software- IDIS,
Universidad del Cauca
fjpino@unicauca.edu
Popayán, Colombia

Fecha de recibido: 18/10/2013
Fecha de aceptado: 27/02/2014


RESUMEN

Actualmente, las organizaciones han incrementado su interés en la adquisición de productos software. Debido a ello este proceso debe estar bien definido, deber ser específico y debe permitir a estas organizaciones poder apropiarse del mismo, para lograr satisfacer sus necesidades y expectativas relacionadas con la adquisición. En este sentido, este artículo expone un método para la adquisición de productos software ajustado a las características propias de las pequeñas organizaciones, el cual está basado en las prácticas más comunes presentadas por referentes internacionales relacionados con la adquisición. Además, se presenta de forma detallada el flujo de actividades, tareas, roles y productos de trabajo que deben ser seguidas para adquirir un producto software que satisfaga las necesidades y expectativas de la organización. De la aplicación inicial del método propuesto en una pequeña organización vinculada al sector de economía solidaria se ha observado que éste es útil y práctico para conducir la adquisición.

Palabras clave:Adquisición de software, Proceso de adquisición, Pequeña organización.

ABSTRACT

Currently organizations have increased their interest in the acquisition activities of software products. As a result, this process should be well defined and specific in order to allow to these organizations appropriate of them seeking satisfy their needs and expectations related to the acquisition. In this sense, this article exposes a method for software products acquisition adjusted to the specific characteristics of small organizations, which is based on common practices presented by international referents related to the acquisition process. Furthermore, the flow of activities, tasks, roles and work products that must be followed to acquire a product that satisfies the needs and expectations of the organization is presented in detail. From the initial application of the proposed method in a small organization linked to the cooperative sector has been observed that this is useful and practical to conduct the activity of software acquisition.

Keywords:Software acquisition, Acquisition process, Small organization.

UIS Ingenierías, enero - junio 2014; Facultad de Ingenierías Fisicomecánicas, UIS


1. INTRODUCCIÓN

La participación de las micro, pequeña y medianas empresas en la transformación del aparato productivo económico en Colombia es fundamental al representar el 96.4% de los establecimientos a nivel nacional (Ministerio de Comercio, Industria, y Turismo 2009). Estas pequeñas organizaciones, a su vez, en muchos casos desconocen los elementos que son necesarios considerar y que se requieren para tomar una buena decisión al momento de adquirir productos software que se ajusten a sus necesidades y características propias (L, Elissondo., 2004) causando que los productos software que se adquieren en ocasiones no respondan a las necesidades o no se ajustan a los requerimientos de las pequeñas organizaciones (L, Elissondo., 2004) esto puede suceder debido a que no se le reconoce la importancia de la adecuada gestión de la adquisición, la buena definición de los requerimientos y el cuidado en la selección y posterior contratación del proveedor (HURTADO, 2000) entre otros. Por lo tanto para este tipo de organizaciones sería importante llevar a cabo un buen proceso de adquisición de productos software ya que un mayor control en el proceso de selección y adquisición aumenta la posibilidad de éxito en la adquisición del producto adecuado (L, Elissondo., 2004)

La adquisición es el proceso de obtener un sistema, producto o servicio software (ISO/IEC 12207,2007). Este es un proceso necesario e indispensable en las actividades que realiza una organización. Ahora más que antes, las organizaciones han incrementado su interés en las actividades de adquisición de productos software (Weber, K., et al., 2007). Es por eso que este proceso debe estar bien definido y permitir la satisfacción de las necesidades y expectativas expresadas por las organizaciones.

Por otra parte, se encuentran establecidas normas internacionales, guías y recomendaciones tales como CMMI-ACQ (SEI, CMMI for Acquisition, Version 1.3, 2010) ISO/IEC 12207 (ISO, ISO/IEC 12207, 2007) Guía de los Fundamentos para la Dirección de Proyectos (Guía del PMBok) (PMI, 2008) Recomendaciones para la adquisición de software (IEEE, 1998) entre otras, las cuáles proponen prácticas sólidas que contribuyen en el proceso de adquisición de software, sin embargo, estas normas están enfocadas hacia grandes empresas. La aplicación de las prácticas de estas normas son complejas para las pequeñas empresas y éstas no disponen de recursos necesarios para su aplicación (ISO/IEC, 2007) Esto provoca que las organizaciones no cuenten con procesos adecuados para la adquisición de productos software, lo cual puede deberse a que es un tema nuevo para las empresas, lo que conlleva a un desconocimiento de las prácticas que se deben seguir para la adquisición y por ello no son utilizadas en estas empresas.

Considerando lo expuesto anteriormente, este artículo presenta un método de adquisición de software que se ajusta a las necesidades de las pequeñas organizaciones y que permite guiar a estas organizaciones en el proceso de adquisición de productos software. Este método está basado en las prácticas propuestas por algunas normas, modelos, guías y recomendaciones internacionales relacionadas con la adquisición de software.

Este artículo se organiza de la siguiente manera: la sección 2 presenta los trabajos relacionados a la temática tratada y el método empleado para desarrollar la propuesta para adquisición de software. En la sección 3 se muestra el desarrollo y especificación del método. Un caso de aplicación en un entorno real del método de adquisición propuesto es descrito en la sección 4. Finalmente las conclusiones y trabajos futuros se exponen en la sección 5.

2. ANTECEDENTES

En esta sección inicialmente se presenta los trabajos relacionados con adquisición de software y finalmente se describe el método de trabajo utilizado para la creación de la propuesta.

2.1 Trabajos relacionados

Con respecto al proceso de adquisición de software se encontraron algunos referentes internacionales, entre los cuales cabe destacar: (i) el modelo CMMIACQ (SEI, CMMI for Acquisition, Version 1.3, 2010), que provee una guía para la aplicación de las mejores prácticas de CMMI en organizaciones adquirientes; (ii) la norma técnica ISO/IEC 12207 (ISO, ISO/IEC 12207 - Systems and software engineering - Software life cycle processes, 2007), que presenta los procesos del ciclo de vida que se pueden emplear para adquirir, suministrar, desarrollar, operar y mantener productos software, cubre además el control y la mejora de estos procesos; (iii) la guía del PMBok (PMI, 2008) que propone un conjunto de áreas de conocimiento para la gestión de proyectos, una de estas áreas describe los procesos involucrados en la compra o adquisición de productos, servicios o resultados para el proyecto; y (iv) las recomendaciones prácticas para la adquisición de software de la IEEE (IEEE, 1998) que proporcionan una guía para la gestión y ejecución de actividades de adquisición de productos software, para aquellas organizaciones que adquieren software de proveedores. A pesar de que estas normas internacionales, guías y recomendaciones definen buenas prácticas que deberían ser implementadas durante el proceso de adquisición de productos software, dichas prácticas están centradas en el “qué” debe hacerse y no en el “cómo” debe llevarse a cabo este proceso (no se especifican detalles de su implementación). Esto conlleva que las pequeñas organizaciones no se apropien de estos referentes para guiar su proceso de adquisición (Laporte, C., A. April, and A. Renault,. 2007) Además, es importante resaltar que estos referentes internacionales han sido creados considerando las necesidades de grandes organizaciones (Pino, F., .et al., 2008) Sin embargo, estos referentes fueron considerados y sus prácticas adaptadas e integradas para la definición del método presentado en este artículo.

Además con respecto al área investigada se encontraron algunos estudios relacionados importantes, entre los cuales cabe destacar:

  • En (Gallagher, B.P., 1999) se presenta una guía para la gestión de riesgos y proporciona una visión general para identificar, analizar, planificar, seguir, controlar y comunicar las funciones de vital importancia para la implementación exitosa de la gestión de riesgos en un proceso de adquisición.
  • En (Aaby, 2006) se propone un proceso simple de adquisición de software, el cual es diseñado para que pueda ser utilizado por diferentes usuarios. Hace énfasis en la importancia de la recolección de requisitos y el análisis de riesgos.
  • En (Tardy, 1991) se enumeran y se describen trece estrategias para la adquisición de software, definiendo y explicando el mecanismo de adquisición, quienes deben intervenir y bajo qué
  • En (Mosko, M., et al.,) se describe un metamodelo para la adquisición de software COTS (Commercial-Off-The-Shelf), llamado SAMM, este modelo se enfoca en el proceso de adquisición de software e incorpora las mejores prácticas de la industria del software.
  • En (Cohen, et al., 2005) se presenta un manual que reúne y brinda orientación acerca de la planeación de la adquisición y la estrategia de adquisición de software.
  • En (Goldenson, and Fisher, 2000) se describe una encuesta realizada por el Software Engineering Institute (SEI) a expertos en gestión de adquisiciones.
  • De acuerdo con el estado actual del conocimiento descrito en esta sección, se puede observar que existen diferentes formas de abordar el tema de adquisición de productos software tales como: meta-modelos, técnicas, estrategias, prácticas, y actividades. Sin embargo, no se han encontrado propuestas en esta área que presenten una forma detallada para la realización de la adquisición de productos software, el cual incorpore: (i) un proceso de adquisición que describa actividades, tareas, roles y productos de trabajo para el contexto de las pequeñas organizaciones, el cual se ajuste a las necesidades y características propias de este tipo de empresas; (ii) una herramienta de soporte tecnológico que apoye la ejecución del proceso de adquisición definido. También es importante resaltar que si bien en las diferentes propuestas relacionadas con la adquisición de software se establece qué es lo que se debe hacer no se especifica cómo hacerlo, lo que lo hace complejo y dificulta que este proceso sea implementado por las pequeñas organizaciones. Además las propuestas encontradas no se enfocan en guiar explícitamente a las pequeñas organizaciones en la implementación de todos los aspectos relacionados con el proceso de adquisición. De acuerdo con lo antes planteado, el método de adquisición que se presenta en este artículo pretende guiar a las pequeñas organizaciones en el proceso de adquisición de productos software. Este método está fundamentado en prácticas propuestas por los referentes internacionales mencionados y que se ajusta a las características de las pequeñas organizaciones.

    2.2 Método utilizado para la construcción de la propuesta

    Para el desarrollo del método de adquisición propuesto, se llevaron a cabo las siguientes actividades:

  • Comparar los referentes internacionales. Para llevar a cabo esta actividad se siguió el método de comparación propuesto en (Pino, F., et al., 2009). Esta actividad involucró las siguientes tareas del método de comparación: (i) analizar los modelos, (ii) diseñar la comparación, (iii) realizar la comparación, (iv) presentar los resultados de la comparación.
  • Construir el método para la adquisición de software. Esta actividad involucró la tarea (v) analizar los resultados obtenidos del método de comparación propuesto en (Pino, F., et al.,2009). En esta tarea se realizaron los siguientes pasos: (i) construcción de los diagramas de actividades genéricos para la adquisición de software de cada uno de los referentes internacionales, (ii) análisis de los diagramas de actividades creados, (iii) identificación de las actividades genéricas a incluir en el método, (iv) especificación del método propuesto para la adquisición.
  • 3. DESARROLLANDO EL MÉTODO DE ADQUISICIÓN DE SOFTWARE

    3.1 Comparación de los referentes internacionales

    Inicialmente se realizó el análisis de los referentes internacionales para establecer la manera en que cada uno lleva a cabo el proceso de adquisición. De igual manera se hizo un análisis de sus estructuras, identificando entidades de proceso que serían utilizadas en la comparación. Posteriormente se realizó la comparación entre las entidades de proceso identificadas, desde ISO/ IEC 12207, la guía del PMBok y las recomendaciones de la IEEE hacia CMMI-ACQ. Dependiendo del grado de relación existente entre las entidades de proceso se asignó un valor de acuerdo a la siguiente escala numérica: 0 (no relacionada), 1 (parcialmente relacionada) y 2 (fuertemente relacionada). A manera de ejemplo y con el fin de mostrar detalladamente la comparación llevada a cabo se presenta la Tabla 1 que describe el grado de relación entre el área de proceso de gestión de acuerdo (CMMI-ACQ) y el proceso de Adquisición (ISO/IEC 12207).

    3.1 Comparación de los referentes internacionales

    Inicialmente se elaboraron los diagramas de actividades con el fin de identificar cómo se realiza la adquisición de productos software, de acuerdo a la descripción presentada en cada referente. Posteriormente se analizaron los diagramas realizados con el fin de tener una vista completa de cómo es la adquisición de software en los diferentes referentes, con el fin de determinar las carencias y fortalezas de cada uno de ellos. Luego se traslaparon las actividades de los diagramas para identificar las actividades comunes entre los referentes. Las comparaciones realizadas permitieron determinar qué entidades de proceso debían ser consideradas en la creación del método, de esta manera se garantiza que este método está alineado con lo propuesto en la mayoría de referentes. Además la comparación permitió visualizar e identificar qué entidades de proceso son tenidas en cuenta por unos referentes y descartadas por otros, pero que serían adecuadas considerarlas debido a la importancia que presentan en el proceso de adquisición. Las actividades genéricas identificadas desde los referentes a incluir en el método son las siguientes: Planear, Anunciar, Seleccionar proveedor, Contratar, Monitorear, Aceptar, Cerrar y Seguir. La actividad Seguir solo es propuesta por las recomendaciones prácticas para la adquisición de la IEEE, pero debido a la utilidad que presenta en el proceso de adquisición fue adecuado considerarla en el método propuesto. Es importante resaltar que todos los referentes plantean hacer la adquisición de un producto software con un proveedor, pero en el caso de las pequeñas organizaciones éstas podrían pensar en adquirirlo no mediante la compra sino mediante la búsqueda de un producto libre disponible en internet. Para ello se tuvieron en cuenta actividades como: Buscar, Analizar y Seleccionar producto, debido a que cuando una organización desea obtener un producto software no necesariamente lo adquiere de un proveedor sino que puede adquirirlo de forma gratis buscando en internet. Es importante resaltar que las actividades genéricas consideradas en el método son especificadas mediante la unión y adaptación de distintas prácticas descritas por los diferentes referentes, para lo cual fue útil la comparación realizada inicialmente.

    Una vista general del grado de relación de los propósitos entre ISO/IEC 12207, la guía del PMBok y las recomendaciones de la IEEE hacia CMMI-ACQ se presenta en la Tabla 2.

    4. DESCRIPCIÓN DEL MÉTODO DE ADQUISICIÓN DE SOFTWARE

    Por definición un método hace referencia a una articulación de un conjunto coherente, consistente y completo de prácticas con un propósito específico que cumple las necesidades de los interesados bajo condiciones específicas (Pardo, et al., 2011), (Oktaba, H.J., et al., 2012) A continuación el método propuesto se describe mediante una descripción de su propósito, objetivos, diagrama de actividades, actividades, tareas, roles y productos de trabajo. Debido a restricciones de espacio en este artículo se presentan la descripción del método desde una perspectiva general.

    4.1 Propósito

    El propósito del método para la adquisición de software en pequeñas organizaciones es permitir a éstas obtener un producto software que se ajuste a sus necesidades, además esté método está basado en prácticas propuestas por los referentes internacionales relacionados con el proceso de adquisición.


    4.2 Objetivo

    Proponer un método de adquisición de software que guíe a las pequeñas organizaciones en la obtención de un producto software, identificando las mejores prácticas de adquisición de software adecuadas para las pequeñas organizaciones, a partir de las normas internacionales, guías y recomendaciones.

    4.3 Diagrama de actividades

    La Figura 1 muestra el diagrama de actividades del método propuesto.

    4.4 Descripción del método

    Actividades y tareas: las actividades que integran el método son: Planear, Anunciar, Seleccionar proveedor, Contratar, Monitorear, Buscar, Analizar, Seleccionar producto software, Aceptar, Cerrar y Seguir. Cada una de estas actividades contiene un conjunto de tareas específicas que guían el proceso de adquisición.

    Las actividades y tareas descritas a continuación hacen parte de la adquisición de un producto software mediante un proveedor:


  • Planear: en esta actividad se determina la necesidad de adquisición por parte de la organización, se establecen los requisitos del producto software a adquirir, se identifican los proveedores potenciales, se definen y documentan cuáles serían los criterios de aceptación. Adicionalmente, se prepara y ejecuta el plan de adquisición. Las tareas definidas para la actividad Planear son:
  • Establecer la necesidad de adquisición de un producto software.
  • Definir y analizar requisitos del producto software a adquirir.
  • Determinar el presupuesto disponible para realizar la Adquisición.
  • Determinar tipo de contrato que se planea utilizar.
  • Identificar proveedores potenciales.
  • Definir y documentar criterios de aceptación.
  • Definir criterios de selección de proveedores.
  • Preparar y ejecutar un plan de adquisición

  • Anunciar: en esta actividad se da a conocer la necesidad de adquisición de la organización a los posibles proveedores ya identificados. Paralelo a ello se documenta el proceso que se lleva a cabo para realizar el anuncio. La tarea definida para la actividad Anunciar es:
  • Comunicar el paquete de solicitud del producto software a los posibles proveedores identificados.

  • Seleccionar proveedor: en esta actividad se escoge el proveedor más adecuado para llevar a cabo el proceso de adquisición, de acuerdo con los criterios de selección y la propuesta preliminar presentada. Las tareas definidas para la actividad Seleccionar proveedor son:
  • Recibir propuestas de proveedores.
  • Evaluar propuestas de proveedores aplicando criterios de selección de proveedores.
  • Seleccionar proveedor.
  • Negociar un contrato con el proveedor.

  • Contratar: en esta actividad se establece un acuerdo con un proveedor, para la adquisición del producto software. De igual manera se establece el control de cambios durante el proceso de adquisición. Las tareas definidas para la actividad Contratar son:
  • Preparar y Adjudicar el contrato.
  • Controlar los cambios en el contrato.

  • Monitorear: en esta actividad se monitorea el progreso de los proveedores para asegurar que se cumplen todas las metas y se aprueban los entregables del producto software. Además se realiza una revisión estructurada del avance del proveedor para cumplir con el producto, dentro del costo y en el plazo acordado, tomando el contrato como referencia. Las tareas definidas para la actividad Monitorear son:
  • Monitorear los procesos del proveedor.
  • Revisar y verificar el desempeño del proveedor.
  • Mantener el entendimiento mutuo con el proveedor.
  • Reportar los hallazgos

  • Aceptar: en esta actividad se recibe el producto software y se evalúa aplicando los criterios de aceptación, mediante la realización de una serie de pruebas para verificar que cumple con los requisitos establecidos en el acuerdo. De igual manera se informa sobre las no conformidades encontradas y finalmente una vez sean resueltas las no conformidades se acepta el producto software. Las tareas definidas para la actividad Aceptar son:
  • Recibir producto software.
  • Evaluar y probar el producto software aplicando criterios de aceptación.
  • Reportar no conformidades.
  • Aceptar el producto software.

  • Cerrar: en esta actividad se finaliza el proceso de adquisición. Las tareas definidas para la actividad Cerrar son:
  • Verificar que todo el trabajo y los entregables son aceptados.
  • Administrar las facturas.

  • Cerrar: en esta actividad se finaliza el proceso de adquisición. Las tareas definidas para la actividad Cerrar son:
  • Verificar que todo el trabajo y los entregables son aceptados.
  • Administrar las facturas.

  • Seguir: en esta actividad se realiza un monitoreo al producto software luego de haber sido puesto en funcionamiento en la organización, evaluando el desempeño del producto software y del proveedor, y la satisfacción del usuario. Las tareas definidas para la actividad Seguir son:
  • Utilización del producto software.
  • Evaluar satisfacción del usuario
  • Evaluar desempeño del producto.

  • Las actividades y tareas descritas a continuación hacen parte de la búsqueda de un producto software libre disponible en internet:


  • Buscar: en esta actividad se averigua si hay un producto software libre en internet que se ajuste a los requisitos que tiene la organización. Las tareas definidas para la actividad Buscar son:
  • Realizar una búsqueda de productos software libres en internet.
  • Descargar productos software.

  • Analizar: en esta actividad se revisa cada uno de los productos software descargados en la actividad Buscar y se determina cuáles de ellos cumplen con los criterios de aceptación. Las tareas definidas para la actividad Analizar son:
  • Hacer una revisión detallada de las características de cada producto software.
  • Escoger productos software que cumplan con los criterios de aceptación.

  • Seleccionar producto software: en esta actividad se obtiene el producto software que satisfaga de una mejor manera las necesidades establecidas por la organización, realizando pruebas y analizando los resultados obtenidos para seleccionar el producto software más indicado. Las tareas definidas para la actividad Seleccionar producto software son:
  • Preparar casos de prueba, datos, procedimientos y el entorno.
  • Realizar el análisis de los resultados obtenidos.
  • Seleccionar un producto software.

  • Roles: en cada actividad se hace necesario asignar personas encargadas de llevar a cabo las tareas, es por ello que se definieron los siguientes roles en términos de sus conocimientos y habilidades esperadas:

  • Administrativo (AD): Conocimiento en los procesos de la organización. Capacidad en la gestión de las actividades de la empresa. Facultad para controlar y aprobar inversiones de la organización.

  • Encargado de la adquisición (EA):Conocimiento de las expectativas y necesidades de adquisición. Gestión del proceso de adquisición. Comunicación con los interesados y proveedores del producto software.

  • Técnico software (TS): Conocimiento en tecnologías de desarrollo de software. Participación en procesos de calidad de producto software. Verificación de componentes programados. Análisis, diseño y documentación del desarrollo y mantenimiento de productos software. Interpretación de especificaciones de diseño.

  • Encargado de contratación (EC):Conocimiento en contratación, aspectos legales y jurídicos. Comunicación con los interesados en la adquisición y el proveedor del producto software.

  • Productos de trabajo: Conocimiento en los procesos de la organización. Capacidad en la gestión de las actividades de la empresa. Facultad para controlar y aprobar inversiones de la organización.

  • Encargado de la adquisición (EA):son los resultados útiles de cada una de las actividades, entre ellos se tienen: Plan de adquisición, Paquete de solicitud, Comunicado de la adquisición, Documento con el proveedor seleccionado, Contrato de adquisición, Documento de control de cambios, Evaluación del desempeño del proveedor, Revisión y verificación del producto software, Documento de aceptación, Producto software, Soportes del pago, Notificación de terminación del contrato (acta de cierre), Realimentación al proveedor.

  • Para realizar la descripción detallada de los elementos constitutivos del método se tuvo en cuenta la plantilla presentada en el proyecto COMPETISOFT (COMPETISOFT and CYTED, COMPETISOFT , 2006) a manera de ejemplo se presenta en la Tabla 3 la actividad Contratar.

    En la Figura 2 se presenta el diagrama de la actividad Contratar, sus respectivas tareas y pasos. Este diagrama es modelado utilizando estereotipos de la notación SPEM.

    5. EVALUACIÓN DEL MÉTODO PROPUESTO

    El método para la adquisición de software ha sido aplicado en una pequeña organización, además también ha sido evaluado mediante el método de Focus group ( Kontio, J, et al, 2004). La aplicación del método se describe mediante un reporte de experiencias teniendo en cuenta las indicaciones para tal fin recomendados por (Pino, F., et al, 2011). En este sentido, esta sección describe inicialmente el reporte de experiencias en términos de: (i) Contexto de aplicación, (ii) Descripción de la organización participante, (iii) Informe y análisis del trabajo realizado en la empresa y (iv) Discusión. Finalmente se muestra el Focus Group del método de adquisición el cual siguió los lineamientos definidos en (Mendoza, M., et al, 2013).

    5.1 Reporte de experiencia

    El método para la adquisición de software está siendo aplicado en una pequeña organización dedicada al sector de economía solidaria. Con el fin de mantener la privacidad de la empresa, esta se denominará EES. La empresa participante EES deseaba adquirir un producto software para sistematizar el proceso de gestión de la información de cada uno de sus asociados. Este proceso se ha llevado a cabo aproximadamente durante dos meses con reuniones periódicas.

    El método para la adquisición de software está siendo aplicado en una pequeña organización dedicada al sector de economía solidaria. Con el fin de mantener la privacidad de la empresa, esta se denominará EES. La empresa participante EES deseaba adquirir un producto software para sistematizar el proceso de gestión de la información de cada uno de sus asociados. Este proceso se ha llevado a cabo aproximadamente durante dos meses con reuniones periódicas.

    5.2 Características de la organización

    Las características de la empresa participante EES en la aplicación del método para la adquisición de software se describen a continuación:

    EES nace jurídicamente en el año 1984, actualmente cuenta con 354 asociados hábiles, y el número de personas que trabaja en esta empresa es 5 (gerente, contadora, encargada de cartera, secretaria y comunicador social).

    Su objetivo general es buscar el mejoramiento de las condiciones económicas, sociales, culturales, recreativas, educativas y de seguridad social de todos los Asociados, mediante la práctica de la solidaridad, el compañerismo y el desarrollo de actividades empresariales.

    Cuentan con una estructura organizacional encabezada por la Asamblea General y dirigida por la Administración, quién a su vez es vigilada por los entes de Control Interno y apoyada por Comités especiales y el grupo de personal.

    5.3 Informe y análisis del trabajo realizado en la empresa

    En esta subsección, se presenta una descripción general del uso del método para la adquisición de software en la empresa participante ESS.

    Inicialmente se presentó el método para la adquisición de software propuesto al gerente de la organización, explicando de forma detallada el objetivo, las actividades a desarrollar y los resultados esperados con la utilización del método. Posteriormente, se realizó un acercamiento a la organización para conocer a fondo el quehacer a la cual se dedica ésta.

    En reuniones establecidas con los miembros de la organización, se procedió a realizar las tareas estipuladas para la actividad Planear, la cual es la actividad que hasta el momento ha sido llevada a cabo y sobre la cual se tratará en este reporte de experiencias. Como resultado de las reuniones realizadas se desarrollaron las siguientes tareas:

  • Establecer la necesidad de adquisición de la organización, donde se logró determinar que la empresa participante EES buscaba un producto software para sistematizar el proceso de gestión de la información de cada uno de sus asociados.
  • Definir y analizar requisitos del producto software a adquirir, se realizó una especificación de los requerimientos funcionales y no funcionales, identificando y priorizando requisitos claves que influyen en la implementación del producto software. El análisis de cada requisito se llevó a cabo teniendo en cuenta las características que cada uno de estos debe cumplir: necesario, conciso, completo, consistente, no ambiguo, verificable.
  • Determinar el presupuesto para el producto software que se deseaba adquirir, se estableció el presupuesto disponible por parte de la organización.
  • Determinar tipo de contrato que se planea utilizar, se revisaron los tipos de contratos existentes teniendo en cuenta ventajas y desventajas en su utilización y se eligió el que mejor se adapta a la organización.
  • Identificar proveedores potenciales, la organización disponía de algunos proveedores identificados previamente, sin embargo se buscó información sobre otros proveedores que pudieran implementar el producto deseado, estos proveedores conformaron una lista con información de contacto.
  • Definir y documentar criterios de aceptación, la organización estableció los criterios de aceptación que consideran relevantes algunos de ellos son: el producto software debe cumplir con todos los requisitos definidos, el proveedor debe entregar la documentación necesaria para la utilización del producto software, la entrega debe hacerse de acuerdo a los tiempos establecidos, el producto software debe cumplir satisfactoriamente con los casos de pruebas realizados, además el proveedor debe cumplir satisfactoriamente los términos y condiciones estipulados en el contrato
  • Definir criterios de selección de proveedores, la organización estableció algunos criterios para seleccionar proveedores entre ellos se encuentran: precio, la medida en que la propuesta del proveedor responde al enunciado del trabajo a la adquisición, las habilidades y conocimientos técnicos con los que cuenta el proveedor, las garantías qué propone el proveedor para garantizar el producto final, desempeño pasado de los proveedores y la forma en que el proveedor maneja los derechos de propiedad del producto (licencias, garantías).
  • Preparar un plan de adquisición, se recopiló toda la documentación realizada en las tareas anteriores, con el fin de obtener un documento formal que guie las demás actividades del método propuesto.
  • Como resultado de la actividad Planear llevada a cabo, se dejó definido el paquete de solicitud que consta de la necesidad de adquisición y los requisitos establecidos del producto software, y el plan de adquisición que contiene toda la documentación obtenida como resultado de la ejecución de esta actividad.

    Discusión

    La empresa que participó y utilizó el método para la adquisición de software descrito en este artículo, expresó su opinión de que este método: (i) es una ayuda importante y práctica para hacer reflexionar a las pequeñas organizaciones acerca de su proceso de adquisición de productos software, y (ii) el método ha sido útil en la obtención del producto deseado y además es una buena forma de mejorar este proceso dentro de la organización.

    Mediante la aplicación del método se logro observar que en la actividad Planear existen algunas tareas que es necesario que sean revisadas nuevamente con el proveedor seleccionado, como lo es: la tarea Definir y analizar requisitos del producto software a adquirir. Esta tarea es compleja para aquellas pequeñas organizaciones, como la empresa participante EES, que no cuenta con conocimientos suficientes en procesos de recolección de requisitos, motivo por el cual se dificulta garantizar que los requisitos especificados en esta tarea sean los adecuados.

    A partir de esta experiencia en un entorno real, se puede destacar que el uso del método para la adquisición de productos software fue enriquecedor, tanto para la organización adquiriente como para el grupo de investigación que definió el método, permitiendo a los investigadores ver la utilidad de las actividades propuestas y refinar las mismas con este primer acercamiento para la adquisición en un entorno real.

    5.4 Focus Group

    Para la evaluación del método de adquisición de software en pequeñas organizaciones se siguió el método de focus group. La estructura procedimental utilizada para llevar a cabo el focus group fue la presentada en (Mendoza, M.,et al, 2013) que es orientada a la aplicación de focus group dentro de la ingeniería de software y mediante la cual se llevaron a cabo las siguientes fases: (i) Planeamiento de la investigación, (ii) Definición de grupos de discusión, (iii) Conducción de la sesión de debate, y (iv) Análisis de la información y reporte de resultados. La sesión de debate fue llevada a cabo durante 2 horas con el grupo de discusión compuesto por 4 personas expertas en el tema pertenecientes tanto a la academia (1) como a la industria (3). En esta sesión se debatió sobre las actividades, tareas, productos de trabajo, roles, diagramas, plantillas, facilidad de aplicación y necesidad del método, y para ello se hizo uso del planeamiento, materiales, encuestas y demás artefactos diseñados para tal fin. Los resultados de la sesión de debate evidenciaron aspectos positivos del método propuesto, entre otros: el método propuesto es necesario para las pequeñas organizaciones, además de considerar que éste es una buena ayuda para disminuir la incertidumbre y evitar el fracaso a la hora de adquirir un producto software. Además, se considera que el método propuesto es fácil para ser aplicado en la pequeña empresa, ya que las actividades, tareas, roles y productos de trabajo del mismo son apropiados para ser utilizados por este tipo de organizaciones. De la misma manera, el focus group reflejó que los diagramas presentados describen de forma clara el método y las actividades propuestas, además las plantillas utilizadas para la descripción de las actividades del método son claras y concisas. Una versión extendida de esta evaluación se puede encontrar en (Erazo, L., et al, 2013).

    Además, para dar soporte a la ejecución del método propuesto también se construyó una herramienta software que permite guiar paso a paso a las personas involucradas durante la adquisición de un producto software y gestionar la documentación generada durante éste proceso. La evaluación de esta herramienta software también fue realizada por personas expertas. Para esta evaluación se utilizaron las siguientes métricas de funcionalidad establecidas en la norma ISO/IEC 9126- 2 (ISO/IEC, 2013): (i) métricas de idoneidad funcional, para medir la aparición de funciones u operaciones insatisfechas de un sistema durante las pruebas y la utilización por parte del usuario, y (ii) métricas de precisión, para medir la frecuencia con la que los usuarios encuentran cálculos erróneos o resultados inexactos. La información para determinar la medida de cada una de estas métricas se recolectó mediante una encuesta diligenciado por los expertos que utilizaron la herramienta. Finalmente la evaluación de la herramienta software refleja que ésta si apoya y es apropiado para la ejecución del método propuesto, es importante destacar que las historias de usuario especificadas necesarias para la ejecución del método, fueron implementadas en su totalidad y según la métrica de idoneidad se tiene que la completitud de la implementación funcional está en un cien por ciento.

    6. CONCLUSIONES Y TRABAJOS FUTUROS

    En este trabajo se describió la forma en que fue diseñado y planteado el método para la adquisición de software para pequeñas organizaciones, el cual fue aplicado a la empresa participante EES. Los diferentes miembros de la empresa quienes participaron durante la aplicación del método de adquisición propuesto expresaron que éste era útil y práctico para intentar adquirir un producto software que se ajuste a las necesidades, presupuesto y en general al contexto de la organización.

    A partir del trabajo realizado se pudo comprobar la importancia que tiene este proceso en una organización, ya que cuando se lleva a cabo un proceso de adquisición apropiado las probabilidades de obtener el producto software adecuado son mayores. Así mismo se documentó la forma como se obtuvieron las actividades del método a partir de las comparaciones realizadas entre los referentes relacionados con la temática.

    El trabajo desarrollado sienta las bases para futuras investigaciones en el área de adquisición, así como la posibilidad de adaptar el método a cualquier tipo de empresa independiente del sector productivo al que pertenezca, ya que son los stakeholders potenciales de la documentación generada y presentada en este artículo.

    Como trabajo futuro se pretende que las otras actividades del método sean seguidas por la EES con el fin de adquirir el producto software adecuado. Además se realizarán otros casos de estudio del método propuesto al interior de nuevas pequeñas organizaciones. También se tiene planeado implementar una herramienta software que soporte la ejecución del método, con el fin facilitar la aplicación del mismo por las pequeñas organizaciones.

    7. AGRADECIMIENTOS

    Los autores agradecen a la Universidad del Cauca por el apoyo durante la realización de este trabajo.

    8. REFERENCIAS

    Ministerio de Comercio. Industria. y Turismo, D.d.M., Reporte de Mipymes No. 3, 2009.

    L, Elissondo., Auditoría de la adquisición de software, 2004, Universidad Nacional del Centro de la Provincia de Buenos Aires: Buenos Aires.

    HURTADO Gasca, G.P., Metodología de Gestión de Riesgos para la Adquisición de Software en Pequeños Entornos - MEGRIAD, in Departamento de Lenguajes y Sistemas informáticos e ingeniería del Software2000: Madrid, Espana. p. 191.

    ISO, ISO/IEC 12207 - Systems and software engineering - Software life cycle processes, 2007, International Organization for Standardization: Geneva. p. 122.

    WEBER, K., et al., MPS Model-Based Software Acquisition Process Improvement in Brazil, in QUATIC 2007 - Sixth International Conference on the Quality of Information and Communications2007: Lisboa, Portugal. p. 110–119.

    PMI, Guía de los Fundamentos de la Dirección de Proyectos (Guía del PMBOK), 2008, Project Management Institute. p. 406.

    IEEE, IEEE Recommended Practice for Software Acquisition, 1998, The Institute of Electrical and Electronics Engineers: New York. p. 49.

    ISO/IEC, Software Engineering - Lifecycle Profiles for Very Small Enterprises (VSE) - Part 1: Overview, 2007. p. 24.

    LAPORTE, C., A. April, and A. Renault, Applying International Software Engineering Standards in Very Small Enterprises. CrossTalk The Journal of Defense Software Engineering, 2007. 20(2): p. 29-30.

    PINO, F., F. Garcia, and M. Piatini, Software process improvement in small and medium software enterprises: a systematic review. Software Qual J, 2008.

    GALLAGHER, B.P., Gestión de Riesgos en Adquisición de Software - área clave del Proceso (KPA) version 1.02, 1999, Software Engineering Institute: Pittsburgh. p. 103.

    Aaby, A.A., A Simple Software Acquisition Process, 2006. p. 7.

    TARDY, J.E., Strategies for Software Acquisition, in A MAP For Software Acquisition 1991.

    MOSKO, M., et al., COTS Software Acquisition Meta- Model. p. 6.

    COHEN, Julie., A.L., LEVINE, Linda NOVAK William, PLACE, Patrick., RAY Williams., WOODY, Carol., Software Acquisition Planning Guidelines, 2005, Software Engineering Institute: Pittsburgh. p. 62.

    GOLDENSON, D.r. and FISHER, M.j Improving the Acquisition of Software Intensive Systems, 2000, Software Engineering Intitute. p. 54.

    PINO, F., et al., , Harmonizing maturity levels from CMMI-DEV and ISO/IEC 15504. Journal of software maintenance and evolution: Research and practice, 2009.

    PARDO, Cesar et al., An ontology for the harmonization of multiple standards and models. Elsevier, 2011: p. 59.

    OKTABA, H.J., MORALES, M.e. and M. Dávila, KUALI-BEH: Software Project Common Concepts Version 1.1, 2012.

    COMPETISOFT and CYTED, COMPETISOFT - Mejora de Procesos para Fomentar la Competitividad de la Pequeña y Mediana Industria del Software de Iberoamérica. 2006.

    PINO, F., et al., A software maintenance methodology for small organizations: Agile MANTEMA. JOURNAL OF SOFTWAREMAINTENANCE AND EVOLUTION: RESEARCH AND PRACTICE, 2011.