Problema a resolver

A todos nos ocurre olvidar cosas de la vida diaria porque no pensemos en revisar nuestro agenda, pero si casi todos los dias pasamos tiempo en el computador. El problema es que hasta ahora no existe nada para recordarnos los eventos planificados al encender el computador y tampoco algo para acceder de manera simple y rapida a la planificacion de todos los eventos de la vida diaria en el computador.

Descripción

Esta aplicacion tiene como fin de proponer un agenda simple y conveniente en el escritorio del computador. Ademas de cumplir con las funciones clasicas de un agenda usual, al encender el computador, se encarga de recordarnos los eventos planificados que hemos programado para aparecer a la fecha del dia.

Casos de Uso:

1.- Grabar un evento

Nombre: Grabar un evento
Actor: Usuario
Descripción: El usuario graba un nuevo evento en una fecha precisa.
Flujo principal:
1. El usuario hace clic sobre la fecha en la cual quiere agregar un evento.
2. Se despliega en la pantalla una ventana que tiene por titulo la fecha escogida previamente.
3. El usuario escoge si el evento que quiere grabar es un evento puntual o si es un evento que vuelve cada mes o cada ano presionando la opción adecuada.
4. El usuario escribe una descripción del evento en la zona de texto de la ventana.
5. El usuario escoge el color con el cual la fecha del evento va a aparecer en el agenda presionando el botón con el color deseado.
6. El botón presionado se bordea de rojo para indicar el color seleccionado.
7. El usuario presiona el botón con una campana para escoger la fecha a la cual el evento le será recordado.
8. Se despliega en la pantalla una ventana con un calendario.
9. El usuario presiona sobre la fecha a la cual el quiere que el evento le sea recordado.
10. Al presionar sobre una fecha, la ventana con el calendario desaparece y se memoriza la fecha.
11. El usuario presiona el botón "OK".
12. Desaparece la ventana, el evento se graba en memoria y la fecha del evento aparece en el agenda con el color deseado por el usuario.

2.-Visualizar un evento

Nombre: Visualizar un evento
Actor: Usuario
Descripción: El usuario visualiza los eventos planificados para una fecha precisa.
Flujo principal:
1. El usuario pasa el mouse encima de la fecha con respeto a la cual el quiere conocer los eventos planificados.
2. Se despliega en la pantalla una ventana con la fecha del día sobre lo cual esta el mouse y todos los eventos planificados para este día.
3. El usuario quita el mouse de la casilla de la fecha.
4. La ventana con los eventos del día desaparece.

3.- Borrar un evento

Nombre: Borrar un evento
Actor: Usuario
Descripción: El usuario borra un evento en una fecha precisa
Flujo principal:
1. El usuario hace clic sobre la fecha del evento que quiere borrar.
2. Se despliega en la pantalla una ventana cuyo titulo es la fecha escogida previamente.
3. El usuario escoge si el evento que quiere borrar es un evento que vuelve cada mes, cada ano o si es puntual a este día.
4. Aparece en el TextArea de la ventana el evento que el usuario quiere borrar.
5. El usuario hace clic sobre el botón borrar.
6. La ventana desaparece, en el calendario el evento borrado desaparece igualmente.

Este proyecto cuenta con dos aplicaciones que pueden correr distintamente. La primera es el agenda en si mismo que permite grabar y acceder de manera simple y rápida a los eventos de la vida diaria.

La segunda es el programa que permite recordar al usuario los eventos que él ha programado para aparecer este día al encender el computador. Un corte camino hacia el ejecutable de este programa se debe poner en la carpeta C:\windows\start menu\programs\startup para que corra automaticamente al iniciar Windows.

Solución

Para eso se implementó en Java (J2SE) una aplicación que graba los varios eventos en un archivo eventos.dat y que permite acceder a ellos mediante una interfaz grafica que tiene la apariencia de un calendario. Además se implementó un programa que se encarga de revisar si hay que recordar unos eventos al usuario a la fecha del día analizando lo grabado en el archivo eventos.dat.