Software at the core

1

Tecnología Empresarial: Fundamentos para Directores y Gerentes

2

Gestión de Equipos Técnicos y Valor del Software en Tecnología

3

Desarrollo de Software: Estrategias y Decisiones Clave

4

Contratación Efectiva de Talento Tecnológico en Empresas

5

Gestión de Equipos Creativos en Empresas de Software

6

Decisiones estratégicas: software propio vs. software de terceros

7

Decisiones Estratégicas: Construir, Delegar o Comprar Tecnología

8

Análisis del Éxito de Tesla en el Mercado Automotriz

9

Estrategia de Innovación y Tecnología en Tesla

El ciclo del desarrollo de tecnología empresarial

10

Errores y Lecciones del Caso Accenture-Hertz en Transformación Digital

11

Proceso de Desarrollo de Productos Tecnológicos Efectivo

12

Roles Clave en el Desarrollo de Software Moderno

13

Roles Clave en Liderazgo de Proyectos Tecnológicos

14

Gestión Efectiva de Fechas de Entrega en Proyectos Tecnológicos

15

Evaluación de Liderazgo y Equipos de Alto Rendimiento en Tecnología

16

Estrategias de fijación de precios en proyectos tecnológicos

17

Análisis del Caso Legal Accenture vs Hertz: Lecciones y Estrategias

Seguridad informática

18

Casos de Filtración de Datos: Lecciones de Uber y Marriott

19

Contraseñas Seguras y Autenticación de Doble Factor

20

Prácticas Esenciales de Seguridad Personal en Tecnología

21

Consejos Esenciales de Seguridad Informática Empresarial

22

Gestión de Datos y Seguridad al Despedir Empleados

23

Gestión de Crisis por Filtraciones de Datos en Empresas

Infraestructura avanzada de software en empresas

24

Arquitectura de Aplicación Logística en Excel: Tablas y Estructura de Datos

25

Estructura de Datos y Tablas en Aplicaciones Logísticas

26

Desarrollo de Backend Seguro y Gestión de Accesos

27

Arquitectura de Software para Aplicación de Control de Naviera

28

Gestión de la Deuda Técnica en Desarrollo de Software

29

Conceptos básicos de servidores y servicios en red

30

Configuración y Mantenimiento de Servidores de Oficina

31

Estructura y Seguridad de Data Centers Profesionales

32

Fundamentos de Servicios en la Nube y Conectividad Global

33

Certificaciones clave para servidores locales: PCI, HIPAA, ISO 27001

34

Fundamentos de la Inteligencia Artificial en Negocios

35

Aplicaciones actuales y éticas de la inteligencia artificial

Recursos Humanos y Gestión de Talento

36

Salarios de Programadores en Latinoamérica y España: Análisis Comparativo

37

Crecimiento Salarial en Tecnología en Moneda Local y Dólares

38

Impacto del Inglés y Género en Salarios Tecnológicos en Latinoamérica

39

Análisis de Variabilidad Salarial en Tecnología en Latinoamérica y España

40

Motivación y Retención de Talento en Tecnología

41

Estructura Organizativa de Equipos de Ingeniería en Empresas Tech

42

Adaptación Rápida a la Transformación Digital

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Arquitectura de Software para Aplicación de Control de Naviera

27/42
Recursos

¿Cómo se conecta el frontend con el backend?

Al iniciar el desarrollo de una aplicación, es primordial entender la conexión entre el frontend y el backend. La interfaz comienza en el frontend, donde los usuarios hacen login utilizando un nombre de usuario y una contraseña almacenados en la base de datos. El backend valida esta información para permitir el acceso a los datos, asegurando que solo los usuarios autorizados puedan progresar en la navegación. Esta interacción fundamental entre el frontend y el backend garantiza que solo ciertos roles tengan acceso a funcionalidades específicas.

¿Quién tiene acceso a las funcionalidades de la aplicación?

  1. Administrador, operador y cliente: Estos usuarios pueden ver la pantalla inicial de la aplicación.
  2. Administradores y operadores: Son los únicos que pueden escanear paquetes utilizando códigos de barras, actualizando el estado y otros detalles, como el medio de transporte y la ubicación.
  3. Clientes: Acceden únicamente a ver sus órdenes y su estado, sin la posibilidad de modificar otros aspectos del flujo.

