ROOM DESIGNER Autor: Saiz Montes, Guillermo. Director: Contreras Bárcena, David. Entidad Colaboradora: ICAI – Universidad Pontificia Comillas. RESUMEN DEL PROYECTO El proyecto que he desarrollado este año es un diseñador de planos. Decidí hacer este proyecto principalmente por dos razones. La primera es que este proyecto es la respuesta a una demanda real. La segunda es porque este proyecto me permitía usar la tecnología Java, la cual conozco muy bien, y porque a la vez me permitía utilizar una innovadora técnica de ingeniería del software que nunca antes había utilizado conocida como Extreme Programming. Por supuesto, la idea de desarrollar una aplicación que te permitiera diseñar un plano, era atractiva para mí. La aplicación, como podéis imaginar, te permite diseñar tu propio plano. Para ello, debes introducir las dimensiones del cuarto que quieres decorar o diseñar, y partir de ahí seleccionar de una paleta de elementos aquellos muebles que te gustarían para tu decoración. Estos elementos decorativos se pueden mover de un lado a otro del cuarto que se está diseñando, se pueden también cambiar de tamaño para que se ajuste exactamente a las exigencias del usuario y se pueden borrar. Después de acabar el diseño del cuarto, la aplicación te permite imprimir el plano para conservar el diseño. Como mencioné anteriormente, he utilizado “Extreme programming” para el desarrollo del proyecto. “Extreme Programming” sigue básicamente los pasos que se siguen en el tradicional modelo de ingeniería del software conocido como “Lineal” o “en Cascada”. La diferencia clave es que con este nuevo modelo, repites esos paso una y otra vez hasta que finaliza el desarrollo. En cualquier caso, se verá con mayor detalle en apartados posteriores y haremos una comparación entre XP y el modelo Lineal. He utilizado Java porque es el lenguaje que mejor conozco y porque es el lenguaje orientado a objetos que mejor se ajustaba dados los requisitos del cliente. ROOM DESIGNER The project I have developed this last year is a Room Designer. I decided to do this project mainly for two reasons. The first reason is that this project answers to a real demand. The second reason is that this project allowed me to use a technology (Java) that I know very well and to use an original software engineering process that I have never used before. (Extreme Programming). Of course, the idea of developing an application that allows you to create your own room was attractive to me. The application, as you can imagine, allows you to design your own room. For doing that, you have to enter the dimensions of the room you want to design and after that, select from the palette the elements you want to use to decorate that room. These decorative elements are drag & drop elements, that means you can move them inside the room without any problem. You can also readjust the size of the elements so they can fit exactly into your preferences. After doing your design, you can print it and keep it. I have used Extreme Programming to develop the project. Basically, the Extreme Programming has the same steps than the classic Waterfall model for software engineering. The key difference is that you go through those steps multiple times instead one. We will see more detailed the XP methodology and we will compare it with the Waterfall. I have used Java as programming language because it is a language that I know quite well and because is the object oriented language that better matched for what I wanted to do. It also was the language that better matched for the requirements due to the client wanted a web application. Java and its applets are perfect!