UNIVERSIDAD DISTRITAL “FRANCISCO JOSE DE...
Transcript of UNIVERSIDAD DISTRITAL “FRANCISCO JOSE DE...
UNIVERSIDAD DISTRITAL “FRANCISCO JOSE DE CALDAS”
TRABAJO FINAL ESPECIALIZACION EN PROYECTOS INFORMATICOS
DISEÑO DE SOLUCION INFORMATICA PARA PEQUEÑAS Y MEDIANAS EMPRESAS DE TRANSPORTE ESPECIAL
Autor NAPOLEON ALEJANDRO RAMIREZ
GARNICA
Director ROBERTO FERRO
Bogotá 2019
Resumen
La presente investigación está orientada hacia el diseño de una solución informática que permita
la optimización de los recursos tangibles e intangibles de las pequeñas y medianas empresas del
transporte especial en Colombia. Para esto es necesario definir una metodología de desarrollo del
software, para elegir la metodología que mejor se ajusta a las necesidades empresariales se
realizará una matriz DOFA, en donde se tiene como base el cambio de requerimientos que pueda
tener la solución informática afectando los tiempos de entrega o el recurso humano con que se
cuenta.
Para que la herramienta pueda satisfacer a cabalidad las necesidades empresariales y del cliente
se deben analizar los requerimientos que tienen cada una de las áreas involucradas realizando
levantamiento de información, luego se procede a realizar los formatos estándar para los diseños
de casos de uso, para posteriormente realizar el diseño del formato para las interfaces gráficas, se
elige la arquitectura en la nube puesto que es una arquitectura que tiene la facilidad de ir
agregando funcionalidad o recursos a medida que la solución informática lo vayan requiriendo, o
si se plantea una arquitectura muy robusta desde el principio se puede modificar para economizar
costo.
PALABRAS CLAVE: Prototipo, modelo, sistema información, requerimientos, interfaz,
arquitectura en la nube
Abstract
The present investigation is oriented towards the design of a computer solution that allows the
optimization of the tangible and intangible resources of the small and medium enterprises of the
special transport in Colombia. For this it is necessary to define a software development
methodology, to choose the methodology that best fits the business needs, a DOFA matrix will
be created, based on the change of requirements that the solution may have, affecting the times
of delivery or the human resource that is counted.
For the tool to fully satisfy the business and customer needs, the requirements of each of the
areas involved must be analyzed, and then the standard formats for use case designs must be
carried out. To design the format for the graphic interfaces, the architecture in the cloud is
chosen since it is an architecture that has the facility of adding functionality or resources as the
solution requires it, or if a very robust architecture is proposed from the beginning it can be
modified to save cost..
KEYWORDS: Prototype, model, system information, requirements, interface, cloud computing
Agradecimientos
A mis abuelos, quienes desde el cielo guían mi camino, no sería quien soy hoy sin ustedes, a mis
padres, por todo el esfuerzo que hacen día a día, por llenarme de amor, por su apoyo
incondicional y su paciencia infinita. A mi hermana, por inspirarme a ser major hermano cada
día y ser siempre mi cómplice. A mi familia, gracias por estar a mi lado cuando lo necesito. Y en
especial a Carolina Vidal, gracias por tanto cariño y amor que me brinda cada dia.
Agradezco especialmente al director del Proyecto de grado Roberto Ferro, por su tiempo,
dedicación y por el conocimiento impartido durante todo el proceso, gracias por confiar en mi
capacidad para llevar a cabo el proyecto.
Tabla de contenido Resumen ........................................................................................................................................................................ 2
Abstract.......................................................................................................................................................................... 3
INTRODUCCIÓN ......................................................................................................................................................... 9
PARTE I FUNDAMENTACIÓN DE LA INVESTIGACIÓN .................................................................................. 10
CAPITULO 1 DESCRIPCIÓN DE LA INVESTIGACIÓN ...................................................................................... 10
1.1 IDENTIFICACIÓN DEL PROBLEMA ......................................................................................................... 10
1.2 OBJETIVOS ................................................................................................................................................... 11
1.2.1 OBJETIVO GENERAL ............................................................................................................................. 11
1.2.2 OBJETIVOS ESPECÍFICOS ..................................................................................................................... 11
1.3 JUSTIFICACIÓN ........................................................................................................................................... 12
1.4 HIPÓTESIS .................................................................................................................................................... 12
1.5 MARCO REFERENCIAL ............................................................................................................................. 13
1.5.1 MARCO TEÓRICO ................................................................................................................................... 13
1.5.2 MARCO CONCEPTUAL .......................................................................................................................... 14
1.6 METODOLOGÍA........................................................................................................................................... 14
1.6.1 LEVANTAMIENTO DE INFORMACION .............................................................................................. 14
1.6.2 TÉCNICAS DE BÚSQUEDA DE INFORMACIÓN ................................................................................ 15
1.6.3 MÉTODOS DE INVESTIGACIÓN .......................................................................................................... 15
1.7 ORGANIZACIÓN DEL TRABAJO .............................................................................................................. 15
PARTE II FUNDAMENTACIÓN DE LA INVESTIGACIÓN .................................................................................. 17
CAPITULO 2 DEFINICIÓN DE LA METODOLOGÍA DE SOLUCIÓN ................................................................ 17
2.1 METODOLOGÍA RUP ......................................................................................................................................... 17
2.2 METODOLOGÍA SCRUM ................................................................................................................................... 18
2.3 ELECCIÓN DE LA METODOLOGÍA ................................................................................................................ 19
2.3.1 VENTAJAS Y DESVENTAJAS DE LA METODOLOGÍA RUP .................................................................... 19
2.3.2 VENTAJAS Y DESVENTAJAS DE LA METODOLOGÍA SCRUM .......................................................... 20
CAPITULO 3 IDENTIFICACIÓN DE REQUERIMIENTOS ................................................................................... 21
3.1 DESCRIPCION DE LOS REQUERIMIENTOS ........................................................................................... 21
3.2 REQUERIMIENTOS FUNCIONALES ........................................................................................................ 22
3.3 REQUERIMIENTOS NO FUNCIONALES .................................................................................................. 24
CAPÍTULO 4 DISEÑO CASOS DE USO .................................................................................................................. 25
4.1 FORMATO CASOS DE USO ................................................................................................................... 25
4.2 DIAGRAMA DE CASOS DE USO .......................................................................................................... 26
CAPITULO 5: DISEÑO INTERFAZ GRAFICA ....................................................................................................... 27
5.1 INTERFAZ DE INGRESO ........................................................................................................................ 27
5.2 MODULO FACTURACIÓN ..................................................................................................................... 27
5.3 MODULO ADMINISTRATIVO ............................................................................................................... 29
5.4 MODULO MANTENIMIENTO ............................................................................................................... 30
5.5 MODULO CLIENTE................................................................................................................................. 31
5.6 MODULO VIAJES .................................................................................................................................... 32
CAPITULO 6: INFRAESTRUCTURA PROPUESTA ............................................................................................... 33
6.1 ARQUITECTURA EN LA NUBE ............................................................................................................ 33
6.2 NIVELES DE LA ARQUITECTURA EN LA NUBE .............................................................................. 34
6.3 VENTAJAS Y DESVENTAJAS ARQUITECTURA EN LA NUBE ....................................................... 36
6.4 ESPECIFICACION TECNICA ................................................................................................................. 36
CAPITULO 8: PRUEBAS .......................................................................................... ¡Error! Marcador no definido.
PARTE III CIERRE DE LA INVESTIGACIÓN ........................................................................................................ 38
CONCLUSIONES ................................................................................................................................................... 38
VERIFICACIÓN, CONTRASTE Y EVALUACIÓN DE LOS OBJETIVOS .................................................... 39
SÍNTESIS DEL MODELO PROPUESTO .......................................................................................................... 39
APORTES ORIGINALES ................................................................................................................................... 40
TRABAJOS O PUBLICACIONES DERIVADAS ............................................................................................. 40
LÍNEAS DE INVESTIGACIÓN FUTURAS ...................................................................................................... 40
TRABAJOS DE INVESTIGACIÓN FUTUROS ................................................................................................ 40
BIBLIOGRAFÍA ......................................................................................................................................................... 41
ANEXOS ..................................................................................................................................................................... 42
Tabla de Figuras
Ilustración 1 Diagrama Casos de Uso .......................................................................................................................... 26 Ilustración 2 Interfaz de Ingreso .................................................................................................................................. 27 Ilustración 3 Modulo Facturación menú viajes ............................................................................................................ 27 Ilustración 4 Modulo Facturación menú contratos ...................................................................................................... 28 Ilustración 5 Modulo Facturación menú Actualización Viajes .................................................................................... 28 Ilustración 6 Modulo Facturación menú Facturación .................................................................................................. 28 Ilustración 7 Modulo Administrativo menú reportes ................................................................................................... 29 Ilustración 8 Modulo Administrativo menú Nomina/ .................................................................................................. 29 Ilustración 9 Modulo Administrativo menú Vehículos................................................................................................ 29 Ilustración 10 Modulo Mantenimiento menú reportes ................................................................................................. 30 Ilustración 11 Modulo Mantenimiento menú mantenimiento ...................................................................................... 30 Ilustración 12 Modulo Mantenimiento menú inventario ............................................................................................. 30 Ilustración 13 Modulo Cliente menú Viajes ................................................................................................................ 31 Ilustración 14 Modulo Cliente menú reportes – Viajes ............................................................................................... 31 Ilustración 15 Modulo Cliente menú reportes – Facturación ....................................................................................... 31 Ilustración 16 Ingreso Aplicación Móvil ..................................................................................................................... 32 Ilustración 17 Pantalla Buscar Viajes .......................................................................................................................... 32 Ilustración 18 Infraestructura como Servicio IaaS ....................................................................................................... 34 Ilustración 19 Infraestructura como servicio PaaS ...................................................................................................... 35 Ilustración 20 Plataforma como servicio SaaS ............................................................................................................ 35 Ilustración 21 Diagrama del Prototipo Propuesto ........................................................................................................ 39
Índice de Tablas
Tabla 1Matriz DOFA Scrum ....................................................................................................................................... 20 Tabla 2 Identificación Casos de Uso ........................................................................................................................... 25 Tabla 3 Plantilla para casos de uso .............................................................................. ¡Error! Marcador no definido. Tabla 4 Matriz DOFA Arquitectura en la Nube .......................................................................................................... 36
INTRODUCCIÓN
A través de los inventos como la rueda o el fuego, posteriormente los avances tecnológicos como
carros impulsados a vapor o por combustibles fósiles, ahora que está en auge los carros
eléctricos, así mismo en Colombia y en todo el mundo es normal notar como pequeñas y
medianas empresas siguen llevando sus procesos manualmente o con herramientas ofimáticas
básicas que retrasan la operación (hojas de cálculo en Excel, documentos de Word, o
contabilidad a mano), lo que conlleva a posibles reprocesos o perdida de información
conllevando a pérdidas económicas y de tiempo para la empresa y los trabajadores.
Con el avance tecnológico que se está teniendo actualmente, cada vez son más las empresas que
encuentran la necesidad de acudir a soluciones informáticas las cuales faciliten los procesos
internos, optimicen su producción y permitan un mejor aprovechamiento de los recursos
humanos. Además, la inclusión de nuevas tecnologías puede otorgar un valor extra a los
productos y servicios ofrecidos. El desarrollo de nuevas soluciones informáticas puede establecer
un control para la empresa permitiendo observar de manera detallada la productividad que está
teniendo en cada uno de sus servicios y asimismo generar un control operacional que permita la
mejora continua de la empresa. De igual manera, los clientes pueden tener acceso a información
detallada sobre los servicios contratados con la empresa generando también una ayuda para ellos
teniendo la información en tiempo real sin necesidad de esperar que la empresa contratada
entregue la información generando retrasos en sus actividades.
Razón por la cual en el presente proyecto se genera una propuesta de solución informática para
las pequeñas y medianas empresas de transporte especial en la cual se define una metodología de
desarrollo de software comparando una metodología tradicional contra una de desarrollo ágil,
también se identifican los requerimientos que tiene la solución informática, se dejan las plantillas
para los casos de uso, se plantea el formato estándar que debe utilizar las diferentes interfaces y
la infraestructura que para este caso se define una arquitectura moderna como es en la nube la
cual tiene múltiples beneficios utilizarla.
PARTE I FUNDAMENTACIÓN DE LA INVESTIGACIÓN
CAPITULO 1 DESCRIPCIÓN DE LA INVESTIGACIÓN
1.1 IDENTIFICACIÓN DEL PROBLEMA
Las pequeñas y medianas empresas de transporte especial en Colombia cuentan con buses
propios o asociados los cuales se tercerizan dependiendo la necesidad del negocio para ofrecer
soluciones de movilidad a las compañías que trabajan bajo la modalidad de turnos presenciales o
que requieren transporte para los empleados en turno único como el área administrativa, así
mismo dichas empresas ofrecen servicios de turismo a las personas particulares que lo requieran.
Para tal fin las empresas cuentan con un taller de mecánica donde realizan mantenimientos
preventivos y correctivos al parque automotor, brindando así mayor seguridad y calidad en los
servicios prestados.
En estas empresas se identifica la necesidad de contar con un sistema de información en el cual
se pueda tener el control de la cantidad de buses, microbuses, busetas y /o camionetas, de viajes
de los pasajeros, conductores, buses, rutas etc., para poder gestionar de manera óptima los
recursos o facilitar el seguimiento que se le puede realizar a cada ruta, conductor o bus
reduciendo las quejas que se presentan por posibles malos servicios, así mismo optimizar al
máximo los mantenimientos del parque automotor, generando mayor control en cuanto al
inventario que se tenga de los repuestos o partes, así como generar soluciones de manera eficaz y
controlada dependiendo de las necesidades de transporte que generen los clientes. Generando así
la posibilidad de diseñar un software que permita a la empresa suplir sus necesidades y generar
un valor agregado al negocio.
1.2 OBJETIVOS
Para la investigación propuesta se plantean los siguientes objetivos
1.2.1 OBJETIVO GENERAL
Diseñar una solución informática apoyándose en las necesidades actuales que tienen las
pequeñas y medianas empresas de transporte especial en Colombia.
1.2.2 OBJETIVOS ESPECÍFICOS
• Realizar el levantamiento de información para el diseño de la solución informática.
• Identificar la metodología de desarrollo que se ajuste a la solución informática.
• Diseñar los casos de usos y la arquitectura requerida.
• Plantear el diseño final del sistema de información para las pequeñas y medianas
empresas de transporte.
1.3 JUSTIFICACIÓN
Existen gran cantidad de pequeñas y medianas empresas que se dedican al transporte especial de
pasajeros las cuales dependen de los contratos que adquieren, manejan la información de la
facturación o de la nómina de manera manual o en herramientas básicas como las de office lo
que genera retrasos al momento de realizar los procesos internos de las empresas, generación de
información errónea o Incumplimiento en los contratos que se tienen con los clientes, también se
puede generar dificultad en la toma de decisiones puesto que no se tiene claro el estado actual de
la empresa.
El tipo de justificación seleccionado para esta investigación es “Practico”, debido a que con la
solución informática se propone mejorar los procedimientos y el manejo de la información en las
pequeñas y medianas empresas generando una evolución en el manejo de datos y en la toma de
decisiones, así como un acercamiento con los clientes de estas donde ellos pueden acceder en
tiempo real a la información que requieran.
1.4 HIPÓTESIS
Contar con m el software apropiado para la planeación y ejecución de los contratos de las
organizaciones además de tener la información en tiempo real y mejor organizada traerá
beneficios no solo para las pequeñas y medianas empresas sino para los clientes de las mismas
por tanto se plantea la siguiente hipótesis:
“El uso de la solución informática propuesta aumenta la competitividad de las empresas que la
implementen con respecto a las demás empresas del mercado.”
1.5 MARCO REFERENCIAL
En este apartado se describirán los términos, conceptos, reglamentaciones más importantes y
necesarias para el desarrollo de este proyecto, que permitirán aclarar el tema de investigación y
son el apoyo para cumplir los objetivos propuestos.
1.5.1 MARCO TEÓRICO
Para comenzar a desarrollar el proyecto debemos tener claro los conceptos de pequeñas y
medianas empresas, esto nos lleva a la definición que da para Colombia la ley 905 de 2004 para
realizar la clasificación de las pymes se tienen en cuenta dos criterios:
• Valor de los activos
• El Número de empleados
Para que sea considerada pequeña empresa debe tener unos activos entre 501 y 5.000 salarios
mínimos legales mensuales vigentes y desde 11 hasta 50 empleados, para que sea considerada
mediana empresa debe tener unos activos entre 5001 y 30.000 000 salarios mínimos legales
mensuales vigentes y desde 51 hasta 200 empleados [1].
Para desarrollar la solución informática se va a trabajar bajo metodologías agiles de desarrollo de
software la cuales consisten en utilizar un proceso de acercamiento iterativo al producto final
permitiendo mayor agilidad y una mayor libertad al desarrollador, estas no tienen un plan de
acciones, los integrantes de los equipos son libres de realizar cambios en el proyecto a medida
que va evolucionando o las circunstancias van cambiando [2].
Las metodologías tienen 4 principios los cuales son los siguientes:
1. El foco se debe poner más sobre las personas y las interacciones que sobre los procesos y
herramientas
2. El software funcionando es más importante que la documentación extensiva
3. La colaboración con el cliente es más importante que la negociación contractual
4. El proceso debería responder ante el cambio, en lugar de seguir un plan [3]
Algunas de las principales metodologías agiles son:
1. Scrum
2. Lean and Kanban
3. Programación Extrema (XP)
4. Crystal
5. Método de Desarrollo de Sistemas Dinámicos (DSDM)
6. Desarrollo Basado en Funcionalidades (FDD)
Al momento de realizar una solución informática lo primero que se debe realizar es el
levantamiento de requerimientos que se refiere a la identificación y documentación de los
requerimientos de un sistema, a partir de los usuarios, clientes o interesados (Stakeholders) [4].
También se pueden definir como declaraciones que identifican atributos, capacidades,
características y/o cualidades que necesita cumplir un sistema (o un sistema de software) para
que tenga valor y utilidad para el usuario [5].
A continuación, se relacionan 7 tipos de técnicas para levantar requerimientos de software
1. Análisis de documentación
2. Observación
3. Entrevistas
4. Encuestas o cuestionarios
5. Mesas de trabajo (Workshops)
6. Lluvia de ideas
7. Historia del usuario
1.5.2 MARCO CONCEPTUAL
Estrategia del negocio se designa a aquel plan que se desarrolla a instancias de un negocio con
la misión de lograr ciertos objetivos puntuales a largo plazo [2].
Riesgos Es la probabilidad de que una amenaza se convierta en un desastre [3].
Sistemas de información Conjunto de componentes interrelacionados que permiten capturar,
procesar, almacenar y distribuir la información para apoyar la toma de decisiones y el control en
una institución [4].
1.6 METODOLOGÍA
A continuación se describen cada una de las técnicas metodológicas que se utilizaran para el
desarrollo de este proyecto.
1.6.1 LEVANTAMIENTO DE INFORMACION
Para el levamiento de información utilizaremos como medio para obtener información la
investigación documental ya que fortalece el conocimiento de la problemática planteada así
mismo el conocimiento organizacional puesto que primero se debe recolectar información sobre
las metodologías de desarrollo al mismo tiempo recolectar información de la empresa realizando
observación, encuestas, cuestionarios o reuniones para posteriormente ser utilizada en el
proyecto de investigación.
1.6.2 TÉCNICAS DE BÚSQUEDA DE INFORMACIÓN
Para el levamiento de información utilizaremos como medio para obtener información la
investigación documental ya que fortalece el conocimiento de la problemática planteada así
mismo el conocimiento organizacional puesto que primero se debe recolectar información sobre
las metodologías de desarrollo al mismo tiempo recolectar información de la empresa realizando
observación, encuestas, cuestionarios o reuniones para posteriormente ser utilizada en el
proyecto de investigación.
1.6.3 MÉTODOS DE INVESTIGACIÓN
El diseño planteado responde a la necesidad de aplicación de conocimiento, a partir de la
abstracción de procesos actuales, teniendo como resultado el desarrollo de una solución basada
en el método deductivo, el cual se relaciona con la metodología expuesta por Bernard Löbach
(1981).
Para el desarrollo de este proyecto se propone la aplicación de las cuatro fases descritas por
Löbach en su proceso creativo de solución de problemas, las cuales se describen a continuación:
Fase 1. Preparación: Conocimiento y Análisis del problema, acople de información y Valoración
científica. Como resultado de esta se tendrá una definición y clasificación del problema con una
definición de objetivos para la solución.
Fase 2. Incubación: Soluciones al problema. Elección de métodos para solucionar el problema,
producción de ideas, soluciones del problema.
Fase 3. Iluminación: Valoración de las soluciones al problema. Examen de soluciones, proceso
de selección, proceso de valoración.
Fase 4. Verificación: Realización de la solución del problema. Reiterada valoración de la
solución [5].
1.7 ORGANIZACIÓN DEL TRABAJO
El plan de trabajo de este proyecto se describe a continuación:
PARTE I
1. CAPITULO 1 DESCRIPCIÓN DE LA INVESTIGACIÓN
CAPITULO 1 DESCRIPCIÓN DE LA INVESTIGACIÓN
1.1 IDENTIFICACIÓN DEL PROBLEMA
1.2 OBJETIVOS
1.2.1 OBJETIVO GENERAL
1.2.2 OBJETIVOS ESPECÍFICOS
1.3 JUSTIFICACIÓN
1.4 HIPÓTESIS
1.5 MARCO REFERENCIAL
1.5.1 MARCO TEÓRICO
1.5.2 MARCO CONCEPTUAL
1.6 METODOLOGÍA
1.6.1 LEVANTAMIENTO DE INFORMACION
1.6.2 TÉCNICAS DE BÚSQUEDA DE INFORMACIÓN
1.6.3 MÉTODOS DE INVESTIGACIÓN
1.7 ORGANIZACIÓN DEL TRABAJO
PARTE II
2. CAPITULO 3 DEFINICIÓN DE LA METODOLOGÍA DE SOLUCIÓN
Se refiere a escoger la metodología de desarrollo que se va a utilizar, los métodos de
levantamiento de información y el diseño propuesto.
3. CAPITULO 3 IDENTIFICACIÓN DE REQUERIMIENTOS
Se refiere a realizar el levantamiento de información para identificar los requerimientos
funcionales y no funcionales de la solución informática.
4. CAPITULO 4 DISEÑO CASOS DE USO
Se relaciona la plantilla de identificación, la plantilla para realizar los casos de uso y el diagrama
de los casos de uso.
5. CAPITULO 5 DISEÑO INTERFAZ GRAFICA
En este capítulo comprende el formato de las interfaces gráficas para los menús las cuales se
deben adaptar según la empresa que ingresa a la solución informática.
6. CAPITULO 6 INFRAESTRUCTURA PROPUESTA
En este capítulo comprende la explicación y tipos de arquitectura en la nube basada en Microsoft
mostrado las ventajas y desventajas de las mismas.
PARTE II FUNDAMENTACIÓN DE LA INVESTIGACIÓN
CAPITULO 2 DEFINICIÓN DE LA METODOLOGÍA DE SOLUCIÓN
En este capítulo se exponen dos metodologías de las muchas que existen para el desarrollo de la
solución informática, durante el desarrollo del capítulo se exponen las razones del porque se
eligen las dos metodologías y por último se expone entre las dos con cual se va a trabajar.
2.1 METODOLOGÍA RUP
La metodología RUP proviene de la abreviatura de Rational Unified Process (o Proceso
Unificado Racional), está fue creada por Rational Software, adquirida por IBM, ganando un
nuevo nombre Irup que ahora es una abreviatura Rational Unified Process [6].
Es un proceso de ingeniería de software para asignar tareas y responsabilidades en un proyecto
de desarrollo de software, se asegura la optimización de la producción en el desarrollo de
software generando mayor calidad y adaptándose fácilmente a cambios propuestos por el
usuario, esta metodología está basada en 6 principios claves los cuales son:
• Adaptar el proceso
El proceso deberá adaptarse a las necesidades del cliente ya que es muy importante interactuar
con él. Las características propias del proyecto u organización. El tamaño del mismo, así como
su tipo o las regulaciones que lo condicionen, influirán en su diseño específico [7].
• Equilibrar prioridades
Los requisitos de los diversos participantes pueden ser diferentes, contradictorios o disputarse
recursos limitados. Debe encontrarse un equilibrio que satisfaga los deseos de todos. Gracias a
este equilibrio se podrán corregir desacuerdos que surjan en el futuro [7].
• Demostrar valor iterativamente
Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada iteración
se analiza la opinión de los inversores, la estabilidad y calidad del producto, y se refina la
dirección del proyecto, así como también los riesgos involucrados [7].
• Colaboración entre equipos
El desarrollo de software no lo hace una única persona sino múltiples equipos. Debe haber una
comunicación fluida para coordinar requisitos, desarrollo, evaluaciones, planes, resultados, etc.
[7].
• Elevar el nivel de abstracción
Este principio dominante motiva el uso de conceptos reutilizables tales como patrón del
software, lenguajes 4GL o marcos de referencia (frameworks) por nombrar algunos. Esto evita
que los ingenieros de software vayan directamente de los requisitos a la codificación de software
a la medida del cliente, sin saber con certeza qué codificar para satisfacer de la mejor manera los
requisitos y sin comenzar desde un principio pensando en la reutilización del código. Un alto
nivel de abstracción también permite discusiones sobre diversos niveles y soluciones
arquitectónicas. Éstas se pueden acompañar por las representaciones visuales de la arquitectura,
por ejemplo con el lenguaje UML [7].
• Enfocarse en la calidad
El control de calidad no debe realizarse al final de cada iteración, sino en todos los aspectos de la
producción. El aseguramiento de la calidad forma parte del proceso de desarrollo y no de un
grupo independiente [7].
Esta metodología cuenta con un ciclo de vida, las cuales se exponen a continuación
• Inicio se establece el alcance del proyecto, las limitaciones y se realiza el levantamiento
de requerimientos.
• Elaboración se comienza a establecer los tiempos del proyecto generando un cronograma
de trabajo donde se debe incluir el diseño, la elaboración y la ejecución de pruebas del
software.
• Fase de construcción se realiza el desarrollo del producto dependiendo de los tiempos
establecidos, creando versiones de este y ejecutado las pruebas necesarias para que quede
funcional.
• Transición se realiza la retroalimentación con el cliente en donde se le muestra el
software, el cliente puede pedir ajustes sobre el mismo en donde se deben incluir en el
cronograma para alcanzar los objetivos propuestos en la fase de inicio.
2.2 METODOLOGÍA SCRUM
Es un marco de trabajo por el cual las personas pueden abordar problemas complejos
adaptativos, a la vez que entregar productos del máximo valor posible productiva y
creativamente.
Características de SCRUM:
• Liviano
• Fácil de entender
• Difícil de dominar
Scrum es un marco de trabajo de procesos que ha sido usado para gestionar el trabajo en
productos complejos desde principios de los años 90 [8].
También se puede definir como un proceso en el que se aplican de manera regular un conjunto
de buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado
posible de un proyecto. Estas prácticas se apoyan unas a otras y su selección tiene origen en un
estudio de la manera de trabajar de equipos altamente productivos [9].
La base de Scrum tiene las siguientes características:
• El desarrollo incremental de los requisitos del proyecto en bloques temporales cortos y
fijos (iteraciones de un mes natural y hasta de dos semanas, si así se necesita).
• La priorización de los requisitos por valor para el cliente y coste de desarrollo en cada
iteración.
• El control empírico del proyecto. Por un lado, al final de cada iteración se demuestra al
cliente el resultado real obtenido, de manera que pueda tomar las decisiones necesarias en
función de lo que observa y del contexto del proyecto en ese momento. Por otro lado, el
equipo se sincroniza diariamente y realiza las adaptaciones necesarias.
• La potenciación del equipo, que se compromete a entregar unos requisitos y para ello se
le otorga la autoridad necesaria para organizar su trabajo.
• La sistematización de la colaboración y la comunicación tanto entre el equipo y como con
el cliente. [10]
La metodología Scrum cuenta con los siguientes roles:
• Project Owner (dueño del producto). Se asegura de que el proyecto se esté desarrollando
acorde con la estrategia del negocio. Escribe historias de usuario, las prioriza, y las
coloca en el Product Backlog.
• Master Scrum (director o figura visible del proyecto). Elimina los obstáculos que impiden
que el equipo cumpla con su objetivo.
• Development team Member (equipo de trabajo). Los encargados de crear el producto
para que pueda estar listo con los requerimientos necesarios. Se recomienda que sea un
equipo multidisciplinar, de no más de 10 personas [11].
2.3 ELECCIÓN DE LA METODOLOGÍA
A continuación, se relacionan las ventajas y desventajas de los modelos RUP y Scrum para
posteriormente indicar cual metodología se adapta mejor a la solución informática
2.3.1 VENTAJAS Y DESVENTAJAS DE LA METODOLOGÍA RUP
• Reduce riesgos del proyecto.
• Trabaja sobre el objetivo de calidad de desarrollo de software.
• Integra el mantenimiento del software con el desarrollo de este.
• Un proceso de software configurable, para satisfacer necesidades específicas de un
proyecto.
• Utiliza iteraciones (actividades).
• Facilita la reutilización del código según el avance de las iteraciones.
• Tener todo el control del proyecto de antemano.
• Puede aumentar los costos del proyecto.
• Al ser un método pesado no es recomendable para proyectos pequeños.
• Al tener tanta complejidad no resulta ser muy adecuado.
• Se puede llegar a aplicar incorrectamente aplicándolo al método de cascada.
2.3.2 VENTAJAS Y DESVENTAJAS DE LA METODOLOGÍA SCRUM
• Se definen correctamente los roles.
• Es flexible y adaptable a las nuevas necesidades de los usuarios.
• Reduce riesgos del proyecto.
• Se mejora la productividad de los involucrados en el proyecto.
• Se mantiene una programación organizada.
• Se mantiene una alineación entre el cliente y los desarrolladores del proyecto.
• Se realizan entregas parciales de la solución informática.
• Se agiliza el desarrollo de software.
• Requiere una minuciosa definición de tareas y plazos.
• Necesidad de tener varias personas de distintas disciplinas dentro del equipo de trabajo.
• Si las tareas no se definen correctamente puede generar exceso de costos y tiempos
inexactos.
• Se genera dificultad al momento de planear grandes proyectos.
• Tiene una limitación para trabajar con equipos pequeños.
A continuación, se relaciona la matriz DOFA de la metodología Scrum
Tabla 1Matriz DOFA Scrum
Fortalezas Oportunidades
• Se definen correctamente los roles.
• Es flexible y adaptable a las nuevas necesidades de los
usuarios.
• Reduce riesgos del proyecto.
• Se mejora la productividad de los involucrados en el
proyecto.
• Se mantiene una programación organizada.
• Se mantiene una alineación entre el cliente y los
desarrolladores del proyecto.
• Se realizan entregas parciales de la solución informática.
• Se agiliza el desarrollo de software.
• Clientes complacidos.
• Reutilización de código fuente.
• Mejora en la planeación del desarrollo.
• Comunicación asertiva entre las partes involucradas en el
desarrollo del software.
Debilidades Amenazas
• Requiere una minuciosa definición de tareas y plazos.
• Necesidad de tener varias personas de distintas disciplinas
dentro del equipo de trabajo.
• Si las tareas no se definen correctamente puede generar
exceso de costos y tiempos inexactos.
• Se genera dificultad al momento de planear grandes
proyectos.
• Tiene una limitación para trabajar con equipos pequeños.
• Falta de información del cliente.
• Reuniones muy seguidas sin tener mayores avances.
• Sobrecostos en el proyecto.
• Mala planificación del desarrollo.
• Incumplimiento en los entregables
Fuente: El Autor
La metodología seleccionada para este desarrollo es la metodología Scrum puesto que a pesar de
realizar levantamiento de requerimientos previo y varias reuniones con el cliente, se debe realizar
entregables al cliente donde se debe comenzar a validar la funcionalidad de la solución
informática realizando retroalimentaciones sobre el mismo para así poder realizar ajustes,
adicional a esto se puede tener control del avance del proyecto realizando un control periódico
según como se establezca.
CAPITULO 3 IDENTIFICACIÓN DE REQUERIMIENTOS
En este capítulo se describirán los requerimientos se necesitan para el desarrollo de la solución
informática, clasificándolos en requerimientos funcionales o no funcionales.
3.1 DESCRIPCION DE LOS REQUERIMIENTOS
La solución informática debe contar con los siguientes módulos y especificaciones:
• Módulo de Facturación: Aquí se debe tener el control sobre los contratos, viajes y
solicitudes de viajes adicionales que requieren los clientes, también se debe tener una
relación de cual bus y conductor realizaron o van a realizar los viajes teniendo un
historial, generando reportes preliminares a los clientes cuando lo requieran y teniendo el
control de las rutas, los viajes son sensibles al cambio es decir que no siempre el mismo
bus o el mismo conductor van a poder realizar el mismo viaje pero si se debe mantener la
ruta y los horarios en los puntos de recogida, si se programa un nuevo viaje el cliente lo
pueden ver en tiempo real y le debe llegar una notificación por correo electrónico donde
se le indiquen los datos del bus, el conductor, la hora de partida y la hora estimada en
que llegara el bus a los puntos de encuentro, si el cliente está de acuerdo con el viaje
programado, se deberá entrar nuevamente al módulo para asignar el bus y el conductor,
en cualquier caso ya sea que el cliente este o no esté de acuerdo con el viaje se debe
notificar por correo electrónico y notificación por página web generando un mensaje que
indique si se debe proceder a asignar el conductor o se debe modificar el viaje, en caso
que el cliente no esté de acuerdo con la programación del viaje el mismo cliente puede
modificar los horarios o el sitio de salida, se debe generar la facturación de los viajes
realizados a cada empresa, la cual se debe enviar una copia al cliente y otra a un correo
especifico de la empresa de transporte, esta facturación se realiza según lo requiera el
cliente seleccionando la empresa y las fechas que desea facturar.
• Módulo administrativo: Se tiene control de todo lo que se ha facturado y se debe
evidenciar lo que falta por facturar generando un reporte diario a la persona encargada de
la facturación el cual se debe enviar a un correo electrónico definido por la empresa de
transporte, se debe generar un reporte diario de cuantos kilómetros a recorrido un carro y
cuantos galones de combustible ha consumido, también se debe ingresar los nuevos
conductores e inactivar los conductores que ya no pertenecen a la empresa, así mismo
poder registrar e inactivar los carros que no pertenecen a la empresa denominados como
terceros, se debe generar el reporte de nómina para ser validado por la persona encargada.
• Módulo de Mantenimiento: En este módulo se debe tener control sobre todos los carros
de la empresa, también se debe tener control sobre los repuestos y gasolina que se le
asignado a cada carro o los que están pendientes por asignar, así mismo se debe
programar el mantenimiento preventivo para los vehículos, se debe mantener un historial
de todos los mantenimientos realizados a los vehículos y cuál fue el mecánico o los
mecánicos que realizaron el mantenimiento, los repuestos que se utilizaron y la cantidad
de gasolina que se la colocado a cada vehículo; cada vez que se programe un
mantenimiento se debe notificar al conductor que tenga el carro en ese momento el día y
la hora del mismo, este módulo también debe tener un control de inventarios donde se
ingrese que repuestos se han comprado, con que numero de factura, cada factura debe
tener el nit del proveedor, el número de factura, el subtotal de la misma, el IVA y el total,
para poder utilizar los repuestos se debe generar una orden de servicio la cual debe tener
el mecánico que la solicito, a que bus pertenece y que repuesto van a ser utilizados.
• Módulo cliente: El cliente puede solicitar un nuevo viaje, seleccionando la fecha y la
hora de inicio y fin de este, consultar el detalle de los viajes realizados y los que tiene
programados, así como hacer modificaciones a los mismos, consultar la facturación.
• Módulo de Viajes: Aquí se accede para validar el estado de la ruta, es decir se debe
mostrar un reporte de la ruta seleccionada donde se muestre la hora de inicio de la ruta,
los puntos que ha recorrido, la placa del bus y el conductor que va manejando, cada vez
que el bus pase por un punto de encuentro se debe enviar una notificación al celular de
las personas para que ellos estén enterados de cómo va el recorrido del mismo.
El único modulo que se va a acceder por aplicación móvil es el de viajes el resto de los módulos
se van a poder acceder a través de la WEB autenticándose con el usuario y la contraseña de
Windows de cada colaborador y para el de cliente una contraseña que el mismo creará y el
usuario será el NIT de la empresa, las contraseñas deben vencerse cada 2 meses.
3.2 REQUERIMIENTOS FUNCIONALES
A continuación, se enumeran los requerimientos funcionales
• Módulo Facturación
o El cliente puede ingresar o solicitar un viaje adicional.
o La empresa puede o no aprobar el viaje.
o Se puede consultar todos los contratos que tiene la empresa.
o Se puede ingresar un nuevo contrato.
o Se puede modificar un contrato.
o Se puede consultar todos los viajes que ha realizado un vehículo.
o Se puede consultar todos los viajes que ha realizado un conductor.
o Generación de reportes a clientes de los viajes programados.
o Se puede modificar el conductor del viaje.
o Se puede modificar el bus del viaje.
o Se puede programar un nuevo viaje.
o Enviar notificación por correo la solicitud de nuevo viaje.
o Generar notificación para asignar conductor o modificar viaje
o Asignar bus al viaje nuevo.
o Asignar el conductor al viaje nuevo.
o Modificar el horario del viaje.
o Modificar el sitio de salida del viaje.
o Se debe notificar al cliente los datos del bus, el conductor, la hora de partida y la
hora estimada en que llegara el bus a los puntos de encuentro.
o Generar facturación.
o Enviar facturación al cliente.
o Enviar facturación a correo específico registrado de la empresa.
• Módulo Administrativo
o Generar consulta pendiente por facturar.
o Generar consulta de facturas.
o Enviar correo con reporte de viajes pendientes por facturar.
o Generar reporte diario de kilómetros recorridos por un carro.
o Generar reporte del combustible consumido por vehículo diariamente.
o Ingresar nuevos conductores.
o Inactivar conductores.
o Registrar vehículos nuevos.
o Inactivar vehículos.
o Generar reporte de nómina.
• Módulo mantenimiento
o Generar reporte de los repuestos adquiridos por la empresa.
o Generar reporte de gasolina consumida y la que se tiene en reserva.
o Programar mantenimientos de los vehículos.
o Generar reporte del mantenimiento de los vehículos.
o Notificar al conductor cuando se programe un mantenimiento.
o Tener inventario de los repuestos.
o Generar orden de servicio.
• Módulo cliente
o Solicitar un nuevo viaje.
o Consultar detalle de los viajes realizados.
o Consultar detalle de los viajes programados.
o Modificar viajes.
o Consultar Facturación.
• Módulo de Viajes
o Validar el estado de la ruta.
o Notificar al usuario cuando pase por un punto, inicie ruta o finalice ruta.
3.3 REQUERIMIENTOS NO FUNCIONALES
A continuación, se enumeran los requerimientos no funcionales
• Para la aplicación móvil el sistema debe funcionar en el sistema operativo Android o
IOS
• El sistema debe manejar los colores reglamentarios por la compañía
• El sistema debe visualizar archivos en formato CVS
• Las facturas de deben enviar en PDF.
• El código fuente debe estar formalmente documentado
• El sistema debe funcionar desde las instalaciones de la compañía y de los clientes.
• El sistema debe generar notificaciones dentro de la aplicación
• El sistema debe tener scroll cuando la pantalla crezca
• El sistema debe permitir la interacción con bases de datos SQL
• Al ingresar a la solución informática se debe validar el usuario ingresado con el usuario
de red.
• La contraseña se vence cada dos meses.
CAPÍTULO 4 DISEÑO CASOS DE USO
En el presente capítulo se establece el diseño del formato para los casos de uso
4.1 FORMATO CASOS DE USO
A continuación, se relaciona la plantilla de identificación, la plantilla para realizar los casos de
uso y el diagrama de los casos de uso.
Tabla 2 Identificación Casos de Uso
NUMERO DE CASO
Nombre Descripción Actor
CUXXX Crear Viaje El cliente puede ingresar o solicitar un viaje
adicional Cliente
Fuente: El autor
Descripción de los campos:
• Numero caso de uso siempre debe ir el prefijo CU seguido por un número que indique el
caso de uso, este número no se puede repetir.
• Nombre el nombre que se le asigna al caso de uso.
• Descripción la funcionalidad del caso de uso.
• Actor quien va a realizar la acción.
A continuación, se relaciona la plantilla para crear los casos de uso
Tabla 3 Plantilla para casos de uso
Numero de caso CUXXX
Fecha DD/MM/AAAA
Nombre Crear Viaje
Funcionalidad El cliente puede ingresar o solicitar un viaje
adicional
Actores Cliente
Entradas Fecha y hora del viaje, punto de salida y de
llegada, cantidad de personas.
Salida Notificación de creación del viaje.
Condiciones salida Éxito Solicitud de viaje creada
Error Conexión con la base de datos.
Actor Sistema
Ingresa fechas
Valida que la fecha sea mayor o igual a la actual
Ingresa hora
Fuente: El autor
Descripción de los campos:
• Numero de caso siempre debe ir el prefijo CU seguido por un número que indique el caso
de uso, este número no se puede repetir.
• Fecha se ingresa la fecha que fue creado el caso de uso.
• Nombre el nombre que se le asigna al caso de uso.
• Funcionalidad es lo que el caso de uso va a realizar.
• Actores personas o sistemas de información que interactúan con el sistema.
• Entradas datos que ingresan los actores
• Salida respuesta del sistema
• Condiciones salida
• Actor evento que realiza el actor
• Sistema eventos que realiza el sistema
4.2 DIAGRAMA DE CASOS DE USO
A continuación, se relaciona el diagrama para realizar los casos de uso:
Ilustración 1 Diagrama Casos de Uso
Fuente: El autor
CAPITULO 5: DISEÑO INTERFAZ GRAFICA
A continuación, se presenta el diseño de las interfaces se genera con fondo blanco, porque la
presentación tiene que ser dinámica para adaptarse a la empresa que está utilizando la solución
informática, de la misma manera se propone que se ajusten los colores del menú o el color de la
letra, en todas las paginas se debe tener el logo y el nombre de la empresa.
5.1 INTERFAZ DE INGRESO
Ilustración 2 Interfaz de Ingreso
Fuente: El autor
5.2 MODULO FACTURACIÓN
Ilustración 3 Modulo Facturación menú viajes
Fuente: El autor
Ilustración 4 Modulo Facturación menú contratos
Fuente: El autor
Ilustración 5 Modulo Facturación menú Actualización Viajes
Fuente: El autor
Ilustración 6 Modulo Facturación menú Facturación
Fuente: El autor
5.3 MODULO ADMINISTRATIVO
Ilustración 7 Modulo Administrativo menú reportes
Fuente: El autor
Ilustración 8 Modulo Administrativo menú Nomina/
Fuente: El autor
Ilustración 9 Modulo Administrativo menú Vehículos
Fuente: El autor
5.4 MODULO MANTENIMIENTO
Ilustración 10 Modulo Mantenimiento menú reportes
Fuente: El autor
Ilustración 11 Modulo Mantenimiento menú mantenimiento
Fuente: El autor
Ilustración 12 Modulo Mantenimiento menú inventario
Fuente: El autor
5.5 MODULO CLIENTE
Ilustración 13 Modulo Cliente menú Viajes
Fuente: El autor
Ilustración 14 Modulo Cliente menú reportes – Viajes
Fuente: El autor
Ilustración 15 Modulo Cliente menú reportes – Facturación
Fuente: El autor
5.6 MODULO VIAJES
Ilustración 16 Ingreso Aplicación Móvil
Fuente: El autor
Ilustración 17 Pantalla Buscar Viajes
Fuente: El autor
CAPITULO 6: INFRAESTRUCTURA PROPUESTA
En este capítulo se expone la infraestructura propuesta para el desarrollo de la solución
informática, durante el desarrollo del capítulo se exponen las razones del porque se elige dicha
metodología exponiendo las ventajas y desventajas.
6.1 ARQUITECTURA EN LA NUBE
El concepto de nube reseña a los softwares, servicios de almacén y transferencia de datos que se
ejecutan en Internet, en lugar de hacerlo localmente en tu ordenador esto sirve para acceder a la
información de forma ágil evitando acumular discos duros en casa [12].
Las soluciones en nube son herramientas para crear y almacenar contenido o información, así
como estrategias sobre dónde y cómo consumirlo. Estas soluciones se utilizan para crear
infraestructuras virtuales para organizaciones grandes y pequeñas para instalar aplicaciones o
funciones de negocios, así como un lugar para desarrollar y crear nuevas capacidades.
Adicionalmente, incluyen servicios o productos de pago inmediato (hardware, software y redes)
y soluciones que usted puede adquirir para instalar en su entorno específico [13].
Para dar con el inicio del concepto de nube debemos remontarnos a la prehistoria de Internet.
Pese a que este concepto nación en 1990, algunos pioneros de la computación anticiparon el
destino de las redes computacionales en la década de los 60. J.C.R. Liclkider, que participó en el
desarrollo de ARPANET, −red de computadoras creada por encargo del Departamento de
Defensa de los Estados Unidos−, y John McCarthy, padre del término Inteligencia Artificial,
fueron dos de los principales previsores de lo que se convertiría en la nube [12].
Por otra parte, en 1996, Douglas Parkhill con su libro llamado “El desafío de la utilidad de la
computadora” exploró a fondo muchas de las características actuales de la computación en nube,
así como la comparación de la industria eléctrica y el uso de las formas públicas, privadas,
comunitarias y gubernamentales [14].
En la década de los 90s las empresas de telecomunicaciones eran quienes ofrecían redes privadas
virtuales (VPN) con una calidad de servicio semejante, pero a un costo mucho menor. Al ser
capaces de equilibrar el tráfico pudieron hacer uso del ancho de banda total de la red con mayor
eficacia [14].
Este tipo de arquitectura debe ofrecer las siguientes características:
• Disponibilidad, cuando los usuarios prueban un servicio en la nube, normalmente suelen
hacerlo como alternativa a que una aplicación se ejecute directamente en su equipo de
escritorio u otro dispositivo conectado [15].
• Seguridad, en servicio en la nube no prosperará a menos que los clientes y los clientes
potenciales confíen en que sus datos confidenciales estarán seguros en el servicio [15].
• Escalabilidad y elasticidad: tus recursos computacionales no estarán limitados a una
capacidad estática. Con esta funcionalidad de las plataformas en la nube tus sistemas se
adaptarán a la carga a la que están siendo sometidos, por lo que no se agotará el
almacenamiento o la capacidad de computación de tu aplicación [16].
• Independencia entre el dispositivo y la ubicación: ya no son necesarios los equipos ni las
tediosas salas de data centers. La computación en la nube se caracteriza por la puesta a
disposición de consolas de administración y múltiples ambientes de trabajo que pueden
ser accedidas a través de un dispositivo móvil, tu editor de código favorito o en tu
computador, independientemente del lugar en el que te encuentres ubicado [16].
• Costo: los costos se reducen notablemente. Un servidor en la nube convierte los gastos de
capital en gastos de funcionamiento, lo cual tiene como resultado la reducción de barreras
de entrada, ya que la infraestructura se proporciona típicamente por una tercera parte y no
tiene que ser adquirida por una sola vez o tareas informáticas intensivas infrecuentes [16].
• Rendimiento: el rendimiento es una pieza clave en este modelo tecnológico, ya que todos
los recursos están dispuestos para la optimización del resultado final. Se crean múltiples
integraciones para que el usuario esté en capacidad de hacer un seguimiento permanente
e implementar correcciones que permitan obtener aún más capacidad de los mismos
recursos [16].
• Mantenimiento: en el caso de las aplicaciones de computación en la nube, este proceso se
reduce a la asignación de personal capacitado para manejar servicios de seguimiento. La
plataforma se encargará de lo demás, ya que el mantenimiento a los sistemas se puede
configurar para que se dé automáticamente. Esto reduce tiempos de implementación que
resulta en que se pueda centrar la atención en la producción del software [16].
6.2 NIVELES DE LA ARQUITECTURA EN LA NUBE
Para la arquitectura en la nube se encuentran tres niveles dependiendo los servicios que ofrecen
los proveedores, a continuación se explican los niveles de servicio
• Infraestructura como servicio (IAAS) La Infraestructura como un servicio es un modelo
de aprovisionamiento, en el cual una organización coloca ‘fuera de ella’ el equipo usado
para soportar operaciones, esto incluye el almacenamiento de la información, el
hardware, servidores y componentes de redes. El proveedor del servicio. En ocasiones la
IaaS es referida también como Hardware as a Service o HaaS [17].
Ilustración 18 Infraestructura como Servicio IaaS
Fuente: Microsoft Azure [18].
• Plataforma como servicio (PAAS) es un entorno de desarrollo e implementación
completo en la nube, con recursos que permiten entregar todo, desde aplicaciones
sencillas basadas en la nube hasta aplicaciones empresariales sofisticadas habilitadas
para la nube. Usted le compra los recursos que necesita a un proveedor de servicios en la
nube, a los que accede a través de una conexión segura a Internet, pero solo paga por el
uso que hace de ellos. [19]
Ilustración 19 Infraestructura como servicio PaaS
Fuente: Microsoft Azure [19]
• Software como servicio (SAAS) ofrece una solución de software integral que se adquiere
de un proveedor de servicios en la nube mediante un modelo de pago por uso. Usted
alquila el uso de una aplicación para su organización y los usuarios se conectan a ella a
través de Internet, normalmente con un explorador web. Toda la infraestructura
subyacente, el middleware, el software y los datos de las aplicaciones se encuentran en el
centro de datos del proveedor. El proveedor de servicios administra el hardware y el
software y, con el contrato de servicio adecuado, garantizará también la disponibilidad y
la seguridad de la aplicación y de sus datos. SaaS permite que una organización se ponga
en marcha y pueda ejecutar aplicaciones con un costo inicial mínimo. [20]
Ilustración 20 Plataforma como servicio SaaS
Fuente: Microsoft Azure [20]
6.3 VENTAJAS Y DESVENTAJAS ARQUITECTURA EN LA NUBE
A continuación se enumeran las diferentes ventajas y desventajas
• Costos se reducen considerablemente los costos de implementación.
• Competitividad.
• Disponibilidad.
• Implementación.
• Accesibilidad.
• Escalabilidad.
• Privacidad.
• Disponibilidad.
• Control sobre los recursos.
• Dependencia.
• Integración.
Tabla 4 Matriz DOFA Arquitectura en la Nube
Fortalezas Oportunidades
•Costos
•Competitividad
•Disponibilidad.
•Implementación
•Accesibilidad
•Escalabilidad
• Confidencialidad en los datos.
• Control sobre los recursos.
• Integración.
• Disponibilidad.
• Accesibilidad.
Debilidades Amenazas
• Privacidad
• Disponibilidad
• Control sobre los recursos
• Dependencia
• Confiabilidad
• Privacidad.
• Disponibilidad
• Control sobre los recursos
• Dependencia
• Integración
Fuente: El Autor
6.4 ESPECIFICACION TECNICA
Se propone una máquina virtual tipo E8-4s v3 (4 vCPU; 64 GB de RAM) con un tiempo de uso
de 744 Horas al mes es decir 31 días, un sistema operativo Windows Server 2012 incluyendo la
base de datos SQL Server, un disco duro de 128 Gb 500 E/S por segundo, esta es la
configuración inicial a medida que vaya aumentando la información o el sistema de información
se puede ir aumentando estas características de hardware.
Tabla 5 Especificación y Presupuesto Propuesto
Tipo de Servicio Descripción Costo Estimado
Virtual Machines 1 E8-4s v3 (4 vCPU; 64 GB de RAM) x 744 Hours;
Ventaja híbrida de Azure para Windows Server – SQL
Server; Pago por uso; 1 discos de sistema operativo
administrados: P10
$1.529,73
App Service Nivel Básico; 1 B3 (4 núcleos, 7 GB de RAM, 10 GB
de almacenamiento) x 744 Hours; SO Windows
$223,20
Azure SQL Database Base de datos única, modelo de compra Núcleo virtual,
nivel Uso general Tier, Gen 4, 1, instancias 8 vCore x
744 Hours, 128 GB de almacenamiento, 128 GB de
almacenamiento de copia de seguridad
$1.528,51
Security Center Nivel Estándar, 2 nodos x 744 Hours $29,76
Azure DevOps Usuarios: 5 usuarios de Azure DevOps, 5 partes
interesadas, 5 suscriptores de Visual Studio.
Extensiones: 5 usuarios de Test Plans, 0 usuarios de
Artifacts. Servicios adicionales: 0 canalizaciones
hospedadas de Microsoft + 0 canalizaciones
autohospedadas, 5 VUM
$260,00
Soporte Soporte $0,00
Total al mes $3.571,20
Fuente: El autor
PARTE III CIERRE DE LA INVESTIGACIÓN
CONCLUSIONES
La metodología RUP tiene como principio la reducción de riesgos de los proyectos trabajando
sobre el objetivo de calidad en el desarrollo del software integrando el mantenimiento de la
aplicación, también facilita la reutilización del código para avanzar en el desarrollo del mismo,
se configura el proceso de desarrollo para satisfacer las necesidades del cliente teniendo el
control total del mismo, si no se planifica correctamente el proyecto puede tener sobrecosto
generando pérdidas económicas y de tiempo, al ser altamente complejo la implementación del
mismo no resulta ser muy adecuado para implementar en proyectos de desarrollo pequeños, se
puede confundir con el método de cascada.
A pesar de la evolución de los modelos de desarrollo aún existen muchos proyectos que utilizan
el modelo de desarrollo RUP esto en cambio de ser una alternativa viable puede ser un problema
si no se tiene clara la dimensión del mismo es decir si se aplica una metodología pesada como
RUP en proyectos muy pequeños por el grado de complejidad a la hora de implementarla no se
puedan cubrir los costos de dedicación del equipo de profesionales necesarios o no se estiman
correctamente los costos adicionales del mismo.
La metodología SCRUM tiene la ventaja que desde el principio se tiene una minuciosa
definición de las tareas y plazos para definir adecuadamente los roles mejorando la
productividad, generando flexibilidad y adaptabilidad a nuevas necesidades de los usuarios
reduciendo los riesgos de los proyectos puesto que se tiene una programación organizada
manteniendo una alineación entre los requerimientos del cliente y los desarrolladores, realizando
entregas parciales agilizando el desarrollo de software y así realizando entregas parciales para
validación del cliente, se requiere tener varias personas de distintas disciplinas dentro del equipo
de trabajo, si las tareas no se definen de manera correcta puede generar exceso de costos y
replanteamiento del cronograma.
La arquitectura en la nube reduce considerablemente los costos de implementación puesto que en
cambio de comprar servidores físicos y licencias lo que se realiza es un alquiler de los mismos en
la nube, por la motivo la competitividad de las pequeñas empresas aumenta puesto que obtienen
con mayor facilidad últimas tecnologías generando crecimiento en el posicionamiento
tecnológico frente a empresas más grandes, en cuanto la disponibilidad no es un factor a
preocuparse puesto que el proveedor debe garantizar el funcionamiento de la arquitectura y por
ende las aplicaciones sobre ella, la implementación del software es transparente al no
preocuparse por la implementación, configuración y mantenimiento de la misma, esto se
establece cuando se realiza el contrato ya que se define desde el principio con el proveedor el
cual se encarga de realizar todo esto, al tratarse de un sitio alojado en la nube la accesibilidad es
excelente ya que debe contar con acceso a internet para poder administrarla, la escalabilidad a
nivel de cliente es transparente porque no tiene que preocuparse por actualización de software o
de seguridad esto va incluido y se acuerda al momento de la firma del contrato.
Entre los inconvenientes para la arquitectura en la nube se encuentran la privacidad al dejar toda
la responsabilidad de los datos al proveedor, en el contrato se tiene que establecer la
confidencialidad de los datos, la disponibilidad aunque es una ventaja para el cliente también
puede ser una desventaja porque si el proveedor no puede asegurarla o presenta alguna falla el
cliente debe esperar hasta que el proveedor solucione los inconvenientes generando
indisponibilidad con el cliente interno y externo, no se puede tener control sobre la
infraestructura que es utilizada o sobre la información que es cargada a la nube, el cliente se
vuelve dependiente del proveedor y de la conexión a internet.
VERIFICACIÓN, CONTRASTE Y EVALUACIÓN DE LOS OBJETIVOS
Se cumplió el objetivo de diseñar la solución informática puesto que se establecieron los
requerimientos funcionales y no funcionales realizando el levantamiento de información, se
realizó el análisis DOFA de las metodologías de desarrollo eligiendo la más óptima para el
desarrollo del mismo, a partir del levantamiento de información se genera el diseño de la
plantilla de los casos de uso y de la identificación de los mismos así como el diagrama de los
casos de uso, a partir de esto se plantea el diseño de las interfaces de los diferentes módulos que
se identificaron en el levantamiento de información, adicional a esto se plantea una arquitectura
en la nube puesto que se está implementando soluciones informáticas en la misma generando
reducción de costos.
.
SÍNTESIS DEL MODELO PROPUESTO
El prototipo propuesto en el presente documento se puede analizar a través del siguiente
diagrama
Ilustración 21 Diagrama del Prototipo Propuesto
Fuente: El autor
APORTES ORIGINALES
En el presente documento se trabajó sobre la arquitectura en la nube bajo Microsoft aquí se va a
desarrollar todo en la nube incluyendo las aplicaciones móviles y web para todos los clientes,
también se propone un software el cual se adapte a cualquier empresa de transporte especial
generando que la información de todas las empresas este centralizada y en tiempo real.
TRABAJOS O PUBLICACIONES DERIVADAS
Una solución de transporte que no solo incluya transporte especial sino todo tipo de transporte ya
sea de carga o de pasajeros intermunicipales, teniendo centralizada la información y generando
reportes a las entidades que regulan dichas empresas.
LÍNEAS DE INVESTIGACIÓN FUTURAS
Para la solución planteada en el presente documento, no resulta suficiente teniendo en cuenta el
nivel de demanda de uso no es muy amplio puesto que la solución se adaptaría fácilmente para
otros tipos de empresas de transporte.
TRABAJOS DE INVESTIGACIÓN FUTUROS
Durante el desarrollo del proyecto se encuentran líneas de investigación interesantes como
plantear nuevas metodologías de desarrollo, ampliar la solución informática planteando un
sistema que integre todas las empresas de transporte del país ya sea intermunicipal, de carga o de
transporte de pasajeros, integrar el uso de web services o de compartir información a través de
archivos para ser procesados por las diferentes empresas, seguir investigando sobre arquitectura
en la nube explorando sus beneficios y minimizando riesgos.
BIBLIOGRAFÍA
[1] Semana, "Colombia, el país de los ‘smartphones’," Semana, 2015.
[2] "Definición ABC," 2017. [Online]. Available: https://www.definicionabc.com/negocios/estrategia-de-
negocio.php. [Accessed 13 02 2019].
[3] "unisdr," 2014. [Online]. Available: https://www.unisdr.org/2004/campaign/booklet-spa/page9-spa.pdf.
[Accessed 16 01 2019].
[4] "Gerencie.com," 2016. [Online]. Available: https://www.gerencie.com/sistemas-de-informacion.html.
[Accessed 17 02 2019].
[5] L. B, Diseño Industrial, Barcelona: Editorial Gustavo Gilí, S. A., 1984.
[6] Anonimo, "Metodoss," [Online]. Available: https://metodoss.com/metodologia-rup/. [Accessed 07 03 2019].
[7] GrupNADD, 27 06 2012. [Online]. Available: http://rupmetodologia.blogspot.com/2012/06/principios-de-
desarrollo-de-la.html. [Accessed 7 Marzo 2019].
[8] K. S. a. J. Sutherland, "The Scrum Guide," in The Scrum Guide, 2017, p. 3.
[9] proyectosagiles, "proyectosagiles," [Online]. Available: https://proyectosagiles.org/que-es-scrum/. [Accessed
11 03 2019].
[10] "proyectosagiles," [Online]. Available: https://proyectosagiles.org/fundamentos-de-scrum/. [Accessed 10 03
2019].
[11] sinnaps, "sinnaps," [Online]. Available: https://www.sinnaps.com/blog-gestion-proyectos/metodologia-scrum.
[Accessed 11 03 2019].
[12] Holdead, "HOLDEAD," [Online]. Available: https://www.holded.com/es/blog/historia-de-la-nube/. [Accessed
12 04 2019].
[13] Anonimo, "Seagate," [Online]. Available: https://www.seagate.com/la/es/tech-insights/cloud-compute-and-
cloud-storage-architecture-master-ti/. [Accessed 12 04 2019].
[14] Boxbyte, "FayerMayer," 2012 01 06. [Online]. Available: https://www.fayerwayer.com/2012/01/el-origen-de-
el-computo-en-la-nube/. [Accessed 12 04 2019].
[15] Akamai, "Akamai," [Online]. Available: https://www.akamai.com/es/es/resources/cloud-architecture.jsp.
[Accessed 13 04 2019].
[16] Pao, "Next_U," [Online]. Available: https://www.nextu.com/blog/6-caracteristicas-de-la-computacion-en-la-
nube/. [Accessed 12 04 2019].
[17] F. C. Martínez Godínez and B. V. Gutiérrez Galán, "Universidad Nacional Autónoma de México," [Online].
Available: https://revista.seguridad.unam.mx/numero-08/computo-en-nube-ventajas-y-desventajas. [Accessed
19 04 2019].
[18] Microsoft Azure, "Microsoft Azure," [Online]. Available: https://azure.microsoft.com/es-es/overview/what-is-
saas/. [Accessed 19 04 2019].
[19] Microsoft Azure, "Microsoft Azure," [Online]. Available: https://azure.microsoft.com/es-es/overview/what-is-
paas/. [Accessed 19 04 2019].
[20] Microsoft Azure, "Microsoft Azure," [Online]. Available: https://azure.microsoft.com/es-es/overview/what-is-
saas/. [Accessed 19 04 2019].
ANEXOS