  The growing of cities has resulted in innumerable technical and managerial
challenges for public administrators such as energy consumption, pollution,
urban mobility and even supervision of private and public spaces in an
appropriate way. Urban Computing emerges as a promising paradigm to solve such
challenges, through the extraction of knowledge, from a large amount of
heterogeneous data existing in urban space. Moreover, Urban Computing
correlates urban sensing, data management, and analysis to provide services
that have the potential to improve the quality of life of the citizens of large
urban centers. Consider this context, this chapter aims to present the
fundamentals of Urban Computing and the steps necessary to develop an
application in this area. To achieve this goal, the following questions will be
investigated, namely: (i) What are the main research problems of Urban
Computing?; (ii) What are the technological challenges for the implementation
of services in Urban Computing?; (iii) What are the main methodologies used for
the development of services in Urban Computing?; and (iv) What are the
representative applications in this field?
