Device Independence

50 %
50 %
Information about Device Independence

Published on November 1, 2007

Author: bjornh

Source: slideshare.net

Developing Device Independent Web Applications … and how to use XML for that purpose

Today’s lecture Purpose Discuss problems related to publishing content on devices with different output capabilities (i.e. Cell phones, Web browsers, Set-top boxes, radios). Goals Make you familiar with the W3C guidelines for device independent authoring (on which this presentation is based). Not intended to provide solutions, but rather point out important considerations.

Purpose

Discuss problems related to publishing content on devices with different output capabilities (i.e. Cell phones, Web browsers, Set-top boxes, radios).

Goals

Make you familiar with the W3C guidelines for device independent authoring (on which this presentation is based).

Not intended to provide solutions, but rather point out important considerations.

Today’s lecture DI (2) Background Authoring roles Applications and content Devices and Access mechanisms Personalization and Accessibility Affordability

Background

Authoring roles

Applications and content

Devices and Access mechanisms

Personalization and Accessibility

Affordability

Vision Make web content available to: Anyone (i.e. disabled) Anywhere (internationalization) Anytime (cell phones, TV, browser…) Anyhow (choice of visual, aural … output)

Make web content available to:

Anyone (i.e. disabled)

Anywhere (internationalization)

Anytime (cell phones, TV, browser…)

Anyhow (choice of visual, aural … output)

The Author perspective Democratic/marketing perspective Public authorities and companies want their content to be available to everyone. New publishing devices Many devices with different capabilities exist. Difficult to know which devices will be available in the future. Making specific solutions for each device is expensive and maintenance difficulties arise. Protecting investments Making content device independent (DI) protects the investment of producing the content.

Democratic/marketing perspective

Public authorities and companies want their content to be available to everyone.

New publishing devices

Many devices with different capabilities exist.

Difficult to know which devices will be available in the future.

Making specific solutions for each device is expensive and maintenance difficulties arise.

Protecting investments

Making content device independent (DI) protects the investment of producing the content.

The User perspective Access Mobile networks and broadband connections at home provides for new possibilities of media consumption. Devices When we buy new devices, we want to access all the content we usually access from computers.

Access

Mobile networks and broadband connections at home provides for new possibilities of media consumption.

Devices

When we buy new devices, we want to access all the content we usually access from computers.

U ser R elated C oncepts (URC) from W3C

URC: User Experience A user experience is a set of material rendered by a user agent which may be perceived by a user and with which interaction may be possible. Example: Course web pages

A user experience is a set of material rendered by a user agent which may be perceived by a user and with which interaction may be possible.

Example: Course web pages

URC: Device A device is an apparatus through which a user can perceive and interact with ”the web”. Examples: a mobile phone, a computer, a web page.

A device is an apparatus through which a user can perceive and interact with ”the web”.

Examples: a mobile phone, a computer, a web page.

URC: Access Mechanism An access mechanism is a combination of hardware (including one or more devices and network connections) and software (including one or more user agents) that allows a user to perceive and interact with ”the web” using one or more modalities (sight, sound, keyboard, voice etc).

An access mechanism is a combination of hardware (including one or more devices and network connections) and software (including one or more user agents) that allows a user to perceive and interact with ”the web” using one or more modalities (sight, sound, keyboard, voice etc).

URC: Perceivable Unit A perceivable unit is a set of material which, when rendered by a user agent, may be perceived by a user and with which interaction may be possible. Examle: a form on a web page, an image, vector graphics, an html paragraph

A perceivable unit is a set of material which, when rendered by a user agent, may be perceived by a user and with which interaction may be possible.

Examle: a form on a web page, an image, vector graphics, an html paragraph

URC: Web page A web page is a collection of information, consisting of one or more resources intended to be rendered simultaneously, and identified by a single URI. Example: One course web page.

A web page is a collection of information, consisting of one or more resources intended to be rendered simultaneously, and identified by a single URI.

