Information Technology Reference
In-Depth Information
than simply interviewing practitioners about
their working activities.
A system acceptable by its users should have
a gentle slope of complexity: this means it
should avoid big steps in complexity and keep
a reasonable trade-off between ease-of-use
and functional complexity. Systems might
offer users, for example, different levels of
complexities in performing EUD activities,
going from simply setting parameters to in-
tegrating existing components to extending
the system by developing new components
(Myers, Smith, & Horn, 1992; Myers et al.,
2003). The system should then evolve with
the users (co-evolution) (Arondi et al., 2002;
Bourguin et al., 2001), thus offering them
new functionalities when needed.
Co-evolution forces the design team in a
continuous development of the system. This
is carried out on one hand by end users who
can perform a tailoring activity adapting the
software environments they use to their own
needs and habits. On the other hand, end users
should collaborate with all other stakeholders
both in the design and in the evolution of the
whole interactive system.
layout of the tools employed in the domain such
as mechanical machines or chapter-based tools.
Our methodology emphasizes a perspective
on metadesign that goes beyond but includes
user-centered design and participatory design:
user-centered design relies on a deep study of
the end users, their tasks, and their involvement
in prototypes and system evaluation; participa-
tory design means that representatives of end
users participate in the design team. In our view,
metadesign means that design environments are
developed in a participatory way and provided to
end users, permitting them to shape their applica-
tion environments. Thus, end users play two main
roles in the life cycle of the interactive software
system: (1) they perform their working tasks; and
(2) they participate in the development of software
environments as stakeholders of the domain.
In the first role, as users performing work-
ing activities, end users can tailor the software
environment to their current needs and context.
Practitioners, such as mechanical engineers,
geologists, and physicians, often work in a team
to reach a common goal. The team might be com-
posed by members of different subcommunities,
each subcommunity with different expertise. Our
approach to the design of a software system in a
certain domain is to see the system as composed
of various environments, each one for a specific
subcommunity of end users. Such environments
are organized in analogy with the artisans
workshops, where the artisans find all and only
the tools necessary to carry out their activities.
Following the analogy, end users using a virtual
workshop, called Software Shaping Workshop
(SSW), find available all and only the tools re-
quired to develop their activities. A type of SSW
which allows end users to perform their daily tasks
are application workshops . End users may also
perform EUD activities, for example, by using
annotation tools permitting the definition of new
widgets (Carrara, Fogli, Fresta, & Mussio, 2002):
as a reaction to the annotation activity performed
by the end user, the workshop may transform the
3.
4.
soFtware shaping workshop
methodology
Starting from the above observations, three
principles are at the basis of our methodology to
design interactive software systems (Costabile,
Fogli, Mussio, & Piccinno, 2006a; Costabile,
Fogli, Lanzilotti, Mussio, & Piccinno, 2006b):
(1) the language in which the interaction with
systems is expressed must be based on notations
traditionally adopted in the domain; (2) systems
must present all and only the tools necessary to
perform the user work, without overwhelming
users by unnecessary tools and information;
and (3) systems must provide a layout conveying
implicit information by simulating the traditional
Search WWH ::




Custom Search