1.3 New Internet Technologies
As new devices are connected to the Internet, the number of users will explode. As a result, the number of business opportunities will increase rapidly.
Pervasive computing technologies do more than connect these devices to the In-ternet. Not only can users view content through their WAP phone, but domestic devices, consumer electronics, and other devices, such as cars and planes, can access specialized services and provide services to other devices and users. Pervasive computing creates a universal network that will include business models such as m-commerce and home networks. It is the basis for the next generation of the Internet.
More and more devices contain computer chips and pervade every fabric of life. The concepts are not new; in the early nineties, many companies created visions of this future. The extension of the existing Internet is also often called the universal network.
A few years ago, Sun,9 Oracle,10 and a few others developed the network computer, which basically consists of a screen, a keyboard, and some memory. Applications and processing power were requested over the network as needed. Even files were saved on the Internet. By implemention of this paradigm, the existing hardware could be replaced by a newer generation that would be much cheaper and much easier to administer and configure. These technical tasks would be done by a system administrator who took care of hundreds of computers. If you look at the underlying paradigm, you can easily see it as a predecessor to the universal network.
1.3.1 Application Service Providers
The vision of the network computer was regarded as the end of the personal computer, but flaws in the concept prevented the network computer from really taking off. However, several ideas have been enhanced and introduced into the universal network. The basic idea of connecting less powerful devices to the In-ternet has been extended to noncomputer devices, such as mobile phones. More and more applications are now available through application service providers (ASP). One of the first applications, e-mail, has now become one of the most used applications on the Web, and it is now also possible to use Microsoft Word or SAP R/3 over the Web. By using a service instead of installing the software, the user does not have to pay a fee before using the software and does not need to buy the necessary infrastructure. In the ASP model, billing is done according to the pay-per-use model. The more often users connect to the ASP and use its applications, the more they have to pay.
The advantage is that the software and the infrastructure are controlled in a central environment; as soon as the software is updated, every user of the service can use it without having to install new versions of the software locally. As more and more nontechnical people use computers, this paradigm becomes more important. For complex software such as SAP R/3, the cost for the infrastructure can be very high, meaning that a company has to invest several million dollars or euros into the software, hardware, and network. Installation of a new version is also a major hassle. By outsourcing these applications, companies can focus on their core competencies. Today's ASPs are not yet compatible with the universal network, but they are the first step toward a truly networked business environment.
The major problem of ASPs today is to make the software network-friendly. Most software written today is not ready for the ASP model. Microsoft Word and SAP R/3, for example, need additional software wrappers to allow remote use of the software. The new technologies and programming paradigms will help to resolve this issue.
The vision of pervasive computing to interconnect all people by a globally integrated, ubiquitous network promises greater empowerment for the individual. Yet realizing such a vision requires the implementation of new technologies that, up until now, were merely visionary. Recent advancements in pervasive computing technologies promise the arrival of a new era in ubiquitous computing, marked by the emergence of high-speed, multilayer, in-home networks that will integrate traditional home automation and control technologies with real-time, media-rich applications like voice and video conferencing. Most importantly, these new technologies also involve new deployment strategies that will bring broadband internetworking applications to the domestic mass market.
Pervasive computing gives us tools to manage information easily. Information is the new currency of the global economy. We increasingly rely on the electronic creation, storage, and transmittal of personal, financial, and other confidential information, and we demand the highest security for all these transactions. We require complete access to time-sensitive data, regardless of physical location. We expect devicesPDAs, mobile phones, office PCs, and home entertainment systemsto access that information and work together in one seamless, integrated system. Pervasive computing can help us manage information quickly, efficiently, and effortlessly.
Pervasive computing aims to enable people to accomplish an increasing number of personal and professional transactions by using a new class of intelligent and portable devices. It gives people convenient access to relevant information stored on powerful networks, allowing them to easily take action anytime, anywhere.
These new intelligent appliances, or "smart devices," are embedded with microprocessors that allow users to plug in to intelligent networks and gain direct, simple, and secure access to both relevant information and services. These devices are as simple to use as calculators, telephones, or kitchen toasters.
Pervasive computing simplifies life by combining open-standards-based applications with everyday activities. It removes the complexity of new technologies, enables people to be more efficient in their work, and leaves more leisure time. Computing is no longer a discrete activity bound to a desktop; pervasive computing is fast becoming a part of everyday life.
Pervasive Computing Summary
Pervasive computing means many things to many people. Here is a short definition of all it encompasses.
Invisible devices - Numerous, casually accessible, often invisible computing devices
Embedded microchips - Microchip intelligence embedded into everyday devices and objects
Always on - Access to information, entertainment, and communication with anyone, anytime, anywhere
Ubiquitous network - Everyone and everything connected to an increasingly ubiquitous network structure
Life-enhancing applications - Invisible penetration of technology into the mainstream mass market through a variety of life-enhancing applications
Consumer-centric solutions - Device "gadgetry" for simple and practical consumer-centric solutions
Increasing productivity - Mainstream market value propositions: Saving time, saving money, enhancing leisure and entertainment
Long-term vision - Using technology in ways that empower people to work, live, and play more effectively
1.3.2 Wireless Networks
Simplicity can only be maintained if devices are connected in a wireless mode. That way you need not plug and unplug the devices as you move into a new location or introduce new components to a local area network (LAN). As long as only a few people use nomadic devices in a controlled environment, it is acceptable that they configure their devices themselves and plug/unplug them, but imagine hundreds of thousands of people in a city moving around using local services, switching context and using different services. If these multitudes needed to plug in every time, the time to set up the environment would take longer than using the service. With wireless technologies, it is easy to use an existing installed local infrastructure.
Two kinds of wireless networking are required. One kind provides long-range connections via cellular phones or satellite connections to connect to the Internet or special service providers that are not locally available. The other kind provides local, short-range connections to give access to local services; this can be achieved by Bluetooth or wireless LAN (WLAN) connections. An overview of the existing technologies is given in Chapter 4. A wireless network is, therefore, the basis for a pervasive computing architecture.
Although many people will carry around devices, they will not want to do so all the time. Many devices will be installed permanently in a certain location and can be accessed and used by many people for varying services. To allow access to these devices, a dynamic ownership needs to be implemented to allow the use of wired infrastructure and the seamless integration of the wireless and wired world.
Dynamic ownership means that the devices require a login for all people using it. Once a person logs in, the system will be configured to the needs of the user. This approach requires a centralized database with the profile of the user that can be accessed by all devices.
1.3.3 Framework for the Universal Network
To promote new services on the Internet, standards organizations must establish new standards that are as common and accepted as HTML for the Web. These standards include protocols and interfaces for the access of online services. The standards must allow the description and virtualization of services in order to allow access to services and information not yet available in digital form. Only if the framework supports this paradigm is it possible to create a large set of services in a short time.
A service should be viewed as an object on the Internet. At the moment, almost everyone agrees that objects should be described in XML, but different organizations have different approaches on how to describe these objects. Oasis,11 RosettaNet, 12 and BizTalk 13 try to describe services, products, and information related to vertical and horizontal markets, to make them more easily comparable and usable. As long as the different organizations fail to create a single standard, it will be difficult to use all services on the Internet. XML allows the easy transformation of data from one format to the other, but if the granularity of the information is different, a manual process needs to be put in place to add missing details. For example, one standard could describe a personal computer as follows: 999 MHz processor, 128 MB RAM, 32 GB hard disk. The other standard would describe it as follows: About 1 GHz Pentium 4 processor, 128 MB DIMM RAMs, 32 GB IBM hard disk. Although both descriptions are structured, it is almost impossible to convert the first into the second because essential information is missing. Fortunately, the organizations mentioned understand the problem and are cooperating to circumvent these problems.
Components for the Universal Network
Four components are necessary to pervasive computing:
Universal cataloging system - Users should be able to use any computer to find any program that suits their needs.
Universal application platform - When users click on a file, a program should launch regardless of where it might be stored on the Internet and on what type of device.
Universal file management - Users should be able to use any computer to not only access their own files but also to access any files which they have permission to view or access.
Universal payment system - Users should have a set method for measuring what they use and specifying how they should pay for it.
By virtualizing applications and services, companies can build up new applications and services that are composed of several virtual applications and services, thus reducing the cost of development and implementation. New applications and services can be created on-the-fly and for a certain purpose only. Virtualizing the services and applications enables them to reconfigure themselves to work together seamlessly.
Support for these new metaservices on the universal network comes from support for the processes that create the metaservice. These processes are also being defined in new standards. One of these standards, called "Job Description Format," describes all processes in the print industry. Even the most complex processes will be described in this standard. Once all processes are documented in a simple way, everyone can review the stage a certain process is in, independently of the services and products used to implement the process.
Only if standardization can be achieved can metaservices on the Internet be controlled and guaranteed.
What I call metaservices is today known as a web site. Companies rely heavily on standard applications and interfaces between the different applications to create a complete business model on the Web. Using the concept of pervasive computing, companies can set up a virtual company with virtual organizations. Instead of implementing all components themselves, companies can tie in virtual processes, business models, and organizations. This allows companies to concentrate on their core competencies and think about innovative add-ons to their core business model. Companies like Amazon.com and Yahoo! 14 have spent millions of dollars on components that are not part of their core competencies.
The business of Amazon.com is to sell products. To provide the basic business model, Amazon.com built up a complex infrastructure to support the business model. All services that are connected to the selling of books had to be implemented by Amazon.com. This undertaking built up a massive complexity in hardware, software, and services. Amazon.com has to implement and manage this complexity, making the whole site complex, proprietary, and expensive.
The web pages show only a small part of a complete company and its processes. To sell products, a company must set up a logistics service, an enterprise resource planning service, call center service, web-hosting service, and many other things a customer does not care about.
Many companies that enter the Internet world suffer because some components are missing. Manufacturers trying to target consumers, for example, often have problems supporting the needs of the consumers because the existing logistics services can handle the shipment of thousands of products, but not of single goods. Manufactures also often lack a call center for consumers and receive thousands of calls and e-mail instead of a few from dealers. Startup companies have even more trouble, since they have no departments at all. Through virtual departments, it is easier to set up a business without having to invest a lot into a business model that may fail after a short while. This gives new In-ternet businesses a better standing and also reassures the investors that their money is well spent.
1.3.5 Security Requirements
A new level of security will be required to support the universal network. Whereas access to the Web is easily secured through login and password, secured access to the universal network is more complex. Multiple access rights must be created for every object. Information and service objects must be set in context to provide different views of information and different aspects of services. Only then can the service be automated.
Simple login and password procedures will be inadequate in a universal network. Many devices won't have a keyboardthey will have an eye-scanner, a voice recognition system, or a smart card readerbut the universal network security method must be independent of how users or services are identified. Further, the security method must be able to identify the context in which a device is used. Context awareness becomes vital for every device, which we will see later in this chapter.
1.3.6 Operational Module
To support security needs, a central operational module is needed to provide the basic services for the pervasive computing platform. This operational module should be able to search for, broker, and execute services. To minimize delay, it should be relatively near to the person or device requesting a service. The person or device should be able to connect to another pervasive computing platform if the nearest one is not available.
Each of these platforms contains a directory of services available to the person or device in a certain situation. These services can be combined to form new metaservices, and the status of these services and their processes can be tracked. That way, the module can guarantee the quality of service of the network, and can predict when a certain result can be obtained and what needs to be done to optimize the result. The module should also be able to identify participants and restrict access to personal and other sensitive information to a certain group of people.
Virtualizing service objects makes it possible to use instances of a certain service in all sorts of different contexts without the need to recompile or reconfigure the service component. It also ensures that the service is implementation-independent and that a change in the service component will not affect the existing functionality that is broadcast to the Net world.
1.3.7 Virtualization of Applications and Information
The first steps toward pervasive computing have already been taken. The Web has virtualized processes and applications. Instead of using applications through their own user interface, the applications use the Web. Instead of using an e-mail client, many people use a web browser; instead of using a SAP GUI, many people use a web front to SAP. The advantage is that they are no longer restricted to a certain location or a certain installation. More and more applications use the Web to present and display processes and information.
When a service is moved to the Web, any device that contains a web browser can access the service. People can access their e-mail from anywhere in the world without having to carry around a local computer or a laptop. The application is not bound to a certain hardware installation or software configuration. A web browser is all users need.
Another problem will be solved in the near future: the distribution and access of files. Today, most data is on a local system, such as a portable or desktop computer. This data is only accessible to a person or application service that is near this data. "Near" means that the data is on the same hard disk, in the same room, or on the same network segment. Putting data on the Internet today puts it at risk of being available to anyone. As more and more applications become pervasive and reside on the Internet, the next logical move is to put the data on the Internet as well, so users can access their applications and files from anywhere. fusionOne 15 has developed a technology that allows users to manage their private data on the Internet. The technology allows users to collect information on a private network and provide it in a directory on the Internet to privileged persons. Business people who are traveling can access their data on their private network by connecting to the web site of fusionOne (see Figure 1.1) and entering a login and password. Private networks typically belong to companies or to families that are normally not accessible from the outside. With fusionOne's software, called Internet Sync, secure access to data on private networks is possible. Moreover, the risk of having several incompatible versions of the same document is reduced; with Internet Sync, users always have the most up-to-date version of a file, no matter where they are. The software is so far only a point solution, but it is easy to imagine a future version that allows controlled access to information relative to a certain person or situation.
Many other applicationssuch as Gnutella 16 and Napster17 that deal with data distribution are already available. Both have been developed for MP3 files but the technology allows swapping of any type of file and could be used for business transactions if additional security were included.
Although file sharing on a network is a nice service, it does not handle transformation of the information contained in the files. It does not help to share a Word document across a heterogenous network if some of the devices are not capable of viewing the information. To use applications and files on any type of device, the programming paradigm must be changed to recognize the abilities of each device. These changes are described in Chapter 4 in detail. Only if these new standards are put in place can pervasive computing components without too much overhead be written. Only if you can virtualize information and services, can you use them on any device and participate in the universal network.
By virtualizing products, information, and services on the Internet, more companies can do business on the Internet. They don't even have to be completely online themselves. It is enough to have a virtual representation on the Internet that is managed by someone else. Although this approach is not optimum, it does allow all companies to take part in the new economy with little cost. Pervasive computing combines online services with offline services to create new, more powerful services for everyone in the online and offline world. Pervasive computing allows a new generation of Internet services, such as information, products, and service brokers that transparently handle both online and offline businesses.
Pervasive computing not only provides these services to the general public, but also allows only certain people to use a dedicated service. It is also possible to allow the automatic communication between certain devices. A car, for example, could check, on behalf of the driver, where the nearest and cheapest gas station can be found. The heater could participate in an energy auction to buy as much energy as possible for a certain amount of money.
To make pervasive computing successful, many small tasks must be done automatically so that users can concentrate on the real tasks. Achievement of this goal will mean an augmentation of life.
1.3.8 A New Business Platform
The introduction of pervasive computing technologies will create a new business-to-business platform that will bring a higher transparency to the market. Only with pervasive computing is it possible to compare all offers without missing one. It is also possible to combine service offerings from different companies and pick the best parts of each offer to create a new offer.
B2B exchanges are becoming more popular, where companies provide offers for products and services in response to requests from other companies.
Today this process is still manual because someone has to create a request for proposal and another person has to answer it. The first thing we will see in the future is automatic answers; later, we will see the on-demand creation of requests for proposals whenever a need for a certain good or service arises in production. Through pervasive computing, many processes that have been moved from the physical world to the Internet world will be automated in the future.
The technologies to support this automation are described in Chapter 4 in detail; which of them will succeed cannot be said at the moment, but it can only be a technology that can communicate with other pervasive computing technologies. No company in the world has such a market dominance that it can decide which technology will be the only one. E-Speak from Hewlett-Packard, for example, communicates with the Jini technology developed by Sun. Only if all technologies that are applied are able to communicate with each other will a truly universal network be born.
1.3.9 New Interfaces
Today, working across online and offline environmentseven when using only a single laptopcan be a frustrating and inefficient experience. The world becomes more disintegrated. Applications that we use daily, such as web browsing, text editing, graphical design software, and communication technologies, require different software platforms with different functionalities. Although many services are already available through a web browser, each web service has its own user interface and its own formats. Most people would prefer a single, unified environment that adapts to whichever environment they are working in and that moves transparently between local and remote services and applications. Making an environment device-independent transmutes it to a sort of universal canvas for the Internet Age, as Microsoft calls it in its .NET vision.
A set of new interfaces makes the use of digital services much easier in the future. To make the interaction with the net-enabled devices as seamless as possible and to hide as much of their technology as possible, a set of natural interfaces will help a person use the devices as fast as possible without having to concentrate on the technology. Only this approach allows the vision of invisible computing. These interfaces will move away from "traditional" interfaces, such as keyboards and mouse devices, and move toward speech, vision, handwriting, and natural-language input technologies. More and more new devices will provide one of these interfaces, some of them in combination. The natural interface provides the right user experience for every device or environment.
Providing natural interfaces is not enough. All devices need to share a uni-fied environment to enable users to interact with information in a unified way, no matter which device they are using. Therefore, it is necessary to create a compound information architecture that integrates all types of services into a single environment, making it easy to switch contexts, services, physical environments, and devices. Such an architecture creates a universal canvas from which users read and write information and use services from any device. This universality also allows a seamless view of information that may be distributed around the world.
Multiple ways of identification ensure the correct view of services and information. Once you have identified yourself, you need to provide your profile to the service you want to use. Therefore, a virtual representation of yourself is required to manage the personal interaction with digital services. These information agents can manage your identity and persona over the Internet and provide greater control of how Internet services interact with you. They should maintain your history, context, and preferences; basically, they should store your past, present, and future on the Internet in a secure way. With privacy support from agents, your personal information remains under your control and you decide which service can access it. This allows you to create your personal preferences just once, which you can then permit any digital service to use.
1.3.10 Context Awareness
As more and more devices with Internet access become available, their size is being reduced. Therefore, the interfaces to input and output information and use services become more irritating and boring to use. The user must enter a lot of information into each device to use the service. To reduce the amount of information is, therefore, one of the most pressing problems in making devices more user friendly. Part of the solution is known as context awareness. By means of hardware sensors and machine learning technologies, devices can detect the context of the user and adapt their behavior accordingly. The sensors detect what the environment is like. Mobile phones are already able to recognize whether they are used at home or outside. VIAG Interkom 18provides its Genion mobile phone tariffs with a special service: if the mobile phone is used at the customer's home, the caller pays normal tariff; if used outside, the caller pays the higher mobile phone tariff. All mobile phone providers use the same system on a greater scale when crossing country borders, allowing the callers to use a roaming service by connecting them to the foreign mobile phone network.
Appliances that know more about their environment will be able to function better and will give their users a better, more personalized service. A device that knows about its own environment and that of its user could transparently adapt to the situation, leading to the realization of the invisible computer. To improve interaction with such a device, its context awareness must be augmented. The appliance will be able to give better defaults for the situation and could automatically make choices that the user normally would have to make, thus reducing the amount of time to access a service.
Components of Context Awareness
To make devices aware of their context, the following components need to implemented. They need to answer the following questions:
Activity - What does the user want to do?
Environment - Where is the user currently?
Self - Which status has the device?
The context-related information can be used to control incoming and outgoing information to and from the device and to set device controls. This could have consequences for the use of these devices. A washing machine could check the time of day and not start itself until the local power supplier reduces its prices for energy. A mobile phone may know whether to ring urgently or buzz subtly, depending on the environmenta meeting room or a beachof the mobile phone owner. A PDA may know to immediately initiate a network connection or to wait until a connection is cheaper and more reliable, depending on whether the user needs to download information or send e-mail. A laptop can know to switch to low-power mode because its user is engaged in a phone conversation across the room or to check one more time for e-mail before a plane takes off so that the owner can read and respond to the e-mail while airborne.
Context awareness is not a new concept. Many appliances already use sensors to find out what is happening in their environment. Today, however, only a few sensors are used, and the recognition process is still very simple, based on very little input. Establishing a high-level notion of context, based on the output of a group of simple sensors, is not very common. The field of robotics started with this approach and has probably been responsible for most of the progress that has been made so far. The context awareness in robotics is still expensive and slow. In most cases, the robots are also fixed in a certain environment. In the future, devices need to adapt to a changing environment quickly and, even more importantly, cheaply. In the era of pervasive computing, context awareness is mandatory.
To make devices aware of their context, developers must implement the following components: activity, environment, and self. The activity component describes the task the user is performing at the moment, or, more generally, what his or her behavior is. This aspect of context is focused on the users of the device and their habits. This component creates the personalization feature of the device. The environment component describes the status of the physical and social surroundings of the user. It takes into account the current location, the activities in the environment, and other external properties, like temperature or humidity. With the addition of this functionality, the device can set correct default values for its service and reduce the time for the user to use the service. Finally, the self component contains the status of the device itself. It indicates which capabilities are available for which person in a given environment. A device could give a set of services to person A in the house, but a different set of services while traveling. The same device could also provide a totally different set of services to person B regardless of its environment. When these components are onboard every device, they become personal and usable for anyone, anywhere.