Está en la página 1de 9

FP6A

Programación en
Ambiente Cliente/Servidor
INSTITUTO TECNOLÓGICO SUPERIOR

Docente: Luis Omar Colombo Mendoza

Integrantes de Equipo:
Avilés Monfil Daniel (21TE0390)
Domingo Cabrera José Roberto (21TE0134)
Fernández Mora Gerardo (21TE0512)
Gutiérrez Márquez Andrea Marlene (21TE0747)
DE TEZIUTLÁN

Ingeniería en Informática

Sistema: Escolarizado

Actividad: Informe
Práctica 1
Fecha: 03/03/2024
Semestre enero-mayo 2024

“La Juventud de hoy, Tecnología del mañana.”


Programación de Bajo Nivel: Sockets y Canales
Práctica 1

Parte 1. Establecimiento de los Requerimientos Funcionales y no Funcionales de la Aplicación


o (1) Diagrama de casos de uso de la aplicación (provisto por el docente)

a. Lista de requerimientos no funcionales

1 Concurrencia:
• Del lado del servidor: para manejar múltiples conexiones cliente al mismo
tiempo.
• Del lado del cliente: para leer mensajes procedentes del resto de clientes
(mensajes distribuidos por el servidor a todos sus clientes conectados) al
mismo tiempo que es posible escribir mensajes.
2 Manejo de excepciones del lado del cliente y del lado del servidor.
Parte 2. Modelado Conceptual de la Aplicación

o (2) Diagrama de clases final de la aplicación (debe contener los últimos cambios realizados durante el
modelado conceptual de la aplicación).
Parte 3. Programación del Lado del Servidor de la Aplicación

o (3) Bloque de código del método completo y correcto de la clase hilo del servidor que permite distribuir
los mensajes a todos los clientes conectados al chat, excepto a los clientes remitentes.

o (4) Bloque de código del método run() de la clase Thread completa y correctamente sobrescrito en la
clase del hilo del servidor.
Parte 4. Programación del Lado del Cliente de la Aplicación

o (5) Bloque de código del método completo y correcto de la clase principal del cliente que permite leer
los mensajes procedentes del servidor en un hilo de ejecución secundario.

o (6) Bloque de código del método completo y correcto de la clase principal del cliente que permite
escribir mensajes al servidor.
Parte 5. Pruebas de la Aplicación

o (7) Captura de pantalla de la ejecución de la parte cliente de la aplicación en un primer host.

o (8) Captura de pantalla de la ejecución de la parte cliente de la aplicación en un segundo host.


o (9) Captura de pantalla de la ejecución de la parte cliente de la aplicación en un tercer host.

o (10) Captura de pantalla de la ejecución de la parte servidor de la aplicación en un segundo host.


Conclusión

En conclusión, esta práctica nos ha proporcionado una comprensión sobre el funcionamiento de la comunicación
entre clientes y servidores a través de sockets, con ayuda del uso de hilos ya que nos fueron útiles en facilitar la
interacción entre múltiples dispositivos. Este ejercicio nos ha ayudado a experimentar directamente con la
creación de una conexión entre tres clientes y un servidor. Pudimos explorar tanto de manera teórica como
práctica cómo es el funcionamiento y las propiedades para lograr la conexión de un cliente y un servidor por
medio de sockets, utilizando hilos, los cuales hacen importante la comunicación entre varios dispositivos como se
muestra en la práctica.
A lo largo de la actividad, nos dimos cuenta de que un socket es una forma de poder comunicarse entre dos
objetos, en este caso fue: cliente y servidor. Un socket normal o independiente permitía una conexión de ida y
venida con solo dos objetos, es por ello que se hizo uso de los hilos entre ambos programas, el cual permitió una
conexión amplia y diferente a la del primer socket, con una conexión amplia se hace referencia a la interacción de
más clientes teniendo como base un servidor; no obstante, su desarrollo se convierte en un gran reto.
Un socket es una forma de comunicación el cual va a permitir la transferencia de datos entre un cliente y un
servidor, en el cual se utilizan protocolos ya sean TCP o UDP. Su importancia en la realidad es fundamental ya que
la tecnología nos permite mantenernos comunicados en cualquier momento del día y su utilidad se presenta en
las redes sociales, en aplicaciones de mensajería o chats para facilitar la vida cotidiana de cada uno de los
cibernautas que navegan en internet y están en constante comunicación, así como en constante envío y recepción
de información en tiempo real.

También podría gustarte