|
Desarrollo de un Clasificador de Fotografías Digitales
|
|
1. Resumen
Un clasificador de diapositivas clásico no es más que un cajón con una superficie transparente y una bombila interior más una serie de
compartimentos laterales. El mecanismo de clasificación es tan básico como disponer una serie de dispositivas sobre el cristal, aprovechar la luz
interior para ver su contenido; y, atendiendo a un criterio de clasificación definido por el usuario, las diapositivas se van depositando en los
compartimentos laterales. Cuando se alcanza la ordenación deseada, las dispositivas se archivan por orden en la correspondiente caja, y las
descartadas simplemente se guardan sin orden alguno en cualquier otro sitio.
El objetivo del proyecto es desarrollar una aplicación software con dos funcionalidades básicas: (1) Emulación de
un clasificador de diapositivas físicas clásico (la luz interior no es necesaria, pero el sistema de compartimentos si);
y (2) que una vez clasificadas y ordenadas las diapositivas o fotografías digitales permita renombrarlas de forma que
dichas fotografías queden ordenadas alfabéticamente por su nombre de archivo, de acuerdo con algún patrón definido por el usuario.
Por ejemplo, una vez renombradas, las fotografías podrían tener nombres como Brasil0001.jpg, Brasil0002.jpg, y así sucesivamente.
Un aspecto importante de esta aplicación es que sea lo más amigable posible, por lo que deberá cuidarse especialemente
su usabilidad e interfaz gráfica. Se valorará también que la aplicación sea fácilmente extendible por terceras personas con nuevas
funcionalidades.
El desarrollo de dicha aplicación deberá realizarse considerando todos las fases del ciclo de vida, desde requisitos a prueba y despliegue.
El director del proyecto ejercerá de cliente. Se incluirán también, de forma leve, aspectos de gestión de proyectos,
tales como elaboración y seguimiento de una planificación.
2. Metodología
- Analizar el problema.
- Si fuese necesario, adquirir conocimientos de elaboración de interaces gráficas avanzadas.
- Elaboración del plan de proyecto.
- Desarrollo del proyecto, incluyendo todas las fases del ciclo de vida de un producto software.
3. Áreas de Conocimientos
- Usabilidad
- Creación de interfaces gráficas
- Conocimientos de creación de widgets para interfaces gráficas
4. Otros datos de interés
La metodología de desarrrollo y el lenguaje de programación quedan totalmente a elección del alumno. Yo personalmente optaría por una metodología
en espiral con iteraciones cortas, usanfdo UML como lenguaje de modelado para las diversas fases del ciclo de vida y Java como lenguaje de
programación, básicamente por desarrollar una aplicación multiplataforma. Los diferentes widgets gráficos que hagan falta crear para hacer más amigable
la interfaz los codificaría usando simple Java beans. No obstante, la decisión final es del alumno.
Referencias y Bibliografía
No se definen por el momento.
|
Última actualización: 16/06/2010
|
|