5.3 Key Ideas

5.3.1 Introduction

Based on the idea that the user is in the center, a new interaction model is required. At the top of the model is the user who interacts with the intelligent appliances through human-computer interfaces. The interfaces and appliances can be considered an integrated system. The interfaces convert the human input into an XML data stream, which any device and service that adheres to the same XML standards can understand. When a device or service outputs information, the interface will convert the XML data stream back into a human understandable format, such as voice, images, or text.

Have a look at Figure 5.2, where you can see the three major modules of the me-centric computing architecture. At the lowest level, you can see the infrastructure and Web services, which reside on the smart network. The connection between these modules and the intelligent appliances is handled through different types of network connections. This can range from simple land-line dial-up connections to the Internet, WLAN access, or mobile connections. The architecture is independent of the network connections; ideally , it will allow the appliance to select the most appropriate connection and allow seamless roaming between different network connections.

Figure 5.2. Architecture Overview

graphics/05fig02.gif

To support highly dynamic and varied human activities, the architecture needs to be pervasive, meaning that it should be everywhere, with every portal being able to reach into the same information base, either directly or indirectly. While this may be a bit constraining, we think that the architecture needs to support universal interoperability at the semantic level. This means that it should be able to be federated (built with different components , standards, and implementations ), but be able to work across those seams. In that sense, the ideal architecture is comprehensive at the level of semantics of interoperation , but not necessarily imposing that it be realized by uniform parts or a single information base.

To be embedded into the lives of everyone involved, just like wearing a wristwatch or using a mobile phone, this architecture needs to be pervasive and invisible, but highly intelligent and able to sense the context and do things automatically. One of the key features of the architecture is that it needs to support nomadism, meaning that users and intelligent appliances are allowed to move around freely , according to their needs. The architecture needs to be adaptable, as it must provide flexibility and spontaneity in response to changes in user requirements and operating conditions.

In order to be efficient, it needs to free itself from constraints imposed by bounded hardware resources. Instead, it should address system constraints imposed by user demands and available power or communication bandwidth.

To make it easier for humans to use, the whole solution needs to support intentions. It therefore needs to be able to interpret the user's intentions in a given context, as opposed to interpreting strictly what the user is expressing . For example, a user may ask "Where is the best Italian restaurant in town?". The system must be able to determine if the user is really looking for the restaurant's address ("Where") or decide if the user intended to ask "What is the best Italian restaurant in town?" and respond accordingly .

Most important, the whole architecture should be designed in such a way that it must never shut down or reboot. Single components of the architecture may come and go in response to demand, errors, and upgrades, but the architecture as a whole must be available all the time.

This is achieved through a combination of specific user and system technologies. Speech and vision technologies enable us to communicate with the Web services as if we're interacting with another person, saving much time and effort. Individualized knowledge access and collaboration technologies help us perform a wide variety of taskswhat we want to do in the ways we like to do them.

5.3.2 Smart Programming

There are a number of ways that intelligent appliances can interoperate with a system, but it really comes down to one simple question: Will the computing device generally be connected to the network or not? This one question will help to determine whether only the presentation is pushed to the appliance or if processes will have to execute on the appliance as well. If the device will be connected to a server at all times, or if reviewing cached static data is sufficient, the device needs to manage only the presentation services layer.

To make me-centric computing as economic as possible, it is necessary to reuse as much as possible; therefore, the presentation characteristics and the form factor of intelligent appliances need to be taken into account. They are often quite different than the 1024 x 768-pixel browser most Web applications are designed for. The Web today can be characterized by HTML, JavaScript, and streaming audio and video. This set of technologies assumes that the underlying device has all the hardware and software resources of the personal computer platform, including display, keyboard, mouse, infinite backing store, high-speed processor, and constant connection at high bandwidth. This won't work in the me-centric world. Therefore, it is important to introduce a new concept that is an intelligent, render-device-oriented translation mechanism. This concept is called transcoding.

The problem is simple to express but difficult to resolve. It requires that all business-processing systems be as deployment-transparent as possible. If users access these systems via a personal computer with high resolution and rich color , the system should take advantage of that. Conversely, if the users access the systems via voice recognition systems or mobile phones, the input and output needs to be transcoded accordingly.

Today, the de facto standard for achieving this level of presentation independence is XML. This type of independence would move the presentational elements to the client device. XML files will only contain structured data, which can be rendered by the appropriate output device.

A rich component specification will help significantly in this scenario. It could be used as input to a transcoding engine for use as a template in defining the source material. Using advanced UML [5] concepts, it is possible to export those specifications. This allows the component specification to be extracted into a machine-parsable format. The transcoder is now able to understand the format and behavior of the interfaces and its operations. Provided the intelligent appliance is interested in simply executing operations of a given interface and viewing the results, minimal additional work is required. If the appliance is better served by the implementation of more involved processes, then script code can be written to facilitate the collaboration of multiple operations or components, with the results provided to the transcoding engine in an expressive fashion.

[5] Unified Modeling Language (UML) is a standard notation for the modeling of realworld objects as a first step in developing an object-oriented design methodology.

The software architecture needs to support both networked and standalone application capability. Therefore, an intelligent caching mechanism needs to be implemented that allows networked applications to run standalone. These caches need to be implemented in all devices that are part of the network to make it possible to accommodate for loss of device connectivity or network services.

5.3.3 Smart Appliances

Intelligent appliances such as PDAs, mobile phones, and cars will become popular within the next few years ; new cars will be equipped with navigational assistants, for example. Because these appliances are fairly technical, it is clear that the additional technology will be assimilated without much trouble by the user. The challenge that lies ahead is to introduce intelligent agents and smart services in areas that have been non-technical in the past. If we can overcome this challenge, me-centric computing will have established itself as the major paradigm in computing.