Example: One course web page.

URC:Functional User Experience A functional user experience is a set of one or more perceivable units that enables a user to complete the function intended by the author for a given resource via a given access mechanism. Example: being able to find the time and place for a lecture from the course schedule on the course homepages from a given access mechanism (phone, computer…)

A functional user experience is a set of one or more perceivable units that enables a user to complete the function intended by the author for a given resource via a given access mechanism.

Example: being able to find the time and place for a lecture from the course schedule on the course homepages from a given access mechanism (phone, computer…)

Device Independent Access This leads to our basic goal: DIP-1: Device Independent Access For some web content or applications to be device independent, it should be possible for a user to obtain a functional user experience associated with its web page identifier via any access mechanism.

This leads to our basic goal:

DIP-1: Device Independent Access For some web content or applications to be device independent, it should be possible for a user to obtain a functional user experience associated with its web page identifier via any access mechanism.

Authoring Roles Authoring includes a variety of activities. An activity is performed by one or several individuals taking on a specific role. One individual can take on several roles. Several individuals can take on one role.

Authoring includes a variety of activities.

An activity is performed by one or several individuals taking on a specific role.

One individual can take on several roles.

Several individuals can take on one role.

Authoring roles Interface designers Layout designers Stylistic designers Interaction designers Navigation designers Content creators Business logic creators

Interface designers

Layout designers

Stylistic designers

Interaction designers

Navigation designers

Content creators

Business logic creators

Layout Designers Layout designers specify the physical placement of material on the output of the device. Typically this involves the arrangement of text, associated images and other media within a single page. However, the role of the layout designer changes when the access device has output mechanisms other than visual display. For example, the designer may need to specify the sequence in which information is spoken. The options available to the layout designer are heavily influenced by the capabilities of the target device, such as the size and resolution of its display.

Layout designers specify the physical placement of material on the output of the device. Typically this involves the arrangement of text, associated images and other media within a single page. However, the role of the layout designer changes when the access device has output mechanisms other than visual display. For example, the designer may need to specify the sequence in which information is spoken. The options available to the layout designer are heavily influenced by the capabilities of the target device, such as the size and resolution of its display.

Stylistic Designers The stylistic design of a site is essentially its "look and feel". It includes the selection of fonts and colors and the development of graphics used for elements such as icons, branding and backgrounds. It also includes stylistic elements of other kinds of media, such as audio and video. For example, where a device has spoken output, stylistic design might include the selection of the qualities of the particular voice used under various circumstances. Stylistic design is also heavily influenced by the capabilities of the target device and preferences expressed by the user.

The stylistic design of a site is essentially its "look and feel". It includes the selection of fonts and colors and the development of graphics used for elements such as icons, branding and backgrounds. It also includes stylistic elements of other kinds of media, such as audio and video. For example, where a device has spoken output, stylistic design might include the selection of the qualities of the particular voice used under various circumstances. Stylistic design is also heavily influenced by the capabilities of the target device and preferences expressed by the user.

Interaction Designers Interaction designers specify the way that users interact with a site. In particular, interaction designers specify how interactions occur within a page. This might include defining the order in which data is entered on a particular page. It might also include defining the particular kind of user interface abstraction employed for entering each value. Interaction design takes place at a level abstracted from the particular capabilities of the device. For example, an interface designer might specify that data entry for a particular field uses a mechanism where the user selects a single value from a set. The stylistic designer might interpret this as use of a drop-down list control on a particular device. Interaction design is often more abstract than other aspects of the design. It may be less influenced by the nature of the target device. Often, the same or similar interaction can be implemented on a wide range of devices, if a sufficiently abstract view is taken. The W3C XForms specification is an example of such an abstraction.

