ibm user technologies © 2009 ibm corporation presentation subtitle: 20pt arial regular, teal r045 |...

36
IBM User Technologies © 2009 IBM Corporation http://w3.ibm.com/ibm/presentations User modeling in an information architecture with DITA Ian Larner User Technologies, IBM Hursley Lab, England [email protected]

Post on 22-Dec-2015

224 views

Category:

Documents


1 download

TRANSCRIPT

IBM User Technologies

© 2009 IBM Corporation

User modeling in an information architecture with DITA

Ian LarnerUser Technologies, IBM Hursley Lab, [email protected]

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation2

Why we are here

To discuss and try user modeling, biased …

… towards user modeling (manual or automatic) for IBM company use, to show our students real-life applications of user modeling.

… in such a way that they may get a hands-on experience

… as part of the 4th year CS411 module, Dynamic Web-Based Systems.

Use of user modeling in IBM

User modeling tool (IAWB) DITA XML

Delivery of user assistance (Eclipse help)

General theories of user modeling

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation3

Widespread use of user modeling in project teamsModeling of software, systems, user interfaces, and information

Range of IBM modeling tools (IBM Rational family)

User modeling in IBM

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation4

Why user modeling for information?

“An information [architecture] model is a resource that helps your team to deliver:

– The right content

– To the right people

– At the right time”

[Give the user what they need when they need it … in part by enabling them to adjust what they see to suit them.]

