UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

17
IADIS International Journal on WWW/Internet Vol. 5, No. 2, pp. 130-146 ISSN: 1645 – 7641 130 UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD Soha Maad, Gabriel Pierantoni, Brian Coghlana and Eamonn Kenny Trinity College Dublin, Dublin, Ireland {Soha.Maad, pierantg, coghlan, watsonr, Eamonn.Kenny}@cs.tcd.ie ABSTRACT This paper argues that universal accessibility is one of the most critical factors for the road ahead towards a permanent grid infrastructure. The paper evaluates the accessibility of the existing production grid infrastructure and draws a future agenda for a universally accessible grid infrastructure. The paper overviews undergoing work at Trinity College Dublin, within the framework of the Webcom-G project, to support universal accessibility to the grid via a metagrid infrastructure based on social and economic models. This would address the situated and the actual disability needs for Grid access. KEYWORDS Universal access, SGA Social Grid Agent, Situated and Actual Disability, MAX Metagrid Access Exchange 1. INTRODUCTION Universal accessibility is rooted in the concept of Design for All in Human Computer Interaction (Stephanidis et al, 2000). It aims at efficiently and effectively addressing the numerous and diverse accessibility problems in human interaction with software applications and telematic services. Universal design aims at designing products and services for the widest possible diversity of users, thus preventing functional limitations from turning into disabilities, and adding depth to the understanding of HCI issues by looking at design from a wider range of viewpoints. This paper describes a model that can potentially host all solutions for universal accessibility to the grid. The following sections consider the nature of grid accessibility, the user requirements, the concept of metagrids and a relevant social agent model, a metagrid access exchange to enable access to a multiplicity of user interfaces, potential use cases that have motivated the proposed model, and a summary.

Transcript of UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

IADIS International Journal on WWW/Internet Vol. 5, No. 2, pp. 130-146 ISSN: 1645 – 7641

130

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

Soha Maad, Gabriel Pierantoni, Brian Coghlana and Eamonn Kenny Trinity College Dublin, Dublin, Ireland

{Soha.Maad, pierantg, coghlan, watsonr, Eamonn.Kenny}@cs.tcd.ie

ABSTRACT

This paper argues that universal accessibility is one of the most critical factors for the road ahead towards a permanent grid infrastructure. The paper evaluates the accessibility of the existing production grid infrastructure and draws a future agenda for a universally accessible grid infrastructure. The paper overviews undergoing work at Trinity College Dublin, within the framework of the Webcom-G project, to support universal accessibility to the grid via a metagrid infrastructure based on social and economic models. This would address the situated and the actual disability needs for Grid access.

KEYWORDS

Universal access, SGA Social Grid Agent, Situated and Actual Disability, MAX Metagrid Access Exchange

1. INTRODUCTION

Universal accessibility is rooted in the concept of Design for All in Human Computer Interaction (Stephanidis et al, 2000). It aims at efficiently and effectively addressing the numerous and diverse accessibility problems in human interaction with software applications and telematic services. Universal design aims at designing products and services for the widest possible diversity of users, thus preventing functional limitations from turning into disabilities, and adding depth to the understanding of HCI issues by looking at design from a wider range of viewpoints.

This paper describes a model that can potentially host all solutions for universal accessibility to the grid. The following sections consider the nature of grid accessibility, the user requirements, the concept of metagrids and a relevant social agent model, a metagrid access exchange to enable access to a multiplicity of user interfaces, potential use cases that have motivated the proposed model, and a summary.

IADIS International Journal on WWW/Internet

131

2. GRID ACCESSIBILITY

(Gilman et al, 2003) identified two types of disability: the actual physical disability and the situated disability. Examples of actual physical disabilities include blindness, visual impairment, deafness, hardness of hearing, physical disability, cognitive disability, and language or learning disability. The situated disability is not a permanent or long-term disability but arises from special situations or conditions that render the user disabled for a short period of time. Examples of people with situated disability include people whose eyes are busy (e.g. driving a car or using a phone), browsing, or who are in darkness; people using a small display or in a highly glare or dimly lit environment; people in very loud environments or whose ears are busy or are in forced silence (e.g. in a library or meeting); people in noisy environments; people in a space suit or chemical suit or who are in a bouncing vehicle; people who are out of position or have multiple devices to operate; people doing a task for the first time or having to perform multiple tasks at once; or people who have just learned to read a language or who are without their reading glasses.

