Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/matlock/ejercicio-java
https://github.com/matlock/ejercicio-java
java multithreading spring
Last synced: 30 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/matlock/ejercicio-java
- Owner: MatLock
- Created: 2018-04-09T13:41:18.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-04-20T14:50:24.000Z (almost 7 years ago)
- Last Synced: 2024-11-08T14:13:34.575Z (3 months ago)
- Topics: java, multithreading, spring
- Language: Java
- Size: 74.2 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Ejercicio de Java
El objetivo de este ejercicio es conocer cómo los candidatos a entrar a almundo.com usan herramientas básicas de Java y diseñan soluciones orientadas a objetos.### Forma de entrega
La forma de entregar la solución de este ejercicio es haciendo un fork de este repo y un pull request con la solución.
### Consigna
Existe un call center donde hay 3 tipos de empleados: operador, supervisor y director. El proceso de la atención de una llamada telefónica en primera instancia debe ser atendida por un operador, si no hay ninguno libre debe ser atendida por un supervisor, y de no haber tampoco supervisores libres debe ser atendida por un director.
> **Requerimientos**
- Diseñar el modelado de clases y diagramas UML necesarios para documentar y comunicar el diseño.
- Debe existir una clase Dispatcher encargada de manejar las llamadas, y debe contener el método dispatchCall para que las asigne a los empleados disponibles.
- La clase Dispatcher debe tener la capacidad de poder procesar 10 llamadas al mismo tiempo (de modo concurrente).
- Cada llamada puede durar un tiempo aleatorio entre 5 y 10 segundos.
- Debe tener un test unitario donde lleguen 10 llamadas.
> **Extras/Plus**
- Dar alguna solución sobre qué pasa con una llamada cuando no hay ningún empleado libre.
- Dar alguna solución sobre qué pasa con una llamada cuando entran más de 10 llamadas concurrentes.
- Agregar los tests unitarios que se crean convenientes.
- Agregar documentación de código
> **Tener en Cuenta**
- El proyecto debe ser creado con Maven.
- De ser necesario, anexar un documento con la explicación del cómo y porqué resolvió los puntos extras, o comentarlo en las clases donde se encuentran sus tests unitarios respectivos.
**MUCHA SUERTE!**