Author: Eduard Gamonal
Degree: Master in Information Technology
University Facultat d'Informàtica de Barcelona, Universitat Politècnica de Catalunya
Dec 18, 2013
UPC Commons http://hdl.handle.net/2099.1/20166
Gamonal Capdevila, Eduard. "Reengineering a Content Manager for Humanoid Robots with Web Technology". Castell, Núria. 2013. http://hdl.handle.net/2099.1/20166. [query: 08-06-15].
Supervisor: Dr Núria Castell Arinyo
Department: former LSI (systems and languages, 2013). currently Department of Computer Science http://www.cs.upc.edu/
This project aims to reengineer a content manager for humanoid robots with web technology at PAL Robotics in order to abandon the current Adobe Flash implementation. This software runs in the robot, displays content applications and handles user interaction.
PAL Robotics humanoid robot REEM-H3. 1.8m, 90Kg:
Software products do not degrade with time or with external factors, but they are continually corrected and extended. Using third-party packages is a common practice and creates a dependency with a vendor, who might stop supporting a product. After a certain amount of time, changes become harder to implement and reengineering might be necessary.
This project aims to reengineer a content manager for humanoid robots with web technology at PAL Robotics in order to abandon the current Adobe Flash implementation. This software runs in the robot, displays content applications and handles user interaction. Users create contents with an external RIA. These might contain buttons, images or text, and have an XML representation. The content manager in the robot loads the content, interprets that XML in order to build a GUI with HTML, and interoperates with the robot's system from the browser.
This thesis formally addresses the reengineering of the software based on Pressman's work, in 6 successive steps: software inventory, documentation restructuring, reverse engineering, code restructuring, data restructuring, and forward engineering.
Firstly, it identifies the functional and non-functional requirements of the project. Secondly, it presents the specification emphasising the first three steps, including a conceptual model, system use cases and sequence diagrams. Thirdly, it describes the internal design of the system in the context of the last three steps. It starts by highlighting the system's architecture, its context and the software patterns. Then, it provides a static view with class and packages diagrams, a dynamic view with sequence diagrams and a physical view with a deployment diagram. Fourthly, it illustrates relevant parts of the implementation with code examples. Lastly, it outlines the testing strategy and implementation.
In conclusion, this master's thesis addresses the reengineering of the content manager and develops the new system with accuracy, creativity and consistency. It applies a systematic approach and uses proven techniques like software patterns and a widely-known architecture.
It has been a long journey since the first year at this university. I would like to thank my parents and my sister for their enduring support, understanding and guiding.
This thesis is the work done at PAL Robotics. I owe many thanks to the team that helped me understand the system and a field, robotics, that was new to me. My colleague Eric Marcos and my director Daniel Pinyol guided and supported me specially in the first weeks of this project, and Dr Ricardo Tellez reviewed part of this document and provided valuable insights.
The generous support of my friends during the last weeks is greatly appreciated. They challenged my ideas and suggested changes that have made this document much clearer: Daniel Andersson, Oriol Arcas, Margaux Bigotte, Oriol Collell, Clara Cowley, Jordi Francès, Manuela Hürlimann, Roger Llorens, José Manuel López, Hèctor Manrique, Àlvaro Martínez, Kamilla Nyborg, Marc Rodríguez, and Anna Rosich.
I would like to express my deepest gratitude to the professors in high-school and university that inspired me, showed me that hard work pays off, encouraged me to always pursue bigger challenges, and gave me the opportunity to take semesters at the University of Aberdeen (Scotland) and Northeastern University (Boston, MA).
Finally, I would like to thank my professor Núria Castell for her guidance and support while I completed this work.
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/