[From http://www.dcs.warwick.ac.uk/~acristea/courses/CS411/2008/UM.ppt] pertinent information

– Provide information that is pertinent to the context of the user and what they are doing

– Provide pertinent links to other resources for the context large amounts of information

– Provide just enough information

– Allow for “discovery”

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation5

What is a user model for information architecture? User model for information = information architecture model

Two aspects:

1. What user does with offering (user experience for offering)– What user does with offering (that the user needs information for)

– Users, scenarios, goals, tasks, subjects, ...

– Offering use vocabulary, presentation expectation, and continuum Need for, organization, and consistent (development of) information content for use of

the offering

2. What user does with information (applying the user model)– User interactions with information in specific product contexts [use model]

– User assistance categories, content classes, information types and content elements [information model]

– Standardized entry points to information [access model] DITA maps, topics, metadata, guidelines, … for consistent information development and

delivery

… or really also 3? What content producers do with information– Writer expectations, skills, assistance

– Component development and integration

– Enabling for consistency and reuse

– Building/serving needs and technology constraints

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation6

What information do users use?

Information use

Product/artifact use

1.2b.

2a.

Information Centers (Web)

Quick Start leaflet (Box)

UI Help or local Information Center

UI text & hover help

UI text & hover help

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation7

Elements of an information architecture user model

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation8

It’s generally acknowledged that content providers need to move to structured data to describe their content, and the structured data format of choice is XML.

DITA—the Darwin Information Typing Architecture—is an XML document technology that was developed by IBM and now owned as an OASIS standard and open source project.

Defining the model … and more … with DITA

IBM User Technologies

© 2009 IBM Corporation

User modelling with DITA

From usage scenarios to …DITA maps, user metadata, subject metadata,subject glossary, entities for reuse

Examples from IBM Information Architecture Workbench (IAWB)and raw DITA XML

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation10

DITA key ideas

Structured information based on XML. You follow a standard template for the information type (task, concept, reference, topic, mixed) or map.

– Specialization - Declare more precise semantics, constrain content models

– Generalization for interchange

Semantic tagging (adds meaning to the information) – <task> is a task and you can know what that implies.

– Domains for vocabulary common to many topics (eg on next slide)

Metadata (audience, platform, otherprops…) for additional personalization.

Architected reuse - through DITA maps, content reference, conditional processing, automatic linking and link checking.

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation11

Example: DITA topic, domain vocabularies

UI domain

Financial domain (possible future)

Highlighting domain

“task” information type

<task domains="(topic ui-d) (topic hi-d) ..." class="- topic/topic task/task ">

the <wintitle class="+ topic/ph ui-d/ wintitle ">Amortizer</ wintitle > window,…

<task id="amortizingloan">

<title>Amortizing the loan</title>

...

<taskbody>

<steps>

<step><cmd>Choose the Amortizer menu item</cmd>

<stepresult>The <wintitle>Amortizer</wintitle>

window displays.</stepresult>

</step>

<step><cmd>Enter the

<loanfactor>term</loanfactor>.</cmd>

<info>You <b>must</b> choose one of the

options.</info>

</step>

</steps>

</taskbody>

</task>

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation12

Example: DITA map, metadata, …

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation13

Welcome

Example scenario for following discussion

SelectBlend

Selectadditives

Summary& Serve

2

1

3

4

Tea Maker / Coffee Maker

T C

Tg

T

To

R

CSH CSH CSH CSH

“I want a standard (default) coffee”

“I need to install the Tea Maker”

“I want a tea, English Breakfast, milk, & 2 sugars”

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation14

User modeling process with DITA

1. Construct a use modelIdentify user roles and the scenarios/use cases for their use of the system.

Prototype UI & embedded/contextual information use.

2. Construct an information modelDefine user roles and other context metadata (ditaval files), identify information

needs in user assistance categories, content types, and information types

– UI Context UA. Work from UI context outward, to tasks and concepts (UI.UA ditamap)

– Task-based UA. Work from user goal contexts, through tasks, to concepts and reference (IC ditamap)

– Chunk and model content, select and type topics.

– Prototype navigation. Generate topic stubs.

Model information to meet user needs in various delivery contexts. Prototype build & delivery. Model information center back to DITA source.

Model for component development, authoring, and reuse

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation15

1. Construct a use model General process: Understand and model users and their tasks through

research, user demographics– Model scenarios and use cases. For interactions, identify:

– Roles– Use community definitions like Outside In Design (OID) Common

Customer Roles– Goals– UI component contexts– Delivery contexts

General process using IAWB– Use Task modeling perspective (Note advisors at bottom, “Method Exponent”)

– Import Samples > OID Common Customer Roles

– Add Organization to collect model

– Add Role from OID. Note range of roles, descriptions as node properties

– As child, add general Goal and its tasks

– Add Contexts for general UI components. Relate Roles to contexts

– Add Contexts for specific delivery. As child, add Role and its specific Goal.

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation16

The Administrator is responsible for performing all operational processes and procedures, ensuring that all IT services and infrastructure meet operational targets and that all configuration items are appropriately recorded.

The Administrator is responsible for performing all operational processes and procedures, ensuring that all IT services and infrastructure meet operational targets and that all configuration items are appropriately recorded.

Slide for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation17

2. Construct an information model (1, UI context) General process: Work from UI context outward, to tasks and concepts

– Define general user roles and context metadata (ditaval)

– Audience and product metadata– Define information needs in user assistance categories (ditamap)

– Embedded assistance (strings), Contextual help– Identify information types for UI contexts (cshelp)

– Define relationships for UI.UA topics (ditamap/reltable)

– Related links to tasks and concepts

General process using IAWB:– Use DITA Modeling perspective (Note advisors at bottom, “Method Exponent”)

– Create a new DITA map (standard DITA map)

– Add a topic for embedded assistance strings

– Add a topic to collect help topics for the UI component

– Add a cshelp topic for each UI page

– Add additional cshelp topics for other UI contexts

– Optionally , add a relationship table, then drag and drop nodes into cells

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation18

General filtering metadata defined in a ditaval fileGeneral filtering metadata defined in a ditaval file

Slide for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation19

Embedded & Contextual UA

defined in a ditamap file

Embedded & Contextual UA

defined in a ditamap file

Slide for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation20

3. Construct an information model (2, Task-based) General process: Work from user goals and content types, through tasks

– Define content types (IC ditamap)

– Overview – Define a topic, and add child concepts– Goals (e.g. Configuring, Using, …) - Define task hierarchy– Reference - Define reference sets

– Identify any special information types

– Specialized types CShelp (reuse), …– Custom use of std types; e.g.Topic/@outputclass=“container-xxx”

– Define relationships between topics (ditamap + reltable) General process using IAWB:

– Use DITA Modeling perspective

– Create a new DITA map (standard DITA map)

– Add a topic as the Welcome page for the information center component

– Add a topic for each content type set (e.g. Overview, Configuring, Using, …)

– For Overview, add child Concepts

– For goal content types, add child tasks or other maps (e.g. for Reference)

– Add a relationship table, drag and drop nodes into cells

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation21

Task-based UA

defined in a ditamap file

- Content type templates

- Information types

Task-based UA

defined in a ditamap file

- Content type templates

- Information types

Slide for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation22

Task-based UA, custom

Information type

defined in a dita topic file

Task-based UA, custom

Information type

defined in a dita topic file

Slide for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation23

4. Model information to meet user needs in various contexts

General process: Work from delivery contexts, …– Define use of metadata (ditaval)

– Audience, product, etc

– Define context-specific entities for reuse

– Define topic sets for delivery contexts (ditamap)

– Consider delivery technology (context help, information center, PDF, …)– Consider and exploit reuse of other information components

– Define extra relationships for delivery context (ditamap + reltable)

General process using IAWB (for Eclipse help output):– Create a ditaval for the delivery context; adjust actions for context

– Add key phrases and other entities for reuse to entities file

– Use DITA Modeling perspective

– Create a plugin DITA map

– Add references to other maps to form the TOC for the topic set

– Optionally, in IAWB create and use an Information Center model

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation24

Slide for reference

UI help for Tea Maker Include all user roles Include teamaker Exclude coffeemaker Include ui-only content Common entities file,

section for teamaker

UI help for Tea Maker Include all user roles Include teamaker Exclude coffeemaker Include ui-only content Common entities file,

section for teamaker

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation25

Slide for reference

User information center for Tea Maker Include user Exclude administrator and

business_customizer Include teamaker Exclude coffeemaker Exclude ui-only content

User information center for Tea Maker Include user Exclude administrator and

business_customizer Include teamaker Exclude coffeemaker Exclude ui-only content

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation26

Slide for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation27

Summary: User modeling process with DITA

1. Construct a use modelIdentify user roles and the scenarios/use cases for their use of the system.

Prototype UI & embedded/contextual information use.

2. Construct an information modelDefine user roles and other context metadata (ditaval files), identify information

needs in user assistance categories, content types, and information types

– UI Context UA. Work from UI context outward, to tasks and concepts (UI.UA ditamap)

– Task-based UA. Work from user goal contexts, through tasks, to concepts and reference (IC ditamap)

Model artifacts:– IAWB project files, including TMF

– DITA maps, DITA topics , specialized or custom information types?, specialized vocabulary domains?, metadata use for conditional processing (DITAvals), …

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation28

Final thought - Use model for adaptable or dynamic information

What can we adapt to?User role, user goal, activity, product, preferences, …

What input is available?– Content elements (semantics and structure), infocenter filter controls, linking

relationships, inference from user action, … user input, let the user inspect and correct plans, user preferences(metadata)

What can we affect?– Topics in sequence – include/exclude/reorder

– Content – include/exclude/adapt

– Linking – include/exclude/redirect

Example: Threads– Navigation (include/exclude for user preference)

– Content (include/exclude for thread and user preference)

– Content (adapt for user preference values)

– Linking (include/exclude for thread and user preference)

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation29

Thank you

Any questions or comments?

[The remaining slides are some pointers to IBM information resources about user modeling, DITA, and Eclipse help]

IBM User Technologies

© 2009 IBM Corporation

Information resources

Slides for reference

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation31

DITA resources

Publications:– DITA articles on developerWorks

(http://dita-ot.sourceforge.net/SourceForgeFiles/doc/DITA-dWarticles.html)

– DITA Cover Page (http://xml.coverpages.org)

Standards and tools:– OASIS DITA Technical Committee

(http://www.oasis-open.org/committees/dita/)

– DITA Open Toolkit (http://dita-ot.sourceforge.net/)

Community:– DITA Wiki (http://dita.xml.org) This site is being worked on at the moment,

should be up and flourishing by April.

– Yahoo! Group: dita-users (http://groups.yahoo.com/group/dita-users/)

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation32

Patterns: Model-Driven Development Using IBM Rational Software Architect (IBM Redbook)http://www.redbooks.ibm.com/abstracts/sg247105.html?Open

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation33

Modeling demystified (developerWorks article)http://www.ibm.com/developerworks/library/ar-usermod1/

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation34

The value of modeling (developerWorks article)http://www.ibm.com/developerworks/rational/library/6007.html

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation35

UML Resource Centerhttp://www-01.ibm.com/software/rational/uml/

IBM Information Development

User modeling in information architecture © 2009 IBM Corporation36

Centralizing help in EclipseTake advantage of Eclipse's dynamic help and plug-in architecture: http://www.ibm.com/developerworks/opensource/library/os-eclipsehelp/

Dynamic User Assistance in Eclipse Based ApplicationsThis article introduces you to Eclipse's powerful Dynamic Assistance framework and provides examples that illustrate how you can take full advantage of its capabilities. http://www.eclipse.org/resources/resource.php?id=435

Eclipse resources