Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Edutec2011Guibert Ceballos Altuna
Edutec2011Guibert Ceballos Altuna
net/publication/266854540
CITATIONS READS
0 824
2 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Enrique Altuna on 24 April 2015.
RESUMEN
El objetivo de este trabajo es el desarrollo de productos multimedia en la WEB,
utilizando lenguaje Javascript, hojas de estilo en cascada (CSS), aplicando técnicas de
optimización WEB para mejorar el rendimiento y el tamaño de las páginas. La
arquitectura propuesta proporciona los elementos necesarios para el desarrollo de un
producto multimedia, sobre una plataforma WEB, lograda a través de las técnicas
anteriores y basada en la concepción del uso de herramientas libres.
Palabras Clave: Arquitectura de Software, Multimedia, Plataforma Web, Software Libre.
ABSTRACT
The aim of this work is the development of multimedia products in the Web, using
Javascript, cascading style sheets (CSS), Web application optimization techniques to
improve performance and size of the pages. The proposed architecture provides the
necessary elements for the development of a multimedia product on a Web platform,
achieved by previous techniques based on the concept of using free tools.
Key Words: Free Software, Multimedia, Software's Architecture, Web Platform.
INTRODUCCIÓN
Uno de los pasos más importantes para el desarrollo de un software es definir la
arquitectura, ya que esta permite que se planifique el esfuerzo de desarrollo, definiendo
una serie de reglas y pautas que guiarán el desarrollo de la aplicación, siguiendo una
línea coherente y además asegurando un por ciento importante de éxito. Según las
notas de Garlan (Garlan & Shaw, 1994), “una arquitectura de software sirve como un
puente entre los requerimientos del sistema y su implementación”. El objetivo principal
de la arquitectura del software es aportar elementos que ayuden a la toma de
decisiones y al mismo tiempo, proporcionar conceptos y un lenguaje común que permita
la comunicación entre los miembros del equipo que participen en el ciclo de desarrollo
de un proyecto. Para conseguirlo, la arquitectura del software construye abstracciones,
materializándolas en forma de diagramas comentados (López, 2008; Espinal, 2008;
Vigil et al, 2008).
El diseño de una arquitectura de software debe considerarse una parte fundamental,
crítica e imprescindible en el desarrollo de un sistema de software, ya que es
precisamente en esta fase donde recae toda la creatividad, experiencia y la
responsabilidad en la creación de la propuesta de solución que más se adecue a las
necesidades del cliente y le permita lograr sus objetivos (Hidalgo et al, 2008).
Es importante que los sistemas de software estén respaldados por una arquitectura bien
definida que responda a los requisitos funcionales y no funcionales establecidos para el
sistema, que sea capaz de hacerlo evolucionar frente cambios tecnológicos, de
fomentar la reutilización y de organizar el desarrollo (Hidalgo et al, 2008). Al seleccionar
una arquitectura robusta se asegura que se cumplan con todos los requisitos y se
obtenga un producto con calidad, como el cliente lo desea.
El objetivo principal de este trabajo es explicar detalladamente una propuesta de
arquitectura de un producto con características educativas y el proceso de desarrollo
del mismo, utilizando herramientas libres. Entre los objetivos específicos se encuentran
proporcionar una descripción arquitectónica comprensiva del sistema que sirva de guía
(a partir de las diferentes vistas) para iteraciones posteriores, capturar las decisiones
arquitectónicas significativas en el proceso de construcción del sistema y mostrar una
propuesta arquitectónica del producto “Mis Mejores Cuentos” en la Facultad 4 de la
Universidad de las Ciencias Informáticas. Otro de los elementos a destacar en este
trabajo es la explicación y representación de las diferentes vistas arquitectónicamente
significativas, por su importancia para poder comprender la estructura del sistema,
mostrando sus partes fundamentales en forma de módulos y las principales relaciones
que se establecen entre ellos.
CONCLUSIONES
La selección de una arquitectura de software es uno de los elementos más importante
en el desarrollo de cualquier aplicación informática. Como resultado de esta
investigación se obtuvo una arquitectura, utilizando herramientas libres. El ciclo de
desarrollo se realiza con la metodología RUP, visualizando sus artefactos con el
lenguaje de modelado UML, en su extensión APEM–L, que permite establecer
elementos descriptivos y decorativos en la representación de los componentes del
lenguaje base.
Se utiliza la arquitectura N-Capas, con el estilo arquitectónico de Llamada y Retorno y el
patrón MVC, los que en su conjunto posibilitan reusabilidad, portabilidad y escalabilidad
al sistema presentado.
La optimización de código presentado en las tecnologías del lado del cliente, se basa
en las reglas de optimización que facilitan el funcionamiento del producto sobre el
navegador Web, evitando la sobrecarga del mismo, mostrando un software educativo
para niños de 3 a 5 años, con tecnología multimedia, que puede aplicarse a sistemas
con características similares.
REFERENCIAS BIBLIOGRÁFICAS
[1]. ANÓNIMO. Ayuda Proceso Unificado de Rational. [html] 2003.
[2]. _______ Ecma-262. [En línea] Diciembre de 1999. 3rd edition. http://www.ecma-
international.org/publications/standards/Ecma-262.htm .
[3]. _______ JSON. [En línea] http: //es.wikipedia.org/wiki/JSON, 2009.
[4]. _______ Introducción a JSON. [En línea] http: //www.json.org/json-es.html, 1999.
[5]. _______ “Visión general de las nuevas funcionalidades de Apache” 2.0, 2008.
Disponible en: http://httpd.apache.org/docs/2.0/es/new_features_2_0.html
[6]. BASTARRICA, M. C. Atributos de Calidad y Arquitectura del Software. Volumen, 4.
2005
[7]. CAMERON ADAMS et al. “The Art & Science Of JavaScript”. SitePoint Pty. Ltd.
2007.
[8]. CEBALLOS IZQUIERDO, YASMANI, “Optimización del diseño web con las hojas
de estilos iniciales”, Febrero 2009, Informática 2009.
[9]. COBO RODRÍGUEZ, JOSÉ A., “Línea Base Arquitectónica para el Polo Sistemas
Tributarios y de Aduanas”, Junio 2008. Tesis de Grado, Disponible en:
http://bibliodoc.uci.cu/TD/TD_1443_08.pdf
[10]. CROCKFORD, DOUGLAS. crockford.com. crockford.com. [En línea]
http://www.crockford.com/javascript/private.html.
[11]. _________________. javascript.crockford.com. [En línea]
http://javascript.crockford.com/prototypal.html.
[12]. ESPINAL MARTÍN, YANET, “Arquitectura de software. Arquitectura orientada a
servicios”. Disponible en: http://seriecientifica.uci.cu
[13]. GARLAN, D. Y SHAW, M. "An Introduction to Software Architecture". Pittsburgh:
School of Computer Science, Carnegie-Mellon University, 1994.
[14]. HERNÁNDEZ REYES, CARLOS E., LEYVA DURÁN, JULIO A., “Desarrollo de
la Arquitectura del Sistema Automatizado de Control de Gestión de Indicadores de
Refinación, SACGIR”, Julio 2008. Tesis de Grado, Disponible en:
http://bibliodoc.uci.cu/TD/TD_1193_08.pdf
[15]. HIDALGO REYES, ALBERTO, VAZQUEZ SORÍ, JOSUÉ, “Modelación de
arquitectura para aplicaciones empresariales en PHP”, Junio 2008. Tesis de Grado,
Disponible en: http://bibliodoc.uci.cu/TD/TD_1500_08.pdf
[16]. HISHAM. CSSMANIA Comunidad Diseño Web. Blogs de Primavera.
Universidad de las Ciencias Informáticas (UCI), 19 de Mayo de 2008.
http://web21.uci.cu/blogs/cssmania/?p=26.
[17]. JACOBSON, G.BOOCH, J.RUMBAUGH. “El Proceso Unificado de Desarrollo
de Software”. Madrid, PEARSON EDUCACION, S.A, 2000.
[18]. KING, ANDREW B. “Website Optimization. First Edition”. O’Reilly, July 2008.
[19]. KRUCHTEN P., “Planos Arquitectónicos: El Modelo de 4+1 Vistas de la
Arquitectura del Software”, 2008.
[20]. LECOMTE, JULIEN, “High Performance Ajax Applications”, 2007 Disponible en
http://www.julienlecomte.net/blogfiles/performance/ajax-perf.ppt
[21]. LÓPEZ MASTRAPA, HENRY Y., “Propuesta de Arquitectura del Sistema de
Registro de Visitante en la UCI”, Julio 2008. Tesis de Grado, Disponible en:
http://bibliodoc.uci.cu/TD/TD_1715_08.pdf
[22]. Maestrosdelweb. Maestrosdelweb. [En línea]
http://www.maestrosdelweb.com/editorial/hacks-en-css-que-te-evitaran-dolores-de-
cabeza-en-internet-explorer/.
[23]. MICHAUX, PETER. peter.michaux.ca. peter.michaux.ca. [En línea] 02 de Junio
de 2008. http://peter.michaux.ca/articles/class-based-inheritance-in-javascript .
[24]. PALAU, PEDRO E. CSSMANIA Comunidad Diseño Web. Blogs de Primavera.
Universidad de las Ciencias Informáticas (UCI), 3 de Diciembre de 2008.
http://web21.uci.cu/blogs/cssmania/?p=131.
[25]. PAUL CLEMENTS, R. K., MARK KLEIN. “Evaluating Software Architectures:
Methods and Case Studies”. Addison-Wesley, 2001. 323 p.
[26]. PÉREZ, JAVIER EGUÍLUZ. “Introducción a JavaScript”. 2008, Disponible en
www.librosweb.es.
[27]. Smashingmagazine. Smashingmagazine. [En línea] 18 de Agosto de 2008.
http://www.smashingmagazine.com/2008/08/18/7-principles-of-clean-and-optimized-css-
code/.
[28]. SOUDERS, STEVE. “High Performance Web Sites. First Edition”. O’Reilly, Sept.
2007.
[29]. STEFANOV, STOYAN. “Object-Oriented JavaScript”, Packt Publishing, 2008.
[30]. RICARDO, MsC. FEBE ÁNGEL CIUDAD. “ApEM – L como una nueva solución
a la modelación de aplicaciones educativas multimedias en la UCI”, 2007.
[31]. ROMERO FERNÁNDEZ, LEUDYS. “Análisis y Diseño del Software Educativo
Cuentos Infantiles para niños en edad preescolar”, Tesis de Grado, 2009.
[32]. VIGIL REGALADO, YAMILA, FOUCES CABANA, ERICH, “La arquitectura de
software como disciplina científica”, Marzo 2008. Disponible en:
http://seriecientifica/repositorio/sc_200804/SC_200804_02.pdf
[33]. ZELDMAN, JEFFREY. “Designing With Web Standards”. 2nd Edition, 2006.
ANEXOS
Anexo 1. Comparación de los Frameworks de Desarrollo.
Figura 7. Comparación entre las Librerías según los aspectos de rendimiento, funcionamiento en los
navegadores, portabilidad.