Grupos: el proyecto puede
ser desarrollado en grupo de hasta tres personas.
Definición del Proyecto a desarrollar: Usted o su grupo (en adelante grupo) debe formular su proyecto llenando el formulario WEB accesible desde la página del ramo.
Desarrollo: Su grupo debe crear y mantener una página WEB con la información de su proyecto. Al menos debe poner los datos de los integrantes del grupo (poner correo "encriptado" al estilo javier AT elo DOT utfsm DOT cl), el nombre del tema, descripción del problema, requerimientos, y cualquier otra información que se genere como resultado de su desarrollo.
Demostración: Al término de su proyecto la página web del mismo contendrá la documentación de la solución, las instrucciones para su instalación y ejecución. El proyecto será explicado y demostrado al curso quien participará de su evaluación.
Documentación: Este archivo debe incluir:
1.- La descripción del problema que usted resuelve en su
proyecto. Esta descripción es corta ~ 5 líneas.
2.- Un pequeño análisis del problema. En esta
sección usted desarrolla y explica los elementos o entes que
participan en el problema, define el sistema y sus interacciones con el
medio externo al sistema. Plantea algunos ejemplos de casos de uso del
sistema a desarrollar. Muestre algunos test de prueba para el sistema.
3.- Diseño haga diagramas de alto nivel que muestre la
arquitectura de su solución. Estos equivalen a los planos de
arquitectura para una construcción. Si alguno de los
módulos involucra mayor complejidad, hacer diagrama de
arquitectura para el módulo.
4.- La implementación se documenta en el código fuente
con los comentarios que correspondan.
5.- Pruebas: Exponga los resultados para algunos test de prueba. Liste
las dificultades encontradas en el desarrollo del sistema y
cómo las superó. Si aún están presentes,
indicar listado de bugs presentes.
Usted es libre de mejorar la documentación.
Algunas ideas 2005
Una idea a considerar como proyecto
sería desarrollar alguna aplicación
orientada a objetos en que se use (reuse) uno de los siguientes
paquetes:
- Estudio y desarrollo de algún ejemplo de aplicación de
"Patrones de Diseño"
- Estudio y desarrollo de ejemplo sobre administración de
seguridad en Applets.
- Estudio y demostración de herramientas de apoyo para el
desarrollo de documentación UML.
- wxWindows: Toolkit para crear interfaces gráficas.
http://www.wxwindows.org/ También tiene
paquetes en Debian (buscar por "wxwin")
- Bibliotéca para manejar RTP facilmente (en comparación
con otras,
a.k.a. -Also known as- lucent-rtplib):
http://research.edm.luc.ac.be/jori/jrtplib/jrtplib.html
- Biblioteca para decodificar MPEG2 (muy rápida):
http://libmpeg2.sourceforge.net/ (autodetecta posibles soporte para
MMX, 3Dnow, MMXEXT, y provee
biblioteca para conversiones a RGB y YUV)
- LIBPING: Biblioteca para hacer ICMP_ECHO requests:
http://www.joedog.org/libping/index.php
http://www.joedog.org/libping/index.php
- Codificador MPEG2 (y MPEG1, con varias opciones de
configuración ) de Berkeley:
ftp://mm-ftp.cs.berkeley.edu/pub/multimedia/mpeg2/software/mpeg2vidcodec_v12.tar.gz