UNIVERSIDAD TECNICA DE ORURO
FACULTAD NACIONAL DE INGENIERÍA
INGENIERÍA INFORMÁTICA
PROYECTO SIS – 2420 “ACTUALIZACIÓN TECNOLÓGICA”
HYUNDAI BOLIVIA
Docente: Ing. Saúl Mamani Mamani
Auxiliar: Egr. Achabal Villalpando William Mucio
Estudiante: Martinez Lopez Hugo Daniel
Oruro – Bolivia
2023
INDICE
1 INTRODUCCIÓN
1.1 Presentación ……………………………………………………………………………1
1.2 Planteamiento del problema …….………………………………………………………1
1.3 Objetivos ……………………………………………………………………………...2
1.3.1 Objetivo general …………………………………………………………………...…2
1.3.2 Objetivos específicos …………...………………………………………………………2
1.4 Alcances …………………………………………………………………………………..2
1.5 Ingeniería del proyecto …………………………………………………………………2
2 MARCO TEÓRICO …………………………..………………………………………….4
2.1 Algoritmo ……………………………………………………………………………...4
2.2 Software ………………………………………………………………………………4
2.3 Sistema de información ……………………………………………………………...4
2.4 Scrum ……………………………………………………………………………………...4
2.5 Modelado ……………………………………………………………………………...4
2.6 UML: Lenguaje de Modelado Unificado ……………………………………………....4
2.6.1 Diagrama de casos de uso ………………………………………………………………5
2.6.2 Diagrama de clases ………………………………………………………………………5
2.6.3 Diagrama de secuencias ………………………………………………………………5
2.6.4 Diagrama de Despliegue ……………………………………………………..………..6
2.7 .Net Framework ………………………………………………………………………6
2.8 C# ………………………………………………………………………………………6
2.9 SQL Server ………………………………………………………………………………7
2.10 Enterprise Architect ………………………………………………………………………7
2.12 Balsamiq ………………………………………………………………………...………7
3 MARCO PROPOSITIVO ……………………………………………………………….8
3.1 Identificación del sistema …………………………………………………..………….8
3.2 Equipo Scrum y los Stakeholders ……………………………………………………….8
3.3 Historias de Usuario ……………………………………………………………………….8
3.4 Producto Backlog ……………………………………………………………………….10
3.5 Release Planning ………………………………………………………………….……11
3.6 Diagrama de casos de uso del sistema ………………………………………………..11
3.7 Diagrama de clases persistentes ………………………………………………………..12
3.8 Modelo Relacional de la Base de Datos ………………………………………………..12
3.9 Diagrama de secuencias ………………………………………………………………..13
3.10 Primer Sprint ……………………………………………………………………………..13
3.10.1 Sprint backlog ……………………………………………………………………......13
3.10.2 Diseño de interfaces …………………………………………………………………14
3.10.3 Sprint review ………………………………………………………………………...15
3.10.4 Sprint retrospective …………………………………………………………………16
3.11 Segundo Sprint ……………………………………………………………………....16
3.11.1 Sprint backlog ………………………………………………………………………..16
3.11.2 Diseño de interfaces …………………………………………………………….…..17
3.11.3 Sprint review …………………………………………………………………………17
3.11.4 Sprint retrospective ………………………………………………………………...17
4 CONCLUSIONES Y RECOMENDACIONES ….……………………………....18
BIBLIOGRAFÍA ………………………………………………………………………..19
ANEXOS …………………………………………………………………………………20
1 INTRODUCCIÓN
1.1 Presentación
Los automóviles, los camiones, las camionetas, las motocicletas son vehículos a motor: se movilizan
por la acción de un motor que funciona con algún tipo de combustible, como gasolina o diésel.
La compra y venta de carros, son transacciones importantes en la vida de las personas. Por su parte,
quienes venden un auto tienen comúnmente los mismos sentimientos.
Las ventas de automóviles son un indicador económico clave, ya que brindan una imagen
instantánea de la demanda de los consumidores por artículos de alto precio. Como resultado,
las cifras de ventas de automóviles están llamando mucho la atención.
Un estudio señala que la interacción con la página web del concesionario no solo es el primer paso
para que este tome una decisión informada, sino que suele ser un factor determinante para la
compra. Esto, junto con la visita a la sala de exposición y la atención personal de un especialista de
producto son cruciales para su satisfacción. En este sentido, la experiencia de usuario, entendida
como el proceso que lleva a cabo el cliente cuando interactúa con una marca o producto y sus
servicios que se les da (físicos, digitales y personales).
Comprar tu auto en HYUNDAI BOLIVIA es una experiencia fácil y rápida. Para ello se debe:
Ingresar en la página web y escoger el auto que más te guste.
Una vez que seleccione el auto que se desea, lo puedes apartar. Ingresando los datos
personales.
Actualmente las empresas de ventas de vehículos desean venderlos mediante internet para que sea al
alcance de todas las personas y poder ver los modelos digitalmente lo cual también ayuda a los
empleados en el registro de ventas, permitirá registrar inventario de los vehículos vendido,
obteniendo un recibo de las ventas.
1.2 Planteamiento del problema
Se ha observado que las ventas y la emisión de recibos de vehículos que se realizan de forma
manual y en un libro de registro de ventas, al ser así se van teniendo pérdidas económicas para la
empresa. Por esta razón, la administración de vehículos es una tarea tediosa de realizar, y no se lleva
un inventario real del estado de los vehículos.
1
1.3 Objetivos
1.3.1 Objetivo general
Una página optimizada, funcional, intuitiva, que permita la navegación por teléfono móvil siendo
sencilla, cómoda y satisfactoria para el cliente donde en la página le permita la búsqueda y selección
de los modelos que más le interesen, acompañado de imágenes atractivas. De igual manera ayudara
al personal para generar sus el registro de ventas junto con recibos.
1.3.2 Objetivos específicos
Identificar historias de usuario para capturar los requerimientos funcionales que guíen el
desarrollo del sistema.
Realizar diagramas de casos de uso, clases y secuencias con UML, para modelar el análisis y
el diseño del sistema.
Diseñar una base de datos centralizada, para almacenar toda la información necesaria de la
biblioteca.
Construir un tablero en Kanban, para visualizar el trabajo y controlar el avance del proyecto.
Emplear el lenguaje de programación y las herramientas adecuadas, para implementar
(programar) el sistema de información.
1.4 Alcances
El sistema de información tiene los siguientes alcances:
Registro e inventarios de los vehículos vendidos y disponibles
Registro de ventas realizadas
Emisión de recibos de venta
1.5 Ingeniería del proyecto
Para el desarrollo del proyecto se toman en cuenta los tres pilares de la ingeniería de software.
(Triángulo de éxito de la ingeniería de software)
a) Metodología o proceso de desarrollo
Marco de trabajo ágil SCRUM, como proceso de desarrollo
b) Notación de Modelado
Lenguaje de Modelado Unificado (UML)
c) Herramientas
2
Framework de desarrollo: .NET Framework
Lenguaje de programación: C#
Entorno de Desarrollo Integrado (IDE): Visual Studio
Manejador de Base de Datos: SQL Server
Enterprise Architect, para los diagramas UML
Balsamiq, para el diseño de interfaces de usuario
Trello para la administración de las historias de usuario
3
2 MARCO TEÓRICO
2.1 Algoritmo
Es una secuencia de instrucciones finitas que llevan a cabo una serie de procesos para dar respuesta
a determinados problemas. Es decir, un algoritmo resuelve cualquier problema a través de unas
instrucciones y reglas concisas, mostrando el resultado obtenido.
2.2 Software
Es un término informático que hace referencia a un programa o conjunto de programas de cómputo,
así como datos, procedimientos y pautas que permiten realizar distintas tareas en un sistema
informático. Donde abarca todo aquello que es intangible en un sistema computacional.
2.3 Sistema de información
Cuando se habla de un sistema de información (SI) se refiere a un conjunto ordenado de
mecanismos que tienen como fin la administración de datos y de información, de manera que
puedan ser recuperados y procesados fácil y rápidamente. Todo sistema de información se compone
de una serie de recursos interconectados y en interacción, dispuestos del modo más conveniente en
base al propósito informativo trazado, como puede ser recabar información personal, procesar
estadísticas, organizar archivos, etc.
2.4 Scrum
Es una metodología de trabajo Es un proceso en el que se aplican de manera regular un conjunto de
buenas prácticas para trabajar colaborativamente, en equipo. Para desarrollar productos que se
pueden dividir e iterar.
2.5 Modelado
Es el proceso de documentar un diseño de sistema de software complejo como un diagrama de fácil
comprensión, usando texto y símbolos para representar la forma en que los datos necesitan fluir.
2.6 UML: Lenguaje de Modelado Unificado
Fue creado para forjar un lenguaje de modelado visual común y semántica y sintácticamente rico
para la arquitectura, el diseño y la implementación de sistemas de software complejos, tanto en
estructura como en comportamiento. UML tiene aplicaciones más allá del desarrollo de software, en
el flujo de procesos en la fabricación.
Es comparable a los planos usados en otros campos y consiste en diferentes tipos de diagramas. En
general, los diagramas UML describen los límites, la estructura y el comportamiento del sistema y
los objetos que contiene.
4
UML no es un lenguaje de programación, pero existen herramientas que se pueden usar para generar
código en diversos lenguajes usando los diagramas UML, guarda una relación directa con el análisis
y el diseño orientados a objetos.
UML representa buenas prácticas para la construcción y documentación de diferentes aspectos del
modelado de sistemas de software y de negocios.
2.6.1 Diagrama de casos de uso
Representa una funcionalidad particular de un sistema. Un caso de uso es una lista de pasos que
definen la interacción entre un actor (un humano que interactúa con el sistema o un sistema externo)
y el sistema propiamente dicho. Los diagramas de casos de uso representan las especificaciones de
un caso de uso y modelan las unidades funcionales de un sistema. Estos diagramas ayudan a los
equipos de desarrollo a comprender los requisitos de su sistema, incluida la función de la
interacción humana en el mismo y las diferencias entre diversos casos de uso. Un diagrama de caso
de uso podría mostrar todos los casos de uso del sistema o solo un grupo de casos de uso con una
funcionalidad similar.
Para iniciar un diagrama de casos de uso, agrega una forma ovalada en el centro del dibujo.
Escribe el nombre del caso de uso dentro del óvalo.
Representa a los actores con una figura humana cerca del diagrama, luego usa líneas para
modelar las relaciones entre los actores y los casos de uso.
2.6.2 Diagrama de clases
El diagrama UML más comúnmente usado, y la base principal de toda solución orientada a objetos.
Las clases dentro de un sistema, atributos y operaciones, y la relación entre cada clase. Las clases se
agrupan para crear diagramas de clases al crear diagramas de sistemas grandes.
Las clases se representan con una forma rectangular dividida en tercios. La sección superior
muestra el nombre de la clase, mientras que la sección central contiene los atributos de la
clase. La sección inferior muestra las operaciones de la clase (también conocidas como
métodos).
Agrega formas de clases a tu diagrama de clases para modelar la relación entre esos objetos.
Además, podría ser necesario que agregues subclases.
Usa líneas para representar asociación, traspaso, multiplicidad y otras relaciones entre clases
y subclases. Tu estilo de notación preferido informará la notación de estas líneas.
2.6.3 Diagrama de secuencias
Muestra cómo los objetos interactúan entre sí y el orden de la ocurrencia. Representan interacciones
para un escenario concreto.
5
Los diagramas de secuencia, también conocidos como diagramas de eventos o escenarios de
eventos, ilustran cómo los procesos interactúan entre sí mostrando llamadas entre diferentes objetos
en una secuencia. Estos diagramas tienen dos dimensiones: vertical y horizontal. Las líneas
verticales muestran la secuencia de mensajes y llamadas en orden cronológico y los elementos
horizontales muestran instancias de objetos en las que se transmiten los mensajes.
Para crear un diagrama de secuencia, escribe el nombre de la instancia de clase y el
nombre de la clase en un cuadro rectangular.
Dibuja líneas entre las instancias de clases para representar al emisor y receptor de los
mensajes.
Usa puntas de flecha oscuras para simbolizar mensajes sincrónicos, puntas de flecha
abiertas para mensajes asincrónicos y líneas discontinuas para mensajes de respuesta.
2.6.4 Diagrama de Despliegue
Un diagrama de implementación modela la implementación física y la estructura de los
componentes de hardware. Los diagramas de implementación muestran dónde y cómo operarán los
componentes de un sistema en conjunto con los demás.
Al trazar un diagrama de implementación, usa la misma notación que usas para un diagrama
de componentes.
Usa un cubo 3D para modelar un nodo (lo cual representa una máquina física o máquina
virtual).
Etiqueta el nodo con el mismo estilo que se usa para los diagramas de secuencia. Agrega
otros nodos según sea necesario, luego conéctalos con líneas.
2.7 .Net Framework
Es la implementación original de .NET. Admite la ejecución de sitios web, servicios, aplicaciones
de escritorio y mucho más en Windows. Los dos componentes principales de .NET Framework son
Common Language Runtime (CLR) es el motor de ejecución que controla las aplicaciones
en ejecución. Proporciona servicios como la administración de subprocesos, la recolección
de elementos no utilizados, la seguridad de tipos, el control de excepciones, etc.
La Biblioteca de clases proporciona un conjunto de API y tipos para funciones comunes.
Proporciona tipos para cadenas, fechas, números, etc.
Las aplicaciones .NET están escritas en el lenguaje de programación C#, F# o Visual Basic.
2.8 C#
Es un lenguaje de programación orientado a componentes, orientado a objetos, proporciona
construcciones de lenguaje para admitir directamente estos conceptos, por lo que se trata de un
lenguaje natural en el que crear y usar componentes de software. Desde su origen, ha agregado
6
características para admitir nuevas cargas de trabajo y prácticas de diseño de software emergentes.
En el fondo, es un lenguaje orientado a objetos. Defina los tipos y su comportamiento.
2.9 SQL Server
Es un sistema de gestión de base de datos relacional, desarrollado por la empresa Microsoft. El
lenguaje de desarrollo utilizado es Transact-SQL, una implementación del estándar ANSI del
lenguaje SQL, utilizado para manipular y recuperar datos, crear tablas y definir relaciones entre
ellas.
2.10 Enterprise Architect
Enterprise Architect es una herramienta de diseño y modelado de UML que destaca por ser fácil de
utilizar y la integración que tiene con los entornos de desarrollo de software como Visual Studio o
Eclipse. Con Enterprise Architect sentirá que sus ideas toman vida pues hasta ahora nunca había
sido tan fácil plasmar cada detalle en sus diagramas de UML. Otras características que convierten a
Enterprise Architect en una herramienta de clase mundial son:
Administración de Proyectos
Diagramación
Analizar
2.11 Trello
Es un software de oficina diseñado para la gestión de actividades y la administración de proyectos
de manera colectiva. Este programa informático está optimizado para organizar información en
formatos visuales simples que facilitan la realización de tareas y el cumplimiento de objetivos.
Trello funciona a través de una plataforma de formato web, en la que los usuarios pueden vaciar
información y recursos multimedia, y organizarla de diversas maneras. Esta organización se
visualiza a partir de tarjetas virtuales que pueden arrastrarse y situarse en tableros accesibles desde
la plataforma web o desde aplicaciones móviles en los llamados «Espacios de trabajo», que son
similares a oficinas virtuales.
2.12 Balsamiq
Es una herramienta rápida wireframing que le ayuda a trabajar más rápido y más inteligente.
Reproduce la experiencia de dibujar en una pizarra, pero utilizando un ordenador. Hacer maquetas
es rápido. Vas a generar más ideas, para que puedas tirar las malas y descubrir las mejores
soluciones.
Es una pequeña herramienta gráfica para esbozar las interfaces de usuario, para los sitios web y
escritorio/aplicaciones móviles web. Se centran en la fase de creación. Proporcionando una
herramienta de limpieza que permite obtener en el flujo y enfocarte en la estructura. Hace esto en
7
lugar de los colores y los iconos. Proporciona suficiente interactividad para reemplazar prototipos la
mayor parte del tiempo. Además, hace que sea fácil colaborar y obtener feedback.
3 MARCO PROPOSITIVO
3.1 Identificación del sistema
Se identifican las entradas, el proceso y las salidas del sistema de la empresa.
Figura 1: Sistema HYUNDAI BOLIVIA
3.2 Equipo Scrum y los Stakeholders
Con fines académicos, los roles de Scrum están representados por una sola persona.
Product Owner Alvarez Loredo Jose Andres
Scrum Master Vásquez Fuentes Janeth Ninoska
Development Team Martinez Lopez Hugo Daniel
Salgado Quispia Luciano
Tapia Tapia Jorge Eduardo
Client Empresa HYUNDAI BOLIVIA
Tabla 1: Equipo Scrum
3.3 Historias de Usuario
Para la determinación de requerimientos del sistema se recolectan historias de usuario.
HU4: Ingresar Al Sistema
Como Oficial y administrador
8
Quiero Ingresar al sistema de la empresa con una cuenta y password
Para Tener acceso a las funciones administrativas
Tabla 2: Historia de usuario – Ingresar Al Sistema
HU5: Gestionar(CRUD) De Oficiales De Venta
Como Administrador
Quiero Crear, leer, editar y eliminar (CRUD) oficiales de venta
Para Que hagan uso del sistema
Tabla 3: Historia de usuario – Gestionar (CRUD) De Oficiales De Venta
HU6: Gestionar(CRUD) De Todas Las Unidades
(Vehículos)
Como Oficial de ventas
Quiero Gestionar todos los vehículos disponibles
Para Ponerlos a la venta y llevar de manera correcta el registro de
ventas, detallando los datos del cliente y la fecha de venta
Tabla 4: Historia de usuario – Gestionar (CRUD) De Todas Las Unidades (Vehículos)
HU7: Registrar Ventas
Como Oficial de ventas
Quiero Registrar las ventas realizadas en el mes y el monto total
recaudado
Tener el control de los modelos de autos disponibles y
Para
vendidos
Tabla 5: Historia de usuario – Registrar Ventas
HU8: Emitir Recibo
Como Oficial de ventas
Quiero Imprimir un recibo
Para Entregar al cliente como constancia del pago de su auto
9
Tabla 6: Historia de usuario – Emitir Recibo
HU9: Generar Reporte Mensual
Como Oficial de ventas
Generar reporte mensual detallado de los vehículos
Quiero
Para Tener el monto recaudado de mes especifico
Tabla 7: Historia de usuario – Generar Reporte Mensual
HU10: Gestionar Funciones Del Sistema
(Administrador)
Como administrador
Quiero Tener todas las funciones del oficial de ventas
Para Poder controlar lo que se está generando
Tabla 8: Historia de usuario – Gestionar Funciones Del Sistema (Administrador)
HU11: Uso Del Sistema (Clientes)
Como Cliente
Quiero Revisar los vehículos disponibles
Para Poder ver y realizar la compra de un vehículo
Tabla 9: Historia de usuario – Uso Del Sistema (Clientes)
3.4 Producto Backlog
La pila del producto de pendientes a desarrollar está constituida por las historias de usuario
(Requerimientos funcionales), y ordenada según prioridad de implementación.
Historia de
Descripción Prioridad
usuario
HU4 Ingresar Al Sistema 1
HU5 Gestionar(CRUD) De Oficiales De 2
Venta
HU6 Gestionar(CRUD) De Todas Las 4
10
Unidades (Vehículos)
HU7 Registrar Ventas 5
HU8 Emitir Recibo 5
HU9 Generar Reporte Mensual 5
HU10 Gestionar Funciones Del Sistema 3
(Administrador)
HU11 Uso Del Sistema (Clientes) 6
Tabla 10: Product Backlog
3.5 Release Planning
En el plan de despliegue se identifican las iteraciones (Sprints Backlog) y los entregables que se
van a realizar durante el transcurso del proyecto.
Sprint /
Entregable HU Descripción
HU4 Ingresar Al Sistema
HU5 Gestionar(CRUD) De Oficiales De Venta
Primer
Sprint HU6 Gestionar(CRUD) De Todas Las Unidades
(Vehículos)
HU7 Registrar Ventas
HU8 Emitir Recibo
Segundo HU9 Generar Reporte Mensual
Sprint HU10 Gestionar Funciones Del Sistema
(Administrador)
Tabla 11: Sprint Backlog
3.6 Diagrama de casos de uso del sistema
El diagrama de casos de uso del sistema muestra la funcionalidad global del sistema.
11
Figura 2: Diagrama de casos de uso
3.7 Diagrama de clases persistentes
El diagrama de clases persistentes muestra las clases que servirán para el diseño de la base de datos
Figura 3: Diagrama de clases
3.8 Modelo Relacional de la Base de Datos
A partir del diagrama de clases persistentes diseñamos el modelo relacional de la base de datos
12
Figura 4: Modelo Relacional de la Base de Datos
3.9 Diagrama de secuencias
El diagrama de secuencias muestra el flujo de acciones que realiza un caso de uso.
3.10 Primer Sprint
3.10.1 Sprint backlog
Sprint / Entregable HU Descripción
HU4 Ingresar Al Sistema
Primer HU5 Gestionar(CRUD) De Oficiales De Venta
Sprint
HU6 Gestionar(CRUD) De Todas Las Unidades (Vehículos)
Tabla 12: Primer Sprint Backlog
13
3.10.2 Diseño de interfaces
Figura 5: Interfaz login
Figura 6: Interfaz CRUD de autos
14
Figura 7: Interfaz CRUD de cliente
3.10.3 Sprint review
En la reunión del sprint review se muestra el product increment, que representa los entregables
realizados al cliente.
Figura 8: Pantalla Login
15
Figura 9: Pantalla CRUD de automóviles
Figura 10: Pantalla CRUD de clientes
Figura 11: Pantalla CRUD de usuario
3.10.4 Sprint retrospective
El desarrollo del sprint (iteración) se ha cumplido a cabalidad, entregando el sistema en las dos
semanas planificadas según el sprint backlog.
3.11 Segundo Sprint
3.11.1 Sprint backlog
16
Sprint / Entregable
HU Descripción Duración
Segundo HU7 Registrar Ventas 2 semanas
Sprint HU8 Emitir Recibo
HU9 Generar Reporte Mensual
HU11 Uso del sistema (clientes)
Tabla 13: Segundo Sprint Backlog
3.11.2 Diseño de interfaces
En curso…
3.11.3 Sprint review
3.11.4 Sprint retrospective
El desarrollo del sprint (iteración) se ha cumplido a cabalidad, entregando el sistema en las dos
semanas planificadas según el sprint backlog.
17
4 CONCLUSIONES Y RECOMENDACIONES
Se hizo el diseño de la web para vender autos es algo que debe lucir profesional y ser veloz para el
cliente. Al ser una web optimizada, atractiva para los clientes. De igual manera es un sistema
eficiente para la empresa de HYUNDAI BOLIVIA logrando hacer el sistema deseado y eficiente
para su uso.
Teniendo en cuenta las necesidades que se tenían el sistema está hecho para poder hacer un buen
manejo y utilizarlo de una manera más practica ya sea para el cliente donde podrá observar de
manera detallada el automóvil que desee adquirirlo y de una manera segura porque el recibo tendrá
un código QR por cada venta realizada, como también es más eficaz para el empleado de poner en
orden los registros de las ventas, poder realizar los recibos de una manera más rápida y eficiente
para el cliente y también como para la empresa, ya que no tendría que preocuparse si le faltarían
datos en el inventario porque se generaría un reporte al mes en específico teniendo el total de ventas
recaudado.
RECOMENDACIONES
Al ser una aplicación que estará al alcance de todas las personas hay que tener en cuenta que:
Se debe de ir colocando las imágenes claras donde se pueda observar al gusto del
cliente.
Tener en cuenta que la web debe de estar actualizada, como al ser si hay nuevos
modelos de vehículos ir subiendo al sistema para que los clientes estén viendo
modelos nuevos.
18
Tener una buena descripción de cada vehículo para así realizar la venta.
19
5 BIBLIOGRAFÍA
https://docplayer.es/54303334-Diseno-de-interfaces-utilizando-herramienta-web-balsamiq-
mockups.html
https://sparxsystems.com/
https://trello.com/es
https://www.nimblework.com/es/agile/que-es-scrum/
https://www.unila.edu.mx/que-es-un-algoritmo-en-informatica/
20
ANEXOS
ANEXO 1
ANEXO 2
Fotos del tablero kanban hecho en clases presenciales
ANEXO 3
Diagrama de Clases Control
21
ANEXO 4
Diagrama de despliegue
22