Capítulo V. Pliego de condiciones
Capítulo X. Xxxxxx de condiciones
1. Condiciones Generales
El conjunto de condiciones generales que se deben cumplir en el proyecto a desarrollar se pueden dividir en tres grandes grupos.
1.1 Condiciones legales y administrativas
Para que el proyecto, brevemente explicado en el capítulo I, pueda llevarse a cabo y se pueda implementar de forma exitosa deben intervenir en el mismo una serie de entidades y organismos relacionadas entre sí a través de una serie de acuerdos que hagan que los requisitos que necesita el proyecto puedan ser saciados de forma óptima.
A continuación, en la siguiente ilustración se muestra las relaciones entre las distintas entidades explicadas anteriormente.
DESARROLLO
FINANCIACIÓN
COLABORACIÓN
Ilustración 80. Bloques administrativos del proyecto
Como se puede apreciar en la anterior ilustración, existen seis entidades fundamentalmente divididas en tres grandes grupos:
- Desarrollo del proyecto. En este grupo se abarca la empresa Xxxxxx y la organización AICIA que serán los encargados de proporcionar el equipo de trabajo desde el jefe de
proyecto y personal contratado del mismo (Xxxxxx) hasta el personal encargado del desarrollo técnico (AICIA). Se considerará dentro del proyecto como el dueño de la propiedad intelectual. Es decir, todo el desarrollo realizado por dicho personal será propiedad de ellos mismos.
- Financiación del proyecto. Se abarca todo lo relacionado con el equipo técnico y material necesario para la implementación del mismo. Son los encargados de ofrecer la plataforma RedBox, los terminales necesarios para el desarrollo y la financiación económica del proyecto. Se encuentra el grupo Xxxxxxx de desarrollo de proyectos para la investigación y Vodafone como empresa participativa en todos los proyectos de este grupo de trabajo.
- Colaboración. También ha sido necesaria la colaboración de entidades como la Universidad xx Xxxxxxx o el Departamento de Ingeniería de Telemática facilitando las instalaciones necesarias para el desarrollo del proyecto así como otras labores de carácter técnico como puede ser la publicación de una IP pública para el servidor.
Los acuerdos y contratos entre las diferentes entidades se romperán cuando se finalice el plazo del proyecto.
1.2 Condiciones facultativas
Este apartado intenta abarcar las relaciones entre el director facultativo y el contratista.
En el modelo anterior, debido a que la empresa encargada de desarrollar el proyecto es Xxxxxx y AICIA, estas dos empresas serán las llamadas “contratas”.
El director facultativo es el representante de la propiedad y es el que se ha encargado de solicitar la elaboración del proyecto. En el modelo anterior se tratará de la plataforma Xxxxxxx, considerándose como aquella asociación a la cual se le realizará el proyecto.
A través de una serie de acuerdos y contratos y ofreciendo por parte de Xxxxxx una memoria descriptiva del desarrollo del proyecto, ambas entidades se comprometen a cumplir una serie de plazos y cometidos que regularmente se deberá comprobar.
Por parte de Xxxxxx, deberá cumplir con los objetivos propuestos así como el plazo marcado. Es decir, se propondrá una planificación temporal por objetivos y dichos objetivos deberán cumplirse.
Respecto a Xxxxxxx, se compromete a ofrecer los recursos solicitados y adjudicados para el proyecto en cuestión. En el caso del proyecto que se abarca, consistirá en el uso de la plataforma RedBox de Vodafone y los terminales de accesos a los mismos.
Durante la ejecución del mismo, tanto Xxxxxx como Xxxxxxx se han comprometido a reuniones de seguimiento que confirman el adecuado uso de los recursos suministrados por las entidades financiadoras de material.
1.3 Condiciones económicas
Para el desarrollo del proyecto se han de cumplir una serie de condiciones económicas entre las diferentes entidades.
Por parte xx Xxxxxxx, esta entidad se compromete a una pequeña subvención económica para el pago del personal de AICIA que participen en el proyecto. A su vez, Xxxxxx, como empresa
encargada de desarrollar el proyecto será la encargada de proporcionar el resto del equipo del proyecto por lo que repercutirá en las condiciones económicas del mismo. Proporciona tanto al jefe de proyecto como a empleados encargados de determinadas labores que desembocará en el uso de un determinado capital adjudicado al proyecto.
2. Prescripciones técnicas particulares
2.1 Especificaciones de materiales y equipos
A continuación se pretende hacer una descripción general de todas las especificaciones técnicas necesarias para implementar el proyecto a desarrollar.
Como se puede apreciar en la ilustración 3 (Véase Capítulo I), el servidor deberá ser necesario de cumplir los siguientes requisitos:
- Servidor.
- Terminales.
- Entorno de desarrollo.
- Plataforma de mensajería.
2.1.1 Servidor
El servidor, a su vez, deberá cumplir con las siguientes especificaciones técnicas:
Servidor web
Tanto para las aplicaciones a programar para trabajar con RedBox así como para la implementación del portal donde se disponga de un generador de códigos bidimensionales y visualización de estadísticas será necesario disponer de un servidor web capaz de soportar JAVA y JSP ya que RedBox de Vodafone facilita una API disponible desde JAVA o desde VisualBasic. En el caso que se abarca, la solución adoptada será implementar JAVA por lo que se requerirá un servidor que pueda soportarlo.
Servidor de vídeo
Para la distribución de vídeo bajo demanda será necesario poder disponer de un servidor de vídeostreaming capaz de abastecer las necesidades de los usuarios. Dicho servidor será independiente del servidor web.
Base de datos
Para el almacenamiento de las estadísticas generadas por RedBox será necesaria la implementación de una base de datos capaz de interactuar con el servidor web para la recogida de las estadísticas.
Seguridad
Al ser un servidor con acceso a internet, se tendrá que disponer de las aplicaciones necesarias para implementar un servidor seguro evitando su vulnerabilidad hacia el exterior.
Acceso al exterior
Se habla de un servidor que deberá dar servicio a usuarios a través de internet. Por tanto, será necesario publicar la dirección IP del servidor para dar acceso al servidor. Es en este caso cuando intervienen entidades como la Universidad xx Xxxxxxx o el Departamento de Ingeniería de Sistemas y Automática.
El servidor consta de las siguientes características:
- Intel (R) Pentium (R) III a 1000 MHz
- Dos discos duros:
Disco duro primario: 4GB para el sistema operativo. Disco duro secundario: 20GB para datos.
- Memoria RAM de 256MB
A su vez, en el servidor deben estar instaladas las siguientes aplicaciones.
Sistema Operativo Ubuntu Server 6.0
Una primera distinción que se podría hacer en el uso de un determinado sistema operativo u otro se ha basado en la necesidad de poder tener el control más absoluto sobre las prestaciones del servidor. A su vez, las limitaciones físicas de la máquina han hecho que la elección entre un sistema operativo abierto como Linux o un sistema propietario como Windows se decantara por el primer tipo.
El uso determinado de esa versión del sistema operativo también ha venido influenciado por las limitaciones físicas del sistema. Versiones más actualizadas y con mejores prestaciones, debido a que se trata de una máquina un tanto antigua, no han funcionado correctamente por lo que se ha optado por la necesidad de la implantación de la versión 6 de Ubuntu en modo de texto para el desarrollo del proyecto.
Apache Tomcat 6.0
Debido a que la misma plataforma RedBox proporciona librerías para desarrollar aplicaciones en JAVA para envío de mensajes SMS o MMS y, además, el generador de códigos QR hará uso de otra librería en JAVA, se cree más que conveniente el uso de un servidor capaz de soportar páginas en JSP (Java Server Page). Por tanto, un servidor adecuado a las necesidades del proyecto será Tomcat.
DarwinStreaming Server
Cabe destacar desde un primer momento que se requiere un servidor rápido, sencillo y de fácil administración.
Además, es conveniente que los vídeos que suministren se visualicen en la mayor cantidad de reproductores ya que los dispositivos móviles dispondrán de reproductores variados (RealPlayer o incluso reproductores propios según la marca).
Debido al alcance de investigación del proyecto, se deberá pensar en posibles ampliaciones y usos futuros por lo que se requerirá un servidor capaz de soportar un amplio rango de usuarios así como unas prestaciones medianamente altas para evitar posibles problemas.
Por último, debe ser gratuito ya que, en una primera opción, a lo largo de todo el proyecto, se ha preferido el software libre y gratuito para evitar la compra de licencias y usos restringidos que incrementarían el presupuesto del proyecto.
Si se revisa la tabla 8 y se hace un análisis profundo en función de las necesidades expuestas con anterioridad, se puede uno decantar por dos opciones principalmente: VLC Server y DarwinStreaming Server. Ambas soluciones gratuitas.
El problema es que el servidor de streaming VLC no es capaz de proporcionar vídeos que se reproduzcan a través del reproductor RealPlayer (que en teoría soporta streaming) donde, por ejemplo, el terminal implementado en el proyecto usa ese modelo de reproductor.
Por el contrario, DarwinStreaming Server, con una sencilla instalación a través de órdenes sencillas, es capaz de reproducir numerosos formatos en casi cualquier tipo de reproductor (siempre y cuando soporte videostreaming).
Por tanto, de ahí la elección de este servidor de vídeo respecto al primero.
Base de datos MySQL
Para el almacenamiento de las estadísticas del servidor ante las operaciones realizadas por RedBox de Vodafone se ha requerido el uso de una base de datos. Debido a las características enunciadas en el capítulo I, se ha creído oportuna la implantación del gestor de bases de datos MySQL.
2.1.2 Terminal
El terminal usado en el presente proyecto es el Nokia N95, facilitado por Vodafone. Nokia N95 es un modelo de la Nseries. Fue presentado en septiembre de 2006 y lanzado a mediados xx xxxxx, con un precio sobre los 600€. Se basa en el software del paquete 1 de la tercera edición S60 sistema operativo Symbian (v9.2) y es particularmente significativo por ser el primer HSDPA de Nokia y también primer móvil con GPS incluido.
Las características básicas de este modelo son:
- Pantalla: 2.6 pulgadas de 40x53 mm con una resolución de 320x240 píxeles y 16 millones de colores.
- Memoria: NAND de 256 MB, SDRAM de 64 MB y MicroSDHC de 8GB.
- Bandas: HSDPA, GSM850/900/1800/1900, GPRS, EDGE.
- Conectividad: USB 2.0, Bluetooth 2.0, Wi-fi b/g, infrarrojos.
- Dimensiones: 99x53x21 mm.
- Peso: 120 gramos.
En realidad, debido a las escasas prestaciones que se han comentado que se iban a necesitar, este terminal cumple de sobra con los requisitos mínimos para la ejecución de las aplicaciones a desarrollar.
A continuación se presenta como es el terminal.
Ilustración 81. Terminal Nokia N95
2.1.3 Modem de acceso
A pesar de disponer de conexión fija a través de una IP pública administrada por la Universidad xx Xxxxxxx, en un primer momento se facilitó para el desarrollo del proyecto un módem para conexión a internet. Se trata del módem E220 Huawei facilitado por Vodafone.
El Módem USB funciona de forma inmediata y "transparente", proporcionando una conexión vía Banda Ancha 3G (HSDPA), 3G, o GPRS utilizando la red de antenas Vodafone.
Características:
- Acceso en movilidad: en cualquier lugar donde haya cobertura 3G.
- Inmediato Sin tiempos de esperas de provisión del servicio.
- Autoinstalable: plug and play. El modem se conecta mediante el puerto USB y realiza de forma automática la instalación de un software de conexión (sin necesidad de cd).
- Compatible con cualquier modelo de ordenador: PC o MAC, sobremesa o portátil.
- Velocidad de descarga de hasta 3.6 Mbps.
A continuación se ofrece una imagen de dicho módem.
Ilustración 82. Modem Huawei E220 de Vodafone [53]
2.1.4 Entorno de desarrollo
Para la programación y la ejecución de las diferentes pruebas que hagan que verifiquen el correcto desarrollo del proyecto, ha sido necesario disponer de un equipo de trabajo con las siguientes características:
- Intel (R) Core(TM)2 Duo CPU
- E6750 a 2.66 GHz
- 1.00 GB de RAM
- Microsoft XP Profesional (2002) – Service Pack 2
Además, debido al uso de JAVA y JSP para el desarrollo de aplicaciones web en el servidor Tomcat, se ha necesitado la instalación en el mismo ordenador de NetBeans 6.0 facilitando el desarrollo de este tipo de aplicaciones.
2.1.5 Plataforma de mensajería
Debido a la propia definición del proyecto, tanto para el envío de SMS con la aplicación del lector de códigos bidimensionales como para la recepción de imágenes vía MMS será necesaria la implantación de una plataforma capaz de gestionar el envío y recepción de los mismos.
Para ello, y gracias a las características del proyecto. Es decir, tratarse de un proyecto Xxxxxxx con la colaboración expresa de Vodafone, se ha podido disponer de la plataforma RedBox con la capacidad de, a través de unas determinadas APIs, facilitar el envío y recepción de mensajes (SMS o MMS).
RedBox, en el presente proyecto, se encarga de realizar tres funciones principalmente:
- Facilitar el envío de un SMS por parte de un móvil a una determinada página web, notificándole a ésta la llegada y su contenido. Esa página web actuará en consecuencia en función de lo que reciba de RedBox.
- Facilitar el envío de SMS o MMS por parte de nuestra aplicación.
- Notificar el proceso de envío y recepción de SMS desde nuestra aplicación a un terminal móvil
2.2 Especificaciones de ejecución
A lo largo de la ejecución de todo el proyecto, las entidades participantes deben cumplir una serie de obligaciones.
Las entidades financiadoras (como Xxxxxxx y Vodafone) se comprometen a facilitar cada mes un número fijo de envío de SMS, MMS y acceso a internet por parte de los terminales móviles. A su vez, ofrecen soporte técnico para la resolución de cualquier tipo de dudas.
Al comienzo del proyecto, Xxxxxxx ofrece cursos de formación a los trabajadores del proyecto en función de las herramientas que se le facilite para el proyecto. En el caso del proyecto que se abarca, se ofrece un curso de un solo día para formación sobre RedBox.
AICIA, durante los meses que abarque el proyecto, se encargará de pagar debidamente a los técnicos encargados de abordar el proyecto. Los participantes en el proyecto por parte de la empresa Xxxxxx serán independientes de la colaboración de AICIA.
La Universidad xx Xxxxxxx, en colaboración con el departamento de Ingeniería de Sistemas y Automática (más concretamente el Área de Ingeniería de Telemática) suministrará a lo largo del desarrollo del proyecto el lugar de trabajo así como determinados trámites necesarios para la elaboración del mismo.
Durante la duración del proyecto, tal y como se comentó en apartados anteriores, Xxxxxx estará comprometida a reuniones cada cierto tiempo para la revisión del estado del proyecto así como para la comprobación que los recursos suministrados por Xxxxxxx y Vodafone se están usando adecuadamente.