+ All Categories
Home > Documents > A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction,...

A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction,...

Date post: 29-Jan-2016
Category:
Upload: leon-holt
View: 217 times
Download: 0 times
Share this document with a friend
Popular Tags:
37
A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università di Bari, Italy
Transcript
Page 1: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

A Meta-design approach supporting "unwitting" programmers

Antonio Piccinno

Interaction, Visualization and Usability Lab

Dipartimento di Informatica, Università di Bari, Italy

Page 2: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

22Antonio Piccinno – Talk @ L3D – January 23, 2008

IVU Group

IVU group (lnteraction, Visualization and Usability group), supervised by Prof. Maria Francesca Costabile, has the following research interest:

End-User Development

Visual Languages

Multimedia and MuItimodal human-computer interation

Information Visualization

Visual Data Mining

Usability Engineering

E-learning systems Interfaces

Page 3: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

33Antonio Piccinno – Talk @ L3D – January 23, 2008

IVU People

Maria Francesca Costabile (Full Professor)

Paolo Buono (Assistant Professor)

Rosa Lanzilotti, Antonio Piccinno, Carmelo Ardito

(Research Collaborators)

Francesca Montinaro, Nicholas Caporusso, Adalberto Simeone

(PhD Students)

Thomas Pederson(Visiting Researcher,

Umea University, Sweden)

Other collaborators and students

Page 4: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

44Antonio Piccinno – Talk @ L3D – January 23, 2008

Collaborations

On topics in this seminar:

Prof. Piero Mussio Dip. Informatica e COmunicazione (DICO) - University of Milan - Italy

Dr. Daniela Fogli Dip. di Elettronica per l’Automazione (DEA) - University of Brescia - Italy

Dr. Loredana Parasiliti ProvenzaDip. Informatica e COmunicazione (DICO) - University of Milan - Italy

Page 5: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

55Antonio Piccinno – Talk @ L3D – January 23, 2008

Outline

Difficulties in HCI processUser diversityCo-evolution of user and systemICE (Interaction and Co-Evolution) modelUnwitting software developmentThe Software Shaping Workshop design methodologyCase studiesConclusions

Page 6: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

66Antonio Piccinno – Talk @ L3D – January 23, 2008

Communication gap

Users and software designers adopt different reasoning strategies:

heuristic vs. algorithmic

examples, analogies vs. deductive abstract tools

concreteness vs. abstraction

Users are forced to express their problems in alien “computerese” and play the role designers think users have to play

… but users are domain experts and owners of the problem

Page 7: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

77Antonio Piccinno – Talk @ L3D – January 23, 2008

Problematic aspects affecting HCI

User Diversityusers are different in culture, goals, tasks, etc., even in the same community

Co-evolution of users and systems

“Using the system changes the users, and as they change they will use the system in new ways”

Nielsen 1993

“The individual is a moving target. Design for the individual of today, and the design will be wrong tomorrow […]. This is because as individuals gain proficiency in usage, they need different interfaces then were required when they were beginners”

Norman 2005 New model-based approaches to HCI are needed to identify and frame not

only the characteristics of the interaction process, but also to consider the co-evolution process

Page 8: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

88Antonio Piccinno – Talk @ L3D – January 23, 2008

social & organizational

context

technology

cycle 2

tasks

cycle 1

artifacts

Interaction and Co-Evolution (ICE) model

materialization

interpretation materialization

interpretation

i(t0) i(t1) … i(tn)

Inspired by [Carroll and Rosson 1992][Bourguin et al. 2001]

Page 9: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

99Antonio Piccinno – Talk @ L3D – January 23, 2008

Improving HCI

Developing interactive systems:

that are inspired by the “world” in which end users work (metaphor)

whose interaction style (messages + actions) is based on lexicon and signs and on working strategies that are familiar to end users

Interaction languages exploit end user traditional languages

Page 10: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1010Antonio Piccinno – Talk @ L3D – January 23, 2008

“one size fits all” Vs “one-task”

Too difficult to use, to learn and too complexGeneral purpose tools are not suitable for end usersPersonalization feature

Very few functionalities: only the needed onesEasy to use

general purpose tools one-task tools

Tools supporting a limited set of tasksfew functionalities aimed at accomplishing the tasks for a specific purpose or for a specific user community

Page 11: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1111Antonio Piccinno – Talk @ L3D – January 23, 2008

Turing Tar Pit

Turing Tar Pit: “Beware of the Turing Tar Pit, in which everything is possible, but nothing of interest is easy.”

Inverse of Turing Tar Pit: “Beware of the over-specialized systems, where operations are easy, but little of interest is possible.”

[G. Fischer 2006]

Page 12: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1212Antonio Piccinno – Talk @ L3D – January 23, 2008

Two classes of end-user activities

Parametrization or customization (by users): Activities allowing users to choose among presentations, behaviours, interaction modalities (foreseen by designers)

Tailoring (by users): Activities that require the creation or the modification of a software artifact

direct manipulation

visual programming

programming by example or by demonstration

macro

Scripting languages