Moreover (Gilman et al, 2003) identified some basic access principles to address the two types of the above described disabilities, the actual and the situated. These access principles include making all information perceivable without vision, hearing, reading, color perception or with low vision or cognition; providing at least one mode for interaction that is operable without pointing, vision, requirement for quick response, fine motor movement, simultaneous action, speech, or requiring presence or use of biological parts (touch, fingerprint, iris, etc); facilitating navigation without sight, pointing ability, fine motor control, hearing or prior understanding of the content; facilitating understanding of content without skill in language, good memory or rich background; and compatibility with assistive technologies commonly used by people with physical, cognitive, or language disability. General universal design strategies to implement these access principles include making all information available in presentation independent form; making all interfaces controllable via ASCII/UNICODE; making all text output voiced or compatible with audio; providing various alternatives for user interaction, resorting to well organized, consistent, and easy to understand content delivered in various formats (text, voice, and imagery).

The relationship between the grid and universal accessibility can be mutually established: the grid can benefit from a greater universal accessibility, and the computation and data storage power of the grid can support universal accessibility to information technology.

3. USER REQUIREMENTS

At the user level grid accessibility is mainly concerned with the direct user interaction with the grid. Hence, several steps can be taken to promote grid accessibility at this level, these include: (a) the development of grid user profiles; (b) the re-engineering of grid user interfaces or portals; (c) the delivery of grid services through various media delivery channels; and (d) the enhancement of the universal accessibility of grid learning and services, as discussed below. Profiles appear to be a useful concept.

(a) The development of grid user profiles helps in gaining more depth in human computer interaction (HCI) knowledge and experience by creating a workable model of the diversity of user capabilities. Grid portals will need to insulate individual service sources from re-

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

132

inventing their service interfaces for individual users with special needs. Grid user profiles help also in abstracting the user and the grid services. This involves the definition of functional abstraction conventions such as a classes and their binding to appropriate pixels, Braille signs or sound to fit various situated and disability users' needs.

(b) Existing grid user interfaces and portals are not developed with universal accessibility in mind. One may classify grid portals in various categories (Maad et al, 2007): those with single access point to grid support (GGUS-web); with user-friendly access to services of a single grid (Genius-web); accessing multiple grids hence supporting interoperability (P-Grade-web; MD-web); and supporting grid-enabled applications (Jameel et al, 2005; EG-web). Evaluating the accessibility of grid portals according to seven criteria (multi-lingual support, patterns of interaction, accessibility levels, accessibility through various media delivery channels, disabled access, elderly people access, and rich media content) reveals a very low level of accessibility of existing grid portals. This is mainly due to the absence of any concept of universal access at design stage. Existing grid portals should be re-engineered for greater accessibility and described by profiles.

(c) (Maad et al, 2006) revealed that existing efforts towards universal accessibility to the grid do address the problem to some extent but none enable a complete solution that supports, among others, assistive technology devices for the disabled. More efforts should be undertaken to develop a complete solution to support universal accessibility to the grid via various media delivery channels including wireless, handheld, interactive television, and assistive technology devices for the disabled. Accessibility to the grid through various media delivery channels can increase the popularity of the grid by making grid computation accessible anytime anywhere. Device profiles can help in channel selection.

(d) Existing grid tutorials (GILDA-web) are designed for grid users with sufficient technical background and full access capability. The actual and the situated disability are not taken into consideration in developing grid tutorial environments and in grid learning and education in general. Hence more efforts need to be undertaken to make grid education more accessible to the situated and actual disability and primarily for people with low cognitive ability whether arising from a physical or situated need. This we intend to investigate in the context of the Grid-Ireland eLearning infrastructure, eLgrid (Cassidy et al, 2006).

4. METAGRIDS

A universal metagrid infrastructure under development at Trinity College Dublin attempts to address all issues related to universal accessibility to the grid. The motivation for developing the metagrid originated from the need to support grid interoperability (Pierantoni et al, 2005, Pierantoni et al, June 2006). The metagrid is currently developing as a universal infrastructure thus extending the notion of interoperability to embrace grid application interoperability (interactivity and universal accessibility) (Maad et al, 2006). While heavily drawing on existing grid middleware services and architecture such as EGEE (EGEE-web), Globus (Globus-web), CrossGrid (Crossgrid-web), GridPP (GridPP-web) and OGF (OGF-web), this metagrid infrastructure hosts one or more target grid technologies while also supporting its own services that provide things like universal accessibility that the target grid technologies do not. By doing so it firmly places the user within the metagrid environment rather than in any one target grid environment. The user obtains universal accessibility via the metagrid services,

