Social awareness applications or services are intended to handle remote communication by providing, automatically or in a supervised manner, hints about people’s current state or situation, or building a perception of the activities of interacting people. Among the popular, commercial services are those assuring users’ data privacy. With the increasing number of social networks and the expansion of smart mobile devices, the access of these networks is growing, and the need to ease and manage processing of social networking information is understandable. The proliferation of applications manipulating social information might demand a more systematized framework and at the same time software tools to facilitate the development of such an application. On the other hand, digital communications, or social networking, in fact the automation of social interactions, “is blamed for increasingly contributing to social isolation.” The book is about the development of socially aware systems and applications, a very thorny and possibly scary topic.
The authors present a strategy to perform important steps to realize a socially aware system: social data acquisition, social information processing, modeling, and managing. Moreover, they present an integrated set of instruments, the so-called SocioPlatform, to assist developers in realizing complex socially aware applications by hiding much of the burden of deploying, acquiring, inferring, and managing social data.
The book contains three parts and is organized as follows: The first part of the book contains three introductory chapters, presenting a problem definition, related work, and two scenarios of socially aware applications, thus anticipating the adopted strategy.
Part 2 (chapters 4, 5, and 6) presents modeling issues and the underlying techniques, concerning different types of social context data and interactions, and inferring, representing a framework for the development of applications.
Part 3 presents the SocioPlatform environment to support programmers in realizing upper-level applications. This part presents the two applications from the perspective of the SocioPlatform user and the application user.
The material brings into focus two types of application scenarios (the data-centric and the interaction-centric prototypes), and the authors present and analyze examples of latter-day technology applications of each type. The first is a (smart) phone call scenario that proposes adequate performance depending on the caller’s social relationship with the callee, and the situation of the callee, while maintaining the callee’s privacy. The second type of application is illustrated by a scenario for a cooperative convoy taking a long journey in more complex conditions. It is an adaptive application that should handle a broad range of situations in the context of given social relationships between the involved team members, agreements, and constraints concerning the involved cars or other changing travel conditions.
The book starts with the problem definition of pervasive computing in the larger area of “context awareness.” Pervasive social computing is derived from social networking, social media, and social signal processing and takes advantage of the social relationships as social context. The introductory chapter investigates a number of social context concept definitions, including different philological definitions. As a conclusion, social context is identified as a specific type of the wider physical context, and should benefit from the theoretical framework built around physical context management. Social context information and the social context are embodied by social roles, social relationships, social interaction, and situations.
These applications might perform dynamically and are based on several types of social information such as social role, social relationship, social interaction, and situations.
The main aspects to be covered by socially aware systems should be modeling of social context information and social interactions, reasoning or inferring new facts from the existing information, and a management of social information, for instance by adaptation. The identified challenge is the lack of social context modeling means, concerning social relationship modeling, by acquiring social information and inferring meaningful data.
The central chapters detail three requisite facets of the social context-aware concepts: social context modeling, reasoning, and management. A chapter is allotted to the ontology-based context models. A comparative study evaluates the existing context modeling approaches, according to a set of criteria. The analysis indicates the ontological models as most advantageous, according to the investigated features, among them level of formalism, the balance between richness and quality of the acquired information. The authors analyze the more specific class of social context modeling based on ontology as part of the broader class of context modeling. An ontology-based approach is adopted for modeling different facets of social information. Ontologies are adopted for their ability to furnish a standard set of concepts and terminology, for representing domain knowledge and semantic relationships of social information, and even a reasoning engine operating with a set of formal logic rules. The chapter presents a set of languages dedicated to ontology, most capable of describing and coping with social context concepts such as social relationships and social roles. The OWL-DL language is assumed for practical design and implementation of the social context information. It benefits from an object-oriented paradigm allowing class hierarchies, inheritance, or encapsulation, useful to shape concepts, semantics, and properties. This chapter discusses modeling of several aspects such as situation and reasoning. For modeling issues, the work adopts a subset of the OWL-DL language. The modeling scheme includes two levels: the more abstract, upper ontology layer social context ontology, and the domain-specific layer. The solution proposes a social context ontology (SCOnto) scheme to incorporate definitions of social role, social relationships, social interaction, and situations, taking into account existing ontologies, such as friend of a friend (FOAF). As expected, the domain-specific ontology specializes the upper ontology to suit the considered application (by specifying the social role, family role, work role and so on, or the social relationship, which might concern, for instance, student-academic staff relations if an educational organization is considered).
Another component of socially aware applications is social context reasoning. It allows inferring the latent roles or relationships, those that are not explicitly stated. The social context reasoning chapter identifies the aspects associated with the reasoning process as structure and property, which allow inferring social relationships from social roles, trust properties, time-stamp, and temporal correlation abstraction. The specification-based techniques developed as an OWL-DL model are adopted for reasoning tasks involving deriving, deducing, inferring, and abstracting; domain knowledge furnishes rules to be applied by the reasoning engine.
The approach introduces some original elements by taking into account users’ interaction events, or combining semantic and temporal aspects. The interactions concern the constrictions or obligations of the interacting people, depending on their roles, or their electronic conversation or messaging. Situations concern, for instance, the individual’s status.
A specialized ontology IntEO has been developed to get events in different platforms. The OWL-DL language is again assumed for practical implementation for its key tool, the DL reasoner, meant to carry on the constraint checking process. This chapter, chapter 5, presents examples to derive relationships, deduce situations such as business/non-business involving situation ontology, and time-stamp concepts or abstract situations. (Although it concerns examples deriving situation and is conceivable and useful, I am skeptical about deducing true friendship relations from online resources; I would rather call these relations acquaintances, or contacts.)
Chapter 6, concerning social context management modeling, discusses three special aspects. The first one is a model providing access control to social, possibly private information, called SACOnto, which is derived from SCOnto, and is meant to decide whether certain resources are accessible and in what degree. Some examples are presented to practically illustrate how privacy policies are derived and how possible inconsistencies are identified. The second part specifies the social interaction modeling issues and illustrates them using the cooperative convoy application. The authors use and extend an organizational structure of dynamically interacting roles, ROAD, to define two different stages of social interactions modeling: domain-centric and player-centric, defined at distinct management and functional levels. The third aspect is how these models interact inside an adaptive, dynamic application, and it emphasizes the ability to keep consistency throughout this cross-model adaptation.
The SIM architecture includes two main modules working at two different levels: the functional level and the management level. At the functional level, the model execution module is responsible for the representation of domain-centric (DSIM) or player-centric (PSIM) social information at the management level by handling requests received from the application, evaluating conditions and relevant roles, or sending requests to relevant social roles and players. The management module i(MM) is in charge of state management, adaptation, and cross adaptation issues to cope with users’ new situations or requirements, and involves several algorithms to evaluate, acquire, relinquish, or update social roles. The complex implementation aspects take into account the fact that the implementation runtime environment must be independent of the deployment environment so that the product is reusable no matter the environment. An important feature is the design and implementation of a web-based tool, SIM Builder, meant for software engineers to generate DSIM and PSIM models from social context information. The implementation matters are discussed and explained in the last sections of the chapter.
The next chapter describes the two applications implemented using the SocioPlatform system, from the software architect perspective and from the user’s perspective. The first application, called SPCell, is a mobile phone application to handle incoming phone call interruptions by taking into account callee status and relationship with the caller. Besides the design and implementation issues, chapter 8 also presents use scenarios. Of course, the presentation is very interesting, but it would be more interesting to see the products at work. The SPCell scenario seems a bit imperfect: what happens if the caller is neither a friend nor a colleague, or the caller is a friend or family member and has to communicate an urgent or critical matter in the middle of the meeting? The second application, SocioTelematics, is intended to supervise a car convoy while running a long journey, where team members’ interactions, agreements, and obligations are the basis of the software. This is a much more complex application; this chapter describes several special technical aspects, and the presentation becomes a bit burdensome.
Chapter 9 evaluates SocioPlatform and the above applications against some benchmark products, especially in terms of resource consumption or time of execution. This section is very interesting, but an evaluation of the quality of the social material or the inferred information might also have been considered and tested.
The book is well organized and nicely illustrated: it contains flowcharts, schemes, and screenshots of the software products. The last part of the book contains detailed listings of implemented entities. It also invokes several algorithms, some of which are presented and some that are not. Unfortunately, it does not contain an index of the important concepts or abbreviations used throughout the text. It is a useful piece of work, especially for programmers or academics who are interested in either a theoretical or practical point of view of socially aware systems. It is an accomplished and valuable monograph of socially aware systems.