End User Development (EUD):“End User Development is a set of activities or techniques that allow users of software systems, who are acting as non-professional software developers, at some point to create or modify a software artefact ” [EUD-Net 2003]

[Costabile, M. F., et al. HCC 2003]

Class 1

Class 2

Page 13: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1313Antonio Piccinno – Talk @ L3D – January 23, 2008

Software-related activities

adapted by Ye, Y. and Fischer, G. 2007. Designing for Participation in Socio-Technical Software Systems. Proc. HCII 2007 (Beijing, China, Jul. 22-27, 2007). LNCS,Springer, 312-321.

End-users who                      Web contents                    Data-intensivecustomize                               developers                       researchers

Using softwareDeveloping software

Pure end-users

End-users who write macros

Developers usingdomain-specificlanguages

Softwareprofessionals

Class 1

Class 2

Page 14: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1414Antonio Piccinno – Talk @ L3D – January 23, 2008

Unwitting end user programmers

Children playing with a computer game are required sophisticated programming embedded in a motivated activity It is perceived as something easy and fun to perform It cannot be programming! Computer-based authoring tools allow them to construct interactive simulations, animations, and games

a lot of emphasis is made on constructionthey program by construction not by algorithm development

Programming is not the children goal; playing, constructing and deconstructing are their goalunwitting end user programmers

[Petre & Blackwell, VL/HCC 2007]

Page 15: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1515Antonio Piccinno – Talk @ L3D – January 23, 2008

Domain expert as unwitting programmers

End users not expert at all in computer science, nor are willing to be, and use computer systems for their daily work activities

They want software environments easily accessible, that they can “tailor” to their needs, task and habits without being aware of programming

They are Unwitting Software Developers

Page 16: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1616Antonio Piccinno – Talk @ L3D – January 23, 2008

From end-users to software professionals

Using software

 Softwareprofessionals

UnwittingSoftware

Developers

Developing software

UNWITTINGLY

Pure end-users 

Witting software developers

WITTINGLY

Page 17: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1717Antonio Piccinno – Talk @ L3D – January 23, 2008

Designing usable interactive systems

A design methodology, based on the ICE model, that creates different software environments supporting specific activities

Each environment provides all and only the tools to perform the desired activities

Few functionalities aimed at accomplishing the tasks for a specific purpose or for a specific user community

When users need more functionalities, the system should evolve

Page 18: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1818Antonio Piccinno – Talk @ L3D – January 23, 2008

The Software Shaping Workshop (SSW) methodology

A useful metaphor for conceptual design: artisan workshop

In several application domains, different communities of users cooperate to reach a common goal

Software environments, each devoted to a specific community of users, are organized as virtual workshops, called Software Shaping Workshops

Page 19: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

1919Antonio Piccinno – Talk @ L3D – January 23, 2008

Two kinds of Software Shaping Workshops

Application workshop is a SSW used by a community of end users to perform their daily tasks in a certain domain, it is properly designed for the specific needs of that community of end users

System workshop is a SSW used by a community of experts in the design team to generate and update other workshops, it is properly designed for the specific needs of that community of experts, e.g. software engineers, or HCI experts, or domain experts

Page 20: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2020Antonio Piccinno – Talk @ L3D – January 23, 2008

Meta-design

“Meta-design characterizes objectives, techniques, and processes for creating new media and environments allowing ‘owners of problems’ (that is, end users) to act as designers”

[Fischer et al. 2004, CACM, Special Issue on End User Development]

Our view:

A design paradigm that includes end users as active members of the design team and provides all stakeholders in the team with suitable languages and tools to foster their personal and common reasoning about the development of interactive software systems that support end users’ work

Page 21: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2121Antonio Piccinno – Talk @ L3D – January 23, 2008

Workshop network organization

An interactive system to support the work practice in a given application domain is

not a monolithic piece of software…

but a network of system and application workshops

The network levels:The meta-design level: where software engineers use a system workshop to prepare the tools to be used at the successive level

The design level: where HCI experts and user representatives cooperate to the design, implementation and validation of application workshops, using system workshops customized to their needs, culture and skills

The use level: where end users cooperate to achieve a task using application workshops

Page 22: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2222Antonio Piccinno – Talk @ L3D – January 23, 2008

W-HCI

W-End-UserX W-End-UserY

W-ReprX W-ReprYDesign level

Use level

W-SEMeta

design level

W-ReprZ

W-End-UserW W-End-UserZ

W-ReprW

to W-End-UserX to W-End-UserY

to W-End-UserW to W-End-UserZ

Page 23: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2323Antonio Piccinno – Talk @ L3D – January 23, 2008

Supporting co-evolution:the role of communication paths

Exchange paths: the paths along which the exchanges of data and programs occuramong the workshops at the same level

Request paths: concerned with the communications going from low levels to higher levelstrigger the co-evolution process, carrying on the feedback from end users (requests for workshop modification or extension)

Generation paths: represent the activity of using system workshops at a high level to generate, modify or extend workshops to be used at the lower levelnew or evolved workshops are made available to lower levels along such generation paths

Page 24: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2424Antonio Piccinno – Talk @ L3D – January 23, 2008