Interaction designers specify the way that users interact with a site. In particular, interaction designers specify how interactions occur within a page. This might include defining the order in which data is entered on a particular page. It might also include defining the particular kind of user interface abstraction employed for entering each value. Interaction design takes place at a level abstracted from the particular capabilities of the device. For example, an interface designer might specify that data entry for a particular field uses a mechanism where the user selects a single value from a set. The stylistic designer might interpret this as use of a drop-down list control on a particular device.

Interaction design is often more abstract than other aspects of the design. It may be less influenced by the nature of the target device. Often, the same or similar interaction can be implemented on a wide range of devices, if a sufficiently abstract view is taken. The W3C XForms specification is an example of such an abstraction.

Navigation Designers Navigation designers specify the paths that visitors may take through a site. Navigation is usually implemented by the use of links. The way in which such links are represented is defined by the stylistic design. For example, links might be presented as a list of text items, or as a complex, dynamic cascading menu. In either case, it is the set of links, rather than its presentation, that defines the available navigation from the current page.

Navigation designers specify the paths that visitors may take through a site. Navigation is usually implemented by the use of links. The way in which such links are represented is defined by the stylistic design. For example, links might be presented as a list of text items, or as a complex, dynamic cascading menu. In either case, it is the set of links, rather than its presentation, that defines the available navigation from the current page.

Interaction between roles

Applications and content Websites can be considered as applications that consists of Content Presentation Navigation Interaction Business logic

Websites can be considered as applications that consists of

Content

Presentation

Navigation

Interaction

Business logic

The role of XML/XSLT Content and navigation can often be described by custom XML-based formats. Presentation can be described in other XML-based formats (XHTML, WML, SMIL, SVG…) Interaction can often be described with XForms (XML+Xforms) + XSLT ==> Presentation + Interaction New devices can be added by providing new XSLT templatses This separates content, navigation, presentation and interaction.

Content and navigation can often be described by custom XML-based formats.

Presentation can be described in other XML-based formats (XHTML, WML, SMIL, SVG…)

Interaction can often be described with XForms

(XML+Xforms) + XSLT ==> Presentation + Interaction

New devices can be added by providing new XSLT templatses

This separates content, navigation, presentation and interaction.

Device Diversity Devices that can, or soon will be able to access web content, are diverse Workstations Personal Digital Assistants (PDAs) Mobile Phones Voice Systems Printers Interactive TV

Devices that can, or soon will be able to access web content, are diverse

Workstations

Personal Digital Assistants (PDAs)

Mobile Phones

Voice Systems

Printers

Interactive TV

Device Output Characteristics Devices have different output characteristics Screen size and resolution Colour capacity Video capacity Audio capacity

Devices have different output characteristics

Screen size and resolution

Colour capacity

Video capacity

Audio capacity

Device Bandwidth Characteristics Devices have different bandwidth characteristics 2400bit/S - 1Gbit/S Declared bandwidth Actual bandwidth

Devices have different bandwidth characteristics

2400bit/S - 1Gbit/S

Declared bandwidth

Actual bandwidth

Device Input Characteristics Devices have different input characteristics Keyboards Handwriting recognition Voice recognition Multitap/T9 Some input devices are unsuitable for some applications, i.e. multitap for writing a thesis.

Devices have different input characteristics

Keyboards

Handwriting recognition

Voice recognition

Multitap/T9

Some input devices are unsuitable for some applications, i.e. multitap for writing a thesis.

Other Device Characteristics User preferences Location Cost of access

User preferences

Location

Cost of access

What does this lead to What you should do: Aim for a structure where you can provide functional user experiences on all devices. Abstract device knowledge Consider providing harmonized user experiences for particular devices or classes of devices. This leads to Ease of maintenance Scalability to new devices

What you should do:

Aim for a structure where you can provide functional user experiences on all devices.

Abstract device knowledge

Consider providing harmonized user experiences for particular devices or classes of devices.

This leads to

Ease of maintenance

Scalability to new devices

