Dpto. de Lenguajes y Sistemas Informáticos Escuela Técnica Superior de Ingeniería Informática Universidad de Sevilla
Normas para la realización del Proyecto Informático Septiembre de 2005
José Mariano González Romano
[email protected]
Normas para la realización del Proyecto Informático 1. Propuestas de proyectos informáticos 2. Solicitud y adjudicación de un proyecto 3. Fases de desarrollo del proyecto 4. Documentación del proyecto 5. Entrega del proyecto 6. Defensa pública del proyecto 7. Bibliografía Apéndice A: propuesta de índice para la memoria escrita Apéndice B: modelo de portada de la memoria escrita
1. Propuestas de proyectos informáticos Cada curso, a principios del mes de septiembre, publico una lista con mis propuestas de proyectos informáticos para el curso académico que comienza. Para cada propuesta se proporciona una breve descripción de la misma, la titulación a la que está dirigida, los recursos necesarios y los requisitos mínimos exigidos. A no ser que se especifique lo contrario, todos los proyectos pueden ser realizados individualmente o en grupos de dos alumnos como máximo. Para obtener más información sobre una propuesta concreta puedes ponerte en contacto conmigo. Me puedes localizar en el despacho F1.71 de la Escuela Técnica Superior de Ingeniería Informática, en el teléfono 954 552 768 o en la dirección de correo electrónico
[email protected]. También admito propuestas de proyectos que se encuentren en la línea de los propuestos por mí.
2. Solicitud y adjudicación de un proyecto Si estás interesado en alguna de las propuestas debes rellenar un impreso de solicitud con tus datos y el título de la propuesta solicitada. Una vez recibida y analizada la solicitud, procederé a contestarte en el plazo máximo de 15 días. Si acepto tu solicitud deberás firmar un impreso de adjudicación para formalizar la aceptación, y a partir de este momento podrás comenzar el trabajo. Te recomiendo especialmente inscribirte en la comunidad de usuarios que tengo abierta en Yahoo y a través de la cual me comunico con todos mis alumnos de proyecto para enviarles información de interés. La comunidad te permitirá también intercambiar información con otros alumnos de proyecto que estén trabajando en temas similares al tuyo. En la página web de proyectos puedes encontrar información sobre cómo apuntarte a la comunidad.
3. Fases de desarrollo del proyecto Las fases de desarrollo del proyecto se esquematizan en el diagrama de flujo que se muestra en la figura 1. Como puedes apreciar, existen varias fases que han de ser validadas antes de pasar a la siguiente. Para ello deberás mostrarme el trabajo realizado y, si es satisfactorio, le daré el visto bueno y podrás pasar a la siguiente fase. En caso contrario, deberás realizar las modificaciones oportunas. A
INTRODUCCIÓN Y PLANIFICACIÓN
no
VALIDACIÓN 1
CODIFICACIÓN Y PRUEBAS
no
sí
sí
ELICITACIÓN DE REQUISITOS
no
VALIDACIÓN 2
DEMOSTRACIÓN 3
no
sí
MANUALES DE USUARIO
VALIDACIÓN 3
no
sí
CONCLUSIONES Y BIBLIOGRAFÍA
VALIDACIÓN 4
no
sí
VALIDACIÓN 5 sí
no
VALIDACIÓN 10 sí MEMORIA COMPLETA
DISEÑO
no
VALIDACIÓN 9 sí
DEMOSTRACIÓN 1
no
VALIDACIÓN 8 sí
ANÁLISIS
no
VALIDACIÓN 7
no
VALIDACIÓN 11 sí
DEMOSTRACIÓN 2
ENTREGA DE LA MEMORIA
VALIDACIÓN 6
DEFENSA
sí A
Figura 1. Fases de desarrollo del proyecto
En las validaciones que impliquen la revisión de documentación me harás llegar ésta en papel o por correo electrónico con antelación, y una vez que la haya revisado te contestaré por correo o te citaré para comentarla. En aquellas validaciones que implican la realización de una demostración práctica del sistema en desarrollo existen cuatro alternativas, que son las siguientes (en orden de preferencia): 1. En el caso de que el proyecto consista en la creación de un sitio web, puedes subirlo a un servidor. Existen servidores gratuitos que admiten tanto ASP como JSP o PHP. También puedes utilizar tu propio ordenador como servidor si dispones de conexión por cable o ADSL. 2. Utilizar el aula de proyectos de la Escuela (para ello deberás solicitar la correspondiente autorización en el Centro de Cálculo) 3. Traer un ordenador portátil a mi despacho 4. Grabar una sesión de trabajo con alguna de las herramientas existentes para ello (como Lotus Screencam, Microsoft Camcorder o Camtasia Studio) Únicamente se podrán probar en mi ordenador aquellos programas que no requieran instalación. Para la realización de los documentos de elicitación y análisis de requisitos del proyecto deberás utilizar necesariamente el lenguaje UML. Te recomiendo que utilices la metodología desarrollada por los profesores de este Departamento Amador Durán y Beatriz Bernárdez, y que está disponible en la Web ([2], [3]). Para una mayor información sobre UML puedes consultar los libros clásicos de los autores ([1], [4], [5]). Durante el desarrollo del proyecto puedes consultarme todas las dudas que tengas acerca del mismo bien personalmente o bien a través del correo electrónico. En el primer caso debes utilizar mis horas de tutoría; en el caso de que éstas sean incompatibles con tu horario laboral, nos pondremos de acuerdo para otra hora a través del correo electrónico. También te animo a que consultes a otros alumnos que se encuentren realizando proyectos dentro de la misma categoría que el tuyo, y que podrás encontrar en la comunidad de usuarios. En cuanto al tiempo empleado en la realización del proyecto, no existen unos plazos concretos, sino que depende de factores como la necesidad de aprender nuevos lenguajes o el manejo de nuevas herramientas, y, fundamentalmente, de tu dedicación al mismo. En cualquier caso, te recuerdo que el proyecto es una asignatura de 18 créditos para la titulación superior y 9 para la técnica, lo cual implica que el tiempo dedicado al mismo debe ser equivalente al de una asignatura con la misma carga de créditos.
4. Documentación del proyecto La documentación del proyecto consiste en una memoria escrita que refleja todo el trabajo desarrollado durante su realización. Esta memoria debe irse redactando durante la realización del proyecto, aunque sea a la finalización del
mismo cuando se le dé el toque final. Como base para su redacción puedes utilizar el índice que te proporciono, adaptándolo a las características concretas del proyecto. En la memoria escrita debe estar reflejada la metodología utilizada para el desarrollo del proyecto. La memoria escrita es el reflejo del trabajo desarrollado y por tanto hay que cuidar mucho su redacción, revisándola a fondo para eliminar todos los errores ortográficos y sintácticos. Una vez que haya dado el visto bueno a la memoria escrita podrás proceder a la entrega de la misma.
5. Entrega del proyecto El material que deberás entregar para poder optar a la defensa pública del proyecto es el siguiente: • • •
Dos copias de la memoria debidamente encuadernadas Un breve resumen del proyecto, según el impreso disponible a tal efecto Un CD-ROM con todo el trabajo realizado en el proyecto (fuentes, ejecutable, documentación y otros datos)
Una vez hecho esto el Departamento fijará el día y la hora de la defensa del proyecto. Actualmente el Departamento tiene establecidas cuatro citas anuales para la defensa de proyectos, coincidiendo con las cuatro convocatorias oficiales: febrero, junio, septiembre y diciembre. Para optar a cualquiera de ellas el proyecto deberá haber sido entregado con una antelación mínima de tres semanas a la fecha de la defensa, que normalmente suele fijarse a mediados de mes.
6. Defensa pública del proyecto La defensa del proyecto consiste en una exposición pública ante un tribunal formado por dos profesores del trabajo desarrollado y los resultados obtenidos. La exposición se realiza en un aula dotada de un cañón de proyección y conexión a la red, y consiste en una presentación con diapositivas donde se describe el trabajo realizado, con énfasis en los aspectos técnicos. Para realizar las diapositivas se suele utilizar algún programa de presentaciones (Powerpoint, Corel Presentations, etc.) No es mala idea entregar una copia impresa de la presentación a los miembros del tribunal. Unos días antes de la fecha de la defensa deberás enviarme por correo electrónico la presentación para copiarla en el ordenador del aula donde se realizará la exposición. En la defensa del proyecto no se realiza una demostración práctica del sistema desarrollado y por tanto no es preciso que traigas tu propio ordenador.
La duración de la defensa no debe superar los 15 minutos. Conviene, pues, que te centres en los aspectos más importantes del proyecto y que realices algún ensayo previo para controlar el tiempo. Al término de la defensa los miembros del Tribunal podrán hacerte las preguntas que estimen oportunas acerca del proyecto. Posteriormente el Tribunal deliberará en privado y acordará la calificación, que será publicada junto con la del resto de los proyectos de la convocatoria en el plazo de una semana. La nota final del proyecto depende fundamentalmente de la dificultad del mismo y del trabajo desarrollado, pero también influyen otros factores como la calidad de la memoria escrita y la defensa realizada. La nota se compone de tres partes: • Una primera parte corresponde al tutor, y valora todo el trabajo realizado por el alumno en el transcurso del proyecto, así como la calidad de los resultados obtenidos • Una segunda parte corresponde a la Comisión de Proyectos del Departamento, y valora la calidad del sistema desarrollado y de la documentación entregada por el alumno • Una tercera parte corresponde a la defensa pública, y valora fundamentalmente las dotes de comunicación del alumno a la hora de exponer el trabajo realizado
7. Bibliografía Para obtener documentación sobre el proyecto tienes a tu disposición la Biblioteca de la Escuela y, en la mayoría de los proyectos, la enorme cantidad de información disponible en la Web. Excepcionalmente podré dejarte alguno de los libros de mi biblioteca particular, siempre que te comprometas a cuidarlo bien y devolverlo en un plazo de tiempo breve. En cuanto a las herramientas necesarias, algunas están disponibles en el Centro de Cálculo de la Escuela, otras son de dominio público y de las demás puedes encontrar versiones de evaluación en Internet.
Referencias [1] G. Booch, J. Rumbaugh, I. Jacobson. “Unified Modeling Language User Guide”. Addison Wesley. [2] A. Durán, B. Bernárdez. "Metodología para la Elicitación de Requisitos de Sistemas Software (versión 2.0)". Informe Técnico del Dpto. de Lenguajes y Sistemas Informáticos de la Universidad de Sevilla. Sevilla, Octubre 1999 (versión Postscript disponible en http://www.lsi.us.es/~amador) [3] A. Durán, B. Bernárdez. "Metodología para el Análisis de Requisitos de Sistemas Software (versión 2.0)". Informe Técnico del Dpto. de Lenguajes y Sistemas Informáticos de la Universidad de Sevilla. Sevilla, Noviembre 1999 (versión Postscript disponible en http://www.lsi.us.es/~amador)
[4] Jacobson, G. Booch, J. Rumbaugh. “The Unified Software Development Process”. Addison Wesley. [5] J. Rumbaugh, I. Jacobson, G. Booch. “The Unified Modeling Language Reference Manual”. Addison Wesley.
Apéndice A: Propuesta de índice para la memoria escrita
1. Introducción • Objetivo • Justificación • Análisis de lo existente • Entrevistas con el cliente (si procede) • Propuesta detallada 2. Planificación temporal y evaluación de costes 3. Fundamentos teóricos (si los hubiera) • Estado del arte y valoración de alternativas 4. Elicitación de requisitos • Se utilizará la “Metodología para la Elicitación de Requisitos de Sistemas Software”, desarrollada por Amador Durán y Beatriz Bernárdez y disponible en http://www.lsi.us.es/~amador/ 5. Análisis de requisitos • Se utilizará la “Metodología para el Análisis de Requisitos de Sistemas Software”, desarrollada por Amador Durán y Beatriz Bernárdez y disponible en http://www.lsi.us.es/~amador/ • Se valorará especialmente la realización de prototipos de las interfaces, bien en papel, bien con alguna herramienta 6. Diseño • Diseño arquitectónico • Patrones de diseño • Diseño de datos • Diseño de la interacción 7. Codificación • Entorno de programación • Lenguajes y herramientas • Aspectos relevantes de la implementación. No incluir todo el código fuente, sólo aquello que se considere importante o novedoso. Además de los aspectos particulares del sistema concreto, deben incluirse los siguientes apartados generales: • Validación de datos • Control de acceso • Protección de la información 8. Pruebas de ejecución • Pruebas funcionales • Pruebas de usabilidad • Pruebas de accesibilidad (se recomienda el uso de herramientas de verificación de la accesibilidad como el TAW, disponible gratuitamente en www.tawdis.net) • Pruebas de seguridad • Pruebas de carga 9. Manuales de usuario (tantos como proceda en función de los diferentes tipos de usuario del sistema) • Objetivo • Requisitos e instalación
• Descripción del funcionamiento del sistema (mediante un tutorial o una descripción de las operaciones más habituales) • Mensajes de error 10.Conclusiones • Conclusiones sobre el trabajo realizado • Conclusiones sobre el sistema desarrollado • Conclusiones personales • Posibles ampliaciones y mejoras 11.Bibliografía (comentada) • Libros, artículos y apuntes • Direcciones web + Apéndices, si procede
Apéndice B: Modelo de portada de la memoria escrita En la portada de la memoria escrita deberán figurar los rótulos "Departamento de Lenguajes y Sistemas Informáticos", "Escuela Técnica Superior de Ingeniería Informática" y "Proyecto Fin de Carrera", además del título del proyecto, los nombres del autor y el tutor del mismo, la titulación a la que se opta y el lugar y fecha de la defensa (mes y año). El siguiente modelo debe tomarse como un ejemplo, no como una imposición. Se anima al alumno a crear su propio diseño combinando los distintos elementos.
Dpto. de Lenguajes y Sistemas Informáticos Escuela Técnica Superior de Ingeniería Informática
Proyecto Informático Ingeniería Informática
Desarrollo de un editor visual para el diseño de páginas web dinámicas
Fulano Mengánez Zutánez
Tutor: José Mariano González Romano
Sevilla, septiembre de 2005