Supporting co-evolution:the role of communication paths

Exchange paths: the paths along which the exchanges of data and programs occuramong the workshops at the same level

Request paths: concerned with the communications going from low levels to higher levelstrigger the co-evolution process, carrying on the feedback from end users (requests for workshop modification or extension)

Generation paths: represent the activity of using system workshops at a high level to generate, modify or extend workshops to be used at the lower levelnew or evolved workshops are made available to lower levels along such generation paths

Page 25: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2525Antonio Piccinno – Talk @ L3D – January 23, 2008

Supporting co-evolution:the role of communication paths

Exchange paths: the paths along which the exchanges of data and programs occuramong the workshops at the same level

Request paths: concerned with the communications going from low levels to higher levelstrigger the co-evolution process, carrying on the feedback from end users (requests for workshop modification or extension)

Generation paths: represent the activity of using system workshops at a high level to generate, modify or extend workshops to be used at the lower levelnew or evolved workshops are made available to lower levels along such generation paths

Page 26: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2626Antonio Piccinno – Talk @ L3D – January 23, 2008

Achieving co-evolution

The experts reachable in the network analyze annotations, communicate among them using exchange paths (or request paths, if they in turn refer to the higher level), and agree on a possible solution to the notified problems, thus updating the corresponding workshop (along the generation path)

Co-evolution: the result of a combination of generation, request and exchange activities carried out throughout the lifecycle of the SSW network

All workshops and all stakeholders in the network may be potentially involved in the co-evolution process

Page 27: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2727Antonio Piccinno – Talk @ L3D – January 23, 2008

Case study: patient record

Paper-based patient records

Specific patient records for each ward even in the same hospital

One patient record each patient

Patient records are composed by modules

Each module contains specific field for collecting patient data

Nurse records the patient measurements

Page 28: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2828Antonio Piccinno – Talk @ L3D – January 23, 2008

Users and “unwitting” programmers

Hospital Managementit defines the needed modules for acceptance of a new patient

Receptionit is called to record new patients data

Head physician of the specific wards/he defines the patient record

Nurses/he fill in the patient record with data from patient daily measurements

Page 29: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

2929Antonio Piccinno – Talk @ L3D – January 23, 2008

The SSW network in the case study

W-SE

Design Level

W-HCIW-ReprPrimario

W-ReprDirezione Sanitaria

W-End-Infermiere

W-End-Primario

W-End-Accettazione

Meta Design Level

UseLevel

to W-End-Primario

to W-End-Infermiere

to W-End-Accettazione

Workshops preesistenti

Workshops realizzati

Workshops non realizzati

Page 30: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3030Antonio Piccinno – Talk @ L3D – January 23, 2008

The SSW network in the prototype

Meta-Design Levelframework Echo2 J-Creator, Eclipse

Design Level“W-ReprDirezioneSanitaria” is used by hospital management to define the reception needed modules “W-ReprPrimario” is used by the various wards head physicians “W-ReprHCI” is used by Human Computer Interaction experts to evaluate the SSW at “use level” usability

Use Level“W-End-Accettazione” is used by receptionists“W-End-Infermiere” is used by nurses“W-End-Primario” is used by head physicians to examine the patient record

Page 31: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3131Antonio Piccinno – Talk @ L3D – January 23, 2008

System Workshop

W-RapprPrimario is used by each head physician to create and update the specific application workshops “W-End-Infermiere” and “W-End-Primario” for their own ward

Page 32: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3232Antonio Piccinno – Talk @ L3D – January 23, 2008

Application workshop for Nurses

W-End-Infermiere is used by nurses to daily fill in the measurements on the patient (and required in the patient record)

Page 33: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3333Antonio Piccinno – Talk @ L3D – January 23, 2008

Application workshop for Reception

W-End-Accettazione is used by hospital receptionist to record new patient data

Page 34: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3434Antonio Piccinno – Talk @ L3D – January 23, 2008

Prototype architecture

AJAX

Primario Accettazione Infermiere

XMLXML

XML

XML

DB

Servlet

SERVER

CLIENT

Page 35: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3535Antonio Piccinno – Talk @ L3D – January 23, 2008

Others case studies

Mechanical engineering field

Medical domain

Tourism, Cultural and Geological fields

….

Page 36: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3636Antonio Piccinno – Talk @ L3D – January 23, 2008

Conclusion

A model-based methodology aimed at designing interactive systems that address the needs of different communities of users, in which operations are easy to perform

The SSW methodology bridges the communication gaps among the members of the design team that includes different experts: software engineers, HCI experts, end users as domain experts

Each expert is a stakeholder that proposes design solutions from his/her perspective

Each domain expert is an unwitting software developers

By relying on a novel model of Interaction and Co-Evolution processes, co-evolution of users and systems is supported

Page 37: A Meta-design approach supporting "unwitting" programmers Antonio Piccinno Interaction, Visualization and Usability Lab Dipartimento di Informatica, Università.

3737Antonio Piccinno – Talk @ L3D – January 23, 2008

Antonio PiccinnoAntonio Piccinno

[email protected]@di.uniba.it


Recommended