¿Qué roles y permisos existen en la aplicación?

  • Administrador:
    • Puede editar y borrar información histórica.
    • Tiene la capacidad de crear nuevos clientes.
  • Operador:
    • Puede agregar nuevos estados a las órdenes.
    • No puede crear órdenes nuevas ni modificar información pasada.
  • Cliente:
    • Solo tiene visibilidad de sus órdenes y detalles de estado, sin capacidades de modificación.

Seguridad y auditoría en la aplicación

La seguridad y el control dentro de una aplicación son críticos para prevenir fraudes y errores involuntarios. Se plantea la figura del "súper administrador", que goza de ciertas capacidades superiores y funciona como un auditor interno.

¿Cómo se realiza el control sobre los administradores?

Las empresas desarrollan un sistema de "súper administrador" al que sólo tienen acceso personas específicas del equipo de trabajo. Este rol tiene un registro histórico no editable de todas las modificaciones, eliminaciones y manipulaciones de datos realizadas. Dicho sistema contribuye a la transparencia y permite auditorías efectivas cumpliendo con leyes internacionales que exigen mantener un historial de edición.

¿Qué es el Data Warehousing?

El Data Warehousing es un sistema para hacer copias exactas de la base de datos en intervalos regulares, por ejemplo, cada hora o cada día. Este proceso asíncrono y paralelo permite contar con una "instantánea" de la base de datos en diferentes momentos del tiempo, facilitando análisis futuros y contribuyendo a la formación de lo que conocemos como "big data". Este enfoque permite investigar diversas tendencias y realizar análisis complejos sobre la evolución de los datos a lo largo del tiempo, aunque puede ser costoso y requiere de una infraestructura adecuada para asegurar su eficiencia.

Comprender estos conceptos permite una mejor implementación y control de aplicaciones en nichos específicos como el control de una naviera, donde la estructura de datos es clave para operar eficientemente. Con las herramientas y prácticas adecuadas, se puede asegurar la integridad y seguridad de los datos en todo momento.

Aportes 51

Preguntas 7

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Una regla fuerte de las bases de datos es que nunca se borra nada.

📦 Un Data Warehouse es un repositorio que captura los datos que genera una empresa de una manera homogénea y fiable.

En ingeniería de software, los términos front-end y back-end se refieren a la separación de preocupaciones entre la capa de presentación (front-end) y la capa de acceso a datos (back-end) de una pieza de software, o la infraestructura física o hardware.

En el modelo cliente-servidor, el cliente generalmente se considera el front-end y el servidor generalmente se considera el back-end, incluso cuando parte del trabajo de presentación se realiza en el servidor mismo.

Data Warehousing, es decir, realizar copias de la información de forma constante. Esto lo que provoca es un historial de todo los cambios que han ocurrido en todo un proceso. Cabe resaltar que es costoso, sin embargo, las empresas que lo implementan pueden tener como resultado Big Data y realizar diferentes análisis con esa información guardada.

También es un vicio peligroso, el cambio de algunos valores en los datos. Ejemplo, una lista de precios que requiere ser actualizada o corregida, es mala práctica simplemente reemplazar el valor en el campo precio, por uno nuevo valor, sin dejar rastro.

O con el ejemplo de Freddy, cambiar si un operador cambiara el estado del paquete, no usando una transacción de “Cambio de estado”, es decir un nuevo registro y en su lugar modificar el valor del campo “estado” por un nuevo valor.

Who watches the watcher? (Quis custodiet ipsos custodes?)

El frontend es la parte del desarrollo web que se dedica a la parte frontal de un sitio web, en pocas palabras del diseño de un sitio web, desde la estructura del sitio hasta los estilos como colores, fondos, tamaños hasta llegar a las animaciones y efectos.

Es esa parte de la página con la que interaccionan los usuarios de la misma, es todo el código que se ejecuta en el navegador de un usuario, al que se le denomina una aplicación cliente, es decir, todo lo que el visitante ve y experimenta de forma directa.

