Subido por April Mejia

Proyecto Final Fund Ing Software Abril Mejia- Raul Ivan

Anuncio
INSTITUTO TECNOLÓGICO DE SALTILLO TecNM
Sistemas y Computación
Simulación de mecanismos aplicados en robótica
Fundamentos de Ingeniería de Software
Integrantes del equipo
Raúl Iván Ramírez Aguilar 19052069
Abril Mejía Rangel 19052155
Marzo 2022
Índice
INTRODUCCIÓN………………………………………………………………………..pág. 1
ANTECEDENTES……………………………………………………………………….pág. 2
DESARROLLO ………………………………………………………………………….pág. 3
Modelo del sistema existente………………………………………………..pag.3
Modelo del sistema nuevo…………………………………………………...pag.3
Representación del sistema mediante modelos desde diferentes
perspectivas…………………………………………………………………….pag.4
Objetivos…………………………………………………………………………pag.4
Definición conceptual y operacional del modelo de negocio………….pag.5
Componentes de negocio del software de simulación de mecanismos
aplicados a la robótica y su modelo de negocio correspondiente…...pag.10
Requerimientos del software ………………………………………...……..pag.11
Descripción de Proceso de Ingeniería de requerimientos de software del
proyecto………………………………………………………………………...pag. 11
Definición de la necesidad o carencia que presenta el sistema……...pag. 13
Determinación de necesidades y restricciones………………………....pag. 13
Especificación de requerimientos en una plantilla……………………..pag. 14
Representación de requerimientos………………………………………..pag. 17
La calidad, estándares y métricas de calidad del software…………...pag. 17
Elaboración del prototipo……………………………………………………pag. 19
CONCLUSIONES……………………………………………………………………….pag. 71
REFERENCIAS………………………………………………………………………….pag. 72
Figuras
Figura 1. Modelo del sistema existente
Figura 2. Modelo del sistema nuevo
Figura 3. Representación del sistema
Figura 4. Definición conceptual del modelo del negocio
Figura 5. diagrama de componentes del software
Figura 6. Diagrama del modelo del negocio del software
Figura 7. Diagrama del Proceso de Ingeniería de requerimientos de software del proyecto.
Figura 8. Requisitos funcionales del proyecto
Figura 9. Requisitos no funcionales del proyecto
Figura 10. Requisitos de dominio del proyecto.
Figura 11. Representación de requerimientos en diagrama UML.
Figura 12. Prototipo del software.
Figura 13. Prototipo del software.
Figura 14. Ejecución del código en Python
Figura 15. Ejecución del código para introducir datos por el usuario en Python
Figura 16. Ejecución del código con resultados en Python
INTRODUCCIÓN
El campo de la Robótica se ha desarrollado enormemente en la industria, en la
actualidad, como resultado demanda de profesionistas capacitados para desempeñar
diversas tareas especializadas. Las competencias de egreso de los estudiantes en el
área de ingeniería requieren del uso de tecnología acorde a las necesidades que
demanda la industria.
Este proyecto es sobre el desarrollo de un software de simulación de mecanismos de
robótica, para ayudar a las ingenierías en ámbito educativo como una opción de
simulación de mecanismos de robótica.
Como parte del proyecto se va a presentar información que nos permite desarrollar el
proyecto de Simulación de Mecanismos aplicados en robótica.
En este proyecto se abordarán temas de los principales mecanismos que se emplean en
robótica. En base a estos, se definirán las definiciones conceptuales y operacionales del
desarrollo del software, así como también estableciendo los objetivos, requerimientos y
estándares mediante una breve descripción.
Dentro este modelo de negocio, se presenta un estudio de mercado con empresas que
se dedican al desarrollo de softwares que son para simulaciones en Mecánica aplicados
en robótica. Este estudio incluye un análisis de las posibilidades de acuerdo con los
equipos disponibles.
El objetivo del modelo de negocio es definir y conocer la metafísica empresarial. La clave
está en que contenga suficiente información como para dar vida a la empresa, pero no
demasiada como para dificultar una sencilla comprensión.
En el enfoque impulsado por datos, el uso de la simulación, es muy importante para la
toma de decisiones estratégicas a partir de los datos que se generan del paradigma de
Programación Impulsado por los Datos o dirigido por los datos del idioma inglés "Datadriven programming", que describe los datos a comparar y el procesamiento requerido
de los mismos.
El usuario que es el estudiante del ITS solicita una aplicación informática para el campo
de la Mecánica que contenga modelos de los mecanismos que se aplican en la Robótica,
con las características de un simulador que resuelva problemas específicos que se
presentan.
Pag. 1
ANTECEDENTES
En el Instituto Tecnológico de Saltillo se imparten diferentes estudios universitarios de
Ingeniería, donde muchas de ellas o todas se relacionan entre sí. La Mecánica es un
elemento importante en la robótica, los mecanismos permiten diversos movimientos para
transmitir fuerza y potencia para poder ejercer alguna tarea o trabajo. La Mecánica se
representa mediante modelos que permiten la simulación de diversas funciones o
aspectos de un robot, para conocer su efecto y el comportamiento a través de la
manipulación de las variables.
Como centro educativo nacional, cuenta con un marco educativo de alto nivel, donde
se impulsa el desarrollo de los alumnos por medio no solo de clases teóricas, sino
también de clases prácticas, las cuales varían según la especialidad que el alumno
esté estudiando.
Sin embargo, eso no significa que no haya prácticas que se relacionen entre sí o
tengan una fuerte complementación entre sí.
El ejemplo abordado como tema de estudio en esta investigación es el uso de software
de simulación que permiten a los alumnos realizar prácticas teóricas con valores reales,
ofreciendo así resultados reales sin tener el recurso físico.
Además, permite la experimentación sin riesgo de dichas prácticas y dependiendo del
software pueden realizarse procesos de diferentes índoles, como cuestiones
mecánicas, robóticas o electrónicas.
La simulación es una herramienta completamente utilizada en la industria, donde un
egresado de Ingeniería Mecánica puede generar el comportamiento de un mecanismo
con ciertos valores o un Ingeniero Mecatrónico puede llevar a cabo simulaciones de
control de un robot entre otros tipos de aplicaciones.
En el Instituto Tecnológico de Saltillo, los alumnos Raúl Iván Ramírez Aguilar y Abril
Mejía Rangel de la carrera de Ingeniería en Sistemas Computacionales, en
coordinación con el Ingeniero Eduardo Contreras, plantean el uso de simuladores para
realización de prácticas, como introducción a este tipo de software que podría utilizar el
alumno en el ámbito laboral, donde se enfocan en la manipulación de eventos con
valores reales.
Pag. 2
DESARROLLO
Modelo del sistema existente
Para nuestro proyecto, se implementará y se describirá el modelo del sistema existente para
distinguir los puntos fuertes y débiles de nuestro proyecto de software. Actualmente hay muchos
modelos de sistema existentes sobre simulación en robótica. Nuestro proyecto tiene ciertos
puntos fuertes y débiles que logramos distinguir durante el desarrollo del proyecto.
A continuación, se muestra en la Figura 1. Sobre nuestro modelo del sistema existente mediante
un diagrama
Figura 1. Modelo del sistema existente. Fuente: (elaboración propia)
Modelo del sistema nuevo
Se usará un modelo del sistema nuevo para nuestro tema de estudio que es la manipulación de
mecanismos en robótica. Esto es para poder definir, analizar y discutir los requerimientos del
sistema como equipo.
Figura 2. Modelo del sistema nuevo. Fuente: (elaboración propia)
Pag. 3
Representación del sistema mediante modelos desde diferentes perspectivas
Figura 3. Representación del sistema. Fuente: (elaboración propia)
Objetivos
Objetivo General.
Diseñar un software intuitivo para la simulación de mecanismos aplicados en robótica.
Objetivos específicos.
Ofrecer a la comunidad estudiantil de Ingeniería Sistemas Computacionales un software
que permita calcular variables y ejecutar resultados, así como también mostrar la
simulación empleados en mecanismos en robótica.
Pag. 4
Definición conceptual y operacional del modelo de negocio
En nuestro proyecto, el software realiza cálculos simulación de mecanismos aplicados a
la robótica para el estudiante que no cuenta con programas simuladores, donde el
operador hace uso de del código para realizar dicha función.
Esto puede aplicarse en un amplio rango de tareas, para cálculo de variables y crear
simulaciones de mecánica. Este simulador de mecanismos aplicados a la robótica es
una iniciativa en el ámbito profesional y educativo para ofrecer procesos simulados de
mecanismos que se aplican en la robótica, mostrando el accionamiento simple por rueda
dentada, el accionamiento múltiple de rueda dentada, accionamiento por cremallera sin
fin y tornillo sin fin, cálculos de ruedas de cambio y engranajes como convertidores par.
La manera en que se realiza dicha operación es a través de un software diseñado en
lenguaje Python, donde se calcule por medio de fórmulas los datos genera una
simulación de las partes de mecanismos ya sean engranajes, rueda dentada, etc.
Estas instrucciones dadas por software se ejecutan por el operador.
Por medio del código, las instrucciones que el operador realizo mandan los resultados
correspondientes y el software los muestra.
Figura 4. Definición conceptual del modelo del negocio. Fuente: (elaboración propia)
Para explicar mas sobre nuestro proyecto a continuación se describirán los mecanismos
mas importantes en la robótica con sus fórmulas.
Pag. 5
Accionamiento simple por rueda dentada [1]
Un accionamiento simple por rueda dentada consta de un par de ruedas.
Sus fórmulas son:
z = número de dientes
a = distancia entre ejes
n = número de revoluciones
d = diámetro de circulo perímetro
i = transmisión
Las ruedas dentadas “endientan”, por lo que tienen la misma velocidad periférica:
𝟏. interdependencia de d y n
𝒗𝟏
= 𝒗𝟐
𝒅𝟏 ⋅ 𝝅 ⋅ 𝒏𝟏 = 𝒅𝟐 ⋅ 𝝅 ⋅ 𝒏𝟐
𝒅𝟏 ⋅ 𝒏𝟏
= 𝒅𝟐 ⋅ 𝒏𝟐
Nota
𝒅 ⋅ 𝒏 motriz = 𝒅 ⋅ 𝒏 accionado
En la expresión obtenida d x n = d x n se sustituye d 1 1 2 2 según d = z x m:
𝟐. interdependencia de z y n
𝒛𝟏 ⋅ 𝒎 ⋅ 𝒏 𝟏 = 𝒛𝟐 ⋅ 𝝅 ⋅ 𝒏 𝟐
𝒛𝟏 ⋅ 𝒏 𝟏
= 𝒛𝟐 ⋅ 𝒏 𝟐
Nota
𝒛 ⋅ 𝒏 motriz = 𝒛 ⋅ 𝒏 accionado
Estando dada la relación del número de revoluciones por la fuerza motriz, se obtiene:
𝟑. Transmisión
𝒏𝒖𝒎. 𝒅𝒆 𝒓𝒆𝒗. 𝒎𝒐𝒕𝒓𝒊𝒛
𝒏𝟏 𝒅𝟐 𝒛𝟐
=
=
=
𝒏𝒖𝒎. 𝒅𝒆 𝒓𝒆𝒗. 𝒂𝒄𝒄𝒊𝒐𝒏𝒂𝒅𝒐 𝒏𝟐 𝒅𝟏 𝒛𝟏
𝒛𝟏 ⋅ 𝒏 𝟏
= 𝒛𝟐 ⋅ 𝒏 𝟐
𝒊=
La distancia entre ejes está determinada por los diámetros d1 y d2:
𝟒. Distancia entre ejes
𝒂=
Pag. 6
𝒅𝟏 + 𝒅𝟐 𝒛𝟏 + 𝒎 + 𝒛𝟐 ⋅ 𝒎 𝒎
=
=
(𝒛 + 𝒛𝟐 )
𝟐
𝟐
𝟐 𝟏
Accionamiento múltiple por rueda dentada [1]
𝑛𝐴 = número de dientes
𝑛𝐸 = número de revoluciones
𝑖1 = primera transmisión parcial
𝑖2 = segunda transmisión parcial
i = transmisión total
Se descompone toda propulsión compuesta en fuerzas motrices individuales según los
conocimientos básicos:
𝟏. Transmisiones parciales
Transmisión parcial II
𝒅 ⋅ 𝒏 motriz = 𝒅 ⋅ 𝒏 accionado
𝒛 ⋅ 𝒏 motriz = 𝒛 ⋅ 𝒏 accionado
Transmisión parcial I
𝒅𝟑 ⋅ 𝒏𝟑
𝒛𝟑 ⋅ 𝒏 𝟑
𝒅𝟏 ⋅ 𝒏𝟏
𝒛𝟏 ⋅ 𝒏 𝟏
𝑖1 =
𝒏𝟏
𝒏𝟐
= 𝒅𝟐 ⋅ 𝒏𝟐
= 𝒛𝟐 ⋅ 𝒏 𝟐
=
𝒅𝟐
𝒅𝟏
=
= 𝒅𝟒 ⋅ 𝒏𝟒
= 𝒛𝟒 ⋅ 𝒏 𝟒
𝑖1 =
𝒏𝟑
𝒏𝟒
=
𝒅𝟒
𝒅𝟑
=
𝒛𝟒
𝒛𝟑
𝒛𝟐
𝒛𝟏
La transmisión total es el producto de sus transmisiones individuales.
𝟐. Transmisión total
𝒊 = 𝒊𝟏 ⋅ 𝒊𝟐 =
𝒊=
𝑛𝐴
𝑛𝐸
𝒏𝟏 ⋅ 𝒏𝟑 𝒅𝟐 ⋅ 𝒅𝟒 𝒛𝟐 ⋅ 𝒛𝟒
=
=
𝒏𝟐 ⋅ 𝒏𝟒 𝒅𝟏 ⋅ 𝒅𝟑 𝒛𝟏 ⋅ 𝒛𝟑
Accionamiento por cremallera y tornillo sin fin [1]
Accionamiento por cremallera [1]
𝑠 = carrera de cremallera
𝛼 = ángulo de giro parcial
La cremallera se puede definir como una rueda dentada de radio infinito.
Los dientes de la cremallera desempeñan la misma función que los filetes de una tuerca.
Es un par usado en la transmisión de grandes potencias porque el empuje total se reparte entre
los numerosos dientes. La cremallera puede considerarse como parte de una corona dentada
con diámetro primitivo infinitamente grande. [1]
𝟏. Carrera de cremallera
𝑐𝑎𝑟𝑟𝑒𝑟𝑎 𝑑𝑒 𝑐𝑟𝑒𝑚𝑎𝑙𝑙𝑒𝑟𝑎 = 𝑝𝑒𝑟𝑖𝑚𝑒𝑡𝑟𝑜 𝑐𝑖𝑟𝑐𝑢𝑐𝑢𝑙𝑜 𝑝𝑟𝑒𝑚𝑖𝑡𝑖𝑣𝑜
𝒔 = 𝒅 ∗ 𝟑. 𝟏𝟒
𝒔=𝒛∗𝒑
𝒂
𝒔=𝒛∗𝒑∗
𝟑𝟔𝟎°
Pag. 7
Accionamiento por Tornillo Sinfín [1]
G = numero de hilos del tornillo sinfín (𝑧1 )
𝑧2 = numero de dientes de la rueda helicoidal
Efectuando un tornillo sinfín de 1 hilo un giro, avanza la rueda helicoidal 1 diente.
𝟏. Hilo
hilo ≜ numero de dientes
Las relaciones son las mismas que para el accionamiento simple por rueda dentada:
𝟐. Interdependencies
z ∗ n motriz = z ∗ n accionado
z1 ∗ n1 motriz = z2 ∗ n2 accionado
n1 z1
i=
=
n2 z2
nota:
paso = division x numero de hilos
Cálculo de ruedas de cambio interdependencia ruedas de cambio juegos de ruedas [1]
𝟏. Ruedas
𝑖 = relación de transmisión
𝑛1 = velocidad del eje de entrada
𝑛2 = velocidad del eje de salida
𝑍1 = número de dientes de todos los engranajes de entrada
𝑍2 = número de dientes de todos los engranajes de salida
𝑛2
𝑛1
𝑍1 𝒛𝟏 ⋅ 𝒛𝟑
𝑖=
=
𝑍2 𝒛𝟐 ⋅ 𝒛𝟒
𝒊=
Pag. 8
Engranajes como convertidores de par [1]
El convertidor de par no puede utilizarse de forma directa sobre un vehículo al ofrecer
un rendimiento muy bajo a bajo régimen, además de no poder aumentar el par más allá
del triple. A consecuencia de ello, se introducen los engranajes planetarios que
permiten un cambio de par muy progresivo. [2]
i = transmisión
𝑀1 = momento de giro de impulsión (aportado)
η= rendimiento
𝑀2 = par de salida (cedido)
𝟏. Transmisión de engranajes
𝑖 = relación de transmisión
𝑀1 = 𝐹 ⋅ 𝒓𝟏 → Momento de la rueda I
𝑀2 = 𝐹 ⋅ 𝒓𝟐 → Momento de la rueda II
De donde se obtiene la fuerza del diente
𝑀1 𝑀2
𝒓𝟐 𝑀2
𝐹=
=
→
𝒊=
=
𝒓𝟏
𝒓𝟐
𝒓𝟏 𝑀1
El número de revoluciones es inversamente proporcional
a los diámetros y números de dientes
𝒊=
𝒏𝟏
𝒏𝟐
=
𝒅𝟐
𝒅𝟏
=
𝒁𝟐
𝒁𝟏
De la relación de transmisión de los movimientos se obtiene la relación de transmisión
de los momentos de torsión: [1]
𝟐. Conversión de par
𝒊=
𝐦𝐨𝐦𝐞𝐧𝐭𝐨 𝐝𝐞 𝐠𝐢𝐫𝐨 𝐝𝐞 𝐢𝐦𝐩𝐮𝐥𝐬𝐢𝐨𝐧
𝐩𝐚𝐫 𝐝𝐞 𝐬𝐚𝐥𝐢𝐝𝐚
=
𝑴𝟐
𝑴𝟏
Resultando
𝑀2 = 𝑀1 ⋅ 𝑖
Nota:
Una transmisión a marcha lenta
aumenta el par de salida, lo que
es especialmente deseable en
la puesta en marcha.
Pag. 9
Ya que en todo engranaje se tienen pérdidas,
por ejemplo, por fricción, tiene que
multiplicarse el momento cedido con el
rendimiento.
𝑀2 = 𝑀1 ⋅ 𝑖 ⋅ 𝜼
Componentes de negocio del software de simulación de mecanismos aplicados a
la robótica y su modelo de negocio correspondiente
El diagrama de componentes es uno de los principales diagramas UML.
Está clasificado como diagrama de estructura y representa de forma estática el sistema de
información. Se utiliza después de haber creado el diagrama de clases, pues necesita
información de este diagrama como pueden ser las propias clases.
A continuación, se va a mostrar en la figura 5 el diagrama de componentes para el software
simulador y en la figura 6. El modelo de negocio
Figura. 5 diagrama de componentes del software
Figura. 6 Diagrama del modelo del negocio del software
Pag. 10
Requerimientos del software
Descripción de Proceso de Ingeniería de requerimientos de software del proyecto
Nuestro proyecto va a permitir a cualquier estudiante o practicante pueda poder simular
mediante el software manipulando variables y valores. Es muy importante tener bien definido
los requerimientos del simulador software para así poder realizar bien nuestro proyecto. El
cliente y el analista juegan un papel muy importante en desarrollo del proyecto. El proceso
está dividido en 4 fases.
La primera fase es la elicitación y desarrollo de requerimientos, en esta fase determinaremos
los requisitos del usuario que es el estudiante o practicante, los requisitos de información,
normas del software, y también para describir la funcionalidad de este proyecto.
La segunda fase es la documentación de requerimientos, que es donde se recolectara datos
y requisitos mediante un documento o archivo formal. Aquí se va a describir los
requerimientos en desarrollo y el producto enviado que vamos a ofrecer al usuario.
La tercera fase es la validación y verificación de requerimientos, que aquí es donde nosotros
debemos de asegurarnos que nuestro producto se valide, teniendo los requerimientos
validados y verificados en un documento.
La última fase es la administración y planificación de requerimientos, es cuando nosotros
que estamos desarrollando nuestro proyecto planificamos la cuestión de cómo administrar
los requerimientos del proyecto y tenemos el control de los cambios de los requerimientos.
Nuestro propósito es identificar a que usuarios les benefician este proyecto, y esto benefician
a los estudiantes del Tecnológico de Saltillo y a cualquier practicante. Análisis de
requerimientos.
A continuación, en la figura 7. Se mostrará el diagrama del proceso de requerimientos del
software
Figura 7. Diagrama del Proceso de Ingeniería de requerimientos de software del
proyecto.
Pag. 11
Requisitos funcionales
Aquí es donde los requisitos del proyecto son encargados de describir las necesidades de los
requisitos de usuario y de negocio, para que nos permita acceder a los destalles de cada función
para que podamos implementar bien el sistema. Las necesidades de los requisitos de usuario y
de negocio del proyecto deben permitir al usuario acceder al software para que le permita
manipular variables de mecanismos, así como también ejecutarlo. También debe permitir al
usuario usar sus conocimientos de graficación para el resultado del código de la simulación de
mecanismos. A continuación, se muestra en la figura 8 los requisitos funcionales del proyecto
mediante un diagrama.
Figura 8. Elaboración propia, Requisitos funcionales del proyecto.
Requisitos no funcionales
Aquí es donde se deben de reconocer que requisitos fallan y que no fallan para realizar el
producto, aquí se debe de cumplir los requisitos del sistema para ofrecer el servicio al usuario.
El simulador debe ser sencillo de aprender, accesible y ejecutable, para que así el usuario pueda
manipular variables y cambiar de coordenadas para los diferentes tipos de modelado, también
debe permitir al usuario introducir datos. El software debe ser accesible, eficaz y debe servir
como aprendizaje. A continuación, se muestra en la figura 9 los requisitos no funcionales del
proyecto mediante un diagrama.
Figura 9. Elaboración propia, Requisitos funcionales del proyecto.
Pag. 12
Requisitos de dominio
Estos requisitos son una combinación de los requisitos funcionales y no funcionales. Deben
formar parte del proyecto ya que derivan del dominio de la aplicación del sistema, si los
requisitos del dominio no se satisfacen, puede resultar imposible hacer que nuestro proyecto
funcione de manera correcta. Nuestro proyecto debe de tener en cuenta las características
del software para poder ofrecer el producto. Las características del software se muestran en
la siguiente figura 10:
Figura 10. Elaboración propia, Requisitos de dominio del proyecto.
Definición de la necesidad o carencia que presenta el sistema
La necesidad que presenta un software son ciertos requerimientos que debe de tener para
que pueda funcionar de manera correcta, primero es determinar cómo va a funcionar y para
que funcione, su diseño y desarrollo, etc. Es importante que este software sea validado,
también debe permitir al usuario ingresar, manipular e introducir datos para la simulación.
Un simulador ha sido una gran ventaja ya que ofrece elaborar prototipos y modelaciones en
3D de forma más sencilla para futuros proyectos de simulación.
Determinación de las necesidades y restricciones que presenta el sistema
Entre las principales necesidades se tiene la falta de claridad en los requerimientos del
usuario, demostrando ambigüedad y dificultad. Las principales restricciones que no se puede
cambiar el código.
Pag. 13
Las necesidades del software son:
• Ser eficaz y sencillo de entender.
• Tener una estructura bien realizada.
• Mantenimiento por parte de los que crean el software.
• Mostrar resultados correctos y reales.
• Que permita al usuario introducir datos.
• Cumplir con los requerimientos definidos para el software.
• Costo accesible para los usuarios.
• Que cumpla con las especificaciones del cliente.
• Funcionar correctamente para la modelación.
• Los valores en las simulaciones deben ser exactos, para que el resultado sea efectivo
y se pueda crear físicamente.
Especificación de requerimientos en una plantilla
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Pag. 14
Software de simulación de mecanismos aplicados a robótica
Establecer tipos de caracteres y variables que admite el software para
calcular los mecanismos de robótica
El software deberá admitir números decimales y enteros
Números decimales y enteros
Resultados en ejecución de excepción si la sintaxis marca error
Funcional
Software de simulación de mecanismos aplicados a robótica
Mostrar el resultado del calculo mediante el software de simulación
El software deberá mostrar los resultados por pantalla y guardados como
imagen tipo png
Selección de opción mediante menú los ejercicios para calcular
Resultado del ejercicio
Funcional
Interacción grafica del software simulador
Mostrar mediante un menú, opciones donde vengan las formulas y los
ejercicios a seleccionar para realizar
El software debe tener un menú con submenús que contengan las
fórmulas mediante imágenes y lo ejercicios a seleccionar con botones
para poder ejecutarlos,
Accionamiento simple por Rueda Dentada
Accionamiento múltiple por Rueda Dentada
Accionamiento por cremallera y sin fin y por tornillo sin fin
Cálculo de ruedas
Engranajes como convertidores de par
Muestra en la pantalla ventanas para ingresar los datos de las variables
de acuerdo con la opción seleccionada.
Funcional
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Referencia
Función
Descripción
Entradas
Salidas
Requerimiento
Pag .15
Accionamiento simple por Rueda Dentada
Calcular el número de revoluciones por Accionamiento simple de Rueda
Dentada
El software deberá solicitar los datos de entrada del ejercicio opción f)
Se muestra en pantalla una ventana del ejercicio para introducir datos con
el botón de ejecutar
Resultado del ejercicio opción f)
Funcional
Accionamiento múltiple por Rueda Dentada
Calcular la transmisión total de Accionamiento múltiple por Rueda
dentada
El software deberá solicitar los datos de entrada del ejercicio opción g)
Se muestra en pantalla una ventana del ejercicio para introducir datos con
el botón de ejecutar
Resultado del ejercicio opción g)
Funcional
Accionamiento por cremallera y sin fin y por tornillo sin fin
Calcular el accionamiento de la cremallera
El software deberá solicitar los datos de entrada del ejercicio opción h)
Se muestra en pantalla una ventana del ejercicio para introducir datos con
el botón de ejecutar
Resultado del ejercicio opción h)
Funcional
Cálculo de ruedas
Calcular las ruedas de cambio interdependencia ruedas de cambio juegos
de ruedas
El software deberá solicitar los datos de entrada del ejercicio opción i)
Se muestra en pantalla una ventana del ejercicio para introducir datos con
el botón de ejecutar
Resultado del ejercicio opción i)
Funcional
Engranajes como convertidores de par
Calcular la conversión par del engranaje
El software deberá solicitar los datos de entrada del ejercicio opción j)
Se muestra en pantalla una ventana del ejercicio para introducir datos con
el botón de ejecutar
Resultado del ejercicio opción j)
Funcional
Referencia
Producto
Función
Descripción
Entradas
Salidas
Proporcionar una herramienta para usos educativos en ingeniería
de manera sencilla
Debe ser un software intuitivo para el usuario
Variables
Producto final
Requerimiento
No funcional
Referencia
Producto
Función
Facilitar el uso del software con uso de lenguajes de programación
y herramientas computacionales mas usuales.
Descripción
Adecuado para laptops, PC’s y computadoras
Entradas
PC
Laptop
Salidas
Requerimiento
Aplicación de simulación de mecanismos aplicados en robótica
No funcional
Referencia
Producto
Función
Debe ser mantenible el software
Descripción
Mantenimiento adecuado
Entradas
Corrección y detección de errores
Salidas
Producto final
Requerimiento
No funcional
Referencia
Producto
Función
Descripción
Debe permitir ejecutar correctamente el programa al momento de
introducir datos
Funcionar correctamente para ejecución del software
Entradas
Salidas
Introducir datos
Ejecución del programa
Requerimiento
No funcional
Pag. 16
Representación de requerimientos
En la Figura. 11 se muestra el Diagrama UML de Clases, Objetos y Métodos del Proyecto de
Simulación de Mecanismos aplicados a Robótica.
Figura. 11 Representación de requerimientos en diagrama UML. Fuente (elaboración propia)
La calidad, estándares y métricas de calidad del software
Factores de calidad del software
Dentro del análisis de desarrollo del software, se divide en las siguientes secciones:
Factores Operativos del Software:
•
Se realizo un análisis de uso del software y se corrigió la disposición de los objetos y
sus características en la interfaz.
•
Se realizaron pruebas de uso del software, verificando la eficiencia con la que se
ejecuta.
•
Se verifica la fiabilidad de los resultados de las operaciones del software.
•
La interfaz fue rediseñada para su fácil con prendimiento y se crearon imágenes de
las fórmulas y mecanismos en cada práctica.
Factores de mantenimiento:
•
El software nos permite saber al momento de fallar cual fue el error al momento de
ejecutarlo y visualizar el código fuente.
•
Se puede reutilizar el código para extender el número de prácticas disponibles.
•
El lenguaje de programación Python permite flexibilidad de compatibilidad con otros
lenguajes de programación.
Pag .17
Factores Evolutivos
•
El software nos permite ejecutarlo sin problemas en diferentes versiones de Windows.
•
El software no requiere grandes capacidades de hardware.
•
Es capaz de ejecutarse al momento que se use otro software.
Estándares
Unified Modeling Language – UML
Este estándar fue elegido ya que posee programación orientada a objetos y que la información
que utilizaremos para el análisis de la información de nuestra clientela.
El uso del lenguaje UML nos permitirá utilizar y mostrar información sobre nuestro proyecto, en
si sobre los programas, servicios y el sistema usado. Este modelo será utilizado como base de
especificar lo más importante de nuestro proyecto. Es de importancia para nosotros utilizar este
tipo de lenguaje para si mostrar nuestras ideas innovadoras.
Esto va a ser muy útil ya que así podremos utilizar información reduciendo la carga en programas
usados, para que clientes y desarrolladores puedan usar de manera fácil nuestro sistema. Este
tipo de estándar nos permitirá mostrar la estructura de un proyecto innovador y experimentar de
un nuevo concepto de negocio.
Métricas de calidad
En el software se utilizaron diversas métricas de calidad para definir el nivel de calidad de cada
parte de nuestro software. Dentro de la fase de análisis utilizamos métricas como:
•
Métrica de funcionalidad: En esta métrica analizamos si el software es capaz de
desarrollar las prácticas y manipulaciones con los datos ingresados por el usuario de
manera eficiente.
•
Métrica de diseño: En esta métrica se analizó el diseño del software, donde la
interfaz de uso sea de fácil comprensión y el usuario pueda identificar los
componentes de esta.
•
Métrica de especificación: Verificamos que el software cumpla con los requisitos
necesarios para obtener el resultado deseado y cumpla con su objetivo de desarrollo.
•
Métrica de documentación: Desarrollamos una estructuración en el código fuente
del programa, para identificar, definir y particionar el código fuente de manera que
se puedan identificar los componentes de este fácilmente.
Pag. 18
Elaboración del prototipo
Código en Python
Prototipo Primera Fase
En este documento se va a explicar el prototipo primera fase de nuestro proyecto simulador de
mecanismos aplicados a la robótica. Utilizamos el programa Python para las fórmulas de los
puntos del documento “Simulación de mecanismos aplicados en robótica”. El software fue
desarrollado en el lenguaje de programación Python en la versión 3.9, donde se establecieron
los requerimientos necesarios que debía poseer el software.
Primero se diseñó el título de la aplicación y se definió la base en la que se encontrarían los
textos y campos de datos de cada práctica.
Se realizó tomando en cuenta que todas las practicas fueran legibles y fuese de fácil comprensión
para el usuario. El software se basó principalmente en la librería Tkinter, la cual ofrece diversas
herramientas para el diseño y construcción de software y visualización de objetos. Una vez se
diseñó la GUI de nuestro software, se procedió a la construcción de este.
Se implementaron fórmulas de mecanismos en el código. En los campos de datos (Entry) le
permite al usuario capturar los datos con los que se va a trabajar. Una vez capturados el sistema
identifica el dato que escribió el usuario y procede a guardarlo en una variable única.
Cabe mencionar que los datos son almacenados y procesados hasta que el usuario presiona el
botón ejecutar y solicita al sistema proceda a realizar los cálculos.
Una vez definida la variable el software manda los datos a una función y dicha función los procesa
para al final regresar como dato el resultado de dicha función.
Una vez realizado dicho proceso, el software envía el resultado a un label, permitiéndole al
usuario visualizar el resultado de los datos definidos y finalizar la práctica.
Esto cumpliendo con el objetivo del software, donde el usuario sea capaz de ingresar valores a
diversas prácticas definidas, donde podrá cambiar dichos valores para seguir realizando
prácticas y obteniendo diferentes resultados. Se realizo un modelo es espiral del prototipo
primera fase de nuestro proyecto, se puede ver en la figura 12.
Pag. 19
Figura 12. Prototipo del software. Elaboración propia en PowerPoint
Figura 13. Prototipo del software. Elaboración propia en programa Justinmind Prototyper para el
Pag. 20
Figura 14. Ejecución del código en Python
Prototipo Segunda Fase
Interacción del usuario
El usuario utiliza la interfaz y los campos correspondientes, introduciendo los datos que solicita
el sistema para realizar las operaciones matemáticas necesarias para ofrecer el resultado.
En base a la práctica donde introduzca los datos y los datos en sí, ofrecerá diversos resultados.
Figura 15. Ejecución del código para introducir datos por el usuario en Python
Pag .21
Una vez introducidos los datos, el usuario dará clic en el botón correspondiente a la práctica a
realizar para que el sistema realice las funciones correspondientes y muestre el resultado.
En cada practica se identifica con una imagen las fórmulas utilizadas como también una
visualización de la practica en sí.
El usuario ingresara los datos en los campos disponibles.
El usuario verá el resultado debajo de los campos donde ingreso los datos, después de utilizar
le botón Ejecutar.
Figura 16. Ejecución del código con resultados en Python
Lógica de programación
En Python, la manera en que el programa lee el código es en orden de arriba hacia abajo, por
ende, se estructura de manera que vayamos definiendo los objetos en base a la posición que
queramos establecer.
Se construye de la siguiente manera:
1.- Se definen las librerías necesarias para su programación.
2.- Se crea la raíz base visual del software, además de agregar un marco tipo Frame para
colocar los objetos.
Pag. 22
3.- Se definen los objetos de la primera práctica.
4.-Se definen las funciones de operaciones matemáticas que realizara dicha practica con los
valores dados por el usuario. Además, se creara el objeto llamado “Botón” que permitirá al
usuario indicarle al sistema que realice las operaciones matemáticas al hacer uso del botón, de
la misma manera, imprimirá el resultado.
Por último, se agregarán imágenes referentes a la práctica a realizar, como lo son un ejemplo
visual y las fórmulas matemáticas involucradas.
Y este proceso se repetira por cada uno de las practicas del software, donde variaran los
nombres y las funciones utilizadas.
Al final del programa se mantiene el codigo que permite que la interfaz se mantenga
funcionando hasta que el usuario cierre el programa.
Pag .23
Uso de la función matemática.
Primero se definen los objetos de campos de entrada de los valores que introducirá el
usuario.
Después estos valores serán obtenidos y guardados por la función ejecutar
operación.
Hay que tener en cuenta que esta función solo se realiza cuando el usuario brindo los
datos correspondientes y utilizo el botón ejecutar, ya que es donde se define el
comando que inicializa dichas funciones.
Donde la función define los dos valores requeridos para la operación, obteniéndolos,
utilizando el método. get de los campos definidos.
Una vez definidos, la función solicita al sistema ejecutar otra función llamada
operación, la cual es la que realiza la operación matemática correspondiente, con los
valores obtenidos por la función ejecutar operación.
Una vez que realiza la función operación, la misma función ejecutar_operación
imprime el resultado utilizando el método .config y mostrándolo como texto en el label
de resultado.
Pag. 24
Tercera fase del prototipo
Interacción de Usuario
El usuario utiliza la interfaz y los campos correspondientes, introduciendo los datos que solicita
el sistema para realizar las operaciones matemáticas necesarias para ofrecer el resultado. El
usuario va encontrase con una pantalla que se le da una bienvenida al código.
El usuario verá un menú donde venga formulas y ejercicios.
Al mismo de seleccionar en el menú Ejercicios, el usuario podrá ver que hay submenús donde
vienen los ejercicios para que pueda introducir los datos para que pueda calcular y manipular las
variables.
Pag. 25
En el menú de fórmulas están los submenús con las fórmulas de los puntos del tema de
simulación de mecanismos aplicados a la robótica. Por ejemplo, si se va al submenú de “f)
Accionamiento múltiple por rueda dentada transiciones parciales transmisión total”, el usuario
podrá ver otros 2 submenús donde ahí vienen las imágenes de las fórmulas. Los submenús se
llaman:
Si el usuario le da click en “Formula 1 para calcular transmisión parcial”, le abrirá una ventana
con un mensaje que dice:
El usuario al dar click en ok, le aparece la imagen de la formula 1 de Accionamiento múltiple
por rueda dentada transiciones parciales transmisión total
Pag. 26
Cuando le aparezca la ventana, podrá cerrarla y abrir otra para que pueda ver las formulas
En el menu de Ejercicios, vera los submenus siguientes:
El usuario puede seleccionar cualquier ejercicio del Menú Ejercicios para que aprenda.
Al seleccionar cualquier submenú, aparecerá una ventana donde pida introducir los datos a
calcular. Por ejemplo, si selecciona el submenú “Ejercicio opción h)“, aparecerá así:
Pag .27
Una vez introducidos los datos, el usuario dará clic en el botón correspondiente a la práctica a
realizar para que el sistema realice las funciones correspondientes y muestre el resultado.
El usuario ingresara los datos en los campos disponibles.
El usuario verá el resultado debajo de los campos donde ingreso los datos, después de utilizar
le botón Ejecutar.
Después, el usuario puede cerrar la ventana y escoger otro ejercicio. Después, el usuario podrá
seleccionar el submenú “Ajustes” que es donde vienen las opciones de sobre que trata de nuestro
software y también agradecimientos por parte de los creadores de este software
Pag. 28
Lógica de programación
En Python, la manera en que el programa lee el código es en orden de arriba hacia abajo, por
ende, se estructura de manera que vayamos definiendo los objetos en base a la posición que
queramos establecer.
Se construye de la siguiente manera:
1.- Se definen las librerías necesarias para su programación.
2.- Se crea la raíz base visual del software, además de agregar un marco tipo Frame para colocar
los objetos. Esto es para poder crear nuestro menú
3.- Se crea el menu de Formulas
4.- Se crean los submenús del menú de Formulas.
Pag .33
5.- Aquí se puso un separador en los submenús, ya que esta esta línea de código permite
poner una línea que separa de un submenú de otro. Se crea un comando con root.destroy
para que después el usuario pueda cerra el programa en la opción “Salir”, que está en el menú
de fórmulas.
6.- Se define la función de abrir imagen de las fórmulas de la opción f) para que el usuario al
seleccionar cualquier submenú, le aparezca la imagen de la formula como botón. Es importante
tener almacenadas las imágenes dentro del folder donde está el código en formato .py
7.- Se crea el menú Ejercicios con sus submenús, que el usuario puede escoger cual ejercicio a
resolver introduciendo datos.
8.- Se crea el submenú ajustes dentro del menú de Ejercicios. Se definen los objetos que
tendrán en la opción ajustes.
Pag. 32
9.- Se definen los objetos del primer ejercicio.
10.- Se definen las fórmulas con sus valores y variables del ejercicio 1
11.-Se definen las funciones de operaciones matemáticas que realizara dicha práctica con los
valores dados por el usuario. Además, se creará el objeto llamado “Botón” que permitirá al
usuario indicarle al sistema que realice las operaciones matemáticas al hacer uso del botón, de
la misma manera, imprimirá el resultado.
12. Al final del programa se mantiene el codigo que permite que la interfaz se mantenga
funcionando hasta que el usuario cierre el programa.
Pag .33
Uso de la función matemática.
Primero se definen los objetos de campos de entrada de los valores que introducirá el
usuario.
Después estos valores serán obtenidos y guardados por la función ejecutar operación.
Hay que tener en cuenta que esta función solo se realiza cuando el usuario brindo los
datos correspondientes y utilizo el botón ejecutar, ya que es donde se define el comando
que inicializa dichas funciones.
Donde la función define los dos valores requeridos para la operación, obteniéndolos,
utilizando el método. get de los campos definidos.
Una vez definidos, la función solicita al sistema ejecutar otra función llamada operación,
la cual es la que realiza la operación matemática correspondiente, con los valores
obtenidos por la función ejecutar operación.
Una vez que realiza la función operación, la misma función ejecutar_operación imprime
el resultado utilizando el método .config y mostrándolo como texto en el label de
resultado.
Pag. 32
Prototipo Final
En esta sección, se muestra el software final completo para su ejecución, a continuación,
se mostrarán imágenes del código y su ejecución.
Pag .33
Se define el ejercicio 2 opción g)
Pag. 34
Se define el ejercicio 3 de opción h)
Pag. 35
Se define el ejercicio 4 de opción i)
Pag. 36
Se define el ejercicio 5 de opción j)
Pag. 37
Se define para abrir la primera imagen de la opción f) Accionamiento simple por
Rueda dentada interdependencia y transmisión
Pag. 38
Se define para abrir la segunda imagen de la opción f) Accionamiento simple por
Rueda dentada interdependencia y transmisión
Pag. 39
Se define para abrir la tercera imagen de la opción f) Accionamiento simple por
Rueda dentada interdependencia y transmisión
Pag. 40
Se define para abrir la primera imagen de la opción g) Accionamiento múltiple por
Rueda dentada transmisiones parciales transmisión total
Pag. 41
Se define para abrir la segunda imagen de la opción g) Accionamiento múltiple
por Rueda dentada transmisiones parciales transmisión total
Pag. 42
Se define para abrir la primera imagen de la opción h) Accionamiento por
cremallera y por tornillo sin fin, carrera de cremallera accionamiento por tornillo
sin fin, interdependencias
Pag. 43
Se define para abrir la segunda imagen de la opción h) Accionamiento por
cremallera y por tornillo sin fin, carrera de cremallera accionamiento por tornillo
sin fin, interdependencias
Pag. 44
Se define para abrir la primera imagen de la opción i) Cálculo de ruedas de cambio
interdependencia ruedas de cambio juegos de ruedas
Pag. 45
Se define para abrir la primera imagen de la opción j) Engranajes como
convertidores de par, transmisión de engranajes y conversión de par
Pag. 46
Se define para abrir la segunda imagen de la opción j) Engranajes como
convertidores de par, transmisión de engranajes y conversión de par
Pag. 47
Se crea el menú principal como frame
Se crea el submenú formulas con sus opciones
Se crea el submenú Ejercicios con sus opciones
Pag. 48
Se crea el submenú Ajustes de Ejercicios con sus opciones
Se define Help para crear la opción de agradecimientos
Se define About para crear la opción de Que es nuestro software
Finalmente, aquí es donde termina el código
Menú
Pag. 49
Muestra de los submenús
Submenú Formulas
Pag. 50
Opción formula 1 para calcular la interdependencia de submenú f) Accionamiento
simple por Rueda dentada interdependencia y transmisión
Pag. 51
Al presionar en el botón de la imagen de fórmula 1 para calcular la interdependencia,
se abre una ventana que permite tomar screenshot, entrar al file explorer de tu
computadora en al dar click en botón navegar
Al dar click en botón navegar, podrás escoger el directorio que quieras para
descargar la imagen
Pag. 52
Después, aparecerá el directorio donde lo vas a guardar con el nombre que quieras
guardar la imagen
Después, al dar click en “Guardar”, aparecerá una pequeña ventana con un
mensaje que dice que la captura ha sido guardada.
Finalmente se guardó el screenshot
Pag. 53
Esta es la imagen resultante, puedues escoger que ventanas aparezcan en la
pantalla cuando al momento que haga la captura de pantallla, aparezca ahí.
En todas las opciones que vienen en el submenú Formulas, tiene la misma función,
aunque el botón viene con diferente imagen de acuerdo con la opción que escojas.
Por ejemplo, a continuación, se va a mostrar imágenes de las opciones del
submenú Fórmulas con sus imágenes tipo botón. La que se va a mostrar es la
segunda opción de submenú f) Accionamiento simple por Rueda dentada
interdependencia y transmisión
Pag. 54
Pag. 55
Esta es la tercera opción de submenú f) Accionamiento simple por Rueda dentada
interdependencia y transmisión
Pag. 56
Esta es la primera opción de submenú g) Accionamiento múltiple por Rueda
dentada transmisiones parciales y totales
Pag. 57
Esta es la segunda opción de submenú g) Accionamiento múltiple por Rueda
dentada transmisiones parciales y totales
Pag. 58
Esta es la primera opción de submenú h) Accionamiento por cremallera y por
tornillo sin fin, carrera de cremallera accionamiento por tornillo sin fin,
interdependencias
Pag. 59
Esta es la segunda opción de submenú h) Accionamiento por cremallera y por
tornillo sin fin, carrera de cremallera accionamiento por tornillo sin fin,
interdependencias
Pag. 60
Esta es la segunda opción de submenú i) Cálculo de ruedas de cambio
interdependencia ruedas de cambio juegos de ruedas
Pag. 61
Esta es la primera opción de submenú j) Engranajes como convertidores de par,
transmisión de engranajes y conversión de par
Pag. 62
Esta es la segunda opción de submenú j) Engranajes como convertidores de par,
transmisión de engranajes y conversión de par
Pag. 63
Submenú Ejercicios
A continuación, se mostrará las opciones del Menú ejercicios. Cada opción viene un
ejercicio que pedirá que el usuario ingrese datos para calcular y con el botón Ejecutar
se ejecuta y se muestra el resultado, luego viene el botón “Generar grafica”, que esto
permite generar una foto del modelo del ejercicio en una gráfica.
Se escogió la opción Ejercicio opción f), al momento de dar click, se abre una ventana
del ejercicio pidiendo ingresar datos para calcular
Pag. 64
Se ingresaron datos, y el resultado se muestra en la imagen. Ahora se puede generar
la gráfica en el botón “Generar grafica”.
Esta es la imagen de la grafica generada. En esta imagen, viene una opción para
guardarla como imagen
Ahora, en la siguiente imagen se muestra de como se va a guardar la imagen en un
directorio.
Pag. 65
Se muestra aquí que si se guardo la gráfica generada correctamente.
A continuación, se mostrará las otras opciones de ejercicios para poder calcular los
datos y generar su gráfica.
Pag. 66
Pag. 67
Pag. 68
Pag. 69
Finalmente, en la opción de ajustes tiene 2 opciones las cuales son:
Cuando el usuario le da click en Agradecimientos, le aparecerá una ventana pequeña
donde se da nuestros agradecimientos.
Cuando el usuario le da click en Que es nuestro software, le aparecerá una ventana
pequeña donde se explica de que trata nuestro software.
Para poder termina de usar del software en el menú de Formulas hay una opcion de
“Salir”, que al momenyo de dar click se cierra el programa.
Pag. 70
CONCLUSIÓN
La elaboración de este proyecto permitió adquirir más aprendizaje de los principales
mecanismos aplicados a robótica, sus variables y el funcionamiento de estos, realizando
gráficas, de forma autodidacta.
Para poder lograr este proyecto, se estudió conceptos básicos y temas de Ingeniería de
Software, desde que es un requisito hasta conceptos más importantes como calidad de
software, tipos requerimientos, procesos de requerimientos y el proceso por el cual
atraviesa un proyecto en el trayecto y la importancia de una buena estrategia para la
obtención de los requerimientos del usuario.
Aunque también se utilizo conocimientos del lenguaje Python sobre como crear interfaz
de usuario, botones por tkinter, gráficas con myplotlib, numpy, math y cv2, insertar,
mostrar y guardar imágenes para poder realizar este software mediante un código.
Los conocimientos de Python se adquirieron mediante también la materia de Graficación
y de programación mediante materias relacionadas a ello.
El software puede seguir desarrollando hasta realizarse como una manera de enseñanza
y aprendizaje para la comunidad estudiantil del Instituto Tecnológico de Saltillo o incluso
más allá.
Pag. 71
REFERENCIAS
[1] J. S Gamón, “FRESADORA II PARTE III”, manual de aprendizaje, SENATI, 2005. [En línea].
Disponible en: https://es.scribd.com/document/486879576/Fresadora-II-Parte-3 [Accedido: 29Marzo-2022]
[2] D. Plaza, “¿Qué es el convertidor de par?”, motor.es, 2022. [En línea]. Disponible en:
https://www.motor.es/que-es/convertidor-de-par [Accedido: 29-Marzo-2022]
[3] Python Software Foundation License Version 2, “tkinter — Python interface to Tcl/Tk”,
docs.python.org, 2022. [Online]. Available: https://docs.python.org/3/library/tkinter.html
[Accessed: March 29, 2022]
[4] J. D. Arias Hernández, A. F. Jiménez López y H. O. Porras Castro, “DESARROLLO DE
APLICACIONES EN PYTHON PARA EL APRENDIZAJE DE FÍSICA COMPUTACIONAL”,
Ingeniería Investigación y Desarrollo, vol. 16, núm. 1, pp.72-82, 2016. [En línea]. Disponible en:
https://revistas.uptc.edu.co/index.php/ingenieria_sogamoso/article/view/5122/4154 [Accedido:
29-Marzo-2022]
[5] Hanss-Erik E. y Magnus Penker, “Business Modeling and UML Primer”, in Business Modeling
with UML: Business Patterns at Work, USA, 2000, pp. 13-22. [Online]. Available:
https://fliphtml5.com/lnym/dxqo/basic/251-281 [Accessed: Feb 20, 2022]
[6] ARIS Community, “Overview Event-driven Process Chain Notation”, ARIS Community, 2022.
[Online]. Available: https://www.ariscommunity.com/event-driven-process-chain [Accessed: Feb
20, 2022]
[7] Haim Mendelson, “Modelos de negocio, tecnologías de información y la empresa del futuro”,
BBVA OpenMind, pp. 1-21, California, USA: Standford University, ,2015. [En línea]. Disponible
en: https://www.bbvaopenmind.com/wp-content/uploads/2015/02/BBVA-OpenMind-modelos-denegocio-tecnologias-de-la-informacion-y-la-empresa-del-futuro-Haim-Mendelson.pdf.pdf
[Accedido: 18-Feb-2022]
[8] “¿Qué es un modelo de negocio?”, cámara valencia, 2019. [En línea]. Disponible en:
https://www.master-valencia.com/empresas/que-es-un-modelo-de-negocio/ [Accedido: 18-Feb2022]
[9]
“Componentes
de
software”,
IBM,
2015.
[En
línea].
Disponible
en:
https://www.ibm.com/docs/es/wsr-and-r/8.5.6?topic=artifacts-software-components [Accedido:
18-Feb-2022
Pag. 72
[10] “APRENDE QUÉ ES EL SOFTWARE Y SUS COMPONENTES BÁSICOS”, EUROINNOVA,
2021. [En línea]. Disponible en: https://www.euroinnova.edu.es/blog/que-es-el-software-y-suscomponentes-basicos [Accedido: 18-Feb-2022]
[11] EALDE, “8 componentes del Plan de Negocio”, EALDE, 2021. [En línea]. Disponible en:
https://www.ealde.es/8-componentes-del-plan-de-negocio/ [Accedido: 20-Feb-2022]
[12] “La Fácil Guía de los Diagramas de los Componentes”, creately, 2021. [En línea]. Disponible
en: https://creately.com/blog/es/diagramas/tutorial-de-diagrama-de-componentes/ [Accedido: 20Feb-2022]
[13] “Diagrama de componentes”, manuel.cillero.es, 2022. [En línea]. Disponible en:
https://manuel.cillero.es/doc/metodologia/metrica-3/tecnicas/diagrama-de-componentes/
[Accedido: 20-Feb-2022]
[14] “Diagrama de componentes”, DiagramasUML, 2022. [En línea]. Disponible en:
https://diagramasuml.com/componentes/ [Accedido: 20-Feb-2022]
[15] D. Pandey, U. Suman and A. K. Ramani, "An Effective Requirement Engineering Process
Model for Software Development and Requirements Management," 2010 International
Conference on Advances in Recent Technologies in Communication and Computing, Kottayam,
India, 2010, pp. 287-291, doi: 10.1109/ARTCom.2010.24.
[En línea]. Disponible en:
https://www.tamps.cinvestav.mx/~ertello/civis/s01-ReqEngManage.pdf [Accedido: 26-Feb-2022]
[16] V. C. Loaiza Carvajal, L. C. Zorro Jiménez, M. E. Torres Moreno y M. P. Amórtegui Vargas,
“Introducción y Justificación”, en Ingeniería de requerimientos, primera edición, Pontificia
Universidad Javeriana, Bogotá, Colombia: Editorial Pontificia Universidad Javeriana, 2018, pp.
20-29. [En línea]. Disponible en: https://repository.javeriana.edu.co/handle/10554/44699
[Accedido: 26-Feb-2022]
Link de carpeta del programa en archivo zip Google Drive
https://drive.google.com/drive/folders/1P_KE3wD3z3H73SQOw697bBosPbkHfxia?usp=sharing
Pag. 73
Descargar