38 resultados para gestión de software
Resumo:
Las metodologías de desarrollo ágiles han sufrido un gran auge en entornos industriales durante los últimos años debido a la rapidez y fiabilidad de los procesos de desarrollo que proponen. La filosofía DevOps y específicamente las metodologías derivadas de ella como Continuous Delivery o Continuous Deployment promueven la gestión completamente automatizada del ciclo de vida de las aplicaciones, desde el código fuente a las aplicaciones ejecutándose en entornos de producción. La automatización se ve como un medio para producir procesos repetibles, fiables y rápidos. Sin embargo, no todas las partes de las metodologías Continuous están completamente automatizadas. En particular, la gestión de la configuración de los parámetros de ejecución es un problema que ha sido acrecentado por la elasticidad y escalabilidad que proporcionan las tecnologías de computación en la nube. La mayoría de las herramientas de despliegue actuales pueden automatizar el despliegue de la configuración de parámetros de ejecución, pero no ofrecen soporte a la hora de fijar esos parámetros o de validar los ficheros que despliegan, principalmente debido al gran abanico de opciones de configuración y el hecho de que el valor de muchos de esos parámetros es fijado en base a preferencias expresadas por el usuario. Esto hecho hace que pueda parecer que cualquier solución al problema debe estar ajustada a una aplicación específica en lugar de ofrecer una solución general. Con el objetivo de solucionar este problema, propongo un modelo de configuración que puede ser inferido a partir de instancias de configuración existentes y que puede reflejar las preferencias de los usuarios para ser usado para facilitar los procesos de configuración. El modelo de configuración puede ser usado como la base de un proceso de configuración interactivo capaz de guiar a un operador humano a través de la configuración de una aplicación para su despliegue en un entorno determinado o para detectar cambios de configuración automáticamente y producir una configuración válida que se ajuste a esos cambios. Además, el modelo de configuración debería ser gestionado como si se tratase de cualquier otro artefacto software y debería ser incorporado a las prácticas de gestión habituales. Por eso también propongo un modelo de gestión de servicios que incluya información relativa a la configuración de parámetros de ejecución y que además es capaz de describir y gestionar propuestas arquitectónicas actuales tales como los arquitecturas de microservicios. ABSTRACT Agile development methodologies have risen in popularity within the industry in recent years due to the speed and reliability of the processes they propose. The DevOps philosophy and specifically the methodologies derived from it such as Continuous Delivery and Continuous Deployment push for a totally automated management of the application lifecycle, from the source code to the software running in production environment. Automation in this regard is used as a means to produce repeatable, reliable and fast processes. However, not all parts of the Continuous methodologies are completely automatized. In particular, management of runtime parameter configuration is a problem that has increased its impact in deployment process due to the scalability and elasticity provided by cloud technologies. Most deployment tools nowadays can automate the deployment of runtime parameter configuration, but they offer no support for parameter setting o configuration validation, as the range of different configuration options and the fact that the value of many of those parameters is based on user preference seems to imply that any solution to the problem will have to be tailored to a specific application. With the aim to solve this problem I propose a configuration model that can be inferred from existing configurations and reflect user preferences in order to ease the configuration process. The configuration model can be used as the base of an interactive configuration process capable of guiding a human operator through the configuration of an application for its deployment in a specific environment or to automatically detect configuration changes and produce valid runtime parameter configurations that take into account those changes. Additionally, the configuration model should be managed as any other software artefact and should be incorporated into current management practices. I also propose a service management model that includes the configuration information and that is able to describe and manage current architectural practices such as the microservices architecture.
Resumo:
Hoy en día, existen numerosos sistemas (financieros, fabricación industrial, infraestructura de servicios básicos, etc.) que son dependientes del software. Según la definición de Ingeniería del Software realizada por I. Sommerville, “la Ingeniería del Software es una disciplina de la ingeniería que comprende todos los aspectos de la producción de software desde las etapas iniciales de la especificación del sistema, hasta el mantenimiento de éste después de que se utiliza.” “La ingeniería del software no sólo comprende los procesos técnicos del desarrollo de software, sino también actividades tales como la gestión de proyectos de software y el desarrollo de herramientas, métodos y teorías de apoyo a la producción de software.” Los modelos de proceso de desarrollo software determinan una serie de pautas para poder desarrollar con éxito un proyecto de desarrollo software. Desde que surgieran estos modelos de proceso, se investigado en nuevas maneras de poder gestionar un proyecto y producir software de calidad. En primer lugar surgieron las metodologías pesadas o tradicionales, pero con el avance del tiempo y la tecnología, surgieron unas nuevas llamadas metodologías ágiles. En el marco de las metodologías ágiles cabe destacar una determinada práctica, la integración continua. Esta práctica surgió de la mano de Martin Fowler, con el objetivo de facilitar el trabajo en grupo y automatizar las tareas de integración. La integración continua se basa en la construcción automática de proyectos con una frecuencia alta, promoviendo la detección de errores en un momento temprano para poder dar prioridad a corregir dichos errores. Sin embargo, una de las claves del éxito en el desarrollo de cualquier proyecto software consiste en utilizar un entorno de trabajo que facilite, sistematice y ayude a aplicar un proceso de desarrollo de una forma eficiente. Este Proyecto Fin de Grado (PFG) tiene por objetivo el análisis de distintas herramientas para configurar un entorno de trabajo que permita desarrollar proyectos aplicando metodologías ágiles e integración continua de una forma fácil y eficiente. Una vez analizadas dichas herramientas, se ha propuesto y configurado un entorno de trabajo para su puesta en marcha y uso. Una característica a destacar de este PFG es que las herramientas analizadas comparten una cualidad común y de alto valor, son herramientas open-source. El entorno de trabajo propuesto en este PFG presenta una arquitectura cliente-servidor, dado que la mayoría de proyectos software se desarrollan en equipo, de tal forma que el servidor proporciona a los distintos clientes/desarrolladores acceso al conjunto de herramientas que constituyen el entorno de trabajo. La parte servidora del entorno propuesto proporciona soporte a la integración continua mediante herramientas de control de versiones, de gestión de historias de usuario, de análisis de métricas de software, y de automatización de la construcción de software. La configuración del cliente únicamente requiere de un entorno de desarrollo integrado (IDE) que soporte el lenguaje de programación Java y conexión con el servidor. ABSTRACT Nowadays, numerous systems (financial, industrial production, basic services infrastructure, etc.) depend on software. According to the Software Engineering definition made by I.Sommerville, “Software engineering is an engineering discipline that is concerned with all aspects of software production from the early stages of system specification through to maintaining the system after it has gone into use.” “Software engineering is not just concerned with the technical processes of software development. It also includes activities such as software project management and the development of tools, methods, and theories to support software production.” Software development process models determine a set of guidelines to successfully develop a software development project. Since these process models emerged, new ways of managing a project and producing software with quality have been investigated. First, the so-called heavy or traditional methodologies appeared, but with the time and the technological improvements, new methodologies emerged: the so-called agile methodologies. Agile methodologies promote, among other practices, continuous integration. This practice was coined by Martin Fowler and aims to make teamwork easier as well as automate integration tasks. Nevertheless, one of the keys to success in software projects is to use a framework that facilitates, systematize, and help to deploy a development process in an efficient way. This Final Degree Project (FDP) aims to analyze different tools to configure a framework that enables to develop projects by applying agile methodologies and continuous integration in an easy and efficient way. Once tools are analyzed, a framework has been proposed and configured. One of the main features of this FDP is that the tools under analysis share a common and high-valued characteristic: they are open-source. The proposed framework presents a client-server architecture, as most of the projects are developed by a team. In this way, the server provides access the clients/developers to the tools that comprise the framework. The server provides continuous integration through a set of tools for control management, user stories management, software quality management, and software construction automatization. The client configuration only requires a Java integrated development environment and network connection to the server.
Resumo:
El presente TFG está enmarcado en el contexto de la biología sintética (más concretamente en la automatización de protocolos) y representa una parte de los avances en este sector. Se trata de una plataforma de gestión de laboratorios autónomos. El resultado tecnológico servirá para ayudar al operador a coordinar las máquinas disponibles en un laboratorio a la hora de ejecutar un experimento basado en un protocolo de biología sintética. En la actualidad los experimentos biológicos tienen una tasa de éxito muy baja en laboratorios convencionales debido a la cantidad de factores externos que intervienen durante el protocolo. Además estos experimentos son caros y requieren de un operador pendiente de la ejecución en cada fase del protocolo. La automatización de laboratorios puede suponer un aumento de la tasa de éxito, además de una reducción de costes y de riesgos para los trabajadores en el entorno del laboratorio. En la presente propuesta se pretende que se dividan las distintas entidades de un laboratorio en unidades funcionales que serán los elementos a ser coordinados por la herramienta resultado del TFG. Para aportar flexibilidad a la herramienta se utilizará una arquitectura orientada a servicios (SOA). Cada unidad funcional desplegará un servicio web proporcionando su funcionalidad al resto del laboratorio. SOA es esencial para la comunicación entre máquinas ya que permite la abstracción del tipo de máquina que se trate y como esté implementada su funcionalidad. La principal dificultad del TFG consiste en lidiar con las dificultades de integración y coordinación de las distintas unidades funcionales para poder gestionar adecuadamente el ciclo de vida de un experimento. Para ello se ha realizado un análisis de herramientas disponibles de software libre. Finalmente se ha escogido la plataforma Apache Camel como marco sobre el que crear la herramienta específica planteada en el TFG. Apache Camel juega un papel importantísimo en este proyecto, ya que establece las capas de conexión a los distintos servicios y encamina los mensajes oportunos a cada servicio basándose en el contenido del fichero de entrada. Para la preparación del prototipo se han desarrollado una serie de servicios web que permitirán realizar pruebas y demostraciones de concepto de la herramienta en sí. Además se ha desarrollado una versión preliminar de la aplicación web que utilizará el operador del laboratorio para gestionar las peticiones, decidiendo que protocolo se ejecuta a continuación y siguiendo el flujo de tareas del experimento.---ABSTRACT---The current TFG is bound by synthetic biology context (more specifically in the protocol automation) and represents an element of progression in this sector. It consists of a management platform for automated laboratories. The technological result will help the operator to coordinate the available machines in a lab, this way an experiment based on a synthetic biological protocol, could be executed. Nowadays, the biological experiments have a low success rate in conventional laboratories, due to the amount of external factors that intrude during the protocol. On top of it, these experiments are usually expensive and require of an operator monitoring at every phase of the protocol. The laboratories’ automation might mean an increase in the success rate, and also a reduction of costs and risks for the lab workers. The current approach is hoped to divide the different entities in a laboratory in functional units. Those will be the elements to be coordinated by the tool that results from this TFG. In order to provide flexibility to the system, a service-oriented architecture will be used (SOA). Every functional unit will deploy a web service, publishing its functionality to the rest of the lab. SOA is essential to facilitate the communication between machines, due to the fact that it provides an abstraction on the type of the machine and how its functionality is implemented. The main difficulty of this TFG consists on grappling with the integration and coordination problems, being able to manage successfully the lifecycle of an experiment. For that, a benchmark has been made on the available open source tools. Finally Apache Camel has been chosen as a framework over which the tool defined in the TFG will be created. Apache Camel plays a fundamental role in this project, given that it establishes the connection layers to the different services and routes the suitable messages to each service, based on the received file’s content. For the prototype development a number of services that will allow it to perform demonstrations and concept tests have been deployed. Furthermore a preliminary version of the webapp has been developed. It will allow the laboratory operator managing petitions, to decide what protocol goes next as it executes the flow of the experiment’s tasks.
Resumo:
Este proyecto estudia los fundamentos y las técnicas de las pruebas de software. Veremos lo importante que pueden llegar a ser las pruebas, mostrando diferentes desastres causados por fallos en el software. También estudiaremos las diferentes herramientas que se utilizan para llevar a cabo la gestión, administración y ejecución de estas pruebas. Finalmente aplicaremos los conceptos estudiados mediante un caso práctico. Crearemos los casos de prueba funcionales basándonos en las especificaciones del protocolo MDB/ICP e instalaremos y aprenderemos cómo crear estos casos con una de las herramientas estudiadas en la parte teórica. ABSTRACT: This project studies the fundamentals and techniques of software testing. We will see how important the evidence showing different disasters caused by bugs in the software can become. We will also study the different tools used to carry out the management, administration and execution of these tests. Finally, we apply the concepts studied by a case study. We create test cases based on functional specifications MDB/ICP protocol We will install and learn how to create such cases by one of the tools studied in the theoretical part.
Resumo:
Este proyecto ha sido estructurado en tres bloques diferenciados que tiene como objetivo analizar el presente, pasado y futuro de la gestión de proyectos con una orientación clara a ofrecer apoyo a aquellas empresas que planeen realizar un giro en sus estructura de organización de trabajo hacia filosofías ágiles. La gestión de proyectos a acompañado al hombre desde el inicio de los tiempos, pero sin embargo no fue hasta nuestra historia más cercana cuando se comienza a tener conciencia de la necesidad de establecer aplicar métodos generales a la hora de afrontar proyectos de ingeniería. Pioneros fueron en este sentido personajes como Taylor, Fayol o Gantt, cuyas aportaciones iniciales posibilitaron el nacimiento de la gestión de proyectos a mediados del siglo XX. En las década sucesivas hasta nuestros días han aparecido un número considerable de metodologías, perfeccionando elementos anteriormente asimilados y adaptándose a la realidad tecnológica y social del momento. Este recorrido histórico se aborda en el primer bloque de este proyecto. Los puntos revisados en la introducción histórica proporcionan las bases de conocimiento para entender las principales características entre las grandes familias de metodologías que actualmente son implantadas en el mundo empresarial. Es precisamente este punto, el de la exposición y análisis de las metodologías más extendidas y contemporáneas a la elaboración de este proyecto, lo que se aborda en el segundo bloque. En él se desarrolla con intenso detalle dos metodologías de la familia de filosofías ágiles, elegidas entre las más extendidas en la industria: Scrum, eXtreme Programming (XP) y un híbrido de ambas. Para entender la dimensión del cambio filosófico en cuanto a la gestión de proyectos que emprenden estas metodologías, se hace necesario repasar cuales son las metodologías no ágiles más extendidas actualmente. Para ello se introducen metodologías como la llamada tradicional o PRINCE2, principalmente, ya que también se realiza un repaso más superficial por otras aproximaciones notables. El último bloque que construye el desenlace del proyecto, intenta responder a las cuestiones futuras relacionadas con la adopción de metodologías ágiles. Para ello se revisa los puntos más conflictivos a señalar en este proceso y se ofrecerán soluciones teóricas y prácticas para ayudar a las empresas en su fase de migración hacia filosofías de organización ágiles. Ya que toda empresa hoy en día debería tener un soporte tecnológico que ofrezca apoyo a su desarrollo empresarial, gran parte de la elaboración de este proyecto se ha dedicado a hacer un estudio comparativo de las actuales herramientas Open Source. Se han instalado y probado 25 herramientas para posteriormente seleccionar 3 que han sido analizadas en profundidad. Así mismo, se enumeran pros y contras de estas herramientas, aportando ideas de mejoras y trazando cuál debería ser su evolución para ofrecer una alternativa real a las herramientas comerciales orientadas a esta labor. Las empresas pueden utilizar este índice de herramientas de software para decidir si pueden sustentar su proceso de migración en una herramienta Open Source o si deben orientarse a herramientas comerciales o de creación propias. ABSTRACT. This project has been divided into three different blocks that aims to analyze the past, present and future of project management with a clear focus on providing support to those companies that are planning to make a shift in its organizational structure working towards agile philosophies . The project management has walked together with the humanity since the beginning of time , but it was on our recent history when it begins to become aware of the need to establish general methods to apply to engineering projects. There was pioneers like Taylor , Fayol or Gantt, whose contributions made possible the birth of project management in the mid- twentieth century. In the following decades, there was a considerable number of new methodologies, improving concepts and adapting then to the technological and social reality of the moment . This historical journey is addressed in the first block of this project. The different facts reviewed at the first block provide the knowledge to understand the key features among the most important families of methodologies that nowadays are implemented in the business world. It is precisely this point, the presentation and analysis of the most widespread methodologies what is addressed in the second block. Two of the most widespread agile methodologies are detailed: Scrum , eXtreme Programming ( XP ) and a hybrid of both . In order to understand the philosophical shift in terms of project management performed by these methodologies , it is necessary to review what are the most widespread no agile methodologies currently. For this purpose, methodologies like Waterfall or PRINCE2 are explained. Other no agile methodologies are explained as well, but not so deeply in comparison with them. The last section of this project is the conclusion, it tries to answer future questions related to the adoption of agile methodologies. For that reason, the most important milestones are reviewed to provide theoretical and practical solutions and answers to help companies in this migration process toward agile methodologies. Since every company should has a solid technical support for its business development, a considerably part of the time has been applied to make a comparative study of the existing Open Source tools. 25 tools have been installed and tested. Then, 3 tools has been selected to be analyzed deeply. Also, pros and cons of these tools have been exposed in order to suggest a roadmap to offer a real alternative to the existing commercial tools in this business area. The companies that are involved in a migration progress toward a agile methodology can used this study about the available Open Source tools to decide if they can afford the migration process based on one of them or if they should use a commercial tool or a tailor-made software.
Resumo:
Este proyecto fin de carrera tiene como finalidad el diseño y la implementación de un sistema de monitorización y gestión dinámica de redes de sensores y actuadores inalámbricos (Wireless Sensor and Actuator Networks – WSAN) en base a la información de configuración almacenada en una base de datos sobre la cual un motor de detección vigila posibles cambios. Este motor informará de los cambios a la herramienta de gestión y monitorización de la WSAN para que sean llevados a cabo en la red desplegada. Este trabajo se enmarca en otro más amplio cuya finalidad es la demostración de la posibilidad de reconfigurar dinámicamente una WSAN utilizando los mecanismos propios de las Líneas de Productos Software Dinámicos (DSPL, por sus siglas en inglés). Se ha diseñado e implementado el software que proporciona los métodos necesarios para la comunicación y actuación sobre la red de sensores y actuadores inalámbricos, además de permitir el control de cada uno de los dispositivos pertenecientes a dicha red y que los dispositivos se incorporen a dicha red de manera autónoma. El desarrollo y pruebas de este proyecto fin de carrera se ha realizado utilizando una máquina virtual sobre la que se ha configurado convenientemente una plataforma que incluye un emulador de red de sensores y actuadores de tecnología SunSpot (Solarium) y todas las herramientas de desarrollo y ejecución necesarias (entre ellas, SunSpot SDK 6.0 y NetBeans). Esta máquina virtual ejecuta un sistema operativo Unix (Ubuntu Server 12.4) y facilita el rápido despliegue de las herramientas implementadas así como la integración de las mismas en desarrollos más amplios. En esta memoria se describe todo el proceso de diseño e implementación del software desarrollado, las conclusiones obtenidas de su ejecución y una guía de usuario para su despliegue y manejo. ABSTRACT. The aim of this project is the design and implementation of a system to monitor and dynamically manage a wireless sensor and actuator network (WSAN) in consistence with the configuration information stored in a database whose changes are monitored by a so-called monitoring engine. This engine informs the management and monitoring tool about the changes, in order for these to be carried out on the deployed network. This project is a part of a broader one aimed at demonstrating the ability to dynamically reconfigure a WSAN using the mechanisms of the Dynamic Software Product Lines (DSPL). A software has been designed and implemented which provides the methods to communicate with and actuate on the WSAN. It also allows to control each of the devices, as well as their autonomous incorporation to the network. Development and testing of this project was done using a virtual machine that has a conveniently configured platform which includes a SunSpot technology WSAN emulator (Solarium) as well as all the necessary development and implementation tools (including SunSpot 6.0 SDK and NetBeans). This virtual machine runs a Unix (Ubuntu Server 12.4) operating system and makes it easy to rapidly deploy the implemented tools and to integrate them into broader developments. This document explains the whole process of designing and implementing the software, the conclusions of execution and a user's manual.
Resumo:
La propuesta del trabajo de fin de grado escogida por el autor del proyecto se basa en la continuación del proyecto comenzado durante la asignatura de Prácticum del pasado semestre. El nacimiento del mismo se gestó en una pequeña empresa de consultoría llamada ‘Grupo Develop’ (en la sección ‘Entidad colaboradora y ubicación’ se describe más detalladamente la organización) situada al este de Madrid, una organización con carácter de fundación y dedicada, esencialmente, al sector de la consultoría en el sector de la calidad. Grupo Develop necesitaba aprovechar la utilidad de las nuevas tecnologías para ofrecer un nuevo y mejor servicio para sus clientes mediante un proyecto que fuera dirigido y llevado a cabo por un ingeniero informático. Partiendo de este contexto se vislumbró un proyecto consistente en diseñar, desplegar, programar y mantener una plataforma-sistema informático capaz de ayudar a las organizaciones (en este caso particular la mayoría son organizaciones sin ánimo de lucro) a gestionarse mejor de acuerdo a distintos modelos de calidad como pueden ser el EFQM1 o ISO. Además, la certificación en ambos modelos son cada vez más demandados como garantía de calidad por organismos públicos y privados e incluso por los clientes. Por lo tanto, este programa debe llegar a ser una herramienta que realmente apoye a cada entidad a elaborar un diagnóstico de su gestión y, por supuesto, debe conseguir acercar a estas empresas a los certificados más prestigiosos. Desde el punto de vista de un profesional del sector de la informática, el proyecto se estructura de una forma clara en una arquitectura cliente-servidor clásica donde todas las entidades (de momento 15) han participado de forma activa y paralela al desarrollo del proyecto. Si bien es cierto que esto ha ralentizado notablemente el desarrollo del proyecto y ha requerido una sincronización entre dos proyectos paralelos (uno para el despliegue y otro para el desarrollo).---ABSTRACT---The proposal of my graduation work is a continuation of the project that I already started in the Practicum subject the first part of the academic year. The birth of that project arose in a small consulting firm (Grupo Develop) in the east of Madrid, an organization that at the same time is incorporated as a Foundation. This organization works with different NGO´s and their work covers the Quality Consulting Sector. Grupo Develop needed to use new technologies to give a new and best service to our customers through a project managed by a person trained in the computer science area. Starting from this context, Grupo Develop saw a new opportunity to create a project to design, deploy and maintain a platform-system that can help our customers (in this case the organizations are often organizations from the Third Sector) to get a best management in some Norms or Models like ISO or EFQM. Also in some cases the Certifications of any of these models are increasingly demanded as quality assurance by public entities, privates and even by clients. Therefore, this program should be a tool that helps to any organization to make a diagnosis of their management and, of course, should close to these companies to the most prestigious Certificates. From a point of view of a computer science student, the software project has a defined structure in a classic client-server model where all the organizations (15) have actively participated in parallel mode to the development of the project. It is true that the involvement of the organizations has slowed the development of the project so I had to create two projects (one for the different organizations and the other one to develop the major improvements).
Resumo:
El proyecto “Aplicación móvil y web para la gestión de lugares geolocalizados (www.midiez.com)” tiene como objetivo principal crear un repositorio de listas categorizadas de sitios para su uso en el ámbito personal o comercial. Tanto la aplicación web como la aplicación móvil desarrollada en Android tienen el propósito de gestionar listas de lugares de interés (Restaurantes, tiendas,..) o con propósitos específicos (Organización de viajes) o simplemente como una forma de anotar aquellos sitios que nos comentan y que nos gustaría visitar. El desarrollo de este proyecto además permitirá contrastar las distintas alternativas y la evolución de las distintas herramientas que se han ido desarrollando para la gestión del ocio en los últimos años desde el sistema Android y plataformas web. Todo el proyecto ha sido realizado usando software libre (PHP para el lenguaje web servidor y Java para la programación móvil). La principal finalidad desde el punto de vista del desarrollador es: aprovechar las sinergias de la programación móvil y la programación web de manera que las mismas capas de negocio de Datos sean usadas por ambas plataformas. Asimismo crear una aplicación distribuida y fácilmente escalable. Las herramientas que se han usado para desarrollar han sido: la SDK proporcionada por Google, una JDK de Java y un IDE de desarrollo Java como es Eclipse y otro similar para el desarrollo de la parte PHP. La BBDD elegida ha sido MySQL. El proyecto pretende mostrar el potencial de las aplicaciones móviles geolocalizadas desde el punto de vista del ocio y compararlas con el estado del arte actual. Por lo tanto la mayor parte del tiempo dedicado al proyecto ha sido empleado en el desarrollo de la aplicación web, la aplicación móvil y en la base de datos pero también he dedicado una pequeña parte del trabajo para realizar un estudio sobre las consecuencias que esta tecnología está teniendo en nuestros cerebros. ABSTRACT The project "Web and Mobile App for managing geolocation places” has as main objective managing of places lists in order to use them in the leisure time scope. Nowadays the use of GPS is being a constant in mobile applications so that is already part of our daily life. We used to know where we are always and at the same time we can find locations using the technology of our mobile phones. Now it is very difficult to get lost outside but also is difficult to explain somebody how to get to anywhere without using Google Maps. Google Maps, Geolocation, gps navigators, … all that kind of stuff are making our life easier and less complicated but also are making our brains lazier. Furthermore, the development of this project will use the potential of locate places into maps to avoid annotate every spot we would like to visit or a brand new restaurant. The project itself shows the location features of Google Maps combined with an places data base in order to create, and manage places lists and use them to get to them as well as to share those places with our contacts. Also, the main purpose from the point of view of the developer is to combine different programming languages and use the resulting synergies in a easily scalable and portable environment. The tools that have been used to develop are: the SDK provided by Google, one JDK Java and Java development IDE such as Eclipse and similar to the development of the PHP part. The DB has been chosen MySQL. Finally, this project aims to show, from an educational point of view, the use and potential of this technology. Thus, it has been devoted a large amount of time of the project (and, consequently, its documentation) on develop the Android app, the data base and the web app but also but also to highlight the consequences of using technology.