Un front-end, es la persona que se dedica básicamente al diseño web, pero esto no significa que no toque código, tanto el front-end como el back-end están en contacto con código todo el tiempo.

Dentro del área de front-end se trabaja con lenguajes mayormente del lado del cliente, como:

HTML *(*lenguaje de marcado de hipertexto, se utilizan etiquetas que estructuran y organizan el contenido de la web).

CSS (se encarga del formato y diseño visual de las páginas web escritas en html) para darle estructura y estilo al sitio.

Javascript (un lenguaje de programación, rápido y seguro para programar centros de datos, consolas, teléfonos móviles o Internet) para complementar los anteriores y darle dinamismo a los sitios web.

HTML y CSS son lenguajes de marcado y estilo. Javascript es un lenguaje de programación.

De ellos se generan una gran cantidad de frameworks y librerías que van aumentan las capacidades que se tiene para generar cualquier tipo de interfaz de usuario, como React, Redux, Angular, Bootstrap, Foundation, LESS, Sass, Stylus y PostCSS, entre otros.

Se conoce como el lado del cliente.

nunca borrar nada de la BD solo borrado lógico.

El Super administrador tiene un histórico no editable de todas las ediciones de borrado y manipulación de datos y todo eso es para que el administrador no pueda hacer fraude borrando datos que no quiere que se vean o para no cometer un error.

El uso de tecnologías como el Blockchain no podrían evitar el uso del Super usuario Administrador? Con ello quedaría toda la trazabilidad de las operaciones que se realicen en la aplicación.

minuto 2:41, interesante, pero no borrar datos abre un debate, con las demandas a empresas como fecebook o google donde un demandante puede pedir que eliminen los datos recopilados por las empresas… No solo significaría desactivarlos, también me imagino que los datos quedará en algún backup.

Para auditoria de la información se solicitan datos como: Usuario que modifico la información, fecha, hora, transacción (CRUD), cuidad

Es super importante establecer las funciones y responsabilidades de cada uno de los individuos que haran uso de la aplicacion (en este caso admin, operador y ciente) de esta manera el desarrollador de software, podra delegar mediante codigo los accesos a cada individuo. tambien es importante que cada persona tenga un usuario y contraseña, mismos que estaran en una base de datos la cual servira para administrar el uso de la aplicacion.

a veces los usuarios nos creemos dueños de las bases de datos, a mí me ha ocurrido muchas veces que por razones que considerabamos justficadas hemos querido cambiar datos y el área de sistemas obviamente ha rechazado esos intentos o ha puesto procedimientos muy rigurosos para hacerlo. Felizmente poco a poco fuimos entendiendo la real situación

Si hubiese hecho un curso como este hace años me hubiese evitado muchas discusiones

Por eso la importancia de tener y saber revisa el JOURNAL de la BD para saber si el cambio fue por un programa o procedimiento del SISTEMA o si fue por algún técnico mediante SQL

Wooooow, de verdad que cada vez me apasiona más el tema de la ciencia de datos, Freddy explica tan bieeeeen

es como en git github

nunca se borra nada y ahay una pantallita para restaurar cualq uier commit
uwu
bb

Va quedando claro que las decisiones que vienen de arriba necesitan tener alto criterio ténico

Siempre se debe tener soporte de todo, nunca se sabe cuándo se va a necesitar

El administrador es el mismo que el gerente o es otro rol

Cómo se construye la interfaz de usuario