Harmonized User Experience A Harmonized User Experience is a functional user experience that is sufficiently harmonized with the delivery context to meet the quality criteria of the author.

A Harmonized User Experience is a functional user experience that is sufficiently harmonized with the delivery context to meet the quality criteria of the author.

Example: Font substitution

Example: Forms

Example: Navigation

Mapping Navigation structure to devices <navigation title=&quot;Dokumentstrukturer&quot; base=&quot;/dokumentstrukturer06/&quot;> <menuitem href=&quot;&quot;> <text>Startsida</text> </menuitem> … <menuitem href=&quot;lab/&quot;> <text>Examination</text> <menuitem href=&quot;lab/lab1/&quot;> <text>Lab 1: DTD</text> </menuitem> <menuitem href=&quot;lab/lab2/&quot;> <text>Lab 2: XSLT</text> </menuitem> … </menuitem> … </navigation>

<navigation

title=&quot;Dokumentstrukturer&quot; base=&quot;/dokumentstrukturer06/&quot;>

<menuitem href=&quot;&quot;>

<text>Startsida</text>

</menuitem>



<menuitem href=&quot;lab/&quot;>

<text>Examination</text>

<menuitem href=&quot;lab/lab1/&quot;>

<text>Lab 1: DTD</text>

</menuitem>

<menuitem href=&quot;lab/lab2/&quot;>

<text>Lab 2: XSLT</text>

</menuitem>



</menuitem>



</navigation>

XSLT for adapting content to different devices index-fo.xsl index-wml.xsl index-html.xsl index-fo.xsl

References/Links W3C activities on Device Independence: http://www.w3.org/2001/di/ http://www.w3.org/TR/2003/NOTE-acdi-20030901/ http://www.w3.org/MarkUp/Forms/ http://www.cameronmoll.com/archives/000415.html (about mobile web design)

W3C activities on Device Independence: http://www.w3.org/2001/di/

http://www.w3.org/TR/2003/NOTE-acdi-20030901/

http://www.w3.org/MarkUp/Forms/

http://www.cameronmoll.com/archives/000415.html (about mobile web design)

Add a comment

Related presentations

Related pages

Device independence - Wikipedia, the free encyclopedia

Device independence is the process of making a software application be able to function on a wide variety of devices regardless of the local hardware on ...
Read more

Device Independence Activity - World Wide Web Consortium (W3C)

Device Independence Access to a Unified Web from Any Device in Any Context by Anyone. This Activity has now closed, and this page will not be updated any ...
Read more

Device Independence Principles - World Wide Web Consortium ...

Abstract. This document celebrates the vision of a device independent Web. It describes device independence principles that can lead towards the ...
Read more

Device independence | Article about device independence by ...

device independence [di′vīs ‚in·də′pen·dəns] (computer science) Property of a computer program whose successful execution (without recompilation ...
Read more

dict.cc Wörterbuch :: device independence :: Deutsch ...

Englisch-Deutsch-Übersetzung für device independence im Online-Wörterbuch dict.cc (Deutschwörterbuch).
Read more

A Declaration of Device Independence — Medium

A Declaration of Device Independence. The future of computing is at a crossroads. As our understanding of the Internet of Things (IoT) and the power of ...
Read more

Device Independence

Device Independence is a concept based on the idea of making services, applications and contents available to users regardless of the device used to enjoy ...
Read more

Device Independence and the Web - HP Labs

1 Device Independence and the Web1 Mark Butler, Fabio Giannetti, Roger Gimson, and Tony Wiley HP Labs, Bristol HPL-2002-249 The Web is steadily increasing ...
Read more

Talk:Device independence - Wikipedia, the free encyclopedia

Material that could be used. It may be possible to use some of this information (which was on the Device independent page) in this article: A program or ...
Read more

device independence - Mathematics and Computer Science

I/O Management 3 Communicating with device files Device files – Represent physical devices – Possibly used for both input and output – Need a ...
Read more