You are on page 1of 21

UNIVERSIDAD AUTÓNOMA GABRIEL RENÉ MORENO

FACULTAD DE INGENIERIA EN CIENCIAS DE LA COMPUTACIÓN,


REDES Y TELECOMUNICACIONES
CARRERA DE INGENIERIA EN SISTEMAS

[Título]
[Asunto]

POR:
Yimmy Quispe Yujra
214021191
MATERIA:
Ingeniería de Software I
DOCENTE:
Ing. Rolando Martinez Canedo

7 de mayo de 2018
Santa Cruz de la Sierra — Bolivia
[Título]

Aplicación para la colaboración en tiempo real en


el modelado de software

Yimmy Quispe Yujra

Universidad Autónoma Gabriel René Moreno


Facultad de Ingeniería en Ciencias de la Computación y
Telecomunicaciones
Carrera de Ingeniería en Sistemas

Santa Cruz de la Sierra - Bolivia

Copyright © 2018 por Yimmy Quispe Yujra. Todos los derechos


reservados.

i
Dedicatoria

A:
Dios, por darme la oportunidad de vivir y estar conmigo en cada paso que doy.
Mi madre Elena, por darme la vida, creer en mí y darme aliento para seguir
adelante incontables veces. Madre gracias por darme tu apoyo para poder
estudiar y ser mejor en el futuro, todo esto te lo debo a ti.
Mi padre Máximo, por enseñarme que en la vida hay que valorar lo poco o
mucho que se tiene.
A mis hermanos, Max, David, Noemí y Abigail por estar conmigo y apoyarme
siempre, los quiero mucho.
Todo este trabajo ha sido posible gracias a ellos.

ii
iii
iv
v
Prefacio

Este proyecto surgió a raíz de la necesidad de herramientas para el modelado


de software de tal manera que se aprovechen las últimas tecnologías
disponibles, como la comunicación, e intercambio de datos en tiempo real.
En este proyecto se busca dar una posible solución a esta problemática, para
ser más específico, solo se abarca el modelado UML de los diagramas de
secuencia, los cuales ayudaran a modelar el comportamiento de software.
Se ha incluido toda la información relevante en cuanto a las herramientas y
tecnologías empleadas para llevar a cabo este proyecto, entre dichas
tecnologías se encuentra el uso de lenguajes de programación modernos
como es el caso de JavaScript, que se utilizan tanto desde el lado del cliente
(Front end), como del lado del servidor (Back end) que para ser más específico
se denomina Node.js, sin olvidarnos el uso de componentes gráficos para
permitir el modelado de los diagramas de secuencia. Por otro lado, también
se gestiona los usuarios que tendrán acceso a la aplicación, así como también
se gestiona los privilegios y proyectos a los que un usuario tendrá acceso para
poder colaborar en tiempo real.
Por último, si bien el software en si es importante, también lo es el hecho que
este esté en correcto funcionamiento, esto implica que el software este
correctamente desplegado en una plataforma online como lo es AWS
(Amazon Web Services), tomando en cuenta factores de configuración como
lo es la elección del sistema operativo del servidor, y la configuración correcta
de la red sin olvidar la apertura y cierre de los puertos adecuados para prevenir
vulnerabilidades en el servidor entre muchos otros aspectos que se verán en
detalle dentro de esta obra.
Más de 4 años de aprendizaje universitario en el desarrollo de software me
han brindado la oportunidad de trabajar y conocer un gran conjunto de
tecnologías de desarrollo web los cuales han sido una gran recompensa para
mí, y que de formas diferentes pero congruentes han contribuido al contenido
de este proyecto.

vi
Introducción

En la actualidad las tecnologías web has revolucionado la manera en la que


realizamos nuestras actividades, pues las redes sociales, YouTube, Facebook
y tantas otras plataformas web transformaron el modo en el que nos
relacionamos e intercambiamos información, y esto no solo en el ámbito
social, sino también empresarial y educativo.
Por tanto, el uso de estas tecnologías para crear y brindar soluciones es
indispensable para crear productos software de calidad y vanguardia. En
nuestro caso, el desarrollo de software implica muchas etapas, una de ellas
es el diseño, el cual incluye aspectos teóricos que se toman en cuenta para
desarrollar un buen producto, pero son los diagramas o modelos, en los que
se plasman dichos aspectos teóricos, particularmente para este proyecto se
tratará de cubrir en su totalidad los diagramas de secuencia los cuales son un
tipo de diagrama para representar flujos de información entre entidades de un
software, que forman parte del UML (Lenguaje Unificado de Modelado) en su
versión 2.0.
Como esta será una herramienta para facilitar el modelado de software tiene
que tomarse en cuenta que los ingenieros de software podrían no estar en el
mismo establecimiento o lugar, lo cual implica la existencia de un medio para
realizar esta tarea de manera remota y colaborativa en tiempo real.

vii
Acerca del Autor

Yimmy Quispe Yujra es un estudiante de la carrera Ing. En Sistemas de la


Facultad de Ciencias de la Computación, redes y Telecomunicaciones en la
Universidad Autónoma Gabriel René Moreno de la Ciudad de Santa Cruz de
la Sierra – Bolivia.
Hasta la fecha cursa su último año en la universidad, además de tener
experiencia en desarrollo web Full Stack, es una persona apasionada que ama
la música, una deliciosa comida y desarrollar software.

viii
ix
PARTE I
Marco teórico, objetivos, desarrollo basado en componentes, CASE,
Arquitectura, UML 2.0, interacción XMI o XML, Factores de calidad en el
software

1
CONTENIDO PARTE I

Fds
Lkjlk
JKJ
jkjkj


jk

2
PARTE II
Metodologías, conjunto de modelos de software

3
CONTENIDO PARTE II

4
PARTE III
Mecanismo de ayuda, manual, video, etc.

5
CONTENIDO PARTE III

6
PARTE IV
Reflexión, experiencia, antes y después, recomendaciones, etc.

7
CONTENIDO PARTE IV

8
Apéndice A

9
Bibliografía

Bibliografía irá aquí.


f.

10
Índice

Índice irá aquí.

11