IADIS International Journal on WWW/Internet

133

and the target grid technologies are relieved of the need to support direct user and device interactions.

5. THE SOCIAL GRID AGENT MODEL

The initial prototype of Social Grid Agents, described in (Pierantoni et al, 2007), addresses the problem of the growing complexity of grid computing (multiple grids, complex jobs, multiple actors and different allocation scenarios) subject to various constraints (different relationships among resource owners, institutions, and users; and the need of a flexible and scalable solution able to adapt to future middleware with unknown characteristics). The architecture divides the agents in two broad categories: Production Grid Agents and Social Grid Agents. This proposal suggests a third category of Grid Agent, Consumer Grid Agents, as discussed further below.

Production Grid Agents are wrappers of one or more existing grid services and are controlled by one or more Social Grid Agents. The Production Grid Agents are concerned with the composition of services into higher level ones and do so under the control of the Social Grid Agents. Production Grid Agents can be arranged in complex production Topologies following instructions by their Social Grid Agents.

Social Grid Agents can control one or more Production Grid Agents and exchange their control or their services. They evaluate the requests that they receive, compute the required factors and exchange in social and economic transactions to obtain the needed factors. Once the factors are obtained, the Social Grid Agents instruct the Production Grid Agents they are in control of to define a production topology able to encompass all the needed services. Social Grid Agents are intended to exhibit social and economic behaviours.

6. METAGRID ACCESS EXCHANGE

The paradigm under which the Social Grid Agents model and its first prototypes were developed is a viable candidate to address the challenges posed by universal accessibility. In fact, the primary analysis paradigm of the Social Grid Agents is to reflect, when possible, the mechanisms that, in real life, allow different actors to cooperate and compete in the pursuit of their goals. Users with different accessibility profiles can be recognized as such by Grid Societies and offered suitable accessibility modalities. In order to do so it is important to recognize that different accessibility profiles may require very different computational and storage needs and that these additional costs are to be met by an entity that need not be the user itself. In this regard we can envision a Metagrid Access eXchange (MAX) where accessibility needs are traded by particular actors in Grid Societies.

The use of exchanges as a place where demand and supply can meet is already part of the Social Grid Agents architecture, for job execution in the Metagrid Job eXchange, (MJX), for security in the Metagrid Security eXchange (MSX) and for storage in the Metagrid File exchange (MFX). These exchanges act as high-level brokerage systems where consumers can find optimal solutions to their needs and, especially, can define optimality criteria. Extending this design to accessibility allows users that have particular accessibility needs to be recognized as such and to have their needs fulfilled. As in the real world, where people with disabilities should be helped with architectural facilities, properly designed means of

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

134

transportation and specific services, so Grid Societies should try to meet the needs of disabled people in accessing their services. The additional costs of these services can and should be paid by actors that may be funded by public institutions.

In terms of interoperability, thus far Social Grid Agents provide interoperability from a social grid agent model to many existing grids, where production agents proxy for grids. Here we propose to apply these agents to the converse problem of interoperability from many existing user interfaces to the social grid agent model, where consumer agents proxy for users. Thus we propose the social grid agent model as a common framework for universal accessibility to grid. In the production case the trading floor is mainly represented by the MJX job exchange. Figure 1 illustrates this, where interoperable usage of various grids {G1…GN} by some agent topology {A1,A3,A6,A7,A5,A8} is achieved via the MJX. For the consumer case we introduce our new trading floor, the MAX access exchange. Our new model for accessibility makes the SGA functionality interoperably available to a user through one or more user interfaces {UI1...UIM} via MAX.

Figure 1. Interoperability Model for Universal Accessibility

Of course this can also be seen as a classical layered architecture, as in Figure 2. This service oriented architecture provides access through MAX and MJX. The social grid agents are Globus GT4 services (Foster 2006, Globus-web, GT4-web).

One of the social topologies envisioned in the Social Grid Agents architecture, the Keynesian Scenario, seems to be best suited to meet the needs of users with particular accessibility profiles. The Keynesian Scenario describes a Grid Society where part, or all, of the costs of services are funded by an actor that often represents a government or an agency. In the existing exchange services, users and required services that belong to certain categories can be executed at discounted prices (or even for free) by a set of service providers that have the proper relationship with the funding actor. In this case, consumers, providers and funding agencies can belong to a particular Grid Society that allows certain sets of users and required services to be facilitated in a market. It also allows funding agencies to aim their funds to specific targets.

IADIS International Journal on WWW/Internet

135

