SEP SES TecNM
INSTITUTO TECNOLÓGICO DE TOLUCA
UNIDAD
TEMA: PROYECTO
PROFESOR: ANGELO MARLON MONTOYA GUERRA
MATERIA: PROGRAMACION AVANZADA
GRUPO: 190002
CARRERA: ING. MECATRONICA
EQUIPO 1: ANONYMOUS
BETANCOURT ALDAMA EDUARDO
DE LA PALMA ARREOLA MIGUEL ANGEL
ENRRIQUEZ MEJIA LEONARDO SEBASTIAN
MANJARREZ GARCIA ARTURO
ROMERO GUADARRAMA KEVIN JAIR
METEPEC, ESTADO DE MÉXICO, ENERO DE 2021
Índice
1.-Introduccion
2.-Antecedentes
3.-Planteamiento del problema
4.-Hipotesis
5.-Objetivos generales
6.-Objetivos específicos
7.-Marco Teórico
8.-Desarrollo del proyecto
9-. Conclusiones
Introducción
En la actualidad la automatización de procesos es cada vez mayor, por lo que
se sabe que llegara la industria 4.0, así que en este proyecto explicaremos
como optimizar el proceso de distribución de productos de e-comerce
(comercio electrónico) mediante la
automatización los centros de
distribución para mejorar la experiencia
de compra del cliente y simplificar el
proceso operacional de las empresas.
Se busca crear un centro de
distribución automatizado donde se pueda garantizar sencillez y eficiencia,
ahorro de costos y de tiempo. Se automatizará una banda transportadora con
lo que se disminuiría drásticamente la posibilidad de algún problema
ocasionado por un error humano y aumentaría las probabilidades de satisfacer
las necesidades del cliente asegurando que pueda obtener el producto en el
menor tiempo posible, por lo que hay que programar la banda transportadora
mediante software especializado como lo es NETBEANS, XAMPP.
Antecedentes
Las empresas tienen a su alcance múltiples sistemas de almacenaje y
herramientas para implementar y automatizar sus procesos
La tendencia en el mundo de los negocios continúa basando su crecimiento por
el lado de la automatización, y las actividades logísticas son donde más se
observa esta corriente. Las empresas más grandes, eficientes y solventes a
nivel global como Walmart, Zara o Amazon, tienen automatizada al 100% o en
ciertos niveles sus operaciones logísticas como el almacenamiento de los
productos que comercializan. Las razones que los motivan a automatizar sus
procesos son diferentes, pero de igual importancia.
Algunas de estas soluciones son el voice picking (o picking por voz), sistema
con el cual el operario recibe instrucciones vía los auriculares que lleva puesto
y al mismo tiempo puede realizar consultas por medio de un terminal de voz.
Esta herramienta permite tener las manos libres, con lo cual el personal puede
trabajar con mayor eficiencia. Otras soluciones para la preparación de pedidos
son el Put to Light y el Pick to Light.
La automatización en los centros de distribución también es implementada por
sus beneficios en las actividades de control de inventarios y porque permite
una mayor trazabilidad.
Un nivel básico de mejorar los procesos de almacenamiento, por ejemplo, es
por medio del uso de un Sistema de Gestión de Almacenes (WMS, por sus
siglas en inglés) junto con herramientas de RFID (identificación por
radiofrecuencia); estos sistemas permiten un control completo y exacto del
inventario: fechas de caducidad, cantidad, rotación, ingreso, salida, ubicación,
etc. Además, garantizan la trazabilidad completa de los procesos.
Finalmente, los almacenes más automatizados del mundo son aquellos que
actualmente están utilizando robots que funcionan con sensores y que
movilizan y despachan mercadería, como por ejemplo los kiva de Amazon. O
los almacenes en donde los drones son los encargados de realizar las tareas
de lectura de inventario.
Planteamiento del problema
Contextualización:
Dentro de una sociedad globalizada, que tiene en la movilidad de productos
uno de sus principales pilares, la logística representa un gran reto para la
gestión de la cadena de suministro, en un momento como el actual
caracterizado por la renovación constante y por el acortamiento de los
procesos. La integración logística, que abarca desde la gestión de las compras,
el transporte y la distribución del producto final, ha posibilitado en gran medida
que se realicen importantes cambios, pero las expectativas en cuanto a un
mejor proceso siguen en aumento.
Hoy en día, ya no es suficiente con ofrecerle al cliente un buen producto.
Además, es necesario entregárselo de la forma que solicita y en el momento
que desea. El consumidor ya no distingue entre los canales de distribución. Es
decir, espera el mismo servicio tanto en su compra online como en su consumo
en tienda física, quiere saber en todo momento dónde se encuentra su
producto y cuándo llegará a su destino exactamente. Pero, eso no es todo,
también quiere recibirlo rápidamente y de la forma más cómoda posible. La
exigencia de los usuarios aumenta en el servicio de mensajería y paquetes
express. Se está constantemente comprando online todo tipo de artículos a
cualquier hora y en cualquier lugar del mundo. Tener las compras en el menor
tiempo posible es un reto para las empresas de transporte.
Análisis crítico:
Los hábitos de compra, sumados a las dinámicas del propio mercado, nos
obligan a renovar los sistemas en las cadenas de suministro. Para ello hay que
afrontar el reto de digitalizar todo este proceso. La información debe fluir de la
forma más rápida posible, al igual que todos los pasos deben de ser visibles y
trazables para que el cliente pueda llevar un registro de su pedido.
Prognosis
El último paso de la cadena de suministro puede parecer el más sencillo, pues
el trayecto a recorrer es el más corto. Sin embargo, este eslabón de la cadena
representa el 30% del costo total del envío, por lo cual la optimización del
mismo representaría un gran avance.
Formulación del Problema
¿Cómo reducir los tiempos y costos en el proceso de envió para productos de
e-comerce?
Preguntas Directrices
· ¿Cuáles son los principales niveles de automatización que se pueden
implementar en un centro de distribución?
· ¿Cuál es el proceso para automatizar centros de distribución?
Hipótesis
La implementación de un centro de distribución automatizado puede garantizar
sencillez y eficiencia, ahorro de costos y de tiempo. Con lo que se disminuiría
drásticamente la posibilidad de algún problema ocasionado por un error
humano y aumentaría las probabilidades de satisfacer las necesidades del
cliente asegurando que pueda obtener el producto en el menor tiempo posible.
Objetivo general
Optimizar el proceso de distribución de productos de e-comerce mediante la
automatización los centros de distribución para mejorar la experiencia de
compra del cliente y simplificar el proceso operacional de las empresas.
Objetivos específicos
Reducción de tiempo y costos en atención al público.
Optimizar la entrega y distribución de paquetes.
Brindar más información, control y seguridad al cliente.
Marco teórico
Tiendas Online
Una tienda en línea (también conocida como tienda online, tienda virtual o
tienda electrónica) se refiere a un tipo de comercio que usa como medio
principal para realizar sus transacciones un sitio web o una aplicación
conectada a Internet. Constituye la herramienta principal del comercio
electrónico.
Los vendedores de productos y servicios ponen a disposición de sus clientes
una página web (o aplicación informática) en la que se pueden observar
imágenes de los productos, leer sus especificaciones y finalmente, adquirirlos.
Este servicio le da al cliente rapidez en la compra, la posibilidad de hacerlo
desde cualquier lugar del mundo y a cualquier hora del día. Algunas tiendas en
línea incluyen dentro de la propia página del producto los manuales de usuario
de manera que el cliente puede darse una idea de antemano de lo que está
adquiriendo. Igualmente, muchas tiendas en línea ofrecen a los compradores la
posibilidad de calificar y evaluar el producto. Estas valoraciones se pueden
llevar a cabo a través de la propia página o a través de aplicaciones de
terceros, estando siempre visibles para cualquier visitante de la web.
Típicamente estos productos se pagan, usando un terminal punto de venta,
mediante tarjeta de crédito, servicios de pagos como PayPal y más
recientemente Bitcoin, para posteriormente enviarlos al cliente por correo o
agencia de transporte, aunque según el país y la tienda puede haber otras
opciones, como recoger en la tienda, la transferencia bancaria o el pago contra
reembolso (pago en destino al recibir el pedido). Este último suele llevar
asociada una comisión en la mayor parte de las tiendas en línea que lo ofrecen.
También suelen ofrecerse métodos de pago alternativos más actuales cómo la
transferencia directa bancaria que ofrecen las soluciones Sofort o Trustly, así
como los sistemas que permiten realizar los pagos a plazos como
Pagamastarde o Aplazame (del grupo Wizink).
La inmensa mayoría de tiendas en línea requieren la creación de un usuario en
el sitio web a partir de datos como nombre, dirección y correo electrónico. Este
último a veces es utilizado como medio de validación.
Mensajería y paquetes express
El servicio postal es un sistema dedicado a transportar documentos escritos,
así como paquetes de tamaño pequeño o mediano (encomiendas) alrededor
del mundo. Todo envío a través del sistema postal es llamado correo o
correspondencia. Los paquetes y las cartas son "envíos postales" que se
pueden transportar por tierra, mar, o aire, cada uno con tarifas diferentes
dependiendo de la duración de la entrega y el peso.
El servicio completo comprende la recolección, traslado, rastreo, reparto,
seguimiento y entrega en tiempos predeterminados de paquetes de manera
expedita, y se caracteriza por brindar velocidad, seguridad y especialización de
los servicios, entre otras cosas.
Recepción de la mercancía por parte del operador logístico: La empresa de
transporte recoge el producto de la tienda. El repartidor o mensajero recoge
directamente el paquete del almacén de logística y lo lleva al domicilio del
cliente directamente.
Centros de distribución
Un centro de distribución es una infraestructura logística en la cual se
almacenan productos y se dan órdenes de salida para su distribución al
comercio minorista o mayorista. Generalmente se constituye por uno o más
almacenes, en los cuales ocasionalmente se cuenta con sistemas de
refrigeración o aire acondicionado, áreas para organizar la mercancía y
compuertas, rampas u otras infraestructuras como son los vehículos.
Las compañías suelen definir la localización de sus centros de distribución en
función del área o la región en la que este tendrá cobertura, incluyendo los
recursos naturales, las características de la población, disponibilidad de fuerza
de trabajo, impuestos, servicios de transporte, consumidores, fuentes de
energía, entre otras. Así mismo esta debe tener en cuenta además las rutas
desde y hacia las plantas de producción, y a carreteras principales, o a la
ubicación de puertos marítimos, fluviales, aéreos, estaciones de carga y zonas
francas.
Sistema de Gestión de Almacenes
La gestión del almacén debe dar respuesta al comportamiento real de la
demanda, aparentemente impredecible y con las problemáticas derivadas de
gestión del día a día, que es una característica de este tipo de centros. Por lo
exigente de los requerimientos y la dificultad de modelizarlos, habitualmente la
actividad a lo largo del día, del mes y del año están alejados de los parámetros
de diseño.
Automatización
La automatización es un sistema donde se trasfieren tareas de producción,
realizadas habitualmente por operadores humanos a un conjunto de elementos
tecnológicos.
Un sistema automatizado consta de dos partes principales
o Parte de Mando
o Parte Operativa
La Parte Operativa es la parte que actúa directamente sobre la máquina. Son
los elementos que hacen que la máquina se mueva y realice la operación
deseada. Los elementos que forman la parte operativa son los accionadores de
las máquinas como motores, cilindros, compresores y los captadores como
fotodiodos, finales de carrera.
La Parte de Mando suele ser un autómata programable (tecnología
programada), aunque hasta hace bien poco se utilizaban relés
electromagnéticos, tarjetas electrónicas o módulos lógicos neumáticos
(tecnología cableada). En un sistema de fabricación automatizado el autómata
programable está en el centro del sistema. Este debe ser capaz de
comunicarse con todos los constituyentes de sistema automatizado.
Objetivos de la automatización
Mejorar la productividad de la empresa, reduciendo los costes de la
producción y mejorando la calidad de esta.
Mejorar las condiciones de trabajo del personal, suprimiendo los trabajos
penosos e incrementando la seguridad.
Realizar las operaciones imposibles de controlar intelectual o
manualmente.
Mejorar la disponibilidad de los productos, pudiendo proveer las
cantidades necesarias en el momento preciso.
Simplificar el mantenimiento de forma que el operario no requiera
grandes conocimientos para la manipulación del proceso productivo.
Integrar la gestión y producción.
Automatización para centros de distribución
El almacenamiento debe tener en cuenta el tipo de productos, la tecnología
para manipularlos, si requieren cadena de frío, si son sustancias peligrosas y
también la infraestructura debe dar cumplimiento con requerimientos legales y
normas sobre manipulación de mercancía. Actualmente, entre otros, el
comercio electrónico demanda centros de acopio diferentes.
Al optimizar espacios de almacenamiento se contribuye a la preparación más
eficaz de pedidos, demanda pocos metros cuadrados para su instalación,
reducción de costos en un alto porcentaje y mayor control de la disponibilidad
de los productos.
Un modelo eficiente es el de Amazon, que tiene un almacenamiento totalmente
automatizado y utiliza robots que se mueven por espacios horizontales con
islas y cuenta con sistema de georreferenciación que ubica los productos.
En cuanto al almacenaje, la gran ayuda va de la mano de sistemas
automatizados de almacenamiento/recuperación (AS/RS), que permiten
almacenar y recuperar mercancías con exactitud.
La automatización de un almacén permite agrupar los artículos por clientes,
proveedores, en función de su valor, fecha de caducidad o por su tipología,
entre otros.
Robots que funcionan con sensores y que movilizan y despachan mercadería
Las bandas transportadoras funcionan por sistema de poleas y motor. El
material y resistencia de estas bandas depende de los elementos con que es
diseñada. Su funcionamiento, sin embargo, depende en realidad de los
sensores de velocidad. Estos sensores determinan, como su nombre lo indica,
la velocidad con que la banda transporta cargas, así como paradas y
arranques.
Para la industria de la automatización, los sensores de velocidad son básicos
para determinar flujos de operación y producción. En general es un recurso de
fácil instalación con grandes beneficios para las producciones de manufactura.
En este apartado utilizaremos a Amazon como referente ya que es uno de los
más conocidos que incorpora esta tecnología, en las instalaciones del centro
logístico de Amazon en Mánchester (Reino Unido) ya no hay pasillos. Este
detalle, que a priori puede parecer banal, explica el imparable crecimiento del
gigante del comercio electrónico. El centro, inaugurado el año pasado, y que ha
podido visitar EXPANSIÓN, es uno de los más avanzados tecnológicamente de
los que dispone la compañía en suelo europeo. En lugar de que sean operarios
los que recorran el centro con sus carritos recopilando los pedidos de los
clientes, la tecnológica ha apostado por rediseñar sus almacenes e introducir
robots capaces de levantar las estanterías y transportarlas por el almacén.
Estas máquinas pueden mover 1.300 kilos, el equivalente a un hipopótamo
adulto, a una velocidad de 1,7 metros por segundo. Los robots, o drives como
los llaman en Amazon, diseñan sus rutas en función de la urgencia del pedido,
la disponibilidad del producto y su ubicación en el centro. Esto permite reducir
los traslados de los empleados al tiempo que hace más eficiente toda la
cadena logística. Además, dado que no es necesario que el operario se
acerque a las estanterías, su implantación ha permitido eliminar los pasillos y
ampliar un 50% el espacio destinado a almacenar productos. La ecuación es
sencilla: más productos disponibles y un menor tiempo de envío es igual a más
clientes y, por lo tanto, a más ingresos.
A través de sensores, los robots, de 145 kilos y semejantes en aspecto a la
famosa aspiradora automática Roomba, detectan a sus compañeros y evitan
colisionar. Además, y puesto que están conectados en red, tienen la capacidad
de colaborar entre ellos cuando detectan que su batería se agota para evitar
generar retrasos en la cadena. De este modo, si un drive va camino del punto
de carga -apenas tardan 20 minutos en llenar sus baterías- pero detecta que
hay otro que debe atender un pedido y su nivel de energía es inferior le toma el
relevo y lleva a cabo su trabajo. El área en que trabajan estas máquinas está
delimitada por vallas y a ella sólo puede acceder un equipo de ingenieros,
vestidos con peto rojo, que controlan todos sus movimientos con un dispositivo
Kindle. Así, por ejemplo, si un producto se cae de la estantería durante el
proceso son las propias máquinas las que lo detectan y alertan al personal.
Para poder entrar a retirarlo, los operarios del peto rojo dibujan rutas
alternativas en el Kindle, activando y desactivando drives, y creando un pasillo
seguro. Desde Amazon presumen de cómo la automatización de sus centros
les permite contar "con una tasa de accidentes laborales considerablemente
por debajo de la media" de Reino Unido. Esta tecnología, desarrollada por la
empresa Kiva System, y adquirida por Amazon en 2012 por casi 600 millones
de dólares, es exclusiva de la firma de Jeff Bezos.
Programación Java
Java ofrece toda la funcionalidad de un lenguaje potente, pero sin las
características menos usadas y más confusas de éstos. C++ es un lenguaje
que adolece de falta de seguridad, pero C y C++ son lenguajes más difundidos,
por ello Java se diseñó para ser parecido a C++ y así facilitar un rápido y fácil
aprendizaje.
Java elimina muchas de las características de otros lenguajes como C++, para
mantener reducidas las especificaciones del lenguaje y añadir características
muy útiles como el garbage collector (reciclador de memoria dinámica). No es
necesario preocuparse de liberar memoria, el reciclador se encarga de ello y
como es un thread de baja prioridad, cuando entra en acción, permite liberar
bloques de memoria muy grandes, lo que reduce la fragmentación de la
memoria.
Java reduce en un 50% los errores más comunes de programación con
lenguajes como C y C++ al eliminar muchas de las características de éstos,
entre las que destacan:
aritmética de punteros
no existen referencias
registros (struct)
definición de tipos (typedef)
macros (#define)
necesidad de liberar memoria (free)
Aunque, en realidad, lo que hace es eliminar las palabras reservadas (struct,
typedef), ya que las clases son algo parecido.
Además, el intérprete completo de Java que hay en este momento es muy
pequeño, solamente ocupa 215 Kb de RAM.
Es ORIENTADO A OBJETOS:
Java implementa la tecnología básica de C++ con algunas mejoras y elimina
algunas cosas para mantener el objetivo de la simplicidad del lenguaje. Java
trabaja con sus datos como objetos y con interfaces a esos objetos. Soporta las
tres características propias del paradigma de la orientación a objetos:
encapsulación, herencia y polimorfismo. Las plantillas de objetos son llamadas,
como en C++, clases y sus copias, instancias. Estas instancias, como en C++,
necesitan ser construidas y destruidas en espacios de memoria.
Java incorpora funcionalidades inexistentes en C++ como, por ejemplo, la
resolución dinámica de métodos. Esta característica deriva del lenguaje
Objective C, propietario del sistema operativo Next. En C++ se suele trabajar
con librerías dinámicas (DLLs) que obligan a recompilar la aplicación cuando se
retocan las funciones que se encuentran en su interior. Este inconveniente es
resuelto por Java mediante una interfaz específica llamada RTTI (RunTime
Type Identification) que define la interacción entre objetos excluyendo variables
de instancias o implementación de métodos. Las clases en Java tienen una
representación en el runtime que permite a los programadores interrogar por el
tipo de clase y enlazar dinámicamente la clase con el resultado de la búsqueda.
Es DISTRIBUIDO:
Java se ha construido con extensas capacidades de interconexión TCP/IP.
Existen librerías de rutinas para acceder e interactuar con protocolos como http
y ftp. Esto permite a los programadores acceder a la información a través de la
red con tanta facilidad como a los ficheros locales.
La verdad es que Java en sí no es distribuido, sino que proporciona las librerías
y herramientas para que los programas puedan ser distribuidos, es decir, que
se corran en varias máquinas, interactuando.
Es ROBUSTO:
Java realiza verificaciones en busca de problemas tanto en tiempo de
compilación como en tiempo de ejecución. La comprobación de tipos en Java
ayuda a detectar errores, lo antes posible, en el ciclo de desarrollo. Java obliga
a la declaración explícita de métodos, reduciendo así las posibilidades de error.
Maneja la memoria para eliminar las preocupaciones por parte del programador
de la liberación o corrupción de memoria. También implementa los arrays
auténticos, en vez de listas enlazadas de punteros, con comprobación de
límites, para evitar la posibilidad de sobre escribir o corromper memoria
resultado de punteros que señalan a zonas equivocadas. Estas características
reducen drásticamente el tiempo de desarrollo de aplicaciones en Java.
Además, para asegurar el funcionamiento de la aplicación, realiza una
verificación de los byte-codes, que son el resultado de la compilación de un
programa Java. Es un código de máquina virtual que es interpretado por el
intérprete Java. No es el código máquina directamente entendible por el
hardware, pero ya ha pasado todas las fases del compilador: análisis de
instrucciones, orden de operadores, etc., y ya tiene generada la pila de
ejecución de órdenes.
Java proporciona, pues:
Comprobación de punteros
Comprobación de límites de arrays
Excepciones
Verificación de byte-codes
Es de ARQUITECTURA NEUTRAL:
Para establecer Java como parte integral de la red, el compilador Java compila
su código a un fichero objeto de formato independiente de la arquitectura de la
máquina en que se ejecutará. Cualquier máquina que tenga el sistema de
ejecución (run-time) puede ejecutar ese código objeto, sin importar en modo
alguno la máquina en que ha sido generado. Actualmente existen sistemas run-
time para Solaris 2.x, SunOs 4.1.x, Windows 95, Windows NT, Linux, Irix, Aix,
Mac, Apple y probablemente haya grupos de desarrollo trabajando en el porting
a otras plataformas.
Programacion Orientada a Objetos
La programación orientada a objetos es un enfoque de programación que
combina datos y acciones asociadas (métodos) en estructuras lógicas
(objetos). Este enfoque aumenta la capacidad para administrar la complejidad
del software, lo cual resulta especialmente importante cuando se desarrollan y
mantienen aplicaciones y estructuras de datos de gran tamaño. (MATLAB,
2018).
La programación Orientada a objetos (POO, u OOP según sus siglas en inglés)
es un paradigma de programación que usa objetos en sus interacciones, para
diseñar aplicaciones y programas informáticos.
Está basada en varias técnicas, incluyendo herencia, cohesión, abstracción,
polimorfismo, acoplamiento y encapsulamiento. Su uso se popularizó a
principios de la década de 1990. En la actualidad, existe una gran variedad de
lenguajes de programación que soportan la orientación a objetos. (Ángel
Roldán, 2017).
La POO es una forma especial de programar, este paradigma de programación
es cercano a como expresamos las cosas en la vida real en nuestro día a día.
Con la POO tenemos que aprender a pensar las cosas de una manera distinta
para poder escribir nuestros programas en términos de objetos, propiedades y
métodos. La POO tiene como principio que todo en la vida es un objeto
programable, entonces para empezar a programar con este paradigma
tendríamos que empezar con desarrollar nuestro pensamiento basado en
objetos.
¿Cómo pensar en objetos?
Pensar en términos de objetos es pensar de manera natural como lo haríamos
en la vida real. Por ejemplo, al pensar en un coche para modelarlo en un
esquema de POO. Diríamos que el coche es el elemento principal que tiene
una serie de características, como podrían ser el color, el modelo o la marca.
Además, tiene una serie de funcionalidades o métodos asociados al mismo,
como pueden ser ponerse en marcha, parar o acelerar.
En un esquema POO el coche sería el objeto, las propiedades serían las
características como el color o el modelo y los métodos serían las
funcionalidades asociadas como ponerse en marcha o parar.
Los programas Orientados a objetos utilizan muchos objetos para realizar las
acciones que se desean realizar y ellos mismos también son objetos, por
ejemplo, un taller de coches, el taller de coches será un objeto que utilizará
objetos coche, herramienta, mecánico, recambios, etc.
Algunas de las ventajas de la programación orientada a objetos son los
siguientes:
Los componentes se pueden reutilizar.
Facilidad de mantenimiento y modificación de los objetos existentes.
Una estructura modular clara se puede obtener, la cual no revelará el
mecanismo detrás del diseño.
Se proporciona un buen marco que facilita la creación de rica interfaz
gráfica de usuario aplicaciones (GUI).
Se acopla bien a la utilización de bases de datos, debido a la
correspondencia entre las estructuras.
Desventajas
Limitaciones del programador: Es posible el programador desconozca
algunas características del paradigma y de hecho siga utilizando el
paradigma estructurado.
No hay una forma única de resolver los problemas. Esto puede llevar a
que diferentes interpretaciones de la solución planteada emerjan.
Se requiere una documentación amplia para determinar la solución
planteada.
La programación orienta a objetos es una forma especial de pensar, nos
permite modelar nuestra realidad dentro de un entorno de programación,
partiendo de la primicia de que todo en esta vida es un objeto programable.
Bases de datos
Una base de datos es un conjunto de datos pertenecientes a un mismo
contexto y almacenados sistemáticamente para su posterior uso. En este
sentido; una biblioteca puede considerarse una base de datos compuesta en su
mayoría por documentos y textos impresos en papel e indexados para su
consulta. Actualmente, y debido al desarrollo tecnológico de campos como la
informática y la electrónica, la mayoría de las bases de datos están en formato
digital, siendo este un componente electrónico, por tanto, se ha desarrollado y
se ofrece un amplio rango de soluciones al problema del almacenamiento de
datos.
Hay programas denominados sistemas gestores de bases de datos, abreviado
SGBD (del inglés Data base Management System o DBMS), que permiten
almacenar y posteriormente acceder a los datos de forma rápida y
estructurada. Las propiedades de estos DBMS, así como su utilización y
administración, se estudian dentro del ámbito de la informática.
El modelo de base de datos orientada a objetos agrupa la información en
paquetes relacionados entre sí: los datos de cada registro se combinan en un
solo objeto, con todos sus atributos. De esta manera, toda la información está
disponible en el objeto, ya que sus datos quedan agrupados en lugar de
distribuidos en diferentes tablas. En los objetos no solo pueden guardarse los
atributos, sino también los métodos, lo que refleja la afinidad de estas bases de
datos con los lenguajes de programación orientados a objetos: al igual que en
estos, cada objeto presenta un conjunto de acciones que pueden llevarse a
cabo.
Los objetos se dividen a su vez en clases. Más concretamente, un objeto es
una unidad concreta de una clase abstracta, lo que crea una jerarquía de
clases y subclases. Dentro de esta estructura, las subclases adoptan las
propiedades de las clases superordinadas y las complementan con sus propios
atributos. Al mismo tiempo, los objetos de una clase también pueden
relacionarse con otras clases, lo que rompe la jerarquía estricta y permite
formar redes. Los objetos simples también pueden combinarse para crear
objetos más complejos.
Para gestionar los diversos objetos, el SGBD orientado a objetos
correspondiente asigna automáticamente un código de identificación único a
cada registro, que permite recuperar los objetos una vez que se han guardado.
Programación visual
El término programación visual refiere a la programación en la que se utiliza
más de una dimensión para expresar la semántica. Los lenguajes de
programación visual permiten a los usuarios crear programas mediante la
manipulación de elementos gráficos, en lugar de especificarlos exclusivamente
de manera textual. Este tipo de lenguajes son muy utilizados en ámbitos
educativos a través de los denominados entornos de programación por bloques
(entre los que se destaca Scratch) que permiten reducir las dificultades que
enfrentan los principiantes cuando empiezan a programar.
Este estilo de programación presenta las siguientes características:
Visual: los elementos se arrastran y sueltan en el flujo del programa para
integrarlos.
Orientado a acontecimientos: cada paso del programa comienza cuando
ocurre un acontecimiento previamente definido.
Imperativo: la programación consiste en una secuencia de comandos.
Orientado a objetos: hay objetos individuales con tareas definidas
asignadas.
Los programadores suelen utilizar elementos de programación ya definidos,
según el lenguaje de programación visual que utilicen. Los elementos de
programación están diseñados para encajar como las piezas de un puzle. Si los
elementos no encajan lógicamente, el editor lo detecta. Los elementos de
programación suelen agruparse en grupos de colores, lo que orienta al usuario
a la hora de elegirlos.
Estos pueden registrar textos e imágenes, organizarlos de forma lógica y
modificar su apariencia o su expresión. Los elementos de control permiten
insertar acciones que dependen de ciertas condiciones.
Desarrollo (Experimentación) (complementar con imágenes del código y
explicación)
Conclusiones
Se ha llegado a la conclusión