Arquitectura de aplicación

Three-tier architecture

Arquitectura de aplicaciónes una especie de «armazón» del sistema. En el ciclo de vida del desarrollo de software, el diseño de la arquitectura comienza en la etapa de diseño.

La arquitectura combina decisiones técnicas y lógicas: qué componentes incluirá la aplicación, cómo se transferirán los datos entre ellos, dónde estará la lógica de negocio y cómo interactuará el usuario con el sistema.

Arquitectura de tres capas

Normalmente, la arquitectura de una aplicación se describe en capas:

El modelo de tres capas, también conocido como arquitectura por capas, es la base de la mayoría de aplicaciones modernas.

Interfaz de usuario

Frontend

Frontend es la interfaz de usuario con la que una persona interactúa directamente. Es responsable de mostrar datos y enviar acciones del usuario al servidor.

Un ejemplo de interfaz frontend es el formulario «Login».

Al probar el frontend, el equipo de QA comprueba:

  • visualización correcta y actualización de datos
  • validación de entradas y restricciones
  • presencia y claridad de mensajes de error
  • reacción de la interfaz a acciones del usuario (clics, entrada de datos)
  • corrección y formato de solicitudes enviadas al servidor
  • visualización correcta en distintos dispositivos

Ten en cuenta que el formulario «Login» contiene bugs.

Pruébalo
Inicio de sesión
Cat is logging in

Lógica de negocio

Backend

Backend es la parte «invisible» de la aplicación donde se procesa la información. Recibe solicitudes del frontend, realiza las operaciones necesarias y devuelve resultados.

Las tareas típicas del backend incluyen:

  • validación y procesamiento de datos
  • ejecución de lógica de negocio
  • interacción con la base de datos
  • formación de una respuesta para el frontend
if email does not match format:
    result = "Formato de email inválido"

elif db.getUser == found:
    result = "Login exitoso"

send(result)

Ejemplo de lógica de negocio para el formulario «Login»

Base de datos

Database

Base de datos es el lugar donde se almacenan todos los datos de la aplicación. Puede contener información sobre usuarios, pedidos, mensajes: todo lo que la aplicación necesita para funcionar.

Cuando un usuario quiere entrar en su cuenta, el backend envía una solicitud a la base de datos: “Encuentra un usuario con este login y contraseña.” La base de datos recupera datos, agrega registros nuevos o actualiza los existentes.

name email_address password
tester-today tester.today.help@gmail.com password
... ... ...

Ejemplo de tabla en la base de datos

Cómo interactúan las capas

1

Usuario

introduce datos en el frontend

2

Frontend

envía una solicitud al backend

3

Backend

procesa la solicitud y consulta la base de datos

4

Base de datos

devuelve los datos

5

Backend

envía una respuesta al frontend

6

Frontend

muestra el resultado al usuario

Las capas funcionan como una sola unidad, pero cada una es responsable de su propia tarea. Esta separación simplifica el desarrollo, las pruebas y el escalado.

¿Qué capa arquitectónica es responsable de cada acción?
Acción Capa
Mostrar un error de formato inválido del nombre de usuario
Almacenar datos de usuario
Comprobar que los datos de login del usuario existen en la base de datos
Enviar login y contraseña del usuario al servidor durante el inicio de sesión
Sidebar arrow

INTRODUCCIÓN

CONCEPTOS BÁSICOS

NIVELES DE PRUEBAS

PRUEBAS DE UI

DISEÑO DE PRUEBAS

DOCUMENTACIÓN DE PRUEBAS

AUTENTICACIÓN Y AUTORIZACIÓN

POSTMAN

BASES DE DATOS

PRUEBAS DE RELEASE

ANÁLISIS DE LA APLICACIÓN

PREPARACIÓN PARA ENTREVISTAS

Cómo escribir un CV Preguntas frecuentes de entrevista Test Entrevista simulada