• No results found

Computational Intelligence and Evolutionary Algo-

2.5 Particle Swarm Optimisation

2.5.1 Computational Intelligence and Evolutionary Algo-

LAS DISCIPLINAS

DE RUP

CLAUDIA MILENA ACEVEDO HERRERA JÓNATAN ALZATE PALACIO

ASESOR:

ING. JORGE HERNÁN ABAD LONDOÑO

ÁREA DE ÉNFASIS: INGENIERÍA DE SOFTWARE

Las herramientas Open Source o herramientas alternativas de código abierto, son un elemento clave en la participación de los seres humanos en la sociedad de la información, día a día estas herramientas se construyen con la participación conjunta de la comunidad mundial, que se interesa en el tema. Este documento se enfoca en el uso de dichos recursos para la ingeniería de software, dentro del contexto de las disciplinas de RUP.

Basados en los conceptos de RUP y Open Source Initiative, se comienza a realizar una construcción de tres tentativas de suite de herramientas, que se obtienen de realizar una búsqueda exhaustiva y conformar un inventario con las herramientas más populares y mejor califi cadas, que hoy están disponibles para uso de todos.

La propuesta está planteada con base en resultados de una evaluación realizada bajo criterios determinados pero esta sometida a múltiples cambios, debido a la naturaleza del tema.

ABSTRACT

Open Source tools are a key element in the involvement of humans in the information society, day after day these tools are building with the joint participation of the world community that is interested in issue. This document focuses, on the use of these resources for software engineering, within the context of the disciplines of RUP.

Based on the concepts of RUP and Open Source Initiative, is beginning to make a

Artículos de Proyectos de Grado realizados por los estudiantes de Ingeniería de Sistemas - semestres 2008-1, 2008-2 y 2009-1

construction of three attempts suite of tools, which are obtained to conduct an exhaustive search, and build an inventory with the most popular and highly rated, which are available today for use by all. The proposal is raised, based on results of an evaluation conducted under certain criteria, but this subject to multiple changes, due to the nature of the topic.

PALABRAS CLAVE

Disciplinas de RUP, Open source, Suite de Herramientas, Integración, Evaluación de Herra- mientas.

“Open Source Suite Tools that support RUP Discipline”

KEY WORDS

RUP Disciplines, Open Source, Tools Suite, Integration, Tools Evaluation.

INTRODUCCIÓN

La comunidad Open Source a nivel mundial, ofrece una gran cantidad de herramientas informáticas, para todos los niveles y también para todos los gustos en general. Hace parte de la era del conocimiento, donde hay dos formas de verlo, una forma privada y otra publica. Con el crecimiento de la WEB 2.0 hemos llegado a una forma más pública y social de ver la información en la red. Por esta razón, que el conocimiento no es ajeno a esta evolución, ya que cada vez es más compartido y todos somos partícipes de una construcción colectiva, en la que podemos tener un “libre albedrío”, que por supuesto está sometido también a algunas reglas o en este caso, para el software, a algunas licencias y políticas que garantizan algo de control y organización.

Existen múltiples cuestionamientos sobre el uso del software de código abierto, pero gran parte de estas dudas se fueron resolviendo, al encontrarnos

con herramientas que son tanto, o más buenas como las comerciales.

Es muy interesante ver como para cada disciplina de RUP, existen múltiples herramientas, más las que se crean cada día y son enriquecidas con la colaboración, no solo de un desarrollador en particular, sino de muchos desarrolladores a nivel mundial y también muchos usuarios que con sus opiniones favorecen la calidad de las herramientas.

Este artículo, está dirigido a toda la comunidad de desarrolladores, jefes de proyectos, estudiantes, profesores y empresarios que estén interesados en conocer, o en seguir implementando el software Open Source en sus sitios de trabajo cotidiano.

Finalmente, la investigación y la contribución a la misma, es una historia que nunca termina, ya que el conocimiento y las herramientas, cada vez se robustecen más y evolucionan con gran rapidez.

Invitamos a los lectores de este artículo, a contribuir activamente con la iniciativa Open Source, no sólo como usuarios, sino también como desarrolladores y dejar los paradigmas atrás, atreviéndose a usar estas herramientas, que cada vez son más elaboradas y de mejor calidad.

1. IMPORTANCIA Y ESTADO DEL

ARTE DEL TEMA

Comúnmente, las herramientas que apoyan el ciclo de vida del software, son ofrecidas en el mercado con altos costos y en ocasiones son difíciles de obtener y aprender a usar, es por ésto, que existen otras opciones en las que el Software Libre u Open Source ofrece soluciones a cada una de las fases de desarrollo.

