It is easier than ever to provide packaged products and services, and consequently consumers are presented with an overwhelming array of brands, offers, and opportunities. The objective of profiling and personalization is to provide the best possible set of services to a user. The better the personalization, the more likely the user is to be highly satisfied. Profiling is the process of collecting, aggregating, and analyzing information so that personalization logic can be implemented. Personalization can range from very simple things like interface customization based on frequently used applications to much more sophisticated systems, like intelligent agents that deliver information a user is interested in.
The goal of this chapter is to analyze what exactly is meant by personalization and profiling, and how to build a technical architecture for personalization. Figure 7.1 illustrates where the personalization engine fits into our mobile location services architecture. Our discussion includes the important privacy issues that are raised by profiling, and some of the technologies such as P3P and Microsoft .NET that provide possible solutions.