Está en la página 1de 7

CONTENIDO

INTRODUCCIÓN............................................................................................................................. 3
PLANTEAMIENTO DEL PROBLEMA ........................................................................................ 3
OBJETIVO GENERAL ................................................................................................................... 4
OBJETIVOS ESPECÍFICOS .......................................................................................................... 4
JUSTIFICACIÓN ............................................................................................................................. 4
CRONOGRAMA………………………………………………………………………………………………………………………….5
CONCLUSIONES………………………………………………………………………………………………………………………..6
GLOSARIO ....................................................................................................................................... 7
REFERENCIAS ................................................................................................................................ 8
INTRODUCCIÓN
En los últimos años, la necesidad de construir sistemas flexibles, escalables, estables y
seguros le ha obligado a todos los ingenieros del mundo a buscar nuevos patrones, nuevas
formas y estándares para la construcción de sistemas que cumplan con las exigencias de una
sociedad cada vez más dependiente de la tecnología.
El propósito de este trabajo colaborativo es entonces poner en evidencia lo aprendido a lo
largo del curso, complementado con el conocimiento adquirido a través del autoestudio.
Se dará a conocer entonces, como gracias a las API es posible brindar soluciones flexibles y
rápidas a problemas típicos en el desarrollo de software.

PLANTEAMIENTO DEL PROBLEMA


Como equipo se tiene un sitio Web cuyo propósito es mostrar diferentes elementos de la
fantástica saga de Star Wars, este sitio de momento es estático y solo cuenta con el menú, se
requiere entonces, implementar una API que le permita ser dinámico y de esta forma,
presentar los datos pertinentes de cada uno de los elementos que se quieren mostrar.

Figure 1Captura de pantalla del sitio web que se tiene como equipo
OBJETIVO GENERAL
Brindar una solución pertinente y de alto nivel a una página web estática que no tiene ningún
servicio asociado. Se pretende darle dinamismo y eficiencia utilizando las técnicas de
desarrollo de SOA; amortiguando los costos de inversión realizada utilizando un API REST
que ya cuenta con toda la información necesaria y no se requiere costos de invertir en
plataformas. Solamente es implementar ese servicio en la parte del cliente para que haga la
consulta respectiva en el servidor.

OBJETIVOS ESPECÍFICOS
1. Identificar un problema recurrente en el desarrollo web donde la arquitectura
orientada a servicios pueda brindar una solución idónea y efectiva.
2. Elaborar una aplicación web, utilizando la arquitectura orientada a servicios, que
dé solución al problema recurrente hallado.
3. Desarrollar un api, una interfaz, enfocada a la temática del proyecto, con el fin
que se comuniquen aplicaciones o programas, y se compartan información entre
las mismas.

JUSTIFICACIÓN
Lo que buscamos con este proyecto es poder demostrar los avances tecnológicos con los cuales
podremos mejorar la página creada para los fanáticos de Star Wars, se busca poder mejorar los
procesos funcionales de la siguiente manera:

 Eficacia y Adaptabilidad: Al implementar un API al sitio se tendrá una página Dinámica que
permitirá ser mas fluida y amigable al usuario final.
 Módulos/Elementos: Se busca que cada uno de estos sean dinámico y permita al usuario
interactuar con más información dependiendo el elemento o modulo seleccionado.

Referencias en las cuales nos apoyamos para el planteamiento de esta solución:

1. Orden en el cual deberías ver todas las películas: https://www.pocket-lint.com/es-


es/tv/noticias/star-wars/147767-star-wars-machete-mejor-orden-de-visualizacion-de-
peliculas
2. Wiki de Star Wars: https://starwars.fandom.com/es/wiki/Star_Wars
3. BBC Mundo Noticias, Cual es el Orden en que debes ver las películas según el director
George Lucas: https://www.bbc.com/mundo/noticias-50854901

Figure 2 Naves de Star Wars, tomada del sitio web Lucasfilms. https://www.lucasfilm.com/what-we-do/movies/

Figure 3 Mark Hamill, George Lucas, Carrie Fishery Harrison Ford en el set de “El Imperio Contraataca” en 1979. Tomada
del sitio web https://www.lucasfilm.com/who-we-are/our-story/
CRONOGRAMA