El primer paso es acceder a la aplicación por medio de un usuario y contraseña. El Frontend hace una petición al Backend, si es correcta, el Backend devuelve la interfaz adecuada para el tipo de usuario. Esta primera interfaz es accesible por perfiles administrativos, operativos y clientes.
.
El escaneo de los códigos de barras de los paquetes solo lo pueden realizar los roles administrativos y operativos. Una vez escaneado, el Backend me devuelve la estructura de datos para acceder al estado del paquete y todos los detalles. Esto es solo accesible para los perfiles administrativos y operativos.
.
Luego, están los reportes donde se encuentra la información para los clientes sobre sus productos. En esta interfaz, los clientes solo pueden ver los detalles, no pueden agregar, editar o eliminar nada. Los operadores solo pueden agregar nuevos reportes y los administradores pueden hacer cualquier modificación.
.
Pero ¿Quién controla al administrador? Existe un rol que es superior al administrador y es el superadministrador al cual solo tienen acceso contadas personas y cuya función es evitar el mal uso de los datos, corregir errores y manipulación de datos. También tienen acceso a un histórico de edición no editable que es el resultado de los movimientos de cada usuario en la base de datos.
.
Lo recomendable sería que en una base de datos nunca se borrara nada, que siempre quedara un registro de lo que se hace y generar copias de seguridad por medio de Data Werehouse para posterior análisis de los Data Scientist.

Esta interfaz se crea con las herramientas que Freddy enseñó en la clase: Roles en un proyecto de tecnología, específicamente la de los Front-ends 😄

Todo queda en las bases de datos, no intentes esconder nada, siempre te descubrirán

no tenia ni idea que existía un SUPER ADMINISTRADOR, al igual debemos tener precaución que el administrador hackee el super administrador, pero eso ya es otro tema.

Nunca se borra nada? imaginemos que el operador ingresa información pero esta no debe quedar persistiendo en la base de datos hasta que le de al botón “guardar”, lo que significa que hasta que no le de guardar el puede eliminar datos para que sean corregidos , lo cual me parece correcto para no almacenar basura, una vez presione guardar no hay nada que hacer. (En teoría si se puede borrar)

Supongo que no borrar nada y hacer fotos cada cierto tiempo como las que menciona Freddy, son lo que hacen tan costoso el almacenamiento, también supongo que deben existir formas de eficientar este almacenaje

El mismo código de barras del paquete, impreso en un ticket de respaldo entregado al cliente (factura) podría ser utilizado por el mismo para obtener información del estado del paquete desde el movil (en tiempo real?) a través de una interfaz de la app para clientes. Aunque para esto ya deben emplear codigos identificadores, que tanto podría impactar en la experiencia del usuario pasar de ingresar un codigo a tomar una foto? Supongo que los mismos usuarios nos daran la respuesta

Claro y todo esto deberia eswtar respaldados con Manuales y Procedimientos realizados al DETALLE y avalados por la Juntas Directivas de las empresas

"La regla fuerte de una DB es que nunca se borra nada"

Interesante la forma de querer dar forma el frontend a una app para que el cliente y el operador lo puedan manipular sin ningun problema. Este metodo si que esta algo interesante para el desarrollo de las aplicaciones. Espero seguir aprendiendo mas de este metodo. Lo que no me cabe la duda es que administrador, operador y cliente tienen la aplicacion de manera diferente sin ningun reclamo o queja.

DATA WAREHOUSING is the secure electronic storage of information by a business or other organization. The goal of data warehousing is to create a trove of historical data that can be retrieved and analyzed to provide useful insight into the organization's operations.

Este paso a paso es vital para asì ser parte del proceso.

Gracias!

Gracias

Entonces los super admins serian complience o mas bien dicho auditores internos o controles de gestion?

¿Quien administra al administrador?.
Una base de datos que muestra todo el histórico, es una herramienta útil para evitar fraudes.

Realmente cla el tema del SUPER ADMIN

Data Warehousing.

Login.

Reportes.

Super Admin !

NUNCA NUNCA NUNCA SE BORRA NADA

Muy bueno! No tenia conocimiento de eso ahora entiendo mejor a los programadores

Es decir que la clave está en hackear al super administrador. Me imagino que es imposible.

Wow todo esto es super interesante. Enserio es un mundo totalmente fascinante.

Es importante mantener el control histórico de la base de datos, ya que eso nos permitirá conocer el comportamiento o el estado de nuestra empresa en un determinado periodo.

Nunca borrar información admin. Super admin copias de las bases de datos

Super admin supervisa a los administradores

No había pensado en un superadmin, tiene todo el sentido del mundo que exista

Y todos estos registros o logs los enviamos a un SIEM para realizar correlación de eventos y de esta manera tener una mejor trazabilidad de lo ocurrido.