Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PRACTICAS SUPERVISADAS
Tabla de contenido
PROBLEMA ASIGNADO 3
ANTECEDENTES 3
JUSTIFICACION 6
OBJETIVOS 10
MARCO TEORICO 11
LA BASE DE DATOS 11
SQL 13
¿QUÉ ES UN IDE? 17
¿QUÉ ES C#? 18
¿QUÉ ES .NET? 19
ANDROID STUDIO 20
CREACIÓN DE LA APLICACIÓN 22
Problema Asignado
Fue seleccionado el problema número cuatro, el cual despues fue revelado con la siguente
información. El problema consiste en una agencia de renta vehiculos la cual desea una aplicación de
base de datos con el fin de llevar el control de los alquileres de los vehículos que realiza a clientes.
También se nos da a conocer que los Vehiculos son definidos por su numero de matricula, modelo,
marca, color, línea, tipo de combustible, centímetros cúbicos, cilindros y el precio de compra; Los
Clientes se reconocen como un Nit, dirección, nombre completo y teléfono; Los Empleados por su
ID, nombre, apellido, teléfono, direccíon, departamento donde trabaja y su correo electronico; Y
además se registra el alquiler mismo del automovil como, el vehiculo alquilado, cliente, monto a
pagar, fecha de alquiler, deposito por daños o perjuicios. Todo esto es lo que se proporciona, y con lo
Antecedentes
La compañía de renta de vehiculos “Sienar Systems” opera desde 1980 en Guatemala y Costa
Rica bajo el cargo de Jorge Cassian, un empresario de origen Guatemalteco y Estado Unidense que
vio la oportunidad en el negocio de renta de vehiculos. En 1990 Sienar Systems alcanzó la cima
Desde entonces fue creciendo, junto a sus clientes y demanda, madurando en la renta de
vehiculos para el transporte humano. Cassian inventó el sistema que llamó “Warp” de ordenación de
registros y datos de clientes en grandes depositos. Un sistema muy simple y eficiente que consistia en
la renta de un vehiculo, esta se registraba en una tabla diseñada especialmente con el codigo de
vehiculo alquilado, el cliente que lo alquiló, el monto pagado, la fecha de alquiler y la cantidad del
seguro por daños o perjuicios. Con toda esta información se podia hacer un seguimiento de los
vehiculos disponibles, la calidad de los clientes fieles y el presupuesto para reparaciones mecanicas
necesarias. Además cada vehiculo, Cliente y empleado era registrado con el fin de conocer las
caracteristicas exactas de cada uno para poder realizar especulaciones o desiciones con mas certeza.
Sistema de Gestión Comercial (SIGES-CW) 4
El sistema “Warp” le permitió a Cassian tomar las mejores desiciones basadas en el analisis
Figura 1
Libro con tablas Warp para el registro de salidas de automoviles Ford en 1885
Nota. El contador era el que registraba las tablas Warp en grandes libros con el fin de crear
Durante varios años lideró en la industria de renta de vehiculos. Pero a inicios de los 2000,
la competencia optó por usar los sistemas automatizados computarizados para el registro de la renta
de vehiculos. El sistema Warp era exacto pero a comparacion de un sistema computarizado, era muy
ineficiente. Lo que llevó a Sienar Systems a una epoca muy dura en la que sobrevivian con la lealtad
Cassian tomó una decisión sabia al dejar la empresa en manos de su hijo Ackbar Cassian. El
joven Ackbar conocia ya los sistemas automatizados y con valentia decidio transformar el sistema
Warp para evolucionar a un nuevo sistema automatizado de gestíon de base de datos, al que llamó
SIGES-CW en sus siglas Sistema de Gestión Comercial en Warp. Este sistema fue estructurado de
manera conceptual pero no fue ejecutado sino hasta este año (2022) con el fin de volver a agilizar la
Figura 2
El hardware necesario ya fue instalado en las oficinas de Sienar como vemos en la Figura 2
para que el Software sera instalado y la documentación se use con el proposito de orientar a los
trabajadores. Concemos la estructura del sistema Warp en el que nos basamos y solo queda su
ejecución.
Sistema de Gestión Comercial (SIGES-CW) 6
Justificación
El sistema Warp ya fue mencionado y reconocido por su eficiencia, pero al ser un proceso
Errores que todos cometemos y por nuestra propia naturaleza humana somos incapaces de
evitarlos en su totalidad. Esto nos deja con los errores de un sistema fisico:
-Modificable
-Falsificable
-Lento
No podemos evitar que estos errores o problemas sucedan en un sistema Fisico, mas
podemos ser capaces de crear una nueva forma de registrar estos datos, una forma mas rapida y
exacta. Los sistemas digitales no tienen estos problemas listados anteriormente. A continuacion se
ordenamiento con el fin de encontrar patrones o tendencias y así realizar estudios de mercado, como
empresa. (Oracle, 2022)En los ultimos años el analisis de datos ha tendido a realizarse de manera
automatizada para que sea de manera rapida y con exactitud. Podemos ver en la figura 3 como la
mayor fuente de economia para una empresa basada en datos. Vemos como de 2012 a 2014 la
El Analisis de los datos permite a las empresas tomar desiciones mas sabias o eficazes, como
en nuestro caso, la tendencia de que carro es más rentado y cuales son sus cualidades.
Figura 3
Nota. Adaptado de Big data in building energy efficiency: understanding of big data and
En un sistema fisico, los datos pueden ser robados, incluso si se almacenan en un lugar de
seguridad alta, la probabilidad de ser robados por alguien que tenga acceso es alta. Pueden ser
robados, eliminados, modificados y muchas otras cosas para el beneficio propio. Y nada nos puede
asegurar que no suceda. Los sistemas digitales no permiten la modificación, eliminación o consulta
de ciertos datos si no a la persona identificada y autorizada, por tanto se necesitaria un ataque muy
vistoso y detectable para entrar a un sistema así. (Microsoft, 2022) Tambien la generación de
registros nuevos es facilmente controlable, si un dato es fuera de rango o no posee registros que lo
Figura 4
En la figura 4 vemos una ilustración grafica oficial de los niveles de seguridad dentro de la
base de datos, de forma que esta pueda ser manejada pero con la suficiente seguridad para que no
Eficacia de Registros
Texas A&M mostró que 51,4% de ellos las usa en la recolección de datos en terreno, un 30%
más que el año anterior; y cerca del 23% y el 46% de los contratistas usa aplicaciones móviles para
distintas áreas de su trabajo, tales como gestión de proyectos, licitaciones, modelado de información
de construcción, contabilidad, etcétera. (DataScope, 2022) (Zhu, Wu, & Song, 2016)
velocidad y tiempo es muy valioso para la empresa. Por tanto un sistema digital es un ideal para
Teniendo ya una percepción clara acerca de los beneficios y justificando la creación de una
aplicación digital para el registro del Warp, ahora se explicará su funcionamiento y como será creada
Objetivos
Los objetivos a alcanzar se enlistan a continuación, recordemos que nuestra meta final es la
automatización del proceso Warp para Sienar Sistems. Por tanto los objetivos especificos y generales
son:
Objetivos Generales:
Objetivos Especificos:
aplicaciones.
Sistema de Gestión Comercial (SIGES-CW) 11
Marco Teórico
aplicación SIGES-CW con el fin de planificar y detallar todo antes de ser codificado y ejecutado,
llegando así a un resultado optimo. Primero se debe destacar que esta sección se divide en dos
La Base de Datos
Para el almacenamiento de datos del registro Warp se necesita una base de datos con los
Una base de datos es una recopilación organizada de información o datos estructurados, que
de datos está controlada por un sistema de gestión de bases de datos (DBMS). En conjunto, los datos
y el DBMS, junto con las aplicaciones asociadas a ellos, reciben el nombre de sistema de bases de
En nuestro caso, el Gestor de Base de Datos que usaremos será Microsoft SQL Server con el
Figura 5
Como vemos en la figura 5, al 2016 Microsoft SQL Server es el tercer gestor de base de datos
mas usado, por tanto posee una gran confiabilidad sobre otras opciones. No usaremos Oracle o
MySQL como gestor por motivos de mantener la simplicidad al momento de conectar a la aplicación
en Windows.
usando una plataforma de base de datos hibrida y escalable que tiene todo integrado, desde memoria
La versión usada es Microsoft SQL Server 2019 15.x que al ser la actualización estable mas
reciente, posee nuevas caracteristicas tales como Virtualización de datos y SQL Server 2019 Big Data
Clusters, Base Inteligente, Proceso de Consulta Inteligente, Base de datos en memoria y Monitoreo.
Todas estas caracteristicas y su gran compatibilidad con los programas en que la Aplicación será
Figura 6
SQL
Ya se habló acerca de MSS ahora conoceremos lo que es una base de datos en SQL. Las bases
de datos que se manipulan con SQL se han vuelto un estandar internacional y la normalidad de estas
llega al punto que son muy pocas las bases de datos que no se controlan con SQL.
SQL es un lenguaje de computación para trabajar con conjuntos de datos y las relaciones
entre ellos. (Microsoft, 2021) SQL es un lenguaje conocido como de Alto Nivel, osea que se asemeja
mas al inglés que a un codigo binario, ya que su sintaxis se basa en palabras y conectores en Inglés es
muy facil de aprender y de usar para la gestión de bases de datos. SQL se usa para crear consultas o
La ventaja de SQL es su sintaxis facil de entender y su capacidad para crear querys o bases de
Figura 7
Nota. Adaptado de BookDown Intro a las Bases de Datos Mapa mental del funcionamiento
En la figura 7 vemos todas las diferentes caracteristicas y capacidades de SQL, entre ellas la
definicion, manipulación, control, transacción y el Loop dentro de bases de datos. Podemos ver como
en el brazo de “Manipulación(DML)” se destaca que solo es posible con tablas, esto es porque se usa
principal a clave externa. Se crea un enlace entre dos tablas donde la clave principal de una tabla se
asocia con la clave externa de otra tabla utilizando las relaciones de la base de datos. (Tecnologías
Información, 2018)
Figura 8
Nota. Adaptado de Kyocode Crear diagramas de base de datos SQL Server Diagrama EER
Adaptación al Problema
Conocemos que la base de datos para nuestro problema se realizará en MSS y en SQL por
tanto ahora presentaremos la adaptación de los conceptos conocidos al problema de Sienar Systems.
Iniciaremos con la recopilacion de los datos que ya conocemos, y luego en la creación de un diagrama
puede ser solucionada facilmente con una base de datos simple y tablas relacionales.
-Color
VEHÍCULO -Linea
-Tipo de Combustible
-Volumen en cm ³
-Cilindros
-Precio de Compra
CLIENTES -Dirección
-Nombre Completo
-Teléfono
-Apellido
EMPLEADO -Teléfono
-Dirección
-Correo Electronico
-Vehiculo Alquilado
-Cliente
EER para posteriormente crear la base de datos. El diagrama EER lo vemos en la figura 9.
Figura 9
Nota. Vemos como en “Alquiler” los campos placa, nit y id no están en la tabla, esto es
Si realizamos una inspección rapida, vemos que se cumplen las condicionantes del problema,
un vehiculo puede ser alquilado muchas veces, un cliente puede alquilar muchos vehiculos y un
empleado puede alquilar muchos vehiculos a clientes. Aunque esta ultima no es particularmente
mencionada en el problema, ya que no existe un campo que una a la tabla “Empleado” con alguna
otra, por tanto se creó como algo fuera de los especificado con fines de integración.
Hemos terminado nuestra base de datos teorica, en un furuto será codificada para su
implementación pero primero debemos conocer las herramientas que usaremos para crear y
enfocadas en c# y c++, es muy popular por sus herramientas graficas para la generacion de
interfaces. Posee ademas una versión para MacOS con muchas de las opciones que posee Windows
pero sin el soporte para WinForms. (Microsoft, 2022) En este proyecto se usará para la aplicación de
escritorio
Figura 10
¿Qué es un IDE?
Un IDE es por sus siglas un Entorno de Desarrollo Integrado, es usado por programadores
para el desarrollo de aplicaciones, su uso es muy frecuente debido a las herramientas que
proporcionan, un IDE para ser llamado así debe de tener un Editor de Codigo Fuente, una
una GUI (Graphic User Interface) muy llamativa y facil de usar. (RedHat, 2019)
se usara un IDE u otro, existen suficiente para cada decision de sistema. Muchos proveedores de
Sistema de Gestión Comercial (SIGES-CW) 18
software poseen su propio IDE pero los mas usados son de otras empresas que se dedican a la
¿Que es C#?
campaña de .NET de 2000. Permite al programador crear aplicaciones robustas de .NET que ademas
son seguras. Es un lenguaje perteneciente a la familia de C junto a C++ y es muy familiar para Java
por tanto se le considera de Nivel muy Bajo al tener una Sintaxis estricta y complicada poco similar
al Inglés.
visuales.
usado y en Stack Overflow es el octavo. Dejandonos con la conclusión se ser un lenguaje muy usado.
Figura 11
¿Qué es .NET?
.NET es una plataforma gratuita multiplataforma código abierto para desarrolladores para
compilar muchos tipos de aplicaciones. .NET se basa en un entorno de ejecución de alto rendimiento
que se usa en producción por muchas aplicaciones a gran escala. (Microsoft, 2022)
Por tanto es una plataforma que permite el desarrollo multi-plataforma como proyecto de
Microsoft para promocionar sus Apps, es de codigo abierto y su fuente se encuentra en su respectivo
repositorio de GitHub.
GitHub. En este proyecto se usa GitHub para descentralizar los archivos y que sea posible el
desarrollo de la aplicación en diferentes dispositivos. GitHub es un cliente de Git. Git es una version
de control de Sistema de codigo abierto y diseñado para manejar proyectos de cualquier tamaño con
Android Studio
operativo de Andorid, reemplazando a Eclipse para el desarrollo de apps android. Está basado en
IntelliJ IDEA que posee una interfaz similar y es un IDE diseñado para Java, Kotlin, Goovy y Scala
que son los lenguajes mas usados en el desarrollo de apps Android. (Android, 2022)
Android Studio fue capaz de destronar a Eclipse y a IntelliJ IDEA gracias a nuevas
caracteristicas como el sistema Gradle de compilacion flexible, emulador rapido, entorno unificado
para todos los dispositivos android, cambios de la app sin reinicio, integración con GitHub,
Figura 12
Sistema de Gestión Comercial (SIGES-CW) 21
¿Qué es Android?
En 2008 Google lanzó Android, un sistema operativo basado en Linux que implementó en
multiples dispositivos, incluyendo Televisores, Relojes Inteligentes y mas importante que todos, Los
Smartphones.
¿Qué es Java?
Ha sido una opción popular entre los desarrolladores durante más de dos décadas, con millones de
centrado en la red que se puede utilizar como una plataforma en sí mismo. Es un lenguaje de
programación rápido, seguro y fiable para codificar todo, desde aplicaciones móviles y software
empresarial hasta aplicaciones de macrodatos y tecnologías del lado del servidor. (Amazon AWS,
2022)
¿Qué es Kotlin?
grafica. Es multiplataforma desde Android y iOS hasta Web. Actualmente su versión es 1.7.0
Sistema de Gestión Comercial (SIGES-CW) 22
Creacíon de la Aplicación
Conocemos actualmente todas las herramientas que se usarán en nuestra aplicación así que
nos queda diseñar su parte grafica y definir conceptualmente los movimientos logicos. La parte
grafica se mostrará con MockUps y diseños, la parte logica se representará con Diagramas de Flujo y
tablas.
Como la aplicación está dirigida a usuarios, la interfaz grafica debe de ser clara, simple y
Figura 13.
En la figura 13 vemos la GUI del inicio de aplicación donde tendremos un LogIn para
asegurar la seguridad de los datos, los colores usados son la paleta de colores elegida y el logo esta
Figura 14.
servicios solicitados. Debido a que es un prototipo, las imágenes no son las que se usarán ya que las
imágenes finales estan en proceso. Vemos como los botones estan ordenados en dos filas de tres
columnas y nos dirigen a los servicios necesarios. Ademas el logo de la aplicación está en la parte
izquierda. Los botones de información de aplicación y de cerrar sesión se encuentran en una barra
lateral.
Sistema de Gestión Comercial (SIGES-CW) 24
Figura 15.
consultas, ocultando o mostrando mas entradas, es posible usar la misma pagina en un ciclo para no
gastar recursos innecesarios. Vemos los cuadros de texto de entrada y botones de Envio y limpieza de
Con esto terminariamos la GUI conceptual de nuetra aplicación de escritorio, ahora nos
queda la Interfaz Grafica de Android. Al momento de la realización del programa, se procurará ser
los mas exactos y cercanos al prototipo, mas existirán diferencias entre el resultado final y el actual.
Sistema de Gestión Comercial (SIGES-CW) 25
Para una aplicación android, debemos tener en cuenta que los dispositivos mas usados serán
los celulares, por tanto no podemos usar plantillas o figuras muy grandes ni iconos y letras muy
pequeñas porque los smartphones poseen pantallas pequeñas. Además debemos adaptarlo a un
control de gestos tipo Touch, asi que evitaremos botones muy pequeños.
Recordemos la paleta de colores usada para las aplicaciones. Esta basada en un diseño mas
elegante y que recuerde la antigüedad de Sienar, mientras usa opciones y visuales modernos.
Sistema de Gestión Comercial (SIGES-CW) 26
Ahora veremos en
aplicación de Android, es
Tambien vemos en la
desarrollador.
Sistema de Gestión Comercial (SIGES-CW) 27
En la figura 17
administrador de las
funciones de usuario
colores de la paleta
los servicios de la
La aplicación se muestra en
pero al momento de su
de los smartphones.
Sistema de Gestión Comercial (SIGES-CW) 28
En la figura 18
Privilegiado, que en
un UI muy similar a la
sección de Usuario
Promedio.
Es importante
inferior de selección de
tipo de usuario, al
seleccionar cualquiera de
cual es su funcionamiento.
Sistema de Gestión Comercial (SIGES-CW) 29
Como vimos en la
un Menú Lateral. En la
botones funcionales. El
información de aplicación.
nuestras actividades.
Sistema de Gestión Comercial (SIGES-CW) 30
En la figura 20
tenemos la representación
de la pestaña de
información de aplicación
respectivos derechos de
autor.
Tambien
pagina principal.
Sistema de Gestión Comercial (SIGES-CW) 31
En la figura 21
de la sección de
variables de texto y
cantidad de recuadros
registro se muestra un
formulario completo y en
solo se solicita la
identificación.
Todo el formulario
mantenga la estetica de la
aplicación y se funcional.
al servicio seleccionado.
Tambien tenemos
un botón de regreso al
menú principal.
Sistema de Gestión Comercial (SIGES-CW) 32
En la figura 22
presionar el botón de
“Enviar Info” de la
pagina de formulario.
Esta tarjeta de
información nos
proporionará un
resumen de los
acontecimientos
la conexión a la Base
guardado
correctamente. En esta
los botones de
confirmación y de
cancelación.
Sistema de Gestión Comercial (SIGES-CW) 33
Ahora que tenemos la GUI de ambas de nuestras aplicaciones, necesitamos conocer como
funcionarán. Ya que ambas poseen una GUI y procesos ligeramente diferentes a la otra, se realizará
un analisis de ambos procesos logicos por separado. Se usarán graficos y breves explicaciones.
En nuestra aplicación de C# crearemos una aplicación que al conectarse a una base de datos,
nos permite realizar las gestiones basicas de tal. Creación de Registros, Modificación de Registros,
Figura 23.
aplicación de escritorio. Vemos que al final se guarda en la base de datos todo el proceso.
Sistema de Gestión Comercial (SIGES-CW) 34
En la aplicación de Java y Kotlin debemos de que al conectarse a una base de datos, nos
permita realizar las gestiones basicas de tal. Creación de Registros, Modificación de Registros,
Figura 24.
Vemos que en la aplicación de Android existe una diferencia entre Administrador y Cliente
porque esta está dirigida a ambos, mientras que la de escritorio es dirigida a unicamente
Administradores. Al igual que en la aplicación de Windows, si así se desea, se genera un reporte PDF
Referencias
DataScope. (3 de Enero de 2022). DataScope. Obtenido de Recolección de Datos en terreno
terreno-mediante-moviles/
data/what-is-big-data/#:~:text=Definición%20de%20big%20data,-
¿Qué%20es%2C%20exactamente&text=El%20término%20“big%20data”%20abarca,como%
20“las%20tres%20V”.
https://docs.microsoft.com/es-es/sql/relational-databases/security/permissions-database-
engine?view=sql-server-ver16
Zhu, Q., Wu, J., & Song, M. (2016). Efficiency evaluation based on data envelopment analysis in the
https://www.oracle.com/mx/database/what-is-database/
https://docs.microsoft.com/en-us/sql/sql-server/what-s-new-in-sql-server-2019?view=sql-
server-ver16
es/office/access-sql-conceptos-básicos-vocabulario-y-sintaxis-444d0303-cde1-424e-9a74-
e8dc3e460671
https://www.redhat.com/es/topics/middleware/what-is-ide
https://docs.microsoft.com/en-us/dotnet/csharp/tour-of-csharp/
Sistema de Gestión Comercial (SIGES-CW) 36
https://docs.microsoft.com/es-mx/dotnet/core/introduction
https://developer.android.com/studio/intro/?gclid=Cj0KCQjwl92XBhC7ARIsAHLl9anGN4
HhDv9T_Egio44e9OAj8Jsg_9DcvNs3OzR_3PDCFAdhxMWmPVIaAk4pEALw_wcB&gclsrc
=aw.ds