CONCLUSIONES Y RECOMENDACIONES
1. Podemos mejorar el funcionamiento de una web mediante el diseño de software de la
arquitectura orientada a los servicios (SOA) reutilizando sus elementos gracias a las
interfaces de servicios que se comunican a través de una red con un lenguaje común,
todo esto a un bajo costo.
2. En esta primera fase se pude evidenciar la relevancia del trabajo colaborativo ya que
nos permite evaluar y construir en cada una de las etapas del desarrollo del proyecto
mediante aportes constructivos que conllevan a una unificación de criterios y
conocimientos mejorando considerable el producto final.
3. Son de vital importancia los cronogramas de trabajo ya que nos permiten llevar de
manera clara y organizada la gestión de actividades de cada uno de los integrantes.
GLOSARIO
Arquitectura de Software: Según Len Bass, Paul Clements y Rick Kazman (2012) en su
libro Software Architecture in Practice: “La arquitectura de software de un sistema es el
conjunto de estructuras necesarias para razonar sobre el sistema, que comprende elementos
de software, relaciones entre ellos y propiedades de ambos.” (citado en: Cervantes Maceda,
Velasco-Elizondo y Castro Careaga, 2016)

Servicios: Un servicio es una unidad discreta de funcionalidad empresarial disponible a


través de un contrato entre consumidor y proveedor. El contrato especifica todas las
interacciones entre el consumidor del servicio y el proveedor de este. Los elementos comunes
o especificaciones que regularmente se encuentran en ese contrato son: interfaz de servicio,
documentos de interfaz, políticas de servicio, calidad de servicio (QoS), actuación (Rosen,
Lublinsky, Smit & Balcer, 2008).

SOA (Service Oriented Architecture): La mayoría de las implementaciones de SOA son


basadas en tecnologías de servicios web. Cualquier persona puede crear un servicio. Hoy en
día, hay incontables servicios en la nube y su implementación es algo sencillo, independiente
del tipo de tecnología con la que se esté familiarizado (php, java, .net, javascript, phyton,
entre muchas otras) (Acosta D.)

REST (Representational State Transfer): Para describir REST primero se debe definir qué
es un servicio web. Este es el medio o acción mediante la cual la web establece comunicación,
es decir, habla con sus distintos elementos para garantizar su funcionamiento (envío de
mensajes mediante un protocolo). En la lectura fundamental 3 se presentó la arquitectura
orientada a servicios, y en ella se definió que un servicio web es aquel que permite
interoperabilidad y extensibilidad es decir transmitir datos (protocolos y mensajes)
“estructurados o no” usualmente a través de dicha arquitectura (Richardson & Ruby, 2007).

Patrón: “Un patrón de diseño es una descripción de clases y objetos comunicándose entre sí
adaptada para resolver un problema de diseño general en un contexto particular” (Gamma,
Helm, Johnson & Vlissides, 1994).
Cliente-Servidor: Es un modelo computacional, donde el servidor provee, distribuye y
controla la mayoría de los recursos y servicios que el cliente usará. Dicho diseño estructural
está hecho para uno o más sistemas de clientes conectados a un servidor principal por medio
de una red, que normalmente conocemos como conexión a Internet. (W3Schools, traducción
propia)

Asincrónico: Propiamente hablando, asincrónico hace referencia a algo que no sucede


sincrónicamente. En programación Web hace referencia a que el código no se ejecuta de
modo secuencial. Por lo general se usa para traer información de un recurso externo a donde
se está ejecutando la aplicación. La gran ventaja es que el código sincrónico detiene su
ejecución para esperar la respuesta del recurso externo; cuando el recurso externo está
disponible, se ingresa en la ejecución sincrónica del código.

REFERENCIAS
Acosta D. Arquitecturas de software orientada a servicios. Escenario 3, módulo Arquitectura
de Software.

Cervantes Maceda, H., Velasco-Elizondo, P. y Castro Careaga, l. (2016). Arquitectura de


software, conceptos y ciclo de desarrollo. Mexico: CENGAGE Learnig

Gamma, E., Helm, R., Johnson, R. & Vlissides, j. (1994). Design Patterns Elements of
Reusable Object-Oriented Software. EUA: Addison Wesley.

Rosen, M., Lublinsky, B., Smit, K. T. & Balcer, M. J. (2008). Applied SOA Service-oriented
architecture and design strategies. Canadá: Wiley Publishing, Inc

Richardson, L. & Ruby, S. (2007). RESTful Web Services. New Jersey, CA. O’Reilly Media

W3C (2021) What is Client-Server Architecture? Recuperado de:


https://www.w3schools.in/what-is-client-server-architecture/

También podría gustarte