GP 065
GP 065
market or for a specific customer. It is also relevant to business analysts, process engineers, developers, and usability professionals developing composite applications for internal business use.
Acknowledgements
We wish to thank all those people whose hard work went into the creation of this book. Thanks to the SAP xPD team for using the Contextual Design method and for producing a successful application that we
can use as an example. We also want to thank the SAP xApp design
group for providing input and snapshots of the actual design process.
We especially want to thank Hugh Beyer, a wonderful writer and cofounder of the Contextual Design process, for his writing, editing, and
negotiating support, without whom this book would not exist.
13
Introduction
Enterprise applications are in a state of crisis. The demands of businesses on IT groups have never been greater. The intense pace of competition that comes with globalization is forcing businesses to look for
improvements in every process that they implement and in every
project that they undertake. Yet the techniques available for developing systems have not grown with the demand. Consequently, IT groups
are getting further and further behind. Whatever you recommend,
we were told on one reengineering project recently, just remember,
the IT group has a four-year backlog.
But now new systems concepts and new technology are ready to transform enterprise systems development. This book introduces the composite application development paradigm, supported by new technology that is now available. The SAP service-oriented business process
platform promises to radically reduce development delivery times and
dramatically simplify the work of defining, designing, and delivering an
enterprise-level application
What kind of problems beg for this new approach? Consider the following examples:
Youre in the business of producing a consumer producthair dryers. In this commodity market, its critical that you can identify an
unmet need, invent a new product concept to address that need,
and get the product on store shelves quickly, that is, within 36
months. Yet the whole process of product concept development is
unarticulated and unsupported. The business needs a system to help
manage product conceptsthe generation, development, and eval-
Introduction
15
16
Introduction
Provide new functionality that goes beyond simply integrating existing systems
17
18
Introduction
User-Centered Design
The second key concept behind developing composite applications is
user-centered designthe discipline of specifying a new system based
on an in-depth understanding of the detailed work practice of its users.
Composite applications are cross-functional, highly interactive systemsfar more complex than traditional forms-driven interfaces supporting database transactionsand are far more enmeshed in the day-
User-Centered Design
19
2 Hugh Beyer and Karen Holtzblatt: Contextual Design: Defining Customer-Centered Systems. Morgan Kaufmann Publishers, Inc., San Francisco 1997. For more information
about CD and InContext services, go to www.incontextdesign.com.
20
Introduction
User-Centered Design
21
Contextual Interviews
Collecting observational data about what people really do by watching people work and talking with people in the context of their daily
22
Introduction
life. Such field data is collected from all the key roles that make a
process work. This data reveals what is really going on across the
organization.
Work Modeling
Techniques that lay out the original field data in the form of diagrams
or other notations to represent the structure of the work, replete
with all the variation of the real business. These models show the
high-level business process as it really is with all the actual breakdowns and opportunities to guide redesign. They also show the lowlevel detail about roles and tasks that allow for design at the lower
levels.
Spectacular failures have resulted from enterprise system implementations that failed to respect the work practice nuances and business
model variations of the implementing organization. The key to successful requirements definition is to build detailed work models from reliable field data. The models articulate what people are doing, why they
are doing it, and how the activities of one set of people impacts and
drives the activities of others. This high-level picture of the as-is business process gives designers the tools to see what needs to be changed
or improved. The detailed data embedded in the work models can be
used to re-engineer work practice and to help the designer create a
new system solution, define the concrete functionality, and pick the UI
building blocks to use.
23
over and over again. In the design of enterprise systems, a few patterns
of work practice repeat frequently. People organize their action items
into task lists; they create triggers as reminders to do work; they follow
step-by-step procedures to perform complex actions; and they monitor
the state of the work that is under their control.
Its a waste of time and development resources to address these problems time and again, as though they were new. Its far better to design
a powerful, effective solution for each work pattern only once and
then, reuse this solution when needed. This is what the UI building
blocks are, namely, an encapsulated software solution supporting a
work practice pattern. Designed and tested with user-centered methods, they build effective user interface design and application flow into
the system that incorporates them.
Projects based on UI building blocks focus on the business problem
they are solving rather than on the details of UI design. Many development teams do not have the deep UI design skill required to design a
good interface; even those that do rarely have the time in their project
schedule to do more than barebones UI design. With all the other tasks
of system designstructuring the data, designing workflows, figuring
out how back-end connectivity should workUI design tends to take a
back seat. The UI building blocks help development teams create a system with a productive and pleasing user experience quickly.
Well now introduce some of the key UI building blocks provided by
the SAP business process platform, each of them supporting common
work patterns:
The Control Center provides a set of organizing views with an overview of the users entire work history on a particular project. It collects work-related information into a set of distinct views, enabling
the user to see what is urgent, track what is ongoing, and take action
when necessary.
24
Introduction
Worklists display the list of work items that the user is asked to act
upon. These work items can be pushed ad-hoc requests, systemgenerated business objects that require attention, or standard tasks
generated by workflow for which the user is responsible.
25
26
Introduction
solution area and target software market. It was clear from the beginning that elements of traditional PLMplanning (such as product planning and implementation), design (such as computer-aided design
tools), after-market provisioning (such as spare parts and service fleet
management), and so onwere fairly mature market segments. However, the initial activities of the product lifecyclethings like idea capture, breaking down requirements, developing and evaluating a new
concept, technical feasibility, and risk analysisappear to have been
largely ignored by other PLM software vendors.
Using a customer-centered design process similar to what we describe
in this book, the SAP xPD development team produced an application
for this area. It provides simple structures for surfacing and managing
new requirements and product concepts, evaluating them through
procedures that cut across multiple disciplines, and helping them to
evolve into formal product proposals. The SAP xPD xApp coordinates
the work of marketing research, business development, and product
engineering to ensure that all perspectives contribute to the product
concept. It provides summary management views of the number of
product concepts under consideration and the state of those concepts.
And it incorporates data from legacy systems without restructuring or
re-implementing those systems.
We use the SAP xPD project as an example of the recommended
design process throughout this book.
27
Visioning
Designing the new work practice of the organization as it will be
supported by the new system; created as a story by the entire team
Storyboarding
Working out the details of the new work practice, step by step, using
pictures augmented with text descriptions
145
Paper Prototyping
Testing and iterating the new design on paper, with users, by mocking up their own work scenarios in a rough paper prototype of the
new application
In addition to driving the design, the team needs to be able to communicate the design to stakeholders. We end this chapter by discussing
the role of personas, storyboards, and scenarios in sharing the redesign
concepts and creating buy-in with stakeholders and users. This is particularly important when developing applications for users internal to
the business.
6.1
146
they have a clear picture of how their solution fits into the whole of the
practice.
The primary intent of visioning is to redesign the work practice, not to
design a user interface. Also, because a visioning session is a group
activity, it fosters a shared understanding among team members and
helps them to use their different points of view to push creativity.
Whether youre a team of two or six, the visioning process helps you
work out the details of the new work practice for your users. It synthesizes design concepts into a new process that fits with the overall business process and the technical realities of the systems that will support
itbe they legacy applications, new systems, or composite applications. If a project doesnt require much new work practice design,
visions may simply give the team a way to lay out how the UI building
blocks will be used to support the existing process. Streamlining
projects are most likely to leave the basic structure of existing work
practice unchanged, although for more complex projects, visioning at
the task level ensures that the new design can support the existing process.
Visions can be visionary or follow the constraints of the existing business structure or technology. This decision is driven by the scope of the
project, but it does not determine the level of innovation regarding the
solution. The solution can be very innovative, even if traditional technology is used and vice versa. However, framing the vision by deciding
about the vision scope increases efficiency and gets more buy-in from
development.
Visioning need not be a time-consuming or complicated process. Its
possible and appropriate to do a few quick visions in a couple of hours
for a simpler project. After multiple visions, the team evaluates the
options and synthesizes them into a single vision incorporating the best
parts of each.
Throughout visioning and storyboarding (discussed in the next section), the team incorporates UI building blocks into their thinking. They
use the vision and consolidated data to drive selecting appropriate
147
building blocks, filling them out with appropriate work instances, and
tailoring them to meet the needs of users and the business process.
During visioning, the use of building blocks is just sketched outthe
details will be filled in when storyboarding takes place. Visioning is best
done when the major data collection has been completed and the
results analyzed.
Visioning is a relatively simple team process that works well to synthesize ideas into a coherent whole. It can be combined with more formal
presentations and working sessions, but for many projects, visioning is
a process that works well.
The Visioning Session
The first step to a visioning session is to review each model and the
affinity diagram, in turn, immersing the team in customer data so their
designs are grounded in the users work. Each designer or stakeholder
starts by reviewing the data individually, generating design ideas, or
envisioning new technology that better meets the needs of the users,
the business process, and the organization. Team members compare
ideas and begin to get a shared idea of how to respond to the data. This
individual activity helps to stimulate general team discussion about the
potential redesign, which prepares everyone for the visioning session
itself.
Anyone involved in visioning should participate in walking the data
that is usually hanging up on the wall of a team room. Without this
walk, the process is no longer data-driven; anyone could arrive and
offer his or her favorite design ideas based on feelings and prejudices.
Walking customer data results in the selection and tailoring of preexisting ideas to fit the needs of the population. Since the visioning process
evaluates visions based, in part, on their fit to the data, knowing the
data is important for anyone participating in the process.
The team also reviews the UI building blocks. Just as walking the data
puts the customer data in the designers head, reviewing the design
patterns puts the technology in their head. When customer data and
148
149
150
6.2
151
6.3
Iterating Design
Regardless of project type, whether streamlining, surfacing, or inventing, each team must test the proposed user interface and overall system design. Managing risk means ensuring that the design works for
the people and the business process, and is bought into by the people
who will be using the application. Mock-up testing is the best way to
simultaneously test the design, discover overlooked functions, and
involve stakeholders in co-creating the final solution. For product companies, iteration of the design finalizes the requirements, tests the
152
design for its use across companies, and generates sales excitement
among customers. No matter what the project type, mock-up testing is
critical to a teams success.
Even when based on data, the design is actually a theory about how
users can work better. To find out if this theory is correct, it must be
testedand it can be tested only with the people who will use it. But
usersbusiness workersare not data modelers or systems designers.
They do not understand the implications of an object model or a flow
model on their own work practice. They cannot even articulate their
work practice because it is tacit, so how can they tell if changes to the
system and their work practice will work?
An accurate test of the new application depends on a representation of
the system that users can both understand and interact with. This
means the team must represent their ideas as a user interface. Mockup testing lets users interact with user interface prototypes as though
they were real. Users can provide reliable feedback on whether they
like the work practice that results. During the mock-up interview, the
designer can get feedback on low-level details of the system design
that would be very difficult to confirm in any other way.
Low-Fidelity Prototype Testing
The fastest and most efficient way to build the first system prototype is
in paper, using normal stationary supplies. Card stock provides a stable
background to simulate the screen. Sticky notes effectively simulate
anything that might be moved during an interview, such as menus, dialogs, or buttons. Sample content is put on a removable sheet so that
users can replace it with their own, real content during the interview.
Designs that include new hardware can use other kinds of props to
simulate devices, robots, panel interfaces, and whatever else is needed.
The final prototype may be rough, but it represents both the systems
structure and its behavior.
Figure 6.2 shows an example of a low-fidelity paper prototype illustrating the idea of organizing requirements within the SAP xPD Work Center. Similar mock-ups along with other pieces were presented to the
Iterating Design
153
users who pretended to use it for their real work. Changes to the
design were made in the moment in response to issues. This process
was used to reveal insights about what functionality is needed for an
efficient management of requirements and how users wanted to organize their buckets of requirements, e.g. personal collections vs. formal
requirements structures.
Figure 6.2 Example of Low-Fidelity Paper Prototype for Requirements Within Management Work Center
154
6.4
The kind of project you have affects how you use visioning, storyboarding, and prototyping. Here are some ideas for tweaking the process
based on your project type:
Surfacing and inventing projects benefit from running visioning sessions
after consolidating requirements and building an affinity diagram.
Inventing projects, because of their wide impact, may run multiple
visioning sessions with different stakeholders in the project. This is a
useful way to get organizational buy-in, including buy-in from the client organization that has to adopt the change. By seeing and contributing to early ideas, the client organizations task of introducing the
new application becomes much easier. Product groups need to con-
155
156
6.5
Communicating a Design
Communicating a Design
157
are getting and how it will affect them, producing buy-in and getting
feedback on the design. Product developers can show marketing
what the product will do, both for buy-in and for preselling to customer prospects. The vision shows developers what will be required
of them so they can start investigating technology issues. For management, the team can show what is being created and why there is
a need for it. At this point in the process, many teams organize sharing events to communicate the status and direction of their work.
158
Product Manager
Needs
Goals
Communicating a Design
159
Index
A
B
Best practice 29
Best-Practice Owner 137
Breakdowns 85
Business process 35
Business process reengineering 35
C
CDTool 71, 77
Change 40
Change management 41
Collaborative work sequence 66
Communication 157, 171
Complex action 142
Composite application 17
Concept Introduction Shepherd 132
Consolidating data 106
Consolidation 174
Context maps 141
Contextual action 121, 126
Contextual design 20, 47
Contextual interview 22, 60, 64, 65,
107, 173
Contextual work 114, 117
Control Center 24, 99, 115
Cultural change 43
Cultural model 86
Customer blitz 74
D
Dashboard 25
Data modeling 174
Design idea 66
Direct UI mapping 74
G
Gate Keeper 137
Guided action 127
Guided Procedure 25, 37, 109, 122
I
Individual 35, 167
Individual interpretation 73
Individual user productivity 38
Innovation 161
Innovation cube 30
Innovation Driver 132
Interpretation 174
Interpretation session 71
Interruption 66
Inventing 34, 55, 61, 69, 88, 108, 155,
162, 173
Iteration 152, 170
K
Key performance indicators (KPIs) 43
M
Management initiative 168
Message 133
N
Next practice 29
O
Object instance view 25, 124
Observational note 71, 77, 90
Ongoing work-tracking 134
Overview 133
Owner 83
Owner of a collaborative work
sequence 66
Index
181
P
Packaged composite application
(PCAs) 17
Paper prototype 107, 146, 154, 175
Personas 158
Physical model 86
Portfolio Manager 137
Problem 66
Problem analysis 60, 173
Procedure 41
Process Initiator 135
Process Overseer 136
Process Owner 135
Process role 130, 134, 167
Process Step Owner 135
Project activities 59
Project scope 48, 173
Project structure 47, 51
Proof-of-concept prototype 57
Prototype 57, 60, 61, 107, 153, 173, 175
Prototype interviews 61
T
Task 138
Task analysis 81
Team interpretation session 71
Trigger 66, 82
U
UI building block 23, 60, 74, 90, 109,
111, 145
UI design 61
UI mapping 60, 74, 175
User Environment Design model 113
User-centered design 19
V
Q
Quality/Policy Watcher 137
Quick action 121
View 142
Vision 157
Visioning 60, 145, 146, 174
Visioning session 148
R
Redesigning work practice 35
Responsibilities 42, 66, 78
Risk mitigation 41
Role 42, 78, 94, 130
Role analysis 78
S
SAP NetWeaver 18
SAP xApp Product Definition (SAP
xPD) 26
SAP xApps 18
Scenario 158
Scoping 48
Secondary Work Center 140
Sequence model 90
Service-oriented architecture (SOA)
169
Simple action 126, 142
Steps 84
Storyboard 158
Storyboarding 145, 147, 151
182
Index
W
Watch list 66
Work actor 83
Work Center 24, 95, 109, 118
Work group 35, 168
Work group collaboration 37
Work list 25, 66, 133
Work model 71, 76
Work modeling 23
Work object 66, 79, 80, 83
Work responsibilities 80
Work role 130, 133, 136
Work zooming 114