PDAs and mobile phones are fairly well developed and widely adopted. Enhancing them will make usage even easier, but there are natural limits that will inhibit growth, just as we see today with personal computers. Not everyone is willing to buy one, has the need for one, or can afford one.

Therefore, smart appliances need to become cheaper and need to enter domains that were not considered yet. Especially in low-tech areas, there is lots of potential for low-cost appliances. You can find a selection of scenarios in Chapter 2, and in Chapter 8 more information on how to design good intelligent appliances.

One of the biggest challenges in intelligent appliances is creating good human-computer interfaces. Only if these interfaces are easy to use can it be expected that many people will use them. A well designed interface also allows access to information and services for people who cannot read, for example, because the appliance allows for alternative input and output streams.

5.3.4 Smart Infrastructure

Besides the appliances that are responsible for the interaction with the user, the smart infrastructure needs to make sure that everything that needs to be connected is connected in the right way. Therefore, the network itself needs to be intelligent in connecting the appliances and Web services whenever needed through the appropriate means. One big issue that needs to be addressed is quality of service (QoS). Depending on the type of application you want to run on your appliance, different requirements may apply. Game players using their next-generation Game Boys will have the game on the appliance, but will require a lowlatency network connection to play against others. Probably they won't need much bandwidth, but the response time needs to be very high. Other applications such as streaming video or audio do not require a fast response time, but do need a high throughput. Depending on the requirements, the appliance needs to negotiate with the network which type of connection is the most suitable for the type of application.

New automatic networks based on technologies such as Bluetooth, ZigBee [6] , UMTS, and IEEE 802.11 help to achieve this goal. In addition to this, roaming software will help nomadic users switch from one type of connection to another without losing the connection and, more importantly, without losing the application context. The goal is to create ubiquitous local networks that require no human intervention or even knowledge, for example, to wirelessly connect the components of a stereo system.

[6] http://www.zigbee.org/

ZigBee, formerly known by several other names , including HomeRF Lite, is a wireless technology focused on low-cost, low-power applications. It will run at speeds ranging from 10 kbps up to 115.2 kbps, which at the top end is about twice the speed of a dial-up modem, but only a fraction of the speed of Bluetooth. ZigBee has a range of 10 meters to 75 meters , longer than that of Bluetooth. As for power consumption, ZigBee's wireless modules are expected to last between six months and two years if powered by a pair of AA batteries. More information on these technologies can be found in the book Internet Future Strategies , which discusses these and other technologies in more detail. [7] So far, no decision has been made as to which standard will be used in the future, but most probably there will be multiple standards that will interoperate with each other seamlessly.

[7] Daniel Amor (2001). Internet Future Strategies . New York: Prentice Hall

To establish the connection of the intelligent appliances, it is necessary to introduce point servers. They are used to integrate a mix of user and embedded devices in a localized automatic network. Point servers will be surrounded by all kinds of intelligent appliances, which will vary widely according to each setting. The point server is a very simple but powerful general-purpose device that does more than simple access points. It provides the necessary logic for connecting the right devices and services with the appropriate means.

Me-centric computing does not automatically mean wireless connections; it can include wired connection to the Internet.

DSL and cable modem connection on the wired side of the Internet and mobile data networks such as CDPD, UMTS, GPRS, CDMA2000, and W-CDMA will play an important role in accessing the Internet and Web services. This area, whose goal is ubiquitous Internet connectivity at broadband data rates, is just beginning its mass-market rollout.

Besides these local-area network connectivity technologies, there are also wide-area application infrastructure technologies such as RFID, telemetry, and GPS. The goal is to create ubiquitous network nodes, and many vendors are now providing technology to enable this vision. The space includes technologies that extend enterprise systems beyond user terminals to devices and objects in the supply chain or the field, and enable real-time business modeling and decision making.

5.3.5 Smart Services

Web services are a key property of the computing ecosystem that empowers me-centric appliances. These appliances know how to access and employ Web services to perform the tasks and subtasks that collectively accomplish the master's objectives. They are the foundation of the automated service in the background that is necessary to make the me-centric solutions work. Web services are component services that run on the Internet and can be combined on the fly to create personalized me-centric services for the customer. Depending on the needs of the user and the devices used, Web services will provide the right information, communication or transaction capabilities to the users. Web services are not necessarily Web-based solutions, so the name is a bit misleading, as not all services will be visible on the Web. Probably, most services will run behind-the-scenes in an automated way.

The key to success with Web services is their integration via agents. These agents can act on behalf of a user, an appliance, the network or another Web service. Agents are used to communicate more intelligently and do things autonomously. This means that a Web service can start a query for travel prices from Stuttgart, Germany to San Francisco, California. The Web service requires this information as part of a travel service that it is offering to smart appliances used by travelers. The agent is tasked with this query and will now try to find as much information as possible about this query. The advantage of this technology is that the instructions to the agent are standardized, meaning that different companies can create agents that perform the same or a similar task. The communication between agents and other intelligent components is always the same, making it easy to task several agents at the same time. Another important feature of agents is that they work autonomously. This means that in our example the Web service can ask the agent and continue with other work, while the agent collects the required information. Once the agent has finished its work, it reports the result to the Web service that can include it into a bigger context and provide it to the intelligent appliance that will format the information in the appropriate way.



Radical Simplicity. Transforming Computers Into Me-centric Appliances
Radical Simplicity: Transforming Computers Into Me-centric Appliances (Hewlett-Packard Press Strategic Books)
ISBN: 0131002910
EAN: 2147483647
Year: 2002
Pages: 88

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net