Behaviour modelling and transformations for context-aware mobile applications
Laura Daniele · 2011
Today"s panorama of service offerings is characterised by the widespread diffusion of the Internet and Web-based technologies everywhere in society.We are surrounded by devices that can support us in several tasks of our every-day life, like, for example, e-readers to access books and magazines, or mobile phones with extremely intuitive user interfaces for browsing, checking emails, keeping in touch with colleagues and friends through social networks, finding maps and locations, and so on.Moreover, this daily experience would not be possible without ultra-fast networks and wireless technologies that allow us to exchange any kind of data, anywhere, in real time and at low-cost.In this panorama, it becomes of vital importance for service providers to offer services that are innovative and distinctive.On one hand, service providers have to preserve current customers and attract new ones in order to survive in an ever growing arena of competitors.On the other hand, service users become more and more aware of the opportunities offered by the evolving technologies and, consequently, more demanding and with stronger expectations than in the past.Therefore, users expect a profusion of services wherever they are, to support whatever they are doing, and according to their personal preferences and needs, while providers have to create a wide range of enriched services in a rapid, low-cost and user-centric way.This thesis proposes a layered methodology based on behaviour modelling and transformations for the development of context-aware mobile applications, which are distributed applications that can provide advanced and personalised services to their users.Currently available approaches, such as Service-Oriented Architecture (SOA) and Model-Driven Architecture (MDA), are used in this thesis to support such a methodology.The main objective is to progress the state-of-the-art in model-driven development of contextaware mobile applications by taking into account the behaviour of these applications already in early stages of the development process.In order to achieve this, we refine the application behaviour in several steps, from II ABSTRACT abstract specifications to final implementations, and develop automated model transformations throughout these refinement steps to generate executable models and reason about their behavioural correctness.ACKNOWLEDGEMENTS V much influenced by our "Latin" culture), many thanks for your support and friendship in these years!The ASNA dismissal was a big disappointment and, for some time, we did not know what would happen with us.Later, Luis, Eduardo, Luiz Olavo and I moved to the SE group and, fortunately, we managed to find our place there.I would like to thank the colleagues of the SE group for helping us in the integration process.Especially, I would like to thank Ismenia, Ivan, and Arda.Ismenia, I enjoyed very much talking to you, sharing opinions and exchanging experiences.Ivan, our part of the corridor was a lot of fun because of you!Thanks for the many conversations about research, traditions and politics in our countries (how many jokes about Berlusconi I had to take in these years!), and cats (Ciccio Maria thanks you for becoming the most famous cat from Sardinia!).Arda, in this last year, when staying at the university until late for writing my thesis, I had the opportunity to know you better.Thank you for our chats in the dark evenings and, above all, thank you for cheering me up in the worst and most desperate moment of my writing.I also would like to express my gratitude to our secretary Jeanette, extremely helpful concerning bureaucratic issues, and always sensitive to our personal problems.Thanks also to