El uso de Software Open Source, aplicado al desarrollo de sistemas, ofrece fl exibilidad en cuanto al uso, creación y manipulación de código fuente para acomodarse a las necesidades del desarrollador, ésto con el fi n de que la herramienta,

cumpla con las expectativas de la lógica del negocio.

También se ha encontrado que algunas empresas, han sido reacias a la implantación de software libre para desarrollar sus procesos y manejar uno de los recursos más importantes, como la información; ésto, se debe a la falta de conocimiento que se tiene del mercado, tanto por parte de las empresas proveedoras de los servicios, como por las empresas contratistas de los mismos.

Se presenta entonces, la adquisición de productos caros e innecesarios que generan altos costos de información consultoría y subcontratación.

Finalmente, el uso de estas herramientas, no solo proporciona libertades para los desarrolladores, si no que a su vez, se pueden encontrar mejoras en cuanto a la calidad, aspecto que en ocasiones, no es de claro entendimiento para las organizaciones.

2. RUP Y OPEN SOURCE

El Proceso Unifi cado de Desarrollo Software o simplemente, Proceso Unifi cado, es un marco de desarrollo de software, que se caracteriza por estar dirigido por casos de uso, centrado en la arquitectura y por ser iterativo e incremental. El refi namiento más conocido y documentado del Proceso Unifi cado es el Proceso Unifi cado de Rational o simplemente RUP.

El Proceso Unifi cado no es simplemente un proceso, sino un marco de trabajo extensible que puede ser adaptado a organizaciones o proyectos específi cos. De la misma forma, el Proceso Unifi cado de Rational, también es un marco de trabajo extensible, por lo que muchas veces resulta imposible, decir si un refi namiento particular del proceso ha sido derivado del Proceso Unifi cado o del RUP. Por dicho motivo, los dos nombres suelen utilizarse para referirse a un mismo concepto1.

1 Tomado de http://es.wikipedia.org/wiki/RUP, simples defi niciones de RUP.

Ahora El software de código abierto u Open Source es una alternativa que unida a las disciplinas de RUP conforma un proyecto que puede hacer de la ingeniería de software un proceso en el que se busca hacer que los programas evolucionen y se nutran con la contribución de los usuarios que manipulan el código, y se disminuyan considerablemente los costos de los proyectos, es un modelo recursivo de trabajo , que invita tanto a desarrolladores como a otros participantes a hacer uso de la iniciativa que plantearemos más adelante.

La idea que late detrás del Código Abierto (open source) es sencilla: cuando los programadores en internet pueden leer, modifi car y redistribuir el código fuente de un programa, éste evoluciona, se desarrolla y mejora. Los usuarios lo adaptan a sus necesidades, corrigen sus errores. Y esto puede ocurrir a tal velocidad que el que está acostumbrado al ritmo de desarrollo de los programas comerciales no lo puede concebir2.

3. OBTENCIÓN Y METODOLOGÍA

DEL INVENTARIO DE

HERRAMIENTAS

Durante el desarrollo de esta investigación, encontramos direcciones electrónicas que como Sourceforge, Tigris, Open Source, Softonic, entre otras que se dedican exclusivamente a la iniciativa open source y a sus contribuciones, hay páginas web de proyectos específi cos en las cuales esta disponible todo el código fuente de las herramientas que hacen parte del inventario que construimos en nuestro trabajo.

Se obtuvo mucha información y se podría realizar un gestor de contenidos con este tema en sí ya que es de gran importancia y se suma a la era de la información libre.

2 Información sobre Open Source tomada de la página http:// www.altavoz.net/prontus_altavoz/antialone.html?page=http:// w w w.altavoz.net /prontus _ altavoz /site/ar tic /20 0 6 03 0 4/ pags/20060304151415.html

Artículos de Proyectos de Grado realizados por los estudiantes de Ingeniería de Sistemas - semestres 2008-1, 2008-2 y 2009-1

Algunas de las herramientas que se obtuvieron fueron las siguientes3:

DISCIPLINA DE RUP HERRAMIENTA Modelado del Negocio INTALIO (Basada en • Eclipse) Requerimientos OSRMT • DRES • Eclipse XML based • SRS Análisis y Diseño Argo UML • Star UML • UMLet • Mono UML • Implementación Eclipse IDE • Netbeans • Jitsu •

Despliegue • Apache Ant Portage • Maven • DISCIPLINA DE RUP HERRAMIENTA Gestión de Proyectos Gantt PV • Gantt Project • DotProject • AgileTrack • ToDoList • Clocking IT •

FVE Project Manager • Open Workbench • Xplanner • Trac • NetOffi ce •

Ambiente • Althova Authentic

3 Más información en el Documento del Proyecto “Suite de Herramientas Open Source que Apoyan las Disciplinas de RUP”.

4. EVALUACIÓN DE

HERRAMIENTAS Y