Exploring Different Use Cases for a Rich Con- text Model for Mobile Applications Alisa Sotsenko (Supervised by Prof. Marc Jansen) Linnaeus University, Department of Media Technology, Växjö, Sweden alisa.sotsenko@lnu.se Abstract. Substantial research in the field of context modeling has explored aspects related to the use of contextualization in various mobile scenarios. The current context of a mobile user has been often limited to his/her current position, neglecting the possibilities offered by modern mobile devices of providing a much richer representation of the current user’s context. This research aims to improve the usability of users’ context in the mobile software development process. Therefore, this paper presents the proposal of a rich context model (RCM) as general approach for context modeling to explore the context of the users in different application do- mains. Keywords: Context modeling, rich context model, contextualized mobile applications. 1 Introduction Modern mobile devices provide a profound set of sensors and, together with internet connectivity, rich possibilities to present the information with respect to the users’ current needs, independently of time and space (anywhere and anytime). The context of the user plays an important role in providing personalized services and has consid- erable impact on users’ decision making. Considering a rich context information helps to understand many user characteristics (e.g., what the user is going to do, what the user needs to perform his/her current action, etc.) and to recommend a relevant con- tent/information to the user in the right time and place. The contextualization of mo- bile users can enhance many of existing services and mobile applications by making them sensible to the users’ current situation. Currently on the Android Marketplace, more than 500 mobile applications were found, that belong to category of personaliza- tion. The most popular and used mobile application is Personalized Launcher that provides for users e.g., defining their custom gestures, actions for swiping on app shortcuts, hide/show the most used/unused mobile apps, smart home screens, personal privacy settings and more. However, current existing solutions consider limited num- ber of context information (e.g., current user GPS location, weather information) and provide context-modeling techniques that mostly target a specific application domain. Therefore, we believe that with better understanding of the users’ current context the mobile app can better serve specific user needs. Modern mobile devices provide pos- sibilities to gather the context information from different mobile sensors, external sensors connected to the mobile device via Bluetooth, smartwatch sensors, activity tracker bands, and to extend/enrich all of this data by using additional Web Service APIs. In our research, we define the rich context as: “Any information that describes a situation of the user, not only received from dif- ferent mobile sensors, which could be extended by additional Web Services, but which also derives/use a meaningful interpretation of this information for the cur- rent user need.” The main purpose of this research is to design and explore the applicability and reusability of a rich context model (RCM) in different application domains. This will lead to the development of a general context model and deploy it as cloud-based Con- textualized Service that enables software developers to easily and fast develop contex- tualized mobile applications. In contrast to existing approaches, our approach will improve the applicability of the context modeling techniques in the development of personalized mobile applications, preventing re-coding and re-designing a new con- text model again and again depending on the application domain. Instead of this, the developers should know just the target users, what the app should do and which con- text data is needed to provide the best recommendations for the target users. The remaining part of the paper is organized as follows. Section 2 overviews relat- ed work and defines the open problem and issues in the related research domain. In Section 3, we define the research questions and present the research goal with objec- tives. In Section 4, we describe the research methodology and the proposed approach. Section 5 presents the current stage of our research and results achieved so far. Final- ly, Section 6 concludes with plans for further research. 2 Related Work Up to now, a number of approaches and techniques have been developed and intro- duced for context modeling. Many studies show their benefits and applicability in different application domains [1, 2]. In the following sub-sections 2.1 and 2.2, we describe the most recent and used approaches for context modeling together with context-aware frameworks for developing contextualized mobile applications. 2.1 Context modeling approaches Recent used approaches to context modeling can be broadly classified into three main categories. Multidimensional context modeling approach. This is one of the first approach- es proposed in [3–5] for generalized context modeling. The idea of this approach is to make a decision to which context situation the entity is most relevant/similar. In this approach, different context situations are represented as individual examples in multi- dimensional space, and it classifies the entities based on their similarity to these ex- amples. Similarity is a decreasing function of their distance in a space [3]. Classical examples of these models are the context space model (CSM) [6] and vector space model (VSM) [7]. CSM uses the concepts from geometrical spaces: a context state and a situation space. The context state refers to the current state of the entity being mod- elled at a certain time based on the contextual information, and the situation space represents a real-life situation based on a collection of context states during a certain period of time. This modeling approach showed good practical usage examples in developing context-aware mobile applications [8, 9], automatic anomalous human behaviour detection [6], and Information Retrieval in context [10]. VSM measures the similarities between the vector of the current context of an entity and the vectors of different context situations that are represented in multidimensional vector space. This approach is practically useful for modeling n-dimensions of context information and finds similarity even when some context information is missing or not full. Addition- ally, it has ability to represent the characteristics of the context at different levels of detail. The more we know about the context of a situation, the better we can describe user behaviour [2]. The main advantage of multidimensional approaches is a general and unifying approach to model context for different application domains and enables to match users’ context in real time. Object-role based models. This modeling approach was adopted from the data- base modeling field [11]. Here, the context model language based on ORM was de- veloped to support object-role context modeling. Simple examples of such approach are ContextUML [12], based on UML for development context–aware Web Services, MLContext [13], based on Domain Specific Language (DSL) that provides high level of abstraction and possibility to reuse context models in different application do- mains. Ontology-based models. This approach has been widely used in modeling of complex context situations. Using ontologies provides a uniform way for specifying the model’s core concepts as well as an arbitrary amount of sub-concepts and facts, altogether enabling contextual knowledge sharing and reuse in an ubiquitous compu- ting system [14]. This can lead to growing complexity for certain kind of applications [1] Usually the mobile software developer does not have knowledge in Semantic Web and ontology based principles and concepts. Since most of the existing ontology- based models require some additional changes in the core model in order to adapt and customize it for specific application domain, it reduces the practical applicability of this models in mobile application development. The analyses of context modeling approaches and survey results [15] show that there is not yet a common solution for a general context model and that the context model should be chosen depending on the target application domain. 2.2 Frameworks for contextualized mobile application development During the literature review, we have found that most of existing frameworks provide personalization rather then contextualization for mobile applications. The difference between these two concepts is that personalization1 based on the user’s behaviour and device/application usage provides recommendation to suit personal user preferences. Examples of personalization can be offering services or products based on the user’s search history, earlier purchase or favourite items (e.g., book author, movie director), and adapting a user interface based on the user’s history of interactions with mobile applications [16]. On the other hand, contextualization2 aims to utilize sensors and technology to understand the current context of the user in order to better serve a spe- cific user need. In the literature, the six-layer enterprise framework architecture [17] was proposed to support personalization and contextualization for mobile application development. To the best of our knowledge, there is not yet a framework/SDK/Web Service that can provide development of contextualized mobile applications. Based on the survey [15] of existing context-aware frameworks shows that the mobile application developers should re-adapt the implemented context model to an application domain or define a new context model. This reduces the usability of the context models in practice of developing contextualized mobile applications. We propose an approach that uses the general concepts introduced in the multi- dimensional approach for context modeling and use its flexibility to improve the ex- isting context models. 3 Research Questions and Objectives Many researchers have been working on developing a general solution for context modeling. However, a major problem with this kind of models is limited usability due to their applicability for a specific application domain. Most of them require addition- al changes in the core model that takes time, effort and knowledge of a framework that can be time consuming for software developers. In the purpose of solving this problem, we need to answer the following research questions: - How can we model the context in a scenario independent way for mobile ap- plications? - How can this context model be used/adapted for a specific mobile scenario? - What kind of personalized features can be provided by the contextualization approach in order to improve existing mobile services and applications? Based on the research questions, the main and primarily objectives of our work are: - to empirically investigate the modeling of different context data during the con- text model design - to develop a prototype to discover an abstract representation of the context model - to evaluate the proposed context model in several user studies in different appli- cation domains - to identify the contextualized features for mobile applications 1 https://www.techopedia.com/definition/14712/personalization 2 https://www.wordnik.com/words/contextualization 4 Research Methodology The primary research approach adopted to perform this work is based on the design science research methodology (DSRM) proposed in [18]. This model showed good practice in understanding and development of software applications. The methodolo- gy consists of six main activities, which are iterated and shown in Fig. 1. Fig. 1 The DSRM process model used in our approach The problem identification, motivation and definition of the objectives have been described in the previous sections. The next sub-sections describe the details of each activity and what was done in the first iteration. The current action is highlighted in the Figure 1 and described in sub-section 4.1. 4.1 Design and development This step consists of designing our approach for context modeling and building an artifact of RCM. In the first iteration, the main objective was to define an approach with certain abstraction for modeling and organizing the context information inde- pendently from the scenario point of view. Here, we perform several actions shown in Figure 2. Fig. 2 An overview of actions preformed for designing of RCM We took as basis a multidimensional approach for context modeling and in partic- ularly the multi-dimensional vector space model (MVSM) [19]. In the first action we defined which sources of context information should be used in our first prototype. The defined sources are: mobile sensors and to extend this information, the Web Ser- vice APIs (e.g., Google Places API, Weather API, Tomtom API, QRCodeReader API) were used. After defining of Context Sources, we have analysed the data types and data structures of these contextual information. The context data have different data types (e.g., boolean, string, integer, float) and data structures (e.g., array of hob- bies), therefore our approach should know how to handle these data in an efficient way. Based on the defined context data types and structures, we identified the prima- ry data processing algorithms that are a combination of different similarity metrics (e.g., Jaccard distance for Boolean values, Euclidean distance for numerical values). The output of the defined algorithms is an input for the Suggestion Making action, where we provided an approach that makes a suggestion based on the outputs of data processing algorithms. Here, first we did scaling and normalization of values and used cosine distance to measure similarity. After each performed study, the first three actions are iterated to improve the con- text model (e.g., make it more abstract, add/replace data processing algorithms) that should lead to providing better suggestions/recommendation results. 4.2 Demonstration and evaluation In the first iteration, the first prototype was developed using the jQueryMobile framework with the Cordova API for mobile application and the NodeJs framework for implementing our contextualization approach. To demonstrate and test the proto- type, we performed two studies in mobile learning and people-to-people recommen- dation domains. The obtained results were published in two scientific conferences [20, 21], and proved the possibility to reuse the context model in various application domains. The evaluation is carried out using adopted TAM questionnaires in particularly Perceived Usefulness and Perceived Ease of Use. In the first study [20] we investigat- ed the potential benefits of using the contextualization approach for mobile applica- tion compared to an ordinary (without contextualization) mobile application and its usability. In the second study [21], we investigated the flexibility of our contextual- ization approach in terms of handling different data types and priorities of contextual information. Currently, we are developing a second prototype of our contextualization ap- proach. Here, firstly we went through Design and Development action to apply new changes that were defined after the first two studies. Secondly, we target to deploy the second prototype as a service in the cloud environment and evaluate it in several ap- plication domains. The validation of proposed RCM is carried out using defined metrics and charac- teristics introduced in study [15]. 4.4 Communication The identified problem and the proposed artifact are communicated to researches through several publications at conferences. Our first paper was published at mLearn conference [19], in which we described the mathematical foundation of our approach. In the second paper, published at ICCE 2014 [20], we defined the benefits of using our contextualized approach for m-learning applications. In the following paper [21], we defined an approach of handling different data types and priorities of contextual information. Two book chapters on the same research domain are under press status [22, 23]. In the first book chapter [22], we discussed the contextualization of mobile learners, and in [23] we discuss the benefits of using cloud-based mobile applications in the m-learning domain and propose the flexible and contextualized service to sup- port contextualization in m-learning applications. As this is work in progress, we aim to publish a journal paper to communicate the new results that will be obtained from the second prototype. 5 Potential Contributions The main contribution of this research work is an approach for the development of contextualized mobile applications. In contrast to the existing approaches, our ap- proach has flexibility gained through an abstract context model that could be applied to different application domains without the need for a change in the core context model. Our approach suggests a new contextualization service that provides possibil- ity to develop highly personalized mobile applications. With the employment of our approach, mobile software developers will be able to easily develop contextualized mobile applications for their target users and may raise the number of satisfied users hopefully leading to the increase number of potential users. 6 Future Work Further research will be more focusing on defining the features that our contextualiza- tion approach can provide. It will include analyses of already existing contextualized features of personalized mobile apps in the market place, gathering main requirements for developing personalized mobile apps from several mobile software developers, the development of Contextualization Service, evaluation in different application do- mains, and validation. This plan will help to answer the second and third research question of this work. The expected results are the classification of features and po- tentially of creating customized mobile app features for different application domains and users. References 1. Nayak, D., Ramaswamy, S.: A Multi-level Contextualization Framework for Authentication of Mobile Payment Applications. (2012). 2. Palmisano, C., Tuzhilin, A., Gorgoglione, M.: Using context to improve predictive modeling of customers in personalization applications. IEEE Trans. Knowl. Data Eng. 20, 1535–1549 (2008). 3. Nosofsky, R.M.: The generalized context model: An exemplar model of classification. Form. approaches Categ. 18–39 (2011). 4. Adomavicius, G., Tuzhilin, A., Sen, S.: Incorporating Contextual Information in Recommender Systems Using a Multidimensional Approach. ACM Trans. Inf. Syst. 23, 103–145 (2005). 5. Vanpaemel, W.: BayesGCM: Software for Bayesian inference with the generalized context model. Behav. Res. Methods. 41, 1111–1120 (2009). 6. Wiliem, A., Madasu, V., Boles, W., Yarlagadda, P.: A Context Space Model for Detecting Anomalous Behaviour in Video Surveillance. 2012 Ninth Int. Conf. Inf. Technol. - New Gener. 18–24 (2012). 7. Nakanishi, T.: Semantic Context-Dependent Weighting for Vector Space Model. 2014 IEEE Int. Conf. Semant. Comput. 262–266 (2014). 8. Mitra, K., Zaslavsky, a, Ahlund, C.: Context-Aware QoE Modeling, Measurement and Prediction in Mobile Computing Systems. Mob. Comput. IEEE Trans. 14, 1 (2014). 9. Padovitz, A., Loke, S., Zaslavsky, A.: An approach to data fusion for context awareness. … Using Context. 353–367 (2005). 10. Massimo Melucci: Context modeling and discovery using vector space bases. Proc. 14th ACM Int. Conf. Inf. Knowl. Manag. 808–815 (2005). 11. Henricksen, K., Indulska, J., McFadden, T.: Modeling Context Information with {ORM}. Move to Meaningful Internet Syst. 626–635 (2005). 12. Sheng, Q.Z., Benatallah, B.: ContextUML: a UML-based modeling language for model-driven development of context-aware Web services. Int. Conf. Mob. Bus. 206– 212 (2005). 13. Hoyos, J.R., García-Molina, J., Botía, J. a.: A domain-specific language for context modeling in context-aware systems. J. Syst. Softw. 86, 2890–2905 (2013). 14. Strang, T., Linnhoff-Popien, C.: A Context Modeling Survey. Graph. Models. Workshop o, 1–8 (2004). 15. Bolchini, C., Curino, C. a., Quintarelli, E., Schreiber, F. a., Tanca, L.: A data-oriented survey of context models. ACM SIGMOD Rec. 36, 19 (2007). 16. Nivethika, M., Vithiya, I., Anntharshika, S., Deegalla, S.: Personalized and adaptive user interface framework for mobile application. 2013 Int. Conf. Adv. Comput. Commun. Informatics. 1913–1918 (2013). 17. Unhelkar, B., Murugesan, S.: The enterprise mobile applications development framework. IT Prof. 12, 33–39 (2010). 18. Vaishnavi, V., Kuechler, B.: Design Science Research in Information Systems Overview of Design Science Research. Ais. 45 (2004). 19. Sotsenko, A., Jansen, M., Milrad, M.: About the contextualization of learning objects in mobile learning settings. In: 12th World Conference on Mobile and Contextual Learning (mLearn 2013). pp. 67–70 (2013). 20. Sotsenko, A., Jansen, M., Milrad, M.: Implementing and Validating a Mobile Learning Scenario Using Contextualized Learning Objects. In: The 22nd International Conference on Computers in Education (ICCE), Nara, Japan. pp. 522–527 (2014). 21. Sotsenko, A., Jansen, M., Milrad, M.: Using a Rich Context Model for People-to- People Recommendation. 3rd Int. Conf. Futur. Internet Things Cloud. 703–708 (2015). 22. Sotsenko, A., Zbick, J., Jansen, M., Milrad, M.: Contextualization of Mobile Learners. In: Mohamed Hamada (ed.) Mobile Learning: Trends, Attitudes and Effectiveness. pp. 39–54. Nova Science Publisher (2015). 23. Sotsenko, A., Zbick, J., Jansen, M., Milrad, M.: Flexible and Contextualized Cloud Applications for Mobile Learning Scenarios. In: Alejandro Peña Ayala (ed.) Mobile, Ubiquitous, and Pervasive Learning. Springer International Publishing (2016).