Este blog será administrado por la alumna Melanie Guterman de 6° Informática "A" de la Escuela Técnica ORT, publicando información sobre sus progresos en su proyecto final durante todo el año 2010.
Luego de meses de programación, modificar la base de datos, tener errores, resolverlos, testear y agregar cosas, llegué al coloquio el día 9 de noviembre.
El sistema está casi terminado. Pude cumplir con los diferentes permisos dentro del sistema: muchos botones son invisibles para los usuarios comunes, como el de administrar usuarios, ya que ellos pueden modificar únicamente sus propios datos. Es posible que se programen conferencias de dos diferentes maneras:
El usuario pide permiso para realizar una conferencia nueva --> le llega un e-mail al administrador, que luego entra y puede modificar los datos y aceptar la conferencia o rechazarla.
El administrador invita a un usuario a ser conferencista. En este caso, el usuario es a quien le llega el mail y puede modificar los datos de la misma y aceptarla o rechazarla.
Basándome en el Diagrama de Clases realizado, hoy creé las tablas de la base de datos. Además terminé los diagramas de secuencia. A partir de ahora tengo que empezar a programar. Mientras tanto, voy a ir modificando el Diagrama de Clases.
Hoy terminé de realizar el Diagrama de Clases y lo correjí. También empecé a hacer los Diagramas de Secuencia sobre los casos de uso de los que hice Diagrama de Casos de Uso:
Elegir conferencia,
Programar conferencia y
Enviar una señal indicando que quiere hacer pregunta/participación.
Vi con Damián la diferencia entre un usuario cuando cumple el rol de actor y cuando cumple el rol de objeto usuario. Esto me permitirá continuar realizando los Diagramas de Secuencia correctamente.
Hoy corregí con Damián los Casos de Uso y su breve descripción, así como los tres Diagramas de Casos de Uso realizados. También diseñé las pantallas de los mismos. Para la clase que viene, debo realizar el Diagrama de Clases y comenzar el de secuencia.
Hoy corregí los errores señalados por Damián la semana anterior. Además, anoté todos mis casos de uso con su breve descripción de la funcionalidad que tendrán. Esto va a servirme un montón para organizarme a la hora de programar, saber qué es lo que tengo que hacer en cada pantalla y también crear las consultas en la base de datos. Además, seleccioné tres casos de uso que no son ABM, e hice su Diagrama de Casos de Uso, detallando qué actores interactúan con éste, qué sucederá si éste se cumplió a la perfección y qué otros flujos alternativos podría tener.
Luego de mi reunión con Damián de hoy, decidí que tengo que organizar todos los archivos en uno sólo, ya que la carpeta está hecha para ser mostrada al cliente, y debe estar bien presentada.
Para la semana que viene, tengo que corregir algunas cosas de la Propuesta Economica, y además realizar como anexo el cálculo en detalle de la propuesta económica tomando como valores de referencia que la hora de análisis cuesta %40, la de diseño $30, la de programación $20 y la de diseño gráfico $15.
Además tengo que avanzar haciendo lo máximo posible del punto 6 de la carpeta, el diseño, que incluye Casos de uso, con su Diagrama de casos de uso con breve descripción de cada uno de ellos; una selección de 2 o 3 casos de uso, para los que realizaré la descripción de los mismos, una interfaz gráfica de cada uno y un diagrama de secuencia; y por último el diagrama de Clases.
Para la próxima clase, debo realizar la propuesta económica, y corregir algunos aspectos de redacción y presentación de la propuesta Técnica y Funcional.
Hoy en la reunión con Damián acordamos que era preferible que me enfoque más en lograr hacer funcionar correctamente el espacio de videoconferencias, y agregar como "opcional" el tema de la compra de créditos directamente por PayPal.
Durante esta semana debo hacer la Propuesta Técnica y Funcional, incluyendo todos los puntos descritos para la carpeta:
PROPUESTA Técnica y Funcional
1.1.Introducción (Resumen)
1.1.1.Principales problemas detectados
1.2.Solución
1.2.1.Propuesta funcional
1.2.2.Descripción de los módulos (funciones, beneficios)
1.3.Fechas de entrega (de cada módulo/s)
1.4.Garantía (qué cosas garantizas y que no)
1.5.Capacitación
1.5.1.Donde se da la capacitación.
1.5.2.Como se da la capacitación.
1.5.3.Cuantas personas pueden estar involucradas.
1.5.4.Cuanto tiempo.
1.6.Documentación incluida
1.6.1.Manual de usuario (aclaración de para que sirve el sistema)
1.6.2.Ayuda en línea (dentro del sistema) para la operación (cómo se utiliza el sistema)
1.7.Equipamiento propuesto (Mínimo y Recomendado)
1.7.1.Hardware
1.7.2.Software
1.8.Descripción de Servicios Opcionales
1.8.1.Mantenimiento (definición de que es. Es posterior a la garantía)
1.8.2.Carga inicial
1.8.3.Capacitación extra.
Los requisitos los separaré en tres módulos: Administrador, Conferencista y Usuario.
También iré trabajando paralelamente con el diagrama de casos de uso.
Utilizando la última versión del informe, anoté los actores que se relacionarán con el sistema y fui detectando los requerimientos funcionales (dentro de los cuales, detecté cuál corresponde a cada actor y cuáles corresponden a más de un actor) y los requerimientos no funcionales que me nombró el cliente.
Siguiendo el consejo de Damián, fui resaltando las cosas del informe que ya había convertido en requerimientos, para guiarme y detectar fácilmente cuáles me faltaban agregar.
Durante esta semana, le di mi informe a mi cliente para que pueda corregirlo. A partir de algo que me dijo que quería agregar al sistema (que los usuarios puedan comprar créditos y se les vaya restando determinada cantidad a medida que participan en conferencias pagas), se me ocurrieron nuevas preguntas para conocer los requerimientos del cliente más detalladamente.
Luego, modificando lo que el cliente me dijo y agregando información a partir de las preguntas adicionales, realicé una segunda versión del informe.
Hoy Damián me dio el OK acerca de la primer entrevista y el informe extraído de la misma. Ahora debo mostrarle al cliente el informe realizado y que él pueda agregar, eliminar o modificar lo que desee. Además debo reconocer a los actores que participan en el sistema y los requerimientos de cada uno, de los cuales voy a extraer los requisitos.
Mi primer entrevista original con el cliente constaba de 31 preguntas, pero agregué dos a medida que transcurría la misma. En ella el cliente me informó sobre el funcionamiento su sitio en general, y sobre lo que él espera que contenga la sección videoconferencias del mismo. Me dio bastantes datos, algunos detallados, pero necesitaríamos reunirnos nuevamente para aclarar algunos puntos que charlamos muy por ensima.
A partir de esta primera entrevista, extraje datos que conformaron la primer versión del informe.
Entregué las preguntas a Damián para luego realizar la primera entrevista con el cliente.
Damián me sugirió que agregara un par de preguntas específicas y me dijo que a medida que realizaba la entrevista, podía ir agregando otras.
También me dijo que luego de realizar el primer informe, iba a poder mostrárselo al cliente, para saber si lo que yo entendí que él requería para el sistema era lo correcto. Puedo realizar varias versiones del informe, a medida que realizo entrevistas y agrego preguntas y nueva información. Así, llegaré a la versión definitiva del mismo, a la que el cliente debe dar el O.K. De esta manera podré pasar a analizar los requerimientos y obtener los casos de uso que compondrán el sistema.
El proyecto final que yo realizaré es para mi papá, que tiene una revista digital de deportes, actividad física y ciencias aplicadas, con contenidos académicos (efdeportes.com). Quiere agregar a la web un espacio para realizar videoconferencias online, con sonido, video y chat. Para realizarlo, necesitaré generar Podcast, que consiste en la distribución de archivos multimedia (normalmente audio o vídeo) mediante un sistema de sindicación (distribución de contenidos informativos) que permita suscribirse y usar un programa que lo descarga para que el usuario lo escuche en el momento que quiera. Para generarlo, se debe seguir una serie de pasos.