UNIVERSIDAD DE CASTILLA-LA MANCHA ... - Grupo ARCO

UNIVERSIDAD DE CASTILLA-LA MANCHA ... - Grupo ARCO UNIVERSIDAD DE CASTILLA-LA MANCHA ... - Grupo ARCO

arco.esi.uclm.es
from arco.esi.uclm.es More from this publisher
10.05.2015 Views

38 CAPÍTULO 4. MÉTODO DE TRABAJO Y HERRAMIENTAS Figura 4.1: Desarrollo Incremental Los requisitos del sistema estaban claros desde el inicio, por lo que se pudo diseñar la arquitectura del sistema casi completamente desde las primeras etapas del proyecto. Dado que se pretende construir un sistema cómodo para el usuario, la interacción con el mismo era de suma importancia para obtener realimentación sobre el correcto desarrollo del proyecto. Estas razones nos llevaron a elegir una metodología de prototipado incremental, ya que nos permitía tener prototipos funcionales de los distintos componentes desde las primeras fases para, una vez acabados, ir ensamblándolos y para montar el sistema final. Además, la funcionalidad del núcleo principal puede conseguirse en una fase temprana del desarrollo. En esta metodología, se identifican a grandes rasgos los servicios que ofrecerá el sistema. Después, se definen incrementos, cada uno de los cuales proporcionará una porción de la funcionalidad del sistema. Una vez identificados los incrementos, los requisitos del primero de ellos se describen más detalladamente, y se desarrolla. Después, se integra con el sistema y el cliente puede empezar a usarlo. Es entonces cuando se empiezan a concretar los requisitos del siguiente incremento. Este proceso tiene varias ventajas: [Som04] Los clientes no tienen que esperar a que el sistema esté completo para poder empezar a utilizarlo. Los incrementos iniciales pueden usarse como prototipo, y obtener experiencia para la hora de definir los requisitos de los incrementos posteriores. Existe bajo riesgo de fallo total del proyecto, aunque se pueden encontrar problemas en algunos incrementos.

4.2. HERRAMIENTAS 39 Los incrementos más importantes se entregan al principio, por lo que son, inevitablemente, los que se someten a más pruebas. 4.2. Herramientas 4.2.1. Lenguajes de Programación Python - Lenguaje de programación interpretado, multiparadigma y orientado a objetos, creado por Guido van Roosum. Se escogió por su flexibilidad y la facilidad que ofrece para crear prototipos rápidamente. C++ - Lenguaje compilado y orientado a objetos, creado por Bjarne Stroustrup. Se utilizó para las tareas que necesitaban ser ejecutadas con mayor eficiencia, bien por restricciones de tiempo o de recursos. bash - Uno de los múltiples intérpretes de comandos de los sistemas UNIX. Se crearon algunos scripts bash para automatizar tareas en los nodos y en la preparación de imágenes. 4.2.2. Desarrollo ZeroC Ice - Internet Communications Engine (Ice) [HS09] es un middleware de comunicaciones orientado a objetos, de propósito general y que permite construir aplicaciones distribuidas con poco esfuerzo, desarrollada por la empresa ZeroC. 1 De los servicios ofrecidos por Ice, se han utilizado en especial: IceGrid IcePatch2 IceBox libparted - GNU Parted es un paquete industrial para crear, destruir, redimensionar, comprobar y copiar particiones y los sistemas de ficheros que contienen. Mediante esta librería se pudo obtener la información sobre los discos duros. [FSFb] 1 http://www.zeroc.com/ice.html

4.2. HERRAMIENTAS 39<br />

Los incrementos más importantes se entregan al principio, por lo que son, inevitablemente,<br />

los que se someten a más pruebas.<br />

4.2. Herramientas<br />

4.2.1. Lenguajes de Programación<br />

Python - Lenguaje de programación interpretado, multiparadigma y orientado a objetos,<br />

creado por Guido van Roosum. Se escogió por su flexibilidad y la facilidad<br />

que ofrece para crear prototipos rápidamente.<br />

C++ - Lenguaje compilado y orientado a objetos, creado por Bjarne Stroustrup. Se<br />

utilizó para las tareas que necesitaban ser ejecutadas con mayor eficiencia, bien<br />

por restricciones de tiempo o de recursos.<br />

bash - Uno de los múltiples intérpretes de comandos de los sistemas UNIX. Se crearon<br />

algunos scripts bash para automatizar tareas en los nodos y en la preparación de<br />

imágenes.<br />

4.2.2. Desarrollo<br />

ZeroC Ice - Internet Communications Engine (Ice) [HS09] es un middleware de comunicaciones<br />

orientado a objetos, de propósito general y que permite construir<br />

aplicaciones distribuidas con poco esfuerzo, desarrollada por la empresa ZeroC. 1<br />

De los servicios ofrecidos por Ice, se han utilizado en especial:<br />

IceGrid<br />

IcePatch2<br />

IceBox<br />

libparted - GNU Parted es un paquete industrial para crear, destruir, redimensionar,<br />

comprobar y copiar particiones y los sistemas de ficheros que contienen. Mediante<br />

esta librería se pudo obtener la información sobre los discos duros. [FSFb]<br />

1 http://www.zeroc.com/ice.html

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!