Figure 2. Layered Interoperability Architecture for Universal Accessibility

One possible way that the Keynesian Societies might work with the Metagrid Access eXchange would be to allow users with particular accessibility profiles to be helped in availing themselves of the grid resources. In this scenario a person with a particular accessibility profile may by default enter the Metagrid Access eXchange to find a service suitable to its profile. Such a service may require intensive computation and other grid services whose costs can then be funded entirely or partially by a Keynesian agency. This scenario is described in Figure 3. The user with a particular accessibility profile queries the Metagrid Access eXchange; if the user is supported by some Keynesian agency and if there is an Accessibility Provider (consumer agent) capable of offering the required service linked to this agency then this provider is selected. As the accessibility service itself may require additional grid services such as computation, storage and security, the Accessibility Provider will query the proper exchange services (MSX, MJX and MFX) to find needed services. These providers can, in turn, be linked to the Keynesian agency and, therefore, be willing to offer their services at discounted prices or they can be independent providers. In the latter case the cost of the service will be provided directly by the Keynesian agency.

Figure 3. A Keynesian Scenario for Universal Accessibility

User MAX

MJX

MFX

MSX

AccessibilityProvider

KeynesianAgency

Grid Service Providers

Grid Service Providers

Grid Service Providers

Grid Service Providers

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

136

7. USE CASE SCENARIOS

Below we present potential use cases that have motivated our approach. These use cases are on our research agenda since they greatly help to illustrate the breadth of access to human interfaces that is required.

7.1 Greater accessibility for grid security management

Providing an overall picture of the state of security of a Grid infrastructure to a central organisation such as a Grid Operations Centre (GOC) is becoming an urgent necessity, and security analysts need to be able to access and assess security alerts anytime anywhere, despite situated disabilities. Access from mobile devices such as PDAs via MAX to a Grid Security Monitoring Infrastructure (GSMI) (Kenny et al, 2007; Kenny et al, 2005) will provide more versatile accessibility to any Grid-wide alerts or high-priority alerts generated by GSMI. This is depicted in Figure 4. SGA enables multiple user interfaces to access the target functionality.

Figure 4. Alternative user interfaces accessing GSMI via MAX.

7.2 Grid accessibility for commercial 3G Mobile applications

Today the market for mobile applications (ring-tones, video on demand, etc.) accounts for the largest source of revenue in the 3G mobile industry (Research and Markets, 2005). Hence the Grid must join this trend and to offer wireless personalized grid computation. Each user can be profiled, and their usage can be accounted for according to very fluid and sophisticated charging models applied to grid banks accounts. In a strict commercial setting, the better the service, the greater the cost. There is money to be made from provision of wireless services, and these may be enhanced using the computing capacity of the Grid, for example see Figure 5. Access must be mediated by a market mechanism, and the SGA model potentially enables chargeability and interoperability across multiple wireless user interfaces in a consistent manner.

IADIS International Journal on WWW/Internet

137

Figure 5. Wireless accessibility for grid-enhanced mobile applications.

7.3 Accessibility for the disabled

Various grid accessibility services for the actual disability (blindness, deafness, physical impairment) are being considered. An interesting service to start with is accessibility for the deaf, where the task is to transform grid data into a presentation independent (i.e. neutral) form (ASCII text or XML) that can be voiced through a text-to-speech synthesizer. Parsers could be developed to scan existing grid portals GUI and to query grid information services to put grid data into a presentation independent form. A generic solution would enable other presentation formats, for example, sign language videos, see Figure 6. It is clear that this involves stream processing. The MAX will enable the user to negotiate access from their preferred presentation processor to the neutral stream.

Figure 6. Sign language user interface (snapshots taken from http://www.british-sign.co.uk/).

7.4 Edutaining accessibility

So far grid accessibility has been discussed in terms of rigid, formal, and preconceived interaction. In this use case the aim is to make grid accessibility a rather edutaining interaction whereby the user (or group of users in a Virtual Organization) engage in an educating and entertaining collaboration on large distributed compute and data intensive grid tasks. This collaboration allows them to execute, manage, and monitor the progress of execution of grid

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

138

tasks. For example, for a younger audience this edutaining interaction may take the form of a MAX-Headroom Security Council (Maxheadroom-web) as illustrated in Figure 7, or perhaps a single shooter infosys adventure game (Infosys-web), where grid participants are immersed in an augmented world of virtual human characters each playing a particular role in the grid computation. In our Social Grid Agent framework, each virtual human character could be a Production or a Social Grid Agent.

Figure 7. MAX-Headroom Security Council on the grid.

7.5 Better accessibility for collaborations

Providing universally accessible e-collaborative environments is a challenging task. While current efforts to establish distributed collaborative environments (e.g. AccessGrid nodes (Accessgrid-web)) have succeeded in creating rich media distant collaborative interaction experiences, see Figure 8, the accessibility of such environments is still rather limited in its forms. An Access Grid node (also referred to as designed spaces) contains high-end audio and visual technologies to provide a collaborative experience. These technologies include multimedia-large format displays, presentation and interactive environment, and interfaces to grid middleware and to visualization environment (Lago, 2006) and (Hoffman et al, 2007). These latter facilities need to be promoted, employed and enhanced to a much greater extent.

Figure 8. AccessGrid collaborative session (from http://www.accessgrid.org/).

IADIS International Journal on WWW/Internet

139

8. PROTOTYPE IMPLEMENTATION

Thus far only very limited implementations of user profiles and MAX have been constructed, more as an experiment to establish the validity of the concepts before proceeding to further implementations. Underlying these is Pierantoni’s relatively advanced implementation of Social Grid Agents. For details see (Pierantoni et al, October 2006, Pierantoni et al, 2007).

The architecture of Pierantoni’s agents is composed from three main entities. Firstly the Grid Body consists of existing grid services surrounded by a Globus GT4 service (Foster 2006, GT4-web) that enables it to be used by the other metagrid components. The link between the GT4 service and the existing grid service usually consists of API invocations but can also be performed with system calls if an API is lacking. Secondly the Skeleton consists of the services offered by the transport layer: GT4 grid services for lightweight information and file access mechanisms for ”heavyweight” information. Finally, a Java Brain implements the production or social behaviour with which the agent controls the existing grid service.

Figure 9. Social Grid Agent Java Brain architecture.

The most complex of these components, the Java Brain, is illustrated in Figure 9. All Java Brains expose a minimalist interface composed of the method process(message) that returns another message. When a message is received by a Java Brain, the Processor Manager of the Java Brain checks whether there is any Processor (P in Figure 9) able to manage it, i.e. a Java class that contains the ”knowledge” of what to do with one or more messages

The Processor Manager is capable of match-making a Processor to a message through hash maps that are used to describe set relations between message types, values of the fields of the message and Processors capable of handling them. If a Processor capable of handling that message is found it is instantiated and it is passed the original message. The Processor then analyzes the message and passes the result to the Service Providers Manager that instantiates the necessary Service Providers (SP in Figure 9) using a very similar mechanism to the Processor Manager.

The full architecture is envisaged to provide: • A Social Expert that has the duty to check if the requester is entitled to the kind of

service and the type of social or economic relation that it is requesting. One agent may have a cooperative relationship with one party, it may have an special economic relation with a third party while it may reject all requests from other agents.

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

140

• A Service Expert that has the duty to extract the information about the resources needed to fulfill the request.

• An Economic Expert that has the duty to assess and track the available resources, their costs and the price (if any) offered for the service, and also to decide whether the execution of the service is possible.

• A Treasurer that has the duty to keep all credit records and to manage all credit transactions between agents.

• A Service Provider this is the interface to the Grid Body that wraps either the existing grid service or the native metagrid service. Service Providers can be of three main types: – An Internal Service Provider that is directly and locally controlled. – An External Service Provider that is remotely accessible; these services are

usually external services that can be accessed after a social or economic transaction between the social agents that control them.

– A Communication Service Provider that provides communication between agents.

A prototype MAX access exchange has been implemented as a Social Grid Agent, i.e. a Java Brain has been created that is specific to MAX. This prototype MAX makes accessibility decisions based on profiles. The profiles must represent three things:

• A user profile • An interface profile • A device profile

The user profile must contain the user identity (possibly derived from the user’s grid certificate), and the profile context (accessibility requirements), and the user’s application domain (physics, engineering, etc) as each application domain has an appropriate interface. The interface profiles must represent, for example, web service interfaces, possibly using WSDL (WSDL-web), or wireless interfaces, possibly using WML (WML-web). Device profiles must represent, for example, wireless devices (possibly the MIDP API (MIDP-web), or assistive devices. The primary concern is to find a common representation for these three profiles to enable appropriate matching between them, as illustrated in Figure 10.

The matchmaking within the Social Grid Agents is very pertinent. It is governed by policies that are expressed in ClassAds (ClassAds-web), which is a notation to represent computational resources for high throughput computing, originating in the Condor project (Condor-web). ClassAds are widely used in grid middleware. For example, they are at the core of Condor, the basis of the EGEE job description language (JDL-web, EGEE-web) inherited from EDG (EDG-web), the core of the EGEE workload management system (EGEE-WMS-web), again inherited from EDG, and the annotation language for the WebCom-G graphs (WebCom-G-web).

In order to create a harmonious approach the profiles have been specified as ClassAds.

IADIS International Journal on WWW/Internet

141

Figure 10. Profile matching.

Simple profiles can easily be defined, for example using key-value pairs: Profile for User 1 Identity: user a Current position: in transit Inability: deaf Job description: security analyst Interests: GSMI Alerts Site: TCD Grid Operation Centre: Grid-Ireland GOC Profile for User 2 Identity: user b Current position: on site Inability: blind Job description: security analyst Interests: GSMI Alerts Site: TCD Grid Operation Centre: Grid-Ireland GOC Profile for Interface 1 (Interface for on-site blind users) Identity: user a || user b Inability: blind Current position: on site

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

142

Profile for Interface 2 (Interface for in-transit deaf users) Identity: user a Inability: deaf Current position: in transit

ClassAds can easily represent these profiles, for example the attribute values of the above user profiles and interface profiles can be represented as follows:

userProfile1 = [

User_Profile = [identity = "user a"; current_position = "in transit";

inability = "deaf";]; Professional_Profile = [description = "security analyst";

interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";];

Requirements = “true”; Rank = 1]; userProfile2 = [

User_Profile = [identity = "user b"; current_position = "on site";

inability = "blind";]; Professional_Profile = [description = "security analyst";

interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";];

Requirements = “true”; Rank = 1]; Interface_Profile1 = [Requirements =

((User_Profile.identity == "user a") || (other.User_Profile.identity == "user b"))

&& (User_Profile.inability == "blind") && (User_Profile.current_position == "on site");

Rank = 1;],

Interface_Profile2 = [Requirements = (User_Profile.identity == "user a")

&& (User_Profile.inability == "deaf") && (User_Profile.current_position == "in transit");

Rank = 1;],

Note that these exhibit some (rather arbitrary) structure. Flat ClassAds yield long unstructured profiles with all the semantics pushed to the top level. Structured ClassAds yield more flexible profiles able to represent richer metadata. There needs to be an extensive exploration of the use of profiles in order that such structure can be usefully defined.

A hash map can be created between a ClassAds profile and an object representing the user interface. New hash map entries can be added to the map table using the key-value pairs, for example for Interface_Profile 2:

interfaceMap.add("[" +

"Requirements = " + "(other.User_Profile.identity == \"user a\")" + "&&" + "(other.User_Profile.inability == \"deaf\")" + "&&" + "(other.User_Profile.current_position == \"in transit\");" + "Rank = 1;]", "In Transit interface for deaf people.");

IADIS International Journal on WWW/Internet

143

For this example the object representing the user interface is a dummy description (“In Transit interface for deaf people”) of a matching dummy interface.

A GT4 client can be used to submit requests to MAX. The request specifies the user preferences as ClassAds, for example:

String userProfile = "[" +

"User_Profile =" + "[identity = \"user a\";" + "current_position = \"in transit\";" + "inability = \"deaf\";];" +

"Professional_Profile = " + "[description = \"security analyst\";" + "interests = \"GSMI Alerts\";" + "site = \"TCD\";" + "grid_operation_centre = \"Grid-Ireland GOC\";];" +

"Requirements = true; " + "Rank = 1;]";

Object interfaceProfile = test(userProfile);

If such a request is submitted the results (e.g. as logged by the GT4 client) will be as follows:

(Client) - Sending: [EM: Payload: [

User_Profile =[identity = "user a"; current_position = "in transit";

inability = "deaf";]; Professional_Profile = [description = "security analyst"; interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";]; Requirements = true; Rank = 1;]]

(Client) - Received [EM: Payload: In Transit interface for deaf people.] -------------------------------------------- - User Profile : [ User_Profile =[identity = "user a"; current_position = "in transit"; inability = "deaf";]; Professional_Profile = [description = "security analyst"; interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";]; Requirements = true; Rank = 1;] - maps to : - Interface Profile : In Transit interface for deaf people. --------------------------------------------

MAX responds as follows (i.e. as logged by the GT4 container):

MAX-Agent: received : [EM: Payload: [ User_Profile =[identity = "user a"; current_position = "in transit"; inability = "deaf";]; Professional_Profile = [description = "security analyst"; interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";]; Requirements = true; Rank = 1;]] (MAX) - Processing [EM: Payload: [ User_Profile =[identity = "user a"; current_position = "in transit"; inability = "deaf";];

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

144

Professional_Profile = [description = "security analyst"; interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";]; Requirements = true; Rank = 1;]] of type class common.messages.SimpleExternalMessage (MAX) - Mapping Result : [ User_Profile =[identity = "user a"; current_position = "in transit"; inability = "deaf";]; Professional_Profile = [description = "security analyst"; interests = "GSMI Alerts"; site = "TCD"; grid_operation_centre = "Grid-Ireland GOC";]; Requirements = true; Rank = 1;] --> In Transit interface for deaf people.

This shows that MAX has received a request message, has made a decision based on the ClassAds, and then has returned the dummy description of the matching dummy interface.

9. FUTURE WORK

In the near future possible alternative representations of profiles will be explored. There is ongoing research elsewhere on interoperability between ClassAds and other representations for computational resources in distributed environments, for example translation between ClassAds and the GLUE schema (ClassAds-and-GLUE) is being investigated by the GLUE schema working group (GLUE Schema Working Group), and the Condor developers are investigating translation between ClassAds and XML (ClassadView). Future work will also include creation of a generic interface, a device description language, and an interface renderer. The generic Social Grid Agent template for manipulating ClassAds is sufficient to support interoperability between any solution developed for universal accessibility and economic market modeling, and this will also be explored.

10. CONCLUSION

This paper has briefly described a universal metagrid approach that can potentially host solutions to the two kinds of human disability: the actual and the situated. We have described the underlying social agent model, considered some potential use case scenarios and described a prototype implementation. This work has been conducted within the WebCom-G Project (WebCom-G-web) funded by Science Foundation Ireland (SFI). Our thanks to SFI.

REFERENCES

Book Akoumianakis, D., Stephanidis 2003, C., USE-IT: A Tool for Lexical Design Assistance. In C.

Stephanidis (ed.) User Interfaces for All Concepts, Methods and Tools. Mahwah, NJ: 9.

IADIS International Journal on WWW/Internet

145

Conference papers or contributed volumes Kathryn Cassidy, K., McCandless, J., Childs, S., Walsh, J., Coghlan, B., Dagger, D., 2006, Combining a

Virtual Grid Testbed and Grid eLearning Courseware, Crakow Grid Workshop 2006 CGW'06, October 2006, Crakow Poland.

Foster, I., Globus Toolkit Version 4: Software for Service-Oriented Systems, IFIP International Conference on Network and Parallel Computing, Springer-Verlag LNCS 3779, pp 2-13, 2006.

Maad S., 2003, Universal Access For Multimodal ITV Content: Challenges and Prospects, Universal Access. Theoretical Perspectives, Practice, and Experience: 7th ERCIM International Workshop on User Interfaces for All, Paris, France, October 24-25, 2002. Revised Papers, N. Carbonell, C. Stephanidis (Eds.), Lecture Notes in Computer Science, Springer-Verlag Heidelberg, ISSN: 0302-9743, Volume 2615 / 2003, January 2003, pp.195-208.

Maad S., Brian C., Kenny E., Pierantoni G., Lyttleton O., O'Callaghan D. 2006, Universal Acessibility to the Grid via Metagrid Infrastructure, EGEE User Forum, March 1-3, 2006, CERN, Geneva, Switzerland.

Pierantoni, G., Kenny, E., and Coghlan, B., An Architecture based on a Social-Economic Approach for Flexible Grid Resource Allocation, Proc.Cracow Grid Workshop 2005, Crakow, Poland, November, 2005, pp88 - 95

Pierantoni, G., Lyttleton, O., O'Callaghan, D., Coghlan, B., Maad, S., and Kenny, E., Interoperability using a Metagrid Architecture, Proc.ExpGrid workshop at HPDC2006, Paris, June, 2006, pp23 - 30

Pierantoni, G., Coghlan, B., Lyttleton, O., O'Callaghan, D., Kenny, E., Maad, S., Quigley, G., Social Grid Agents as a Metagrid technology: An approach for flexible resource allocation in heterogeneous Grid Middlewares, Proc.Crakow Grid Workshop 2006, Crakow, Poland, October, 2006.

Pierantoni G., Coghlan B., Kenny E., O'Callaghan D. 2007, A prototype of a social and economic based resource allocation system in grid computing, to appear in proceedings of the 6th International Symposium on Parallel and Distributed Computing, Hagenberg, Austria, July 5-8, 2007.

Kenny, S., and Coghlan, B.A., Towards a grid-wide intrusion detection system. In Peter M.A. Sloot, Alfons G. Hoekstra, Thierry Priol, Alexander Reinefeld, and Marian Bubak, editors, Advances in Grid Computing - EGC 2005, LNCS3470, pages 275-285, Amsterdam, The Netherlands, February 2005. Springer.

Stephandis, C. 2000, From User interfaces for all to an information society for all: Recent achievements and future challenges, Proceedings of the 6th ERCIM Workshop User Interfaces for All, October 2000, Italy

Stephanidis, C., Savidis, A., and Akoumianakis D. 1997, Tutorial on Unified Interface Development: Tools for Constructing Accessible and Usable User Interfaces. Tutorial no. 13 in the 17th International Conference on Human Computer Interaction (HCI International'97), San Fransico, USA, 24-29 August. [Online] Available: http://www.ics.forth.gr/proj/at_hci/html/tutorials.htm

Reports Gilman, A. S., Vanderheiden, G., Zimmermann, G. 2003. Universal Design and the Grid, working draft,

Trace R&D center, College of Engineering, University of Wisconsin-Madison. Kenny S., Dudzinski S., Coghlan B., 2007, A Grid Security Monitoring Infrastructure, paper in

progress, Department of Computer Science, Trinity College Dublin. Maad, S., Coghlan B., Pierantoni G., Watson R., Kenny E., 2007, Towards Greater Grid Universal

Access, paper in progress, Department of Computer Science, Trinity College Dublin, 2007. Research and Markets 2005, 3G: Taking Mobile to the Next Level, TelecomView, Jan 2005, Pages: 88,

http://www.researchandmarkets.com/reportinfo.asp?report_id=295026

UNIVERSAL ACCESSIBILITY TO THE GRID: A SOCIAL AGENT MODEL FOR THE ROAD AHEAD

146

Webpages BSL-web, British Sign Language, http://www.british-sign.co.uk/ ClassAds-web, http://www.cs.wisc.edu/condor/classad/ ClassAds-and-GLUE, http://home.fnal.gov/~garzogli/Glue2OldClassadMapping/Glue-v1.2/glue-

oldclassad-mapping.pdf ClassadView, http://pages.cs.wisc.edu/~mdiallo/Documents/ClassadView.ps Condor-web, http://www.cs.wisc.edu/condor/ Crossgrid-web, CROSSGRID, http://www.crossgrid.org/ EDG-web, http://eu-datagrid.web.cern.ch/ EG-web, Enginframe, http://www.enginframe.com/docum/ EGEE-web, EU FP6 Project: Enabling Grids For E-sciencE, http://www.eu-egee.org/ EGEE-WMS-web, http://server11.infn.it/workload-grid/documents.html Genius-web, Genius Portal, https://genius.ct.infn.it/ GGUS-web, GGUS Global Grid User Support, https://gus.fzk.de/pages/home.php GILDA-web, GILDA testbed, https://gilda.ct.infn.it/ Globus-web, http://www.globus.org/ GT4-web, http://www.globus.org/toolkit/docs/4.0/common/key/ GLUE Schema Working Group, http://forge.gridforum.org/sf/projects/glue-wg GridPP-web, GridPP Project, http://www.gridpp.ac.uk/ Infosys-web, Infosys Technologies Ltd., http://www.infosys.com/ JDL-web, https://edms.cern.ch/file/555796/1/EGEE-JRA1-TEC-555796-JDL-Attributes-v0-8.pdf Maxheadroom-web, Max Headroom Chronicles, http://www.maxheadroom.com/mh_home.html MD-web, Migrating Desktop, http://desktop.psnc.pl/ MIDP-web, http://java.sun.com/products/midp/ OGF-web, Open Grid Forum (GGF), http://www.ogf.org/ P-Grade-web, P-Grade Portal, http://www.lpds.sztaki.hu/pgportal/ SMIL-web, SMIL 2.0, Synchronized Multimedia, W3C, http://www.w3.org/AudioVideo/ Snort-web, http://www.snort.org/ WebCom-G-web, Middleware to Hide the Grid, http://www.webcom-g.org/ WML-web, http://en.wikipedia.org/wiki/Wireless_Markup_Language WSDL-web, http://www.w3.org/TR/wsdl Xforms-web, Xforms 1.0, W3C, http://www.w3.org/TR/2002/WD-xforms-20020821/