SlideShare una empresa de Scribd logo
1 de 59
Descargar para leer sin conexión
RSD3 2014 Symposium—Relating Systems Thinking and Design 3 Oslo 17 October 2014 
A Systems Literacy Manifesto 
Hugh Dubberly 
Dubberly Design Office 
www.dubberly.com/presentations/system_literacy.pdf
“…there is a good deal of turmoil 
about the manner in which our society is run 
.…the citizen has begun to suspect that the 
people who make major decisions that affect 
our lives don’t know what they are doing. 
…because they have no adequate basis to 
judge the effects of their decisions.” 
— C. West Churchman, 1968 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 2
“Government is not the solution 
to our problems; 
government is the problem.” 
— Ronald Reagan, 1981 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 3
“Those of us who have looked 
to the self-interest of lending institutions 
to protect shareholders’ equity, 
myself included, 
are in a state of shocked disbelief,” 
— Alan Greenspan, 2008 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 4
“I do not believe that human activity 
is causing these dramatic changes 
to our climate 
the way these scientists are portraying it…” 
— Marco Rubio, 2014 
(U.S. Senator and candidate for President) 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 5
Decision makers “not knowing what they are doing,” 
lacking “adequate basis to judge effects,” 
is not stupidity. 
It is a type of illiteracy. 
It is a symptom that something is missing 
in public discourse, in organizations and businesses, 
and in our schools. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 6
A Systems Literacy Manifesto 
We need systems literacy— 
in decision makers and in the general public. 
A body of knowledge has grown about systems; 
yet schools largely ignore it. 
It can be codified and extended. 
And it should be taught 
in design and management schools in particular, 
but also in general college education 
and in kindergarten through high school, 
just as we teach language and math at all levels. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 7
PART ONE 
Why do we need 
systems literacy? 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 8
Almost all the challenges that really matter 
involve systems, e.g., 
-- Energy and global warming 
-- Water, food, and population 
-- Health and social justice 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 9
And in the day-to-day world of business, 
new products that create high value 
almost all involve systems, too. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 10
For the public, for managers, and for designers, 
part of the difficulty is that these systems are 
-- complex 
made of many parts, richly connected 
-- evolving 
growing + interacting with the world 
-- probabilistic 
easily disturbed + partly self-regulating 
(not chaotic, but not entirely predictable) 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 11
The difficulty is compounded 
because these systems may not appear as “wholes”. 
Unlike an engine or a tornado or a human being, 
they may be hard to see all at once. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 12
Systems are often dispersed in space, 
their “system-ness” experienced only over time, 
rendering them almost invisible. 
Or we may live within these systems 
seeing only a few individual parts, 
making the whole easy-to-overlook. 
We might call these “hidden” systems— 
or gossamer or ethereal or translucent systems. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 13
For example, 
-- natural system 
the water cycle, weather, and ecologies 
-- information system 
operating systems, DNS, cloud-based services 
-- social system 
languages, laws, and organizations 
-- hybrid system 
local health-care systems and education systems 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 14
Water travels contionuously through a cycle. 
Cloud Formation Precipitation 
Ocean 
Lake 
Ground 
Rain Clouds 
Snow 
Evaporation + Condensation 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 15
Carbon also travels through a cycle. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 16
Sometimes large quantities can be tied up—sequestered— 
so that they are not traveling through the cycle. 
Changing stock levels—sequestering or releasing water or carbon— 
affects the climate as ice or carbon dioxide 
interacts with the planet’s weather system. 
Water 
Cycle 
Weather 
Cycles 
Carbon 
Cycle 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 17
In sum: 
We face the difficulties of untangling messes (taming wicked problems) 
and fostering innovation (economic and social), 
which require understanding systems— 
which are complex, evolving, and probabilistic— 
and “hidden” or “translucent”. 
What is more: systems are “observed”. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 18
“Anything said 
is said by an observer.” 
— Humberto Maturana, 
Theorem Number 1, 1970 
That is, as Stafford Beer said, 
“a system is not something given in nature,” 
it is something we define— 
even as we interact with it. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 19
“Anything said 
is said to an observer.” 
— Heinz von Foerster, 
Corollary Number 1, 1979 
What the observer “says” is a description, 
said to another observer in a language 
(they “share”), creating a connection 
that forms the basis for a society. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 20
Now, we can ask a simple question: 
How should we describe systems? 
Or more precisely, 
how should we describe systems that are 
complex, evolving, probabilistic— 
and “hidden”—and “observed” ? 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 21
PART TWO 
What is 
systems literacy? 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 22
Churchman outlines four approaches to systems: 
efficiency expert: 
reducing time and cost 
scientist: 
building (mathematical) models 
humanist: 
looking to our values 
anti-planners: 
living in systems, not imposing plans 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 23
We might consider a fifth approach: 
designer: 
prototyping and iterating systems 
or representations of systems 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 24
Basic systems literacy includes: 
-- vocabulary (content): 
a set of distinctions and entailments (relationships) 
-- “reading” (skills of analysis): 
recognizing common patterns in specific situations 
e.g., identifying—finding and naming—a control loop 
-- “writing” (skills of synthesis): 
describing the function of systems to others, 
mapping and diagramming 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 25
Systems literacy is enriched with: 
-- literature: 
a canon of key works of theory and criticism 
-- history: 
context, sources, and development of key ideas 
-- connections: 
conversations among and between disciplines 
e.g., design methods and management science 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 26
A vocabulary in systems begins with 
system, environment, boundary 
stocks, flows, delay (lag) 
source, sink 
process, transform function, cycle 
information (signal, message), 
goal (threshold, set-point), feedback 
circular processes, circularity 
closed-loop, open-loop 
viscous cycle, virtuous cycle 
explosion, collapse, dissipation 
negative feedback, positive feedback 
reinforcing, dampening, balancing 
stability, invariant organization, 
dynamic equilibrium, homeostasis 
tragedy of the commons 
behavior, action (task), measurement 
range, resolution, frequency 
sensor, comparator, actuator (effector) 
current state, desired state 
error, detection, correction 
disturbances, responses 
controlled variable, command signal 
servo-mechanism, governor 
hunting, oscillation, prediction 
control, communication 
teleology, purpose 
goal-directed, self-regulating 
co-ordination, regulation 
emergence 
feedforward 
static, dynamic 
first order, second order 
essential variables 
variety, “requisite variety” 
transformation (table) 
autopoiesis 
constructivism 
recursion 
observer, observed 
controller, controlled 
agreement, (mis-)understanding 
“an agreement over an understanding” 
learning, conversation 
bio-cost, bio-gain 
back-talk 
structure, organization, 
co-evolution, drift 
black box 
explanatory principle 
“organizational closure” 
self-reference, reflexive 
ethical imperative 
“generosity in design” 
structural coupling 
“consensual co-ordination of consensual co-ordination” 
“conservation of a manner of living” 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 27
Reading systems means 
recognizing common patterns in specific situations. 
e.g., 
-- resource flows and cycles 
-- transform functions (processes) 
-- feedback loops 
-- feed-forward 
-- requisite variety 
-- second-order feedback 
-- goal-action trees 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 28
Temperature Control Lever 
Temperature Indicator Pin 
Fixed Contact Screw 
50 | | | | | 60 | | | | | 70 | | | | | 80 | | | | | 90 
The bi-metal coil is connected 
to the temperature control lever. 
*The magnet insures a good contact 
and prevents erratic on/off signals 
to the heater in the event that the 
Moving Contact 
Bi-metal Coil 
Magnet* 
Moving moves The the The Power in Power to heater 
Consider the toilet and thermostat, 
different in form and structure. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 29
Goal = temperature at 18º C 
Air 
in the room 
Measure 
temperature 
Action 
activate heater 
Yet the toilet and thermostat 
are the same in function. 
Both are governors. 
Goal = water level at 10 cm 
Tank 
Measure 
water level 
Action 
open valve 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 30
Writing systems means 
describing the function of systems to others, 
through 
-- text 
-- images 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 31
Text can describe a system’s function, 
linking it to a common pattern. 
But text descriptions require 
mental gymnastics from readers— 
imagining both the behavior of the system 
and the abstract functional pattern— 
and then linking the two. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 32
Images of physical systems aid readers, 
though behavior can be difficult to depict. 
But function must be represented in diagrams, 
often with some degree of formalism. 
Learning to read and write 
one or more systems function formalisms 
is an important part of systems literacy. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 33
Donalla Meadows has a particular formalism. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 34
O’Connor & McDermott have another formalism. 
Reinforcing Balancing Limits to Success Addiction 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 35
Otto Mayr has a block diagram formalism. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 36
Yet in many cases, simple concept maps 
may be all the formalism required. 
Feedback: Overview 
Goal 
(Desired State) 
through system through environment 
Effect 
(Current State) 
Action 
System attempts to reach a goal; 
based on feedback, 
it modies its actions. 
(System acts both within itself 
and on its environment.) 
Measurement 
System measures its progress 
comparing current state to desired state 
determining the difference, 
and attempting to correct the ‘error.’ 
Feedback 
(transfer of information) 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 37
Yet in many cases, simple concept maps 
may be all the formalism required. 
Goal 
Feedback: Mechanism 
is embodied in 
a Comparator 
subtracts 
the current state value 
from 
the desired state value 
to determine 
the error 
System 
Environment 
Disturbances 
is measured by 
affects the 
. . . describes a relationship 
that a system desires to have 
with its environment 
. . . may be characterized as certain types 
typically falling within a known range; 
but previously unseen types may emerge 
and values may vary beyond a known range; 
in such cases the system will fail 
because it does not have requisite variety 
. . . has 
resolution – (Accuracy) 
frequency – (Latency) 
range – (Capacity) 
. . . has 
resolution 
frequency 
range 
can affect the 
input 
output 
a Sensor passes the current state value to . . . . . . . . . . responds by driving an Actuator 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 38
Physical World 
make up organized into provide structure to 
make up 
People 
Feeds Tables Databases 
Metadata 
Data/Document 
Storage System 
Graph 
News, 
Products, 
Related Links, 
Trademarks, 
Recirculation, 
Stocks 
Yahoo! 
Open Directory 
Infoseek 
used by 
generate 
generate 
can act as 
provide 
multiple 
views of 
data in a 
database 
Usenet 
Yahoo! 
Open Directory 
Dewey Decimal 
Library of Congress 
is used to create 
data that contains 
information about 
its format 
later organized by are 
create and maintain 
can assign quality ratings 
such as editor’s choice 
or cool site of the day 
are “sensed” by send data to send data to create an sends data to a 
Sensors Analyzers Indexers Index Post Processors 
Active Searchers 
Data/Document 
Retrieval System 
Raw Data 
Scraper 
Results Pages 
Metadata and 
Data 
Results Data 
Aggregator 
Templates 
sends data to an 
Views 
WWW Site 
Directory 
Databases 
Customization 
Settings 
WWW Pages 
Data/Document 
Creation Process 
3rd Parties 
WWW Sites Submissions 
WWW Users 
Crawlers 
Editors 
Algorithms 
Hierarchical 
Taxonomies 
Sorted Lists 
Organizing 
Principle 
WWW Document 
Databases 
Page 
Databases 
Data Objects 
Objects residing in databases that 
are not referenceable by a simple 
URI such as 
company names, addresses, phone 
numbers, names of people, 
personal profiles, horoscopes, 
credit card numbers, product 
names, prices, maps, event 
listings, news clips, weather 
WWW Objects 
Descriptions 
Attributes 
Keywords 
Personalization 
Profiles 
Options 
can contribute to the specification of 
can be stored in 
Behavioral 
History 
can contribute to the specification of 
Passive Searchers Group Profiles 
Environmental 
State 
Information 
Actions 
Goals 
Relevance 
Ranking 
Interpreter 
made using a sent to an 
could be redrawn by an 
could contain a 
Queries Source 
such as 
Representations 
Articulator 
Input Device Output Device 
Answers 
Persons, Places 
Things, Ideas 
User 
Context 
renders 
could directly receive 
could receive data directly from an 
should empower 
Understanding Internet Search 
Concepts, Systems and Processes 
8 August 1999 
Data/Document 
Retrieval Process 
require to enable toward 
exist in the 
involve 
is made up of 
describe 
represent 
such as 
such as 
such as 
represent 
describe 
create of that exist in the 
make of a 
sends data to an sends data to a displays 
in order to get 
generates 
generates 
is referenced by an 
could be contained in a 
are indexed by 
are indexed by 
are indexed by 
used by 
could be contained in a 
If a graph is in place, the index functions 
as a lightweight lookup table. 
If no graph is used, the index contains 
all of the data in addition to the lookup table, 
in a list format. 
Turns the user’s query 
into something readable 
by the index. 
Could handle: 
boolean operators 
spell checking 
word stemming 
case folding 
internationalization 
thesauri 
phrase searching 
related terms 
Any processes done on the data 
returned from the index. Could involve 
sorting, ordering, or compiling the data 
retrieved from the index. 
Provides the architecture, 
or “form” of the data for the 
creation of the results page. 
The templates can exist in 
multiple, localized formats. 
A collection of technologies that attempt 
to rank the relative value of a set of results. 
Google ranks results during the indexing process 
by examining the relationships created by the hyperlinks 
in the documents. More popular sites score higher. 
Clever does the ranking during post processing. It uses 
an iterative process that looks at the popularity of a 
site (much like Google) but does so in regard to the 
keywords used in the search. 
such as keyverbs, 
boolean operators, 
data type, media type, 
language or domain 
Scope is reduced by specifying 
additional restrictions upfront. 
Best for data retrieval. 
Scope is reduced by reducing 
choices from a found set, in a 
sequence of ever smaller sets. 
Best for document retrieval. 
... can be described by their 
goals, age, gender, income, 
geographic location, 
education, hardware and 
software, connection speed, 
member status 
The suggested starting point for reading is “People”. 
I would like to acknowledge Hugh Dubberly for his many suggestions, 
and Ken Hickman and Paul Pangaro for their contributions. 
Designed by Matt Leacock 
Search Concept Map, version 1.2 
Could be organized as 
cultural responses to human needs 
(Malinowski) roughly, 
Food 
Kinship 
Shelter 
Protection 
Activities 
Training 
Hygiene 
options that are 
stored either locally 
or on a server 
behaviors and 
states that are stored 
either locally or 
on a server 
large collections of 
profiles that can be 
analyzed to produce 
trend information 
click paths, 
session tracking, 
decision tracking 
browser type and version, 
language setting, IP address, 
current page, monitor size, 
color settings, javascript 
capability 
such as 
HTML streams 
Form and content 
are merged. 
Scrapes unwanted 
form information 
from the data 
stream. Classifies 
remaining data. 
Combines or interleaves 
data from multiple 
sources. 
such as 
XML, XUL, or RDF 
Data is self-describing 
and separate from the 
form it will eventually take. 
could contain an 
could contain a 
could contain an 
A repository of data that could be stored in RDF format. 
Can be updated independently of the index that references it. 
Entries in the graph can reference each other. For instance, 
a request for a stock quote of an entry could point to the 
symbol, the symbol could point to the company name and the 
current quote, the current quote could point to the quote history, 
and the quote history could point to a quote histogram. 
Creates a lookup table from all of the 
data fed into it. If a graph is not in use 
all of the data fed into it is stored as 
entries in the lookup table. 
I-search and PLS are existing technologies. 
... are the input devices 
of the data/document 
storage system 
Stored proxies of 
physical world objects 
and ideas 
Groups of WWW 
Objects in context 
Objects referenceable 
by a URI such as 
html, text, gif, jpeg, png, 
avi, mpeg, real, quicktime, 
wav, pdf, rss, xml, xul files 
Groups of WWW 
Pages in context 
describe 
make up 
are organized into provide structure to 
can be 
make up are organized into provide structure to 
are gathered by 
are gathered by 
generate 
generate 
are gathered by 
are an 
are an 
are an 
make up 
describe 
describe 
are represented by 
alphabetically 
by relevance 
by modification date 
Alexa 
Bigfoot 
At Hand 
paid 
volunteer 
text analysis 
link analysis 
meta data analysis 
... gather all of the text on a given 
web page, then continue gathering text 
on all of the pages linked to the given page, 
then follow the links on those pages, and so on. 
Inktomi 
Google 
Alta Vista 
Lycos 
are 
are 
are 
are used to create 
organized by 
later organized by 
act as 
contains an 
could be contained in 
control the display order of 
could be the same as the 
could be redrawn by the 
or ‘Layout Engine’ 
Combines form 
and content. 
Any device that can 
receive data and 
render it for the user. 
Could be by relevance, 
creation date, modification 
date, alphabetical, 
by source, by media type, 
involve progressive disclosure, 
pagination, or custom look and 
feel (themes) 
Any UI page or widget that 
displays the results data 
could receive data directly from an 
could directly receive 
could receive 
could receive data from an 
could be sent to a sends data to an 
makes use of 
such as 
such as 
should provide the required 
should help people attain their 
collect data for 
can pair data metadata from 
can influence 
can influence 
can influence 
can be collected and stored into 
can be stored in 
can be stored in contain data that can improve the specification of 
contains data that can improve the specification of 
contain data that can improve the specification of 
can be stored in 
can specify 
can specify 
rely on 
rely on 
Or more simply, 
Work, Play, Learn 
and 
Food, Clothing, 
Shelter, Love 
organize the form of 
could be 
could specify 
could be 
can be done by 
Amazon ranks related books and CDs by keeping track 
of the purchasing habits of groups (group profiles). 
Grapevine allows users to actively rank results 
(a customization process) but then attempts to guess 
what the user will want based on what it has learned 
(a personalization process). 
Direct Hit analyzes the time spent by users on a given 
result. It also keeps track of whether or not a user returns 
to the results page after viewing a result. If the user 
returns, the result receives a lower score. 
could be contained in a 
Netscape search 
concept map 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 39
Java 
Programming language 
is defined by the 
enables 
is defined by the ... Java Language Specification 43 
is used to write ... programs 24 
is used to write ... class libraries 10 
The Java language has roots in C, Objective C, 
SmallTalk, and LISP. 
As opposed to a purely procedural 
programming language. 
Java Native Interface (JNI) provides a method for calling native 
functions such as operating system or legacy library functions. 
Architecturally dependent machines that are available 
for nearly every contemporary operating system. 
Such as the object 
model, inheritance, 
modularity, 
abstraction, hierarchy, 
implementation 
hiding, information 
hiding, encapsulation, 
and polymorphism. 
Java virtual machine specification 
architecturally independent applications 
security model 
One application can run in multiple environments 
without being rewritten or recompiled. 
can be improved by 
implements 
garbage collection 
19 
20 
21 
Including memory and hard drive. 
Significantly improves virtual machine 
performance by translating groups of 
instructions from byte code to machine 
code rather than one instruction at a 
time. 
Goes beyond Just-in-Time compilation by 
examining the code as it runs and 
focusing optimization efforts on the most 
critical pieces of code as it executes. 
Dynamic compilation is enacted by the 
Java HotSpotTM virtual machine. 
Watching for data in memory that is no longer needed and freeing the memory for reuse. 
Other programming languages require programmers to free memory explicitly when a 
piece of data is no longer needed, which can increase the development effort. 
JSPA 
devices 
Is platform 
independent. It 
almost never can 
be read by the 
processor 
directly. 
that make 
10 13 
may 
contain multiple 
define 
may contain 
multiple 
implement 
implement 
may define required 
has 
have 
scope 
Class libraries are 
organized collections 
of prebuilt classes 
and functions used to 
create other classes. 
Class libraries can be 
part of the Java 
standard – meaning 
they have been 
ratified by the Java 
Community Process – 
or created by 
individual developers 
for their own or their 
company's use. 
useful for people 
learn and use 
Developers 
to create and run 
Java Community ProcessSM 
members join the JCP by signing the 
often discuss Java in 
works with 
supports the development of ... Java 0 
provides ... documentation 42 
owns the ... Java trademark 1 
make(s) ... SDKs 29 
makes versions of a ... JVM 18 
provides 
is represented on 
develops 
expert groups 
logo 
text editor 
4 
Basic source code that 
describes the graphical 
user interface. 
Does not include 
implementation details. 
programs 
and the 
internet 
What is Java Technology? 
This diagram is a model of Java™ technology. The diagram 
explains Java technology by placing it in the context of related 
concepts and examples, and by defining its major components 
and the connections between them. It shows how developers 
use Java technology to create programs that benefit people 
everywhere, and explains how computers and networks relate 
to Java technology. 
The diagram is intended to help developers who are familiar 
with one part of the Java platform understand other parts. It 
relates unfamiliar technologies to ones with which developers 
may already be familiar. The diagram also provides an overview 
for developers who are new to Java technology and an 
introduction for non-programmers who want to improve their 
ability to converse with developers. For more information, 
visit the web site at http://java.sun.com. 
Concept Maps 
The diagram takes the form of a concept map – a web of linked 
terms showing both overall structure and details. By showing 
everything – the forest and the trees – in a single view, concept 
maps help people visualize mental models and clarify thoughts. 
In concept maps, verbs connect nouns to form propositions. 
Examples and details accompany the terms. More important 
terms receive visual emphasis; less important terms and 
examples are in gray. Purple terms and purple lines indicate a 
process. Terms followed by a number link to terms preceded 
by the same number. 
Including getting information, communicating, 
collaborating, playing, working, creating, and buying 
and selling. 
Including news services, instant messaging services, 
e-mail services, communication software, collaboration 
software, discussion forums, games, the world wide web, 
productivity software, image-creation software, and 
marketplace services. 
Foundation Profile 
Specification 
Connected Limited 
Device Configuration 
(CLDC) Specification 
Connected Device 
Configuration (CDC) 
Specification 
Personal Profile 
Specification 
J2ME API Specification 
Mobile Information 
Device Profile (MIDP) 
API Documents 
Connected Limited 
Device Configuration 
(CLDC) API Documents 
Connected Device 
Configuration (CDC) 
API Documents 
Java Series 
Trademarks 
© 2002 Sun Microsystems, Inc. All rights reserved. 
Sun, Sun Microsystems, the Sun logo, Java, the Java 
coffee cup logo, J2EE, J2SE, J2ME, Enterprise JavaBeans, 
EJB, JavaBeans, Java Card, Java Community Process, 
JCP, Javadoc, Java Embedded Server, JavaHelp, JavaServer 
Pages, JSP, Java TV, Java 3D, Jini, JVM, PersonalJava, 
Solaris, and SunOS are registered trademarks of Sun 
Microsystems, Inc. 
Any errors or omissions are the responsibility of the 
authors. Comments are welcome; contact Audrey Crane 
at audrey@dubberly.com. 
February 14, 2003 
24 26 
Acknowledgements 
Prepared for the Sun Developer Web Services Group 
by Dubberly Design Office/Devine/Faris/Saddler. 
Significant contributions from the following people 
made this map possible: Josh Bloch, Lisa Friendly, 
Doug Kramer, Paul Pangaro, Robert Patten, Monica 
Pawlan, Carla Schroer, Leigh Shevchik, Alan Sommerer, 
Ken Tallman, and James Urquhart. 
Thanks also to Cindy Bloch, Adam Cohn, Andrey 
Dikanskiy, Larry Freeman, Dale Green, Joann Gray, 
Cori Kaylor, Onno Kluyt, Stuart Marks, Shawn Moore, 
Chuck Mosher, Shaler Ney, Eduardo Pelegri-Llopart, 
Lori Uzzo, Brad Wetmore, and Hinkmond Wong. 
Java object model 
Java virtual machine 
(JVMTM) 
Development process 
is a name for a ... programming language 
is also a name for ... SDKs and JREs 
defines a set of ... APIs 13 
is implemented as a set of ... platforms 27 
can be used to write ... programs 24 
such as ... applications 28 
enable ... services 26 
run on and connect ... devices 25 
JavaTM2 Platform: 
end-to-end solutions for enterprise servers and applications for desktop servers and applications for consumer and embedded servers and applications Documentation 
or 
refer to ... objects 15 
are 
constrained by 
are 
constrained by 
are invoked by 
or on ... objects 15 
define a location to store 
can be 
are processed by the to create 
may be an 
may override existing 
may define new 
may rely on parent's 
contain multiple 
are ratified by... the JCP 2 
serves as the 
defines the 
behavior of ... APIs 13 
define 
can be 
used 
through 
inherits methods and properties from a 
may also be a 
field types can be 
field or class types can be... classes 12 
may implement 
are runtime instances of ... classes 12 
have 
are created by 
implement 
running in RAM are 
may be categorized as 
are constrained by 
are distinguished by 
manipulate 
enforces a 
improves 
can be improved by 
implements 
controls access to 
enable 
defines 
that is an is organized by 
provide 
such as 
is based on the 
outline 
lay out 
contribute to 
the generation of 
contribute to 
the generation of 
testing 
may find a 
may be thought of 
as running ... objects 15 
such as 
allows adjustment of ... objects 15 
may include 
are used to write, test, and debug 
is trapped by a 
draft 
are led by 
are examples 
of ... classes 12 
may consist of 
consist of members of 
and do the work of the 
overseen by the 
are represented on the 
is submitted to 
administers the 
chairs the 
exists within 
has a which is 
comments on 
may request major revisions via 
may revise 
champion 
is added to the 
definition of ... Java 0 
become members of the JCP by signing 
within the context of the Java Community Process, 
may function as ... developers 23 
support the development of ... Java 0 
make ... SDKs 29 
make versions of a ... JVM 18 
certify Java applications using 
provide building blocks for run on 
are composed of 
are composed of are composed of are contained in include 
run on run on 
enterprise applications client/server 
business logic server components client components user interfaces 
are configured by is described by have interfaces provided by 
read configurations from a 
can call other 
always have 
can be ... J2SE applets 36 
can be ... J2SE applications 38 
can be ... J2ME applets 40 
can be ... MIDlets 41 
have 
such as and 
is used to build and run 
can be a 
run inside a 
include 
can be created by runs on 
A standardized way 
of integrating and 
shaping business logic, 
data, and processes 
across a network. 
is used to build ... web services 33 
runs on 
run on 
are ... class libraries 10 
may include ... tools 17 
are used in ... development environments 16 
include ... class libraries 10 
are used to create ... programs 24 
include a 
include ... packages 11 
are used to run ... programs 24 
always directly build 
embed programming code in a 
depends upon 
such as 
are 
may utilize the 
are run in 
are configured by a 
is housed in 
Enterprise 
JavaBeansTM(EJB) 
are built using 
run inside an 
run inside a 
are built using 
are built using 
run inside a 
is created by a 
is contained in 
never directly build may directly build 
include ... platform packages 37 
contains 
runs on 
may be enabled by 
are enabled by 
provides a 
is one type of 
is used to 
build and run 
is used to 
build and run 
are 
desktop applications 
are 
Java 2 Platform Standard Edition is intended to run 
on desktops, laptops, and workstations. J2SE also 
includes the core language packages and classes 
used by J2EE and J2ME. 
are built using 
are built using 
may run inside a 
run inside an 
for example 
are contained in the 
are built with 
may be enabled by a may be enabled by an 
Java 2 Platform Micro Edition is intended to run on devices 
with limited computing power, such as cell phones or PDAs. 
J2ME has reduced processor and memory requirements. It is 
based on subsets of J2SE with additional components for 
market segments such as hand-held devices. 
PDA 
applications 
are built using 
specialized 
embedded applications 
are built using 
run in a 
are built using 
depends on includes a 
runs on run on 
depends on 
contains a 
subset of a 
include a 
run in a 
are such as 
is used to build and run are built with are built using a 
are 
built with 
may be 
built with 
may be 
built with 
may be 
are 
built with 
is contained in the 
defines a runs on run on 
is used to build and run are built with are built using run on runs on a runs on run on 
is used to 
build and run are built with the runs on a runs on run on 
is instantiated by 
runs on 
runs on 
J2SE optional packages 
Java 3DTM JavaHelpTM 
run on 
run on 
is based on subsets of 
for example 
such as 
such as such as 
may be interpreted by a 
such as 
such as 
such as 
such as 
such as 
specifies and 
documents ... J2EE 32 
specifies and 
documents ... J2SE 35 
specifies and 
documents ... J2ME 39 
are contained in 
depend on 
are contained in 
runs on 
are 
is used to create are read by a 
run on a 
defines 
are 
stored in 
compiles source code into is stored in 
translates 
byte code into constitute a 
when debugged, 
contributes to 
is edited in the 
begins with 
are used to build the 
begins with 
if accepted becomes a may become a may become a 
is added to the 
definition of ... Java 0 
may be implemented in 
is instantiated in a 
12 
... interfaces 14 
connects ... devices 25 
supports 
supports ... web services 33 
engage in 
are facilitated by are instantiated in 
features and benefits 
has a which is 
is distinguished by 
may download and install ... JREs 30 
often own ... hardware 31 
some of whom are ... developers 23 
is developed with ... platforms 
are used by 
support ... services 26 
such as ... hardware 31 
object-oriented programming language 9 
explicit error handling 22 
garbage collection 21 
security model 20 
architecturally independent applications 19 
Java virtual machine 18 
hosts 
is the foundation for 
the completed 
helps identify 
problems with 
such as 
is a 
runs inside a ... web browser 34 
run inside a ... web browser 34 
includes members from 
is used to build applications 
and services based on 
may become platform packages via the ... JCP 2 
may submit or comment on a ... Java Specification Request 3 
who are members of the Java Community Process serve on ... expert groups 5 
form ... Java developer communities 4 
comment on a ... public draft 6 
participate in the ... Java Community Process 2 
may request revisions from the ... maintenance lead 7 
who are members of the JCP elect the ... executive committee 8 
often use ... development environments 16 
pa rticipate in the ... development process 
consist of 
J2ME Tutorials 
J2SE Platform 
Specification 
J2EE Platform 
Specification 
J2EE Connector 
Specification 
J2EE API Specification 
Java Series 
J2EE Tutorials 
PersonalJava 
Specification 
Personal Basis Profile 
Specification 
J2SE API Specification 
Java Series 
tutorials 
Java Language 
Specification (JLS) 
J2SE Tutorials 
J2ME Platform 
Specification 
Mobile Information 
Device Profile (MIDP) 
Specification 
point-of-sale (POS) 
systems, pagers, cell 
phones, and personal 
digital assistants (PDAs) 
Java Card, subscriber 
identity module (SIM) 
phones, and 
multi-application smart 
cards 
network-aware 
appliances, 
automobiles, and 
Telematic networks 
Windows 
Mac OS 
Unix 
Linux 
Irix 
SolarisTM 
SunOSTM 
AIX 
Alpha 
RS6000 
FreeBSD 
NeXT 
HP-UX 
Compaq Tru64 
beOS 
VMS 
Solaris, Linux, Windows, 
HP-UX, AIX, FreeBSD 
Windows 
SolarisTM 
proprietary systems 
Palm OS, Windows CE, 
RTOS, Linux, Symbian OS, 
proprietary systems 
Java forums 
Java developer 
communities 
specification leads 
(spec leads) 
Java Community 
ProcessSM(JCP) 
Executive 
Committee 
alternate 
implementations 
Sun companies 
Java Specification 
Request (JSR) 
community 
draft 
public 
draft 
new Java specification Reference Implementation 
 Technology Compatibility Kit (TCK) 
Program 
Management Office 
maintenance 
lead 
visual programming tools 
class 
structures 
user interface 
frameworks 
bug 
development environments tools 
source code framework 
source code 
classes 
text files 
compiler 
byte code 
binary files 
virtual machine 
machine instructions 
fragment or 
application 
debugger 
J2EE 
documentation 
J2SE 
documentation 
J2ME 
documentation 
other 
documentation 
J2METM 
J2ME 
applets 
J2ME 
applications 
MIDlets 
Personal 
Profile (PP) 
Profiles 
CDC configurations CLDC 
J2ME 
Wireless 
Toolkit 
Java virtual machine 
cell phone 
applications 
MIDP 
Java CardTM Java TVTM Java Embedded 
ServerTM(JES) 
applications for use 
with Smart Cards 
Java Card applets 
Java Card API 
Java Card 
virtual machine 
interactive television 
applications 
Java TV Xlets 
Java TV APIs 
PersonalJavaTM 
Java virtual 
machine 
televisions 
embedded 
applications 
Java Embedded 
Server 
framework 
Java virtual 
machine 
proprietary 
systems 
real-time operating 
systems (RTOS) 
Java Card 
Development 
Kit 
platforms 
applications 
runnable components 
components 
packages or 
libraries 
Software Development 
Kits (SDKs) 
Java runtime environments 
(JREs) 
operating 
systems 
specific devices (hardware) 
deployment 
descriptor 
EJB 
container 
servlets JavaServer 
PagesTM(JSPTM) 
web container 
connector 
architecture 
web-based 
applications 
J2EE platform 
packages 
J2EE specific 
packages 
Java virtual 
machine 
Java-enabled 
web server 
J2EE 
application 
server 
Java Web Services Developer Pack 
servers 
J2EE Software Development Kit 
web services 
web browser 
markup language 
Extensible Markup 
Language (XML) 
Simple Object 
Access Protocol 
(SOAP) 
UDDI 
J2SE applications 
platform packages 
Java regular 
expressions 
J2SE Software 
Development Kit 
Java Plug-In Java-enabled 
browser or viewer 
operating system-based 
Java virtual machine 
optional 
packages 
J2ME 
optional 
packages 
J2SETM 
Swing 
containers 
applications 
J2EETM 
applications embedded 
in a web page 
J2SE applets 
JavaBeansTM 
Beans 
personal 
computers 
workstations 
portability 
critical resources 
explicit error handling 
Just-In-Time compilation 
dynamic compilation 
performance 
syntax and 
keywords 
object-oriented programming language 
benefits and advantages 
reduced development time 
ability to write higher-quality code 
more maintainable code 
ability to call non-Java functions 
principles 
objects 
serialization 
class libraries 
packages 
classes 
inner classes methods constructors 
superclass (parent class) abstract class 
APIs 
subclass (child class) 
fields 
types 
statements declarations comments 
data 
primitives object references 
JavadocTM 
comments 
Javadoc 
tool 
interfaces 
methods and fields 
browsable 
documentation 
API spec 
activities 
services 
software 
trademark 
logo 
JiniTM 
Provides a complete 
specification for the 
syntax and semantics of 
the Java programming 
language. 
11 
14 
15 
12 
18 
25 
9 
22 
16 17 
32 35 
36 
37 
38 
39 
40 41 
43 
42 
2 
3 
0 
5 
6 
8 
7 
33 
34 
27 
23 
28 
30 
31 
29 
1 
Application 
programming 
interface 
specification. 
Runtime instances of classes. 
In runtime, refers to the process of 
turning an object into a data stream for 
purposes of transmission or storage. 
Classes are source 
code files that 
describe a unit of 
programming. A class 
relates a set of data 
(fields) and functions 
(methods) that use 
the data. 
An application programming interface is the 
written or understood specification of how a 
piece of software interacts with the outside 
world. It specifies what input the application 
or application component accepts, how the 
software will behave, and what output it will 
provide. All computer software relies on a 
variety of APIs to achieve tasks such as 
writing a file or displaying text. APIs often 
depend on other APIs. 
Particular to Java, 
interfaces are source code 
files that define a set of 
functions (methods) that 
are required by a class. 
Interfaces name methods 
and set an expectation for 
each method's behavior, 
but do not implement the 
methods. Interfaces allow 
a piece of code to be 
written in such a way that 
the code can work with 
any type of class that 
supports the interface. 
Abstract classes permit child 
classes to inherit a defined method 
or to create groups of related 
classes for polymorphic behavior. 
Primitives 
generally enable 
basic math or 
comparison 
operations. 
Inner classes reside inside 
another class, allowing 
for better organization. 
Should not be confused 
with subclasses. 
In running 
programs, 
statements 
prescribe actions 
or a sequence of 
actions. 
Scope limits access to methods and properties. Levels include: 
• public: can be called or manipulated freely 
• protected: can be called or manipulated by a class in the same package 
• private: can be called or manipulated only by the same class. 
Comments specifically formatted to 
be processed by the Javadoc tool. 
In running 
programs, 
declarations define 
a variable's 
existence and 
determine scope. 
Notes that developers include to 
explain source code to 
themselves and others. 
Methods are 
detailed 
instructions that 
cause a running 
object to take 
action or 
manipulate data. 
Fields are 
sometimes 
referred to as 
properties. 
The virtual machine may encounter a problem, or exception, while a program is running. 
The Java language requires that pieces of code which are likely to encounter a particular 
error offer a mechanism for handling the exception at runtime. When an error is 
encountered, the virtual machine executes the code designed to respond to the error. 
Class structures 
are basic source 
code that 
provides a 
framework 
for the classes, 
describes the 
class hierarchy, 
and provides the 
names of the 
class methods 
and properties. 
Does not include 
implementation 
details (method 
definitions). 
Downloads and documentation are 
available at http://java.sun.com. 
Selected Java products have been 
localized into many languages. This 
localization is one of the key factors 
for adoption of Java technology 
worldwide. 
The combination of the class 
structures and the user interface 
framework into a skeleton of the 
application's overall source code. Does 
not include implementation details. 
The software development process is iterative, with several 
rounds of designing, writing, compiling, running, and testing 
before software is deployed. 
A software utility 
that turns 
human-readable 
text files into 
machine-friendly 
byte 
code. 
Are computer-readable. 
Binary files 
usually have 
the suffixes 
.jar, .jcm, 
.class, .ear, or 
.war. 
Is human 
readable. 
Are processor 
dependent. They can 
be read by the 
processor directly. 
Java developers often use specific development environments 
called Integrated Development Environments, or IDEs. 
Are human-readable. 
Usually have the 
suffixes .java or .jav. 
A Reference Implementation is 
a working example of the JSR. 
Other companies will produce 
their own implementations. 
The TCK is a suite of tests, 
tools, and documentation that 
provides a standard way of 
testing an implementation for 
compliance with a Java 
specification. 
A proposal to develop 
a new specification 
or significant revision 
to an existing spec. 
Companies include 
IBM, Motorola, 
Nokia, Oracle, 
Novell, Netscape, 
Hewlett-Packard, 
Apple, and BEA. 
There are two 
executive 
committees: 
J2EE/J2SE and 
J2ME. 
Universal Description, 
Discovery, and Integration 
provides a way for businesses 
to discover each other. Can 
also be used programmatically 
by applications to locate an 
application or service. 
There are several 
implementations of 
Mobile Information 
Device Profile, 
including MIDP for 
Palm 1.0.3, MIDP 
1.04 for Monty, and 
MIDP 2.0. 
Profiles are packages required 
for a particular vertical 
market segment or set of 
related devices. Other profiles 
include Foundation, Game, 
Personal Basis Profile, and PDA. 
A system that 
enables 
developers to 
incorporate 
online help in 
applications or 
web sites. 
A set of classes 
used to write 
three-dimensional 
graphics applets 
or applications. 
Connected Device 
Configuration 
includes specific 
packages that are 
subsets of the J2SE 
equivalent: 
java.lang 
java.util 
java.net 
java.io 
java.text 
java.security 
A set of 
packages that 
define basic 
services for a 
range of 
devices. 
Connected Limited 
Device Configuration 
includes specific 
packages that are 
subsets of the J2SE 
equivalent: 
java.io 
java.lang 
java.util 
javax.microedition.io 
The J2ME Wireless 
Toolkit includes the 
necessary tools, 
emulators, 
documentation, and 
examples to develop 
and simulate Java 
applications targeted 
at cell phones, 
pagers, PDAs, and 
other small devices. 
A JVM can be optimized for cell phones, 
PDAs, and other similarly resourced devices. 
Manage 
transactions, 
life-cycles, 
and data 
persistence. 
Provides a mechanism 
for connecting to legacy 
information systems. 
Cannot function on their 
own, but are used by other 
components or runnable 
components. 
Enterprise JavaBeans 
define independent pieces 
of business logic or 
application behavior that 
can call either servlets, 
JSPs, or other EJBs. 
Includes the binary version of the J2EE Reference 
Implementation, plus the development tools and 
documentation needed to build a J2EE application. 
Sometimes referred to as 
required or core packages. 
Servlets respond to 
an URL request. 
Servlets commonly 
generate HTML, XML, 
or dynamic images. 
They can call other 
servlets, JSPs, or 
EJBs. 
On handheld and 
embedded devices, the 
initial implementation 
of Java technology 
addresses the software 
needs of networked 
applications running 
on consumer devices 
such as set-top boxes 
and smart phones. 
A JVM can be optimized 
for set-top boxes. 
Specifies packages: 
http 
log 
device access 
timers 
framework 
Components that can 
run on their own. 
Examples include: 
¡avax.activation 
javax.ejb 
javax.servlet 
javax.transaction 
javax.xml 
JSPs define a page 
element, which can be 
HTML, XML, or another 
markup language. JSPs 
execute as servlets. 
They can call other 
JSPs, servlets, or EJBs. 
Some JVMs are 
optimized for servers. 
Provides a framework for developing and hosting J2EE applications 
that run inside web containers. The pack includes the Java APIs for 
XML included in the Java XML Pack, the JavaServer Pages Standard 
Tag Library (JSTL), the Ant build tool, the Java WSDP Registry Server, 
and the Tomcat Java Servlet and JavaServer Pages container. 
Java 2 Platform Enterprise Edition is 
used to build secure, scalable, 
distributable server-based 
applications for large enterprises. 
Can be HTML, 
WML, XHTML, 
or voice XML. 
Provides a structured and 
extensible mechanism for 
organizing and presenting data. 
Many Java packages and classes 
utilize XML to store and exchange 
data. 
Provides a way for applications 
to communicate. SOAP is 
typically transmitted via HTTP. 
Discrete units of software 
functionality that conform to the 
JavaBeans API and are designed to be 
reusable components. The JavaBeans 
API makes it particularly easy for 
Beans to be utilized by visual 
programming tools. (In an 
architecture analogy, these would be 
prebuilt walls, windows, or doors.) 
A component kit that 
provides a set of graphical 
user interface elements. 
Swing can be used to rapidly 
build applications without 
writing original code to 
support common interface 
elements. Supports a native 
look and feel on many 
common operating systems. 
A powerful set of text matching and 
manipulation routines supported by 
many programming languages. 
Java technology implements 
Perl-compatible regular 
Some JVMs are optimized for various types 
of laptops, workstations, and desktops. 
Includes the necessary 
tools, emulators, and 
runtime environment 
to develop and test 
applets for the Java 
Card platform. 
Depend on the Java 
Media Framework 
(JMF), which is 
optional to J2SE but 
required for Java TV. 
Includes specific 
packages: 
java.lang 
javacard.framework 
javacard.security 
javacardx.crypto 
A JVM can be 
optimized 
for residential 
gateway servers. 
Telematic networks 
connect computers with 
telecommunications 
systems. 
Some browsers may be Java-enabled 
because they include the Java Plug-In. 
Some users may need to download 
the Java Plug-In for their browsers. 
Installing the Java Plug-In will also 
install the J2SE runtime environment. 
Implement a main method. A class that 
defines an application must declare a 
main method, which the Java virtual 
machine uses as the starting point for 
the application. The main method gets 
executed when the application starts. 
Extend the applet class, which 
provides developers with a basic 
framework for rapid development of 
a limited application. This includes a 
basic user interface framework and 
event model. 
Also referred to as required or core 
packages, platform packages are the 
heart of the Java programming 
language. The packages include 
myriad classes that define user 
interface components, a 
programming event model, text and 
math processing tools, code-level 
security, objects for memory storage 
of complex data, and methods for 
invoking remote applications, to 
name just a few. 
Includes Web 
Services, Getting 
Started, Java XML, 
Internationalization, 
Such as user-controlled camera Sound, and Java 2D. 
views and video on demand. 
Java technology is especially 
useful in devices that are 
connected by a network. 
Such as ATMs and 
point-of-sale services. 
Such as home services and 
network-aware automobiles. 
The J2SE SDK includes the source code, 
class libraries, development tools, and 
runtime environment required to build 
Java applications and applets. 
Including servers, web-based solutions, stand-alone 
applications, and clients. 
A Java specification describes 
some aspect of Java technology, 
including language, virtual 
machines, platform editions, 
profiles, and APIs. 
Jini network technology provides 
one infrastructure for delivering 
services in a network and for 
creating spontaneous interaction 
between programs that use 
those services. 
A JRE is the software environment in 
which programs compiled for the Java 
virtual machine can run. The runtime 
system comprises everything necessary to 
run programs written in the Java 
programming language, including the 
Java virtual machine, which may be a Java 
interpreter, and the platform packages. 
JREs may be developed by Sun or by other 
companies. 
Hosts EJBs, 
servlets and JSPs. 
Can host EJBs, 
servlets and 
JSPs. 
Optional packages define 
a set of methods to 
address specific 
functionality required for 
certain specialized 
applications. Applications 
that require optional 
packages must be shipped 
with the package code. 
Specifies that the entire 
J2SE JLS is applicable to 
J2EE, includes additional 
specifications for J2EE, 
specifies what features 
the JVM must support, 
and what the platform 
packages are. 
Includes the JLS and 
documentation 
describing what the 
platform packages are 
and what features the 
JVM must support. 
Specifies which parts 
of the JLS are 
applicable to J2ME, 
what features the JVM 
must support, and 
what the platform 
packages are. 
Java BluePrints 
Guidelines, patterns, 
and code for end-to-end 
applications. 
is available via http://java.sun.com. 
The Java Specification Participation 
Agreement is a one-year renewable 
agreement that allows signatories to 
become members of the JCP. 
Alternatively, developers can sign the 
more limited Individual Expert 
Participation Agreement (IEPA). 
Alternate implementations are written 
to the same specification and pass the 
TCK, but can be licensed differently 
and may have enhanced features 
beyond the reference 
Java™ Technology Concept Map 
Java 
concept map 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 40
Heart attack 
concept map 
Health Coach Notebook for Coronary Artery Disease Patients Concept Map 
is a which results from which results from risk factors some of which can be controlled by behavior 
healthy living can help control 
1. 
2. 
3. 
4. 
taking prescribed 
medications 
cholesterol 
sodium 
calories 
reduces being3 3 
more active 
eases 
5. 
controllable 
risk factors 
1. 
2. 
3. 
4. 
5. 
6. 
following dietary 
recommendations 
controls 
control 
such as 
such as lowering 
such as lowering 
such as lowering 
burns 
4 
managed, controls 
managed, controls 
managed, controls 
causes build up of 
control 
2 
stopping smoking 
lowers 
lowers reducing stress 
insulin 
reduces the heart muscle’s 
such as 
A heart attack 
(also called myocardial infarction or MI, 
from Greek mus, muscle and kardi, heart 
and from Latin infarcre, to cram) 
blockage of blood flow 
to the heart 
build up of plaque 
in the arteries 
of the heart 
(also called atherosclerosis, 
from Greek athero, meaning gruel or paste, 
and sclerosis, meaning hardness) 
uncontrollable 
risk factors 
diabetes 
(also called diabetes mellitus, 
from the Latin diabetes, siphon 
and melltus, honey-sweet) 
can induce 
obesity 
contributes 
to 
physical 
inactivity 
heredity 
(including being 
African-American) 
under age 55, 
being male 
over age 65, 
being female 
increases 
liklihood of 
tobacco increasing age 
exposure 
high cholesterol 
(also called hypercholesterolemia, 
from Greek huper, over, 
khole, bile and stereos, solid) 
high blood pressure 
(also called hypertension, 
from Greek huper, over, 
and Latin tensis, stretching out) 
innermost layer of the artery 
(also called endothelium, 
from Greek endon, within and thele, nipple) 
contributes to the risk of 
2 
stroke 
can also cause 3 
4 
contributes 
to 
contributes to the risk of 
contributes to the risk of 
contributes to the risk of 
begins with 
damage to the 
contributes to the risk of 
contributes to the risk of 
contributes to the liklihood of 
sufferers usually have 
increses risk of 
contributes to 
contributes to 
contributes to 
damages the 
contributes to 
contributes to 
damages the 
damages the 
may speed 
can 
become a 
may be 
may be 
plaque 
(deposit of 
fatty material) 
blood clot that moves 
until it lodges in a vessel 
(also called embolus, 
from Greek embolos, plug) 
blood clot that forms 
in a vessel or cavity of the heart 
(also called thrombus, 
from Greek thrombos, clot) 
may rupture, causing 
can be caused by 
can be relieved by 
is one kind of 
insufficiency 
of blood supply 
(also called ischemia, 
from Greek iskhein, to keep back 
and haima, blood) 
can result in 
increases the risk of 
causes 
pain in the chest, 
neck, jaw, back or arm 
(also called angina, 
from Greek anchone, a strangling) 
is an indicator of 
is arterial 
build up of 
may be 
oxygen 
supply 
reduces the 
may disturb the 
disturbed, 
can cause 
the heart to stop 
(also called cardiac arrest) 
can 
lead to 
death 
may reduce 
the heart’s capacity 
(which may cause it 
to work harder) 
heart rhythm 
may disturb the 
reduced, may cause 
may disturb the 
may disturb the 
may cause 
symptoms weakness, 
nausea and vomiting, 
sweating, and 
shortness of breath 
medication, 
coronary bypass surgery, 
or angioplasty 
(Angioplasty is a non-surgical procedure which 
enlarges the inner diameter of a blood vessel - 
most commonly by flattening plaque with a balloon, 
or vaporizing plaque with a laser.) 
may be indicated by 
dead, scarred 
heart tissue 
HMG CoA reductase inhibitors (statins), 
bile acid sequestrants, 
nicotinic acid, 
and fibric acid 
ACE* inhibitors, 
angiotensin II receptor blockers, 
vasodilators (such as 
aspirin and nitroglycerin), 
beta blockers, 
calcium antagonists, 
anti-hypertensives, 
and diuretics 
(*angiotensin converting enzyme inhibitor) 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 41
Female = 655 + (4.35 × CW) + (4.7 × H) – (4.7 × A) 
Wellspace variables  equation 
Weight control 
concept map 
= Female 
Male = 
= Male 
Extremely active 
Very active 
66 + (6.23 × CW) + (12.7 × H) – (6.8 × A) 
Moderately active 
Lightly active 
Sedentary 
Coma 1.0 
+ .175 
+ .2 
+ .175 
+ .175 
+ .175 1.9 
1.725 
1.55 
1.375 
1.2 
1.0 
100 lbs at 5' 
5 lbs for each 1  5' 
106 lbs at 5' 
6 lbs for each 1  5' 
cW 
Current 
weight 
C+ 
Calories 
eaten 
rW 
Recommended 
weight 
(Hamwi formula) 
Current 
Gender weight 
Gender 
suggests 
suggests 
Height 
Height Age 
day 
C– 
Calories 
burned 
gW 
Goal weight 
ΔW 
Weight 
change RR 
ate of 
weight loss 
per day 
lbs 
3500 
Calories 
in 1 lbs 
Can’t be  2 lbs /week 
(or .286 lbs /day) 
Defaults to 1 lbs /week 
(or .143 lbs /day) 
day 
Cd 
Calorie deficit 
day day day day 
ΔT 
Time to reach 
goal weight 
mCb 
Maintanence 
calorie budget 
rCb 
Recommended 
calorie budget 
BMR 
Basal 
metabolic 
rate 
AF 
Activity 
factor 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 42
inverse more accurately... 98.6º 
proportional 
inverse proportional 
proportional 
more accurately... 
proportional 
proportional proportional 
Needle Cost 
Strength 
inverse 
proportional 
proportional proportional 
Injection 
Depth 
Needle 
Length 
Temperature 
inverse 
inverse 
Time Pain 
Volume 
Viscosity 
Needle 
Gauge 
Flow Rate 
inverse proportional 
Concentration 
proportional proportional 
Drug delivery 
device map 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 43
can sends and receives 
Messages 
can be 
Created 
- New 
- - Manually 
- - From short cuts 
- Reply 
- Reply All 
- Forward 
- Sent 
- Sent Again 
Read (opened) 
- As preview 
- Full text 
Read 
- Text-to-speech 
Updated (draft) 
Primary (Default) 
Deleted 
or 
- Locally 
Secondary 
- Globally 
can be 
- Singly 
Designated 
- En Masse 
- Undo 
Saved 
- Locally 
- To Cloud 
Filtered 
Sorted 
Searched 
- Locally 
- Globally 
- Within Filter 
Moved 
- Singly 
- En masse 
Flagged 
Marked (read/not) 
- Singly 
- En masse 
Black = Entities (data Gray = Entity to be added Cyan = Relation between Green = Action user can Light Green = Action to Email conceptual model 
Android, Email Client, Conceptual Model 
are 
Account Name 
User Name 
Email Address 
User Name 
Password 
Server 
Protocols 
- SMTP for sending 
- IMAP or POP for retrieving 
- Exchange 
Port 
Secure Connection 
- Auto 
- SSL/TLS 
- STARTTLS 
Domain 
Secure Connection (yes or no) 
can be 
Configured 
are associated with 
for IMAP / POP 
for Exchange 
contain Text 
- Original 
- Quoted 
can be 
Created 
- By Virtual Keyboard 
- By Microphone 
(voice-to-text) 
Deleted 
Formatted 
Annotated 
Spell-checked 
Enlarged / Reduced 
has Format 
Annotations 
- Highlights 
- Notes 
can be 
Created / Deleted 
Displayed / Hidden 
Images 
can be 
Attached / Deleted 
Displayed / Hidden 
Saved 
Loaded from remote source 
Attachments 
can be 
Attached 
Deleted 
Opened / Closed 
Saved 
Meta-data 
can be 
Created / Deleted 
- Automatic 
- Manual 
Displayed / Hidden 
Used to Filter 
Used to Sort 
includes Recipients 
could be 
- Main 
- CC 
- BCC 
Sender 
Subject 
Preview 
Time Stamp (year, month, day, hour, minute) 
Flag (on or off, depends on service) 
Tags 
Status (unread or read) 
Response (none, reply, or forward) 
Priority (low, normal, or high) 
Routing Information 
are organized in Folders 
can be 
Created / Deleted 
Opened / Closed 
Moved 
such as All (unified in-box, default if multiple services) 
Account (1 to n; mean = 6) 
Inbox (Default, if only one service) 
Drafts (Depends on service) 
Sent (Depends on service) 
Junk (Spam, depends on service) 
Trash (Depends on service) 
Archive (Depends on service) 
sent to / 
uploaded from 
Local memory 
Cloud 
Gallery 
Quick Office 
Documents to Go 
Social network sites (later) 
sent to / 
uploaded from 
Plain Text 
can be 
Viewed + Created 
are stored in Contacts List 
be accessed by Email Client 
Access includes 
- Fetch and Push 
- Auto and Manual 
Mail Boxes 
can be 
Added 
Deleted 
Logged in to 
Logged out of 
Threads (Conversations) 
can be 
Displayed / Hidden 
Hot Strings 
- URLs (Auto-formed links) 
- Dates (Calendar events) 
- Names (Contacts) 
- Phone numbers 
- Addresses 
can be 
Auto-recognized 
RichText 
can be 
Viewed only 
HTML Text 
can be 
Viewed only 
Accounts include 
such as 
- AOL 
- Exchange 
- Gmail 
- Hotmail 
- iCloud 
- Ymail 
Related Features 
- Contacts 
- Calendar 
- Bookmarks 
- Reminders (To-do’s) 
- Documents (Files) 
- Media (e.g., books, music, video) 
may include 
Preferences 
- Primary Account 
- Notification 
- - Sound 
- - By Account 
- - By Sender 
- Preview Length 
- Meta-data View 
- Auto Download 
- - Yes / No 
- - Up to file size 
- Number of Messages Stored 
- Number of Days Saved 
- Signature (default from Amazon) 
- Auto-response (out-of-the-office) 
can be 
Configured 
includes 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 44
Disney map 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 45
PART THREE 
How do we achieve 
systems literacy? 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 46
Teaching systems in design is not a new idea. 
HfG Ulm had courses in operations research and cybernetics 
in the 1960s. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 47
All graduate design programs 
should have courses in systems literacy— 
as should under grad programs in 
-- product design 
-- interaction design 
-- service design 
-- information design 
-- and any program in innovation 
or social entrepreneurship 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 48
One course, 3 hours per week for 12 to 15 weeks 
is a bare minimum survey of systems. 
Ideal would be 3 semesters: 
-- Intro to Systems: 
systems dynamics, regulation, requisite variety 
-- Second-Order Systems: 
observing systems, autopoiesis, learning, ethics 
-- Systems for Conversation: 
co-evolution, co-ordination, and collaboration 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 49
Recommended readings: 
-- A Systems View of Life, Capra 
-- Thinking in Systems, Meadows 
-- An Introduction to Cybernetics, Ashby 
-- “Second-order Cybernetics,” Glanville 
-- “Ethics and Second-order Cybernetics,” von Foerster 
-- “Systemic and Meta Systemic Laws,” Maturana + Davila 
-- “What is conversation?” Pangaro 
-- “The Limits of Togetherness,” Pask 
-- Decision and Control, Beer 
-- “Meta-design,” Maturana 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 50
Recommended format: seminar + studio 
-- Readings and discussions 
-- Review of common patterns (via canonical diagrams) 
-- In class exercises to apply the patterns 
-- Homework to apply the patterns again 
-- In class critiques of previous week’s homework 
-- Final project to design a new system 
or repair (or improve) a faulty one 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 51
Literacy requires fluency in a language. 
As with any language, 
learning the language of systems requires 
immersion, practice, and time. 
The reward is that practice becomes habit, 
and habit becomes a way of thinking— 
an other (another) point of view. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 52
CONCLUSION 
Implications of (and for) 
observing systems 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 53
“Designers need to be able 
to observe, describe, and understand 
the context and environment 
of the design situation... 
...a designer is obliged to use 
whatever approaches provide 
the best possible understanding 
of reality...” 
— Harold Nelson, Erik Stolterman 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 54
“Pask… distinguishes two orders of analysis. 
The one in which the observer enters the system 
by stipulating the system’s purpose… 
[the other] by stipulating his own purpose… 
[and because he can stipulate his own purpose] 
he is autonomous… 
[responsible for] his own actions…” 
— Heinz von Foerster, 1979 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 55
“…if we know that the reality that we live 
arises through our emotioning, 
and we know that we know, 
we shall be able to act 
according to our awareness of our liking 
or not liking the reality 
that we are bringing forth with our living. 
That is, we shall become responsible 
of what we do.” 
— Humberto Maturana, 1997 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 56
“We human beings can do whatever we 
imagine if we respect 
the structural coherences of the domain 
in which we operate. 
But we do not have to do all that we imagine, 
we can choose, and it is there 
where our behavior as socially conscious 
human beings matters.” 
— Humberto Maturana, 1997 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 57
We have a responsibility to try to make things better. 
If we want decision makers to have a basis to judge 
the effects of their decisions, 
or if we acknowledge that almost all the challenges that matter— 
and most social and economic innovation—involve systems, 
and if we know that tools exist to help us think about systems, 
then we must put those tools into circulation. 
We must build systems literacy. 
To not do so would be irresponsible. 
Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 58
Special thanks to 
Peter Jones 
Harold Nelson 
Birger Sevaldson 
Paul Pangaro 
Ryan Reposar 
hugh@dubberly.com 
Presentation posted at 
www.dubberly.com/presentations/system_literacy.pdf

Más contenido relacionado

Destacado

Evaluation Question 1 In what ways does your media product use, develop or ch...
Evaluation Question 1 In what ways does your media product use, develop or ch...Evaluation Question 1 In what ways does your media product use, develop or ch...
Evaluation Question 1 In what ways does your media product use, develop or ch...nadiaadnan1
 
The Inner Two as Law of Attraction or Creation
The Inner Two as Law of Attraction or CreationThe Inner Two as Law of Attraction or Creation
The Inner Two as Law of Attraction or CreationArnulfo Laniba
 
Rock and roll history upload for facebook
Rock and roll history upload for facebookRock and roll history upload for facebook
Rock and roll history upload for facebookLaura Thompson
 
Social Trends from 2014 by Eric Drumm, Account Supervisor, Social@Ogilvy
Social Trends from 2014 by Eric Drumm, Account Supervisor, Social@OgilvySocial Trends from 2014 by Eric Drumm, Account Supervisor, Social@Ogilvy
Social Trends from 2014 by Eric Drumm, Account Supervisor, Social@OgilvyOgilvy
 
Moti messiah - ULD buprenorphine for suicidal ideation
Moti messiah - ULD buprenorphine for suicidal ideationMoti messiah - ULD buprenorphine for suicidal ideation
Moti messiah - ULD buprenorphine for suicidal ideationמוטי משיח
 
Socioeconomic Correlations to Maternal Stress Research (Complete)
Socioeconomic Correlations to Maternal Stress Research (Complete)Socioeconomic Correlations to Maternal Stress Research (Complete)
Socioeconomic Correlations to Maternal Stress Research (Complete)Brianna G. Scott
 
Enfermedades neurodegenerativas. neuroalianza.
Enfermedades neurodegenerativas. neuroalianza.Enfermedades neurodegenerativas. neuroalianza.
Enfermedades neurodegenerativas. neuroalianza.José María
 
Wearable [REDACTED]
Wearable [REDACTED]Wearable [REDACTED]
Wearable [REDACTED]Dean Johnson
 
Killing any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureKilling any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureCyber Security Alliance
 
Разработка и коммерческая реализация аппаратно-программных комплексов и метод...
Разработка и коммерческая реализация аппаратно-программных комплексов и метод...Разработка и коммерческая реализация аппаратно-программных комплексов и метод...
Разработка и коммерческая реализация аппаратно-программных комплексов и метод...kulibin
 
Rock and roll history upload for facebook
Rock and roll history upload for facebookRock and roll history upload for facebook
Rock and roll history upload for facebookLaura Thompson
 
Suicidal adolescents
Suicidal adolescentsSuicidal adolescents
Suicidal adolescentsParentEdge
 
всемирная креативная культура
всемирная креативная культуравсемирная креативная культура
всемирная креативная культураJack Russo
 
Flipbook is the media improving our health- (1)
Flipbook  is the media improving our health- (1)Flipbook  is the media improving our health- (1)
Flipbook is the media improving our health- (1)Elysse Chennette
 

Destacado (15)

Evaluation Question 1 In what ways does your media product use, develop or ch...
Evaluation Question 1 In what ways does your media product use, develop or ch...Evaluation Question 1 In what ways does your media product use, develop or ch...
Evaluation Question 1 In what ways does your media product use, develop or ch...
 
The Inner Two as Law of Attraction or Creation
The Inner Two as Law of Attraction or CreationThe Inner Two as Law of Attraction or Creation
The Inner Two as Law of Attraction or Creation
 
Rock and roll history upload for facebook
Rock and roll history upload for facebookRock and roll history upload for facebook
Rock and roll history upload for facebook
 
Social Trends from 2014 by Eric Drumm, Account Supervisor, Social@Ogilvy
Social Trends from 2014 by Eric Drumm, Account Supervisor, Social@OgilvySocial Trends from 2014 by Eric Drumm, Account Supervisor, Social@Ogilvy
Social Trends from 2014 by Eric Drumm, Account Supervisor, Social@Ogilvy
 
Moti messiah - ULD buprenorphine for suicidal ideation
Moti messiah - ULD buprenorphine for suicidal ideationMoti messiah - ULD buprenorphine for suicidal ideation
Moti messiah - ULD buprenorphine for suicidal ideation
 
Socioeconomic Correlations to Maternal Stress Research (Complete)
Socioeconomic Correlations to Maternal Stress Research (Complete)Socioeconomic Correlations to Maternal Stress Research (Complete)
Socioeconomic Correlations to Maternal Stress Research (Complete)
 
Enfermedades neurodegenerativas. neuroalianza.
Enfermedades neurodegenerativas. neuroalianza.Enfermedades neurodegenerativas. neuroalianza.
Enfermedades neurodegenerativas. neuroalianza.
 
Wearable [REDACTED]
Wearable [REDACTED]Wearable [REDACTED]
Wearable [REDACTED]
 
Killing any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureKilling any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented feature
 
Разработка и коммерческая реализация аппаратно-программных комплексов и метод...
Разработка и коммерческая реализация аппаратно-программных комплексов и метод...Разработка и коммерческая реализация аппаратно-программных комплексов и метод...
Разработка и коммерческая реализация аппаратно-программных комплексов и метод...
 
Rock and roll history upload for facebook
Rock and roll history upload for facebookRock and roll history upload for facebook
Rock and roll history upload for facebook
 
Suicidal adolescents
Suicidal adolescentsSuicidal adolescents
Suicidal adolescents
 
Start reddit
Start redditStart reddit
Start reddit
 
всемирная креативная культура
всемирная креативная культуравсемирная креативная культура
всемирная креативная культура
 
Flipbook is the media improving our health- (1)
Flipbook  is the media improving our health- (1)Flipbook  is the media improving our health- (1)
Flipbook is the media improving our health- (1)
 

Similar a A Systems Literacy Manifesto / Hugh Dubberly

Was heisst "Wandel" in komplexen Systemen?
Was heisst "Wandel" in komplexen Systemen?Was heisst "Wandel" in komplexen Systemen?
Was heisst "Wandel" in komplexen Systemen?Philippe Vallat
 
Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"
Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"
Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"Heiner Benking
 
Bodies and Buildings NYU ITP 11 3 2014
Bodies and Buildings NYU ITP 11 3 2014Bodies and Buildings NYU ITP 11 3 2014
Bodies and Buildings NYU ITP 11 3 2014Jen van der Meer
 
Design Tools for Systems Thinking
Design Tools for Systems ThinkingDesign Tools for Systems Thinking
Design Tools for Systems ThinkingPeter Vermaercke
 
20151021 POS LUCAS meet and greet
20151021 POS LUCAS meet and greet20151021 POS LUCAS meet and greet
20151021 POS LUCAS meet and greetLUCAS_project
 
Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...
Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...
Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...Sociotechnical Roundtable
 
Use Your Words: Content Strategy to Influence Behavior
Use Your Words: Content Strategy to Influence BehaviorUse Your Words: Content Strategy to Influence Behavior
Use Your Words: Content Strategy to Influence BehaviorLiz Danzico
 
Five Horizons of Systems Mastery
Five Horizons of Systems MasteryFive Horizons of Systems Mastery
Five Horizons of Systems MasteryshiftN
 
Mp copenhagen 2012
Mp copenhagen 2012Mp copenhagen 2012
Mp copenhagen 2012mpuech
 
Body Surface Are A Comparison Of Different Methods
Body Surface Are A Comparison Of Different MethodsBody Surface Are A Comparison Of Different Methods
Body Surface Are A Comparison Of Different MethodsKimberly Bundy
 
Scholarly Social Machines Essay
Scholarly Social Machines EssayScholarly Social Machines Essay
Scholarly Social Machines EssayDavid De Roure
 
2011 03 urban development after the crisis, hans karssenberg stipo
2011 03 urban development after the crisis, hans karssenberg stipo2011 03 urban development after the crisis, hans karssenberg stipo
2011 03 urban development after the crisis, hans karssenberg stipoStipo
 
Objectification Is A Word That Has Many Negative Connotations
Objectification Is A Word That Has Many Negative ConnotationsObjectification Is A Word That Has Many Negative Connotations
Objectification Is A Word That Has Many Negative ConnotationsBeth Johnson
 
Executable Music Documents
Executable Music DocumentsExecutable Music Documents
Executable Music DocumentsDavid De Roure
 
Collaborative Economy: A possible bridge from the old to the new economy?
Collaborative Economy: A possible bridge from the old to the new economy? Collaborative Economy: A possible bridge from the old to the new economy?
Collaborative Economy: A possible bridge from the old to the new economy? Thomas Doennebrink
 
Systems Thinking workshop @ Lean UX NYC 2014
Systems Thinking workshop @ Lean UX NYC 2014Systems Thinking workshop @ Lean UX NYC 2014
Systems Thinking workshop @ Lean UX NYC 2014johanna kollmann
 

Similar a A Systems Literacy Manifesto / Hugh Dubberly (20)

Systems Oriented Design in a Nutshell
Systems Oriented Design in a NutshellSystems Oriented Design in a Nutshell
Systems Oriented Design in a Nutshell
 
Was heisst "Wandel" in komplexen Systemen?
Was heisst "Wandel" in komplexen Systemen?Was heisst "Wandel" in komplexen Systemen?
Was heisst "Wandel" in komplexen Systemen?
 
Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"
Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"
Google Humboldt Ritter Institute Internet&Society -"white"-presentation "pitch"
 
Bodies and Buildings NYU ITP 11 3 2014
Bodies and Buildings NYU ITP 11 3 2014Bodies and Buildings NYU ITP 11 3 2014
Bodies and Buildings NYU ITP 11 3 2014
 
Design Tools for Systems Thinking
Design Tools for Systems ThinkingDesign Tools for Systems Thinking
Design Tools for Systems Thinking
 
20151021 POS LUCAS meet and greet
20151021 POS LUCAS meet and greet20151021 POS LUCAS meet and greet
20151021 POS LUCAS meet and greet
 
Cp Lab Report
Cp Lab ReportCp Lab Report
Cp Lab Report
 
Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...
Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...
Interpretations of Socio-Technical Systems: Two Stories and the Narrative of ...
 
Use Your Words: Content Strategy to Influence Behavior
Use Your Words: Content Strategy to Influence BehaviorUse Your Words: Content Strategy to Influence Behavior
Use Your Words: Content Strategy to Influence Behavior
 
Collective intel
Collective intelCollective intel
Collective intel
 
Five Horizons of Systems Mastery
Five Horizons of Systems MasteryFive Horizons of Systems Mastery
Five Horizons of Systems Mastery
 
Mp copenhagen 2012
Mp copenhagen 2012Mp copenhagen 2012
Mp copenhagen 2012
 
Body Surface Are A Comparison Of Different Methods
Body Surface Are A Comparison Of Different MethodsBody Surface Are A Comparison Of Different Methods
Body Surface Are A Comparison Of Different Methods
 
Scholarly Social Machines Essay
Scholarly Social Machines EssayScholarly Social Machines Essay
Scholarly Social Machines Essay
 
2011 03 urban development after the crisis, hans karssenberg stipo
2011 03 urban development after the crisis, hans karssenberg stipo2011 03 urban development after the crisis, hans karssenberg stipo
2011 03 urban development after the crisis, hans karssenberg stipo
 
Objectification Is A Word That Has Many Negative Connotations
Objectification Is A Word That Has Many Negative ConnotationsObjectification Is A Word That Has Many Negative Connotations
Objectification Is A Word That Has Many Negative Connotations
 
Christopher Rogers
Christopher Rogers Christopher Rogers
Christopher Rogers
 
Executable Music Documents
Executable Music DocumentsExecutable Music Documents
Executable Music Documents
 
Collaborative Economy: A possible bridge from the old to the new economy?
Collaborative Economy: A possible bridge from the old to the new economy? Collaborative Economy: A possible bridge from the old to the new economy?
Collaborative Economy: A possible bridge from the old to the new economy?
 
Systems Thinking workshop @ Lean UX NYC 2014
Systems Thinking workshop @ Lean UX NYC 2014Systems Thinking workshop @ Lean UX NYC 2014
Systems Thinking workshop @ Lean UX NYC 2014
 

Último

Models of Disability - an overview by Marno Retief & Rantoa Letšosa
Models of Disability - an overview by Marno Retief & Rantoa LetšosaModels of Disability - an overview by Marno Retief & Rantoa Letšosa
Models of Disability - an overview by Marno Retief & Rantoa Letšosaannemarleenolthof1
 
Construction Documents Checklist before Construction
Construction Documents Checklist before ConstructionConstruction Documents Checklist before Construction
Construction Documents Checklist before ConstructionResDraft
 
Math Group 3 Presentation OLOLOLOLILOOLLOLOL
Math Group 3 Presentation OLOLOLOLILOOLLOLOLMath Group 3 Presentation OLOLOLOLILOOLLOLOL
Math Group 3 Presentation OLOLOLOLILOOLLOLOLkenzukiri
 
LRFD Bridge Design Specifications-AASHTO (2014).pdf
LRFD Bridge Design Specifications-AASHTO (2014).pdfLRFD Bridge Design Specifications-AASHTO (2014).pdf
LRFD Bridge Design Specifications-AASHTO (2014).pdfHctorFranciscoSnchez1
 
Designing for privacy: 3 essential UX habits for product teams
Designing for privacy: 3 essential UX habits for product teamsDesigning for privacy: 3 essential UX habits for product teams
Designing for privacy: 3 essential UX habits for product teamsBlock Party
 
The future of UX design support tools - talk Paris March 2024
The future of UX design support tools - talk Paris March 2024The future of UX design support tools - talk Paris March 2024
The future of UX design support tools - talk Paris March 2024Alan Dix
 
Design mental models for managing large-scale dbt projects. March 21, 2024 in...
Design mental models for managing large-scale dbt projects. March 21, 2024 in...Design mental models for managing large-scale dbt projects. March 21, 2024 in...
Design mental models for managing large-scale dbt projects. March 21, 2024 in...Ed Orozco
 
Create Funeral Invites Online @ feedvu.com
Create Funeral Invites Online @ feedvu.comCreate Funeral Invites Online @ feedvu.com
Create Funeral Invites Online @ feedvu.comjakyjhon00
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara Rakovska
AMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara RakovskaAMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara Rakovska
AMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara RakovskaBarusRa
 
How to use Ai for UX UI Design | ChatGPT
How to use Ai for UX UI Design | ChatGPTHow to use Ai for UX UI Design | ChatGPT
How to use Ai for UX UI Design | ChatGPTThink 360 Studio
 
High-Quality Faux Embroidery Services | Cre8iveSkill
High-Quality Faux Embroidery Services | Cre8iveSkillHigh-Quality Faux Embroidery Services | Cre8iveSkill
High-Quality Faux Embroidery Services | Cre8iveSkillCre8iveskill
 
Unlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdf
Unlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdfUnlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdf
Unlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdfIBM
 
WCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptx
WCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptxWCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptx
WCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptxHasan S
 
Embroidery design from embroidery magazine
Embroidery design from embroidery magazineEmbroidery design from embroidery magazine
Embroidery design from embroidery magazineRivanEleraki
 
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024Ted Drake
 
UI UX Process for SaaS Product Design Success
UI UX Process for SaaS Product Design SuccessUI UX Process for SaaS Product Design Success
UI UX Process for SaaS Product Design SuccessThink 360 Studio
 
Khushi sharma undergraduate portfolio...
Khushi sharma undergraduate portfolio...Khushi sharma undergraduate portfolio...
Khushi sharma undergraduate portfolio...khushisharma298853
 
UX Conference on UX Research Trends in 2024
UX Conference on UX Research Trends in 2024UX Conference on UX Research Trends in 2024
UX Conference on UX Research Trends in 2024mikailaoh
 

Último (18)

Models of Disability - an overview by Marno Retief & Rantoa Letšosa
Models of Disability - an overview by Marno Retief & Rantoa LetšosaModels of Disability - an overview by Marno Retief & Rantoa Letšosa
Models of Disability - an overview by Marno Retief & Rantoa Letšosa
 
Construction Documents Checklist before Construction
Construction Documents Checklist before ConstructionConstruction Documents Checklist before Construction
Construction Documents Checklist before Construction
 
Math Group 3 Presentation OLOLOLOLILOOLLOLOL
Math Group 3 Presentation OLOLOLOLILOOLLOLOLMath Group 3 Presentation OLOLOLOLILOOLLOLOL
Math Group 3 Presentation OLOLOLOLILOOLLOLOL
 
LRFD Bridge Design Specifications-AASHTO (2014).pdf
LRFD Bridge Design Specifications-AASHTO (2014).pdfLRFD Bridge Design Specifications-AASHTO (2014).pdf
LRFD Bridge Design Specifications-AASHTO (2014).pdf
 
Designing for privacy: 3 essential UX habits for product teams
Designing for privacy: 3 essential UX habits for product teamsDesigning for privacy: 3 essential UX habits for product teams
Designing for privacy: 3 essential UX habits for product teams
 
The future of UX design support tools - talk Paris March 2024
The future of UX design support tools - talk Paris March 2024The future of UX design support tools - talk Paris March 2024
The future of UX design support tools - talk Paris March 2024
 
Design mental models for managing large-scale dbt projects. March 21, 2024 in...
Design mental models for managing large-scale dbt projects. March 21, 2024 in...Design mental models for managing large-scale dbt projects. March 21, 2024 in...
Design mental models for managing large-scale dbt projects. March 21, 2024 in...
 
Create Funeral Invites Online @ feedvu.com
Create Funeral Invites Online @ feedvu.comCreate Funeral Invites Online @ feedvu.com
Create Funeral Invites Online @ feedvu.com
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara Rakovska
AMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara RakovskaAMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara Rakovska
AMBER GRAIN EMBROIDERY | Growing folklore elements | Barbara Rakovska
 
How to use Ai for UX UI Design | ChatGPT
How to use Ai for UX UI Design | ChatGPTHow to use Ai for UX UI Design | ChatGPT
How to use Ai for UX UI Design | ChatGPT
 
High-Quality Faux Embroidery Services | Cre8iveSkill
High-Quality Faux Embroidery Services | Cre8iveSkillHigh-Quality Faux Embroidery Services | Cre8iveSkill
High-Quality Faux Embroidery Services | Cre8iveSkill
 
Unlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdf
Unlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdfUnlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdf
Unlocking Conversion_ The Art of Turning Visitors into Loyal Customers.pdf
 
WCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptx
WCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptxWCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptx
WCM Branding Agency | 210519 - Portfolio Review (F&B) -s.pptx
 
Embroidery design from embroidery magazine
Embroidery design from embroidery magazineEmbroidery design from embroidery magazine
Embroidery design from embroidery magazine
 
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
Introduce Trauma-Informed Design to Your Organization - CSUN ATC 2024
 
UI UX Process for SaaS Product Design Success
UI UX Process for SaaS Product Design SuccessUI UX Process for SaaS Product Design Success
UI UX Process for SaaS Product Design Success
 
Khushi sharma undergraduate portfolio...
Khushi sharma undergraduate portfolio...Khushi sharma undergraduate portfolio...
Khushi sharma undergraduate portfolio...
 
UX Conference on UX Research Trends in 2024
UX Conference on UX Research Trends in 2024UX Conference on UX Research Trends in 2024
UX Conference on UX Research Trends in 2024
 

A Systems Literacy Manifesto / Hugh Dubberly

  • 1. RSD3 2014 Symposium—Relating Systems Thinking and Design 3 Oslo 17 October 2014 A Systems Literacy Manifesto Hugh Dubberly Dubberly Design Office www.dubberly.com/presentations/system_literacy.pdf
  • 2. “…there is a good deal of turmoil about the manner in which our society is run .…the citizen has begun to suspect that the people who make major decisions that affect our lives don’t know what they are doing. …because they have no adequate basis to judge the effects of their decisions.” — C. West Churchman, 1968 Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 2
  • 3. “Government is not the solution to our problems; government is the problem.” — Ronald Reagan, 1981 Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 3
  • 4. “Those of us who have looked to the self-interest of lending institutions to protect shareholders’ equity, myself included, are in a state of shocked disbelief,” — Alan Greenspan, 2008 Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 4
  • 5. “I do not believe that human activity is causing these dramatic changes to our climate the way these scientists are portraying it…” — Marco Rubio, 2014 (U.S. Senator and candidate for President) Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 5
  • 6. Decision makers “not knowing what they are doing,” lacking “adequate basis to judge effects,” is not stupidity. It is a type of illiteracy. It is a symptom that something is missing in public discourse, in organizations and businesses, and in our schools. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 6
  • 7. A Systems Literacy Manifesto We need systems literacy— in decision makers and in the general public. A body of knowledge has grown about systems; yet schools largely ignore it. It can be codified and extended. And it should be taught in design and management schools in particular, but also in general college education and in kindergarten through high school, just as we teach language and math at all levels. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 7
  • 8. PART ONE Why do we need systems literacy? Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 8
  • 9. Almost all the challenges that really matter involve systems, e.g., -- Energy and global warming -- Water, food, and population -- Health and social justice Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 9
  • 10. And in the day-to-day world of business, new products that create high value almost all involve systems, too. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 10
  • 11. For the public, for managers, and for designers, part of the difficulty is that these systems are -- complex made of many parts, richly connected -- evolving growing + interacting with the world -- probabilistic easily disturbed + partly self-regulating (not chaotic, but not entirely predictable) Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 11
  • 12. The difficulty is compounded because these systems may not appear as “wholes”. Unlike an engine or a tornado or a human being, they may be hard to see all at once. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 12
  • 13. Systems are often dispersed in space, their “system-ness” experienced only over time, rendering them almost invisible. Or we may live within these systems seeing only a few individual parts, making the whole easy-to-overlook. We might call these “hidden” systems— or gossamer or ethereal or translucent systems. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 13
  • 14. For example, -- natural system the water cycle, weather, and ecologies -- information system operating systems, DNS, cloud-based services -- social system languages, laws, and organizations -- hybrid system local health-care systems and education systems Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 14
  • 15. Water travels contionuously through a cycle. Cloud Formation Precipitation Ocean Lake Ground Rain Clouds Snow Evaporation + Condensation Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 15
  • 16. Carbon also travels through a cycle. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 16
  • 17. Sometimes large quantities can be tied up—sequestered— so that they are not traveling through the cycle. Changing stock levels—sequestering or releasing water or carbon— affects the climate as ice or carbon dioxide interacts with the planet’s weather system. Water Cycle Weather Cycles Carbon Cycle Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 17
  • 18. In sum: We face the difficulties of untangling messes (taming wicked problems) and fostering innovation (economic and social), which require understanding systems— which are complex, evolving, and probabilistic— and “hidden” or “translucent”. What is more: systems are “observed”. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 18
  • 19. “Anything said is said by an observer.” — Humberto Maturana, Theorem Number 1, 1970 That is, as Stafford Beer said, “a system is not something given in nature,” it is something we define— even as we interact with it. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 19
  • 20. “Anything said is said to an observer.” — Heinz von Foerster, Corollary Number 1, 1979 What the observer “says” is a description, said to another observer in a language (they “share”), creating a connection that forms the basis for a society. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 20
  • 21. Now, we can ask a simple question: How should we describe systems? Or more precisely, how should we describe systems that are complex, evolving, probabilistic— and “hidden”—and “observed” ? Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 21
  • 22. PART TWO What is systems literacy? Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 22
  • 23. Churchman outlines four approaches to systems: efficiency expert: reducing time and cost scientist: building (mathematical) models humanist: looking to our values anti-planners: living in systems, not imposing plans Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 23
  • 24. We might consider a fifth approach: designer: prototyping and iterating systems or representations of systems Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 24
  • 25. Basic systems literacy includes: -- vocabulary (content): a set of distinctions and entailments (relationships) -- “reading” (skills of analysis): recognizing common patterns in specific situations e.g., identifying—finding and naming—a control loop -- “writing” (skills of synthesis): describing the function of systems to others, mapping and diagramming Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 25
  • 26. Systems literacy is enriched with: -- literature: a canon of key works of theory and criticism -- history: context, sources, and development of key ideas -- connections: conversations among and between disciplines e.g., design methods and management science Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 26
  • 27. A vocabulary in systems begins with system, environment, boundary stocks, flows, delay (lag) source, sink process, transform function, cycle information (signal, message), goal (threshold, set-point), feedback circular processes, circularity closed-loop, open-loop viscous cycle, virtuous cycle explosion, collapse, dissipation negative feedback, positive feedback reinforcing, dampening, balancing stability, invariant organization, dynamic equilibrium, homeostasis tragedy of the commons behavior, action (task), measurement range, resolution, frequency sensor, comparator, actuator (effector) current state, desired state error, detection, correction disturbances, responses controlled variable, command signal servo-mechanism, governor hunting, oscillation, prediction control, communication teleology, purpose goal-directed, self-regulating co-ordination, regulation emergence feedforward static, dynamic first order, second order essential variables variety, “requisite variety” transformation (table) autopoiesis constructivism recursion observer, observed controller, controlled agreement, (mis-)understanding “an agreement over an understanding” learning, conversation bio-cost, bio-gain back-talk structure, organization, co-evolution, drift black box explanatory principle “organizational closure” self-reference, reflexive ethical imperative “generosity in design” structural coupling “consensual co-ordination of consensual co-ordination” “conservation of a manner of living” Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 27
  • 28. Reading systems means recognizing common patterns in specific situations. e.g., -- resource flows and cycles -- transform functions (processes) -- feedback loops -- feed-forward -- requisite variety -- second-order feedback -- goal-action trees Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 28
  • 29. Temperature Control Lever Temperature Indicator Pin Fixed Contact Screw 50 | | | | | 60 | | | | | 70 | | | | | 80 | | | | | 90 The bi-metal coil is connected to the temperature control lever. *The magnet insures a good contact and prevents erratic on/off signals to the heater in the event that the Moving Contact Bi-metal Coil Magnet* Moving moves The the The Power in Power to heater Consider the toilet and thermostat, different in form and structure. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 29
  • 30. Goal = temperature at 18º C Air in the room Measure temperature Action activate heater Yet the toilet and thermostat are the same in function. Both are governors. Goal = water level at 10 cm Tank Measure water level Action open valve Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 30
  • 31. Writing systems means describing the function of systems to others, through -- text -- images Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 31
  • 32. Text can describe a system’s function, linking it to a common pattern. But text descriptions require mental gymnastics from readers— imagining both the behavior of the system and the abstract functional pattern— and then linking the two. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 32
  • 33. Images of physical systems aid readers, though behavior can be difficult to depict. But function must be represented in diagrams, often with some degree of formalism. Learning to read and write one or more systems function formalisms is an important part of systems literacy. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 33
  • 34. Donalla Meadows has a particular formalism. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 34
  • 35. O’Connor & McDermott have another formalism. Reinforcing Balancing Limits to Success Addiction Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 35
  • 36. Otto Mayr has a block diagram formalism. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 36
  • 37. Yet in many cases, simple concept maps may be all the formalism required. Feedback: Overview Goal (Desired State) through system through environment Effect (Current State) Action System attempts to reach a goal; based on feedback, it modies its actions. (System acts both within itself and on its environment.) Measurement System measures its progress comparing current state to desired state determining the difference, and attempting to correct the ‘error.’ Feedback (transfer of information) Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 37
  • 38. Yet in many cases, simple concept maps may be all the formalism required. Goal Feedback: Mechanism is embodied in a Comparator subtracts the current state value from the desired state value to determine the error System Environment Disturbances is measured by affects the . . . describes a relationship that a system desires to have with its environment . . . may be characterized as certain types typically falling within a known range; but previously unseen types may emerge and values may vary beyond a known range; in such cases the system will fail because it does not have requisite variety . . . has resolution – (Accuracy) frequency – (Latency) range – (Capacity) . . . has resolution frequency range can affect the input output a Sensor passes the current state value to . . . . . . . . . . responds by driving an Actuator Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 38
  • 39. Physical World make up organized into provide structure to make up People Feeds Tables Databases Metadata Data/Document Storage System Graph News, Products, Related Links, Trademarks, Recirculation, Stocks Yahoo! Open Directory Infoseek used by generate generate can act as provide multiple views of data in a database Usenet Yahoo! Open Directory Dewey Decimal Library of Congress is used to create data that contains information about its format later organized by are create and maintain can assign quality ratings such as editor’s choice or cool site of the day are “sensed” by send data to send data to create an sends data to a Sensors Analyzers Indexers Index Post Processors Active Searchers Data/Document Retrieval System Raw Data Scraper Results Pages Metadata and Data Results Data Aggregator Templates sends data to an Views WWW Site Directory Databases Customization Settings WWW Pages Data/Document Creation Process 3rd Parties WWW Sites Submissions WWW Users Crawlers Editors Algorithms Hierarchical Taxonomies Sorted Lists Organizing Principle WWW Document Databases Page Databases Data Objects Objects residing in databases that are not referenceable by a simple URI such as company names, addresses, phone numbers, names of people, personal profiles, horoscopes, credit card numbers, product names, prices, maps, event listings, news clips, weather WWW Objects Descriptions Attributes Keywords Personalization Profiles Options can contribute to the specification of can be stored in Behavioral History can contribute to the specification of Passive Searchers Group Profiles Environmental State Information Actions Goals Relevance Ranking Interpreter made using a sent to an could be redrawn by an could contain a Queries Source such as Representations Articulator Input Device Output Device Answers Persons, Places Things, Ideas User Context renders could directly receive could receive data directly from an should empower Understanding Internet Search Concepts, Systems and Processes 8 August 1999 Data/Document Retrieval Process require to enable toward exist in the involve is made up of describe represent such as such as such as represent describe create of that exist in the make of a sends data to an sends data to a displays in order to get generates generates is referenced by an could be contained in a are indexed by are indexed by are indexed by used by could be contained in a If a graph is in place, the index functions as a lightweight lookup table. If no graph is used, the index contains all of the data in addition to the lookup table, in a list format. Turns the user’s query into something readable by the index. Could handle: boolean operators spell checking word stemming case folding internationalization thesauri phrase searching related terms Any processes done on the data returned from the index. Could involve sorting, ordering, or compiling the data retrieved from the index. Provides the architecture, or “form” of the data for the creation of the results page. The templates can exist in multiple, localized formats. A collection of technologies that attempt to rank the relative value of a set of results. Google ranks results during the indexing process by examining the relationships created by the hyperlinks in the documents. More popular sites score higher. Clever does the ranking during post processing. It uses an iterative process that looks at the popularity of a site (much like Google) but does so in regard to the keywords used in the search. such as keyverbs, boolean operators, data type, media type, language or domain Scope is reduced by specifying additional restrictions upfront. Best for data retrieval. Scope is reduced by reducing choices from a found set, in a sequence of ever smaller sets. Best for document retrieval. ... can be described by their goals, age, gender, income, geographic location, education, hardware and software, connection speed, member status The suggested starting point for reading is “People”. I would like to acknowledge Hugh Dubberly for his many suggestions, and Ken Hickman and Paul Pangaro for their contributions. Designed by Matt Leacock Search Concept Map, version 1.2 Could be organized as cultural responses to human needs (Malinowski) roughly, Food Kinship Shelter Protection Activities Training Hygiene options that are stored either locally or on a server behaviors and states that are stored either locally or on a server large collections of profiles that can be analyzed to produce trend information click paths, session tracking, decision tracking browser type and version, language setting, IP address, current page, monitor size, color settings, javascript capability such as HTML streams Form and content are merged. Scrapes unwanted form information from the data stream. Classifies remaining data. Combines or interleaves data from multiple sources. such as XML, XUL, or RDF Data is self-describing and separate from the form it will eventually take. could contain an could contain a could contain an A repository of data that could be stored in RDF format. Can be updated independently of the index that references it. Entries in the graph can reference each other. For instance, a request for a stock quote of an entry could point to the symbol, the symbol could point to the company name and the current quote, the current quote could point to the quote history, and the quote history could point to a quote histogram. Creates a lookup table from all of the data fed into it. If a graph is not in use all of the data fed into it is stored as entries in the lookup table. I-search and PLS are existing technologies. ... are the input devices of the data/document storage system Stored proxies of physical world objects and ideas Groups of WWW Objects in context Objects referenceable by a URI such as html, text, gif, jpeg, png, avi, mpeg, real, quicktime, wav, pdf, rss, xml, xul files Groups of WWW Pages in context describe make up are organized into provide structure to can be make up are organized into provide structure to are gathered by are gathered by generate generate are gathered by are an are an are an make up describe describe are represented by alphabetically by relevance by modification date Alexa Bigfoot At Hand paid volunteer text analysis link analysis meta data analysis ... gather all of the text on a given web page, then continue gathering text on all of the pages linked to the given page, then follow the links on those pages, and so on. Inktomi Google Alta Vista Lycos are are are are used to create organized by later organized by act as contains an could be contained in control the display order of could be the same as the could be redrawn by the or ‘Layout Engine’ Combines form and content. Any device that can receive data and render it for the user. Could be by relevance, creation date, modification date, alphabetical, by source, by media type, involve progressive disclosure, pagination, or custom look and feel (themes) Any UI page or widget that displays the results data could receive data directly from an could directly receive could receive could receive data from an could be sent to a sends data to an makes use of such as such as should provide the required should help people attain their collect data for can pair data metadata from can influence can influence can influence can be collected and stored into can be stored in can be stored in contain data that can improve the specification of contains data that can improve the specification of contain data that can improve the specification of can be stored in can specify can specify rely on rely on Or more simply, Work, Play, Learn and Food, Clothing, Shelter, Love organize the form of could be could specify could be can be done by Amazon ranks related books and CDs by keeping track of the purchasing habits of groups (group profiles). Grapevine allows users to actively rank results (a customization process) but then attempts to guess what the user will want based on what it has learned (a personalization process). Direct Hit analyzes the time spent by users on a given result. It also keeps track of whether or not a user returns to the results page after viewing a result. If the user returns, the result receives a lower score. could be contained in a Netscape search concept map Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 39
  • 40. Java Programming language is defined by the enables is defined by the ... Java Language Specification 43 is used to write ... programs 24 is used to write ... class libraries 10 The Java language has roots in C, Objective C, SmallTalk, and LISP. As opposed to a purely procedural programming language. Java Native Interface (JNI) provides a method for calling native functions such as operating system or legacy library functions. Architecturally dependent machines that are available for nearly every contemporary operating system. Such as the object model, inheritance, modularity, abstraction, hierarchy, implementation hiding, information hiding, encapsulation, and polymorphism. Java virtual machine specification architecturally independent applications security model One application can run in multiple environments without being rewritten or recompiled. can be improved by implements garbage collection 19 20 21 Including memory and hard drive. Significantly improves virtual machine performance by translating groups of instructions from byte code to machine code rather than one instruction at a time. Goes beyond Just-in-Time compilation by examining the code as it runs and focusing optimization efforts on the most critical pieces of code as it executes. Dynamic compilation is enacted by the Java HotSpotTM virtual machine. Watching for data in memory that is no longer needed and freeing the memory for reuse. Other programming languages require programmers to free memory explicitly when a piece of data is no longer needed, which can increase the development effort. JSPA devices Is platform independent. It almost never can be read by the processor directly. that make 10 13 may contain multiple define may contain multiple implement implement may define required has have scope Class libraries are organized collections of prebuilt classes and functions used to create other classes. Class libraries can be part of the Java standard – meaning they have been ratified by the Java Community Process – or created by individual developers for their own or their company's use. useful for people learn and use Developers to create and run Java Community ProcessSM members join the JCP by signing the often discuss Java in works with supports the development of ... Java 0 provides ... documentation 42 owns the ... Java trademark 1 make(s) ... SDKs 29 makes versions of a ... JVM 18 provides is represented on develops expert groups logo text editor 4 Basic source code that describes the graphical user interface. Does not include implementation details. programs and the internet What is Java Technology? This diagram is a model of Java™ technology. The diagram explains Java technology by placing it in the context of related concepts and examples, and by defining its major components and the connections between them. It shows how developers use Java technology to create programs that benefit people everywhere, and explains how computers and networks relate to Java technology. The diagram is intended to help developers who are familiar with one part of the Java platform understand other parts. It relates unfamiliar technologies to ones with which developers may already be familiar. The diagram also provides an overview for developers who are new to Java technology and an introduction for non-programmers who want to improve their ability to converse with developers. For more information, visit the web site at http://java.sun.com. Concept Maps The diagram takes the form of a concept map – a web of linked terms showing both overall structure and details. By showing everything – the forest and the trees – in a single view, concept maps help people visualize mental models and clarify thoughts. In concept maps, verbs connect nouns to form propositions. Examples and details accompany the terms. More important terms receive visual emphasis; less important terms and examples are in gray. Purple terms and purple lines indicate a process. Terms followed by a number link to terms preceded by the same number. Including getting information, communicating, collaborating, playing, working, creating, and buying and selling. Including news services, instant messaging services, e-mail services, communication software, collaboration software, discussion forums, games, the world wide web, productivity software, image-creation software, and marketplace services. Foundation Profile Specification Connected Limited Device Configuration (CLDC) Specification Connected Device Configuration (CDC) Specification Personal Profile Specification J2ME API Specification Mobile Information Device Profile (MIDP) API Documents Connected Limited Device Configuration (CLDC) API Documents Connected Device Configuration (CDC) API Documents Java Series Trademarks © 2002 Sun Microsystems, Inc. All rights reserved. Sun, Sun Microsystems, the Sun logo, Java, the Java coffee cup logo, J2EE, J2SE, J2ME, Enterprise JavaBeans, EJB, JavaBeans, Java Card, Java Community Process, JCP, Javadoc, Java Embedded Server, JavaHelp, JavaServer Pages, JSP, Java TV, Java 3D, Jini, JVM, PersonalJava, Solaris, and SunOS are registered trademarks of Sun Microsystems, Inc. Any errors or omissions are the responsibility of the authors. Comments are welcome; contact Audrey Crane at audrey@dubberly.com. February 14, 2003 24 26 Acknowledgements Prepared for the Sun Developer Web Services Group by Dubberly Design Office/Devine/Faris/Saddler. Significant contributions from the following people made this map possible: Josh Bloch, Lisa Friendly, Doug Kramer, Paul Pangaro, Robert Patten, Monica Pawlan, Carla Schroer, Leigh Shevchik, Alan Sommerer, Ken Tallman, and James Urquhart. Thanks also to Cindy Bloch, Adam Cohn, Andrey Dikanskiy, Larry Freeman, Dale Green, Joann Gray, Cori Kaylor, Onno Kluyt, Stuart Marks, Shawn Moore, Chuck Mosher, Shaler Ney, Eduardo Pelegri-Llopart, Lori Uzzo, Brad Wetmore, and Hinkmond Wong. Java object model Java virtual machine (JVMTM) Development process is a name for a ... programming language is also a name for ... SDKs and JREs defines a set of ... APIs 13 is implemented as a set of ... platforms 27 can be used to write ... programs 24 such as ... applications 28 enable ... services 26 run on and connect ... devices 25 JavaTM2 Platform: end-to-end solutions for enterprise servers and applications for desktop servers and applications for consumer and embedded servers and applications Documentation or refer to ... objects 15 are constrained by are constrained by are invoked by or on ... objects 15 define a location to store can be are processed by the to create may be an may override existing may define new may rely on parent's contain multiple are ratified by... the JCP 2 serves as the defines the behavior of ... APIs 13 define can be used through inherits methods and properties from a may also be a field types can be field or class types can be... classes 12 may implement are runtime instances of ... classes 12 have are created by implement running in RAM are may be categorized as are constrained by are distinguished by manipulate enforces a improves can be improved by implements controls access to enable defines that is an is organized by provide such as is based on the outline lay out contribute to the generation of contribute to the generation of testing may find a may be thought of as running ... objects 15 such as allows adjustment of ... objects 15 may include are used to write, test, and debug is trapped by a draft are led by are examples of ... classes 12 may consist of consist of members of and do the work of the overseen by the are represented on the is submitted to administers the chairs the exists within has a which is comments on may request major revisions via may revise champion is added to the definition of ... Java 0 become members of the JCP by signing within the context of the Java Community Process, may function as ... developers 23 support the development of ... Java 0 make ... SDKs 29 make versions of a ... JVM 18 certify Java applications using provide building blocks for run on are composed of are composed of are composed of are contained in include run on run on enterprise applications client/server business logic server components client components user interfaces are configured by is described by have interfaces provided by read configurations from a can call other always have can be ... J2SE applets 36 can be ... J2SE applications 38 can be ... J2ME applets 40 can be ... MIDlets 41 have such as and is used to build and run can be a run inside a include can be created by runs on A standardized way of integrating and shaping business logic, data, and processes across a network. is used to build ... web services 33 runs on run on are ... class libraries 10 may include ... tools 17 are used in ... development environments 16 include ... class libraries 10 are used to create ... programs 24 include a include ... packages 11 are used to run ... programs 24 always directly build embed programming code in a depends upon such as are may utilize the are run in are configured by a is housed in Enterprise JavaBeansTM(EJB) are built using run inside an run inside a are built using are built using run inside a is created by a is contained in never directly build may directly build include ... platform packages 37 contains runs on may be enabled by are enabled by provides a is one type of is used to build and run is used to build and run are desktop applications are Java 2 Platform Standard Edition is intended to run on desktops, laptops, and workstations. J2SE also includes the core language packages and classes used by J2EE and J2ME. are built using are built using may run inside a run inside an for example are contained in the are built with may be enabled by a may be enabled by an Java 2 Platform Micro Edition is intended to run on devices with limited computing power, such as cell phones or PDAs. J2ME has reduced processor and memory requirements. It is based on subsets of J2SE with additional components for market segments such as hand-held devices. PDA applications are built using specialized embedded applications are built using run in a are built using depends on includes a runs on run on depends on contains a subset of a include a run in a are such as is used to build and run are built with are built using a are built with may be built with may be built with may be are built with is contained in the defines a runs on run on is used to build and run are built with are built using run on runs on a runs on run on is used to build and run are built with the runs on a runs on run on is instantiated by runs on runs on J2SE optional packages Java 3DTM JavaHelpTM run on run on is based on subsets of for example such as such as such as may be interpreted by a such as such as such as such as such as specifies and documents ... J2EE 32 specifies and documents ... J2SE 35 specifies and documents ... J2ME 39 are contained in depend on are contained in runs on are is used to create are read by a run on a defines are stored in compiles source code into is stored in translates byte code into constitute a when debugged, contributes to is edited in the begins with are used to build the begins with if accepted becomes a may become a may become a is added to the definition of ... Java 0 may be implemented in is instantiated in a 12 ... interfaces 14 connects ... devices 25 supports supports ... web services 33 engage in are facilitated by are instantiated in features and benefits has a which is is distinguished by may download and install ... JREs 30 often own ... hardware 31 some of whom are ... developers 23 is developed with ... platforms are used by support ... services 26 such as ... hardware 31 object-oriented programming language 9 explicit error handling 22 garbage collection 21 security model 20 architecturally independent applications 19 Java virtual machine 18 hosts is the foundation for the completed helps identify problems with such as is a runs inside a ... web browser 34 run inside a ... web browser 34 includes members from is used to build applications and services based on may become platform packages via the ... JCP 2 may submit or comment on a ... Java Specification Request 3 who are members of the Java Community Process serve on ... expert groups 5 form ... Java developer communities 4 comment on a ... public draft 6 participate in the ... Java Community Process 2 may request revisions from the ... maintenance lead 7 who are members of the JCP elect the ... executive committee 8 often use ... development environments 16 pa rticipate in the ... development process consist of J2ME Tutorials J2SE Platform Specification J2EE Platform Specification J2EE Connector Specification J2EE API Specification Java Series J2EE Tutorials PersonalJava Specification Personal Basis Profile Specification J2SE API Specification Java Series tutorials Java Language Specification (JLS) J2SE Tutorials J2ME Platform Specification Mobile Information Device Profile (MIDP) Specification point-of-sale (POS) systems, pagers, cell phones, and personal digital assistants (PDAs) Java Card, subscriber identity module (SIM) phones, and multi-application smart cards network-aware appliances, automobiles, and Telematic networks Windows Mac OS Unix Linux Irix SolarisTM SunOSTM AIX Alpha RS6000 FreeBSD NeXT HP-UX Compaq Tru64 beOS VMS Solaris, Linux, Windows, HP-UX, AIX, FreeBSD Windows SolarisTM proprietary systems Palm OS, Windows CE, RTOS, Linux, Symbian OS, proprietary systems Java forums Java developer communities specification leads (spec leads) Java Community ProcessSM(JCP) Executive Committee alternate implementations Sun companies Java Specification Request (JSR) community draft public draft new Java specification Reference Implementation Technology Compatibility Kit (TCK) Program Management Office maintenance lead visual programming tools class structures user interface frameworks bug development environments tools source code framework source code classes text files compiler byte code binary files virtual machine machine instructions fragment or application debugger J2EE documentation J2SE documentation J2ME documentation other documentation J2METM J2ME applets J2ME applications MIDlets Personal Profile (PP) Profiles CDC configurations CLDC J2ME Wireless Toolkit Java virtual machine cell phone applications MIDP Java CardTM Java TVTM Java Embedded ServerTM(JES) applications for use with Smart Cards Java Card applets Java Card API Java Card virtual machine interactive television applications Java TV Xlets Java TV APIs PersonalJavaTM Java virtual machine televisions embedded applications Java Embedded Server framework Java virtual machine proprietary systems real-time operating systems (RTOS) Java Card Development Kit platforms applications runnable components components packages or libraries Software Development Kits (SDKs) Java runtime environments (JREs) operating systems specific devices (hardware) deployment descriptor EJB container servlets JavaServer PagesTM(JSPTM) web container connector architecture web-based applications J2EE platform packages J2EE specific packages Java virtual machine Java-enabled web server J2EE application server Java Web Services Developer Pack servers J2EE Software Development Kit web services web browser markup language Extensible Markup Language (XML) Simple Object Access Protocol (SOAP) UDDI J2SE applications platform packages Java regular expressions J2SE Software Development Kit Java Plug-In Java-enabled browser or viewer operating system-based Java virtual machine optional packages J2ME optional packages J2SETM Swing containers applications J2EETM applications embedded in a web page J2SE applets JavaBeansTM Beans personal computers workstations portability critical resources explicit error handling Just-In-Time compilation dynamic compilation performance syntax and keywords object-oriented programming language benefits and advantages reduced development time ability to write higher-quality code more maintainable code ability to call non-Java functions principles objects serialization class libraries packages classes inner classes methods constructors superclass (parent class) abstract class APIs subclass (child class) fields types statements declarations comments data primitives object references JavadocTM comments Javadoc tool interfaces methods and fields browsable documentation API spec activities services software trademark logo JiniTM Provides a complete specification for the syntax and semantics of the Java programming language. 11 14 15 12 18 25 9 22 16 17 32 35 36 37 38 39 40 41 43 42 2 3 0 5 6 8 7 33 34 27 23 28 30 31 29 1 Application programming interface specification. Runtime instances of classes. In runtime, refers to the process of turning an object into a data stream for purposes of transmission or storage. Classes are source code files that describe a unit of programming. A class relates a set of data (fields) and functions (methods) that use the data. An application programming interface is the written or understood specification of how a piece of software interacts with the outside world. It specifies what input the application or application component accepts, how the software will behave, and what output it will provide. All computer software relies on a variety of APIs to achieve tasks such as writing a file or displaying text. APIs often depend on other APIs. Particular to Java, interfaces are source code files that define a set of functions (methods) that are required by a class. Interfaces name methods and set an expectation for each method's behavior, but do not implement the methods. Interfaces allow a piece of code to be written in such a way that the code can work with any type of class that supports the interface. Abstract classes permit child classes to inherit a defined method or to create groups of related classes for polymorphic behavior. Primitives generally enable basic math or comparison operations. Inner classes reside inside another class, allowing for better organization. Should not be confused with subclasses. In running programs, statements prescribe actions or a sequence of actions. Scope limits access to methods and properties. Levels include: • public: can be called or manipulated freely • protected: can be called or manipulated by a class in the same package • private: can be called or manipulated only by the same class. Comments specifically formatted to be processed by the Javadoc tool. In running programs, declarations define a variable's existence and determine scope. Notes that developers include to explain source code to themselves and others. Methods are detailed instructions that cause a running object to take action or manipulate data. Fields are sometimes referred to as properties. The virtual machine may encounter a problem, or exception, while a program is running. The Java language requires that pieces of code which are likely to encounter a particular error offer a mechanism for handling the exception at runtime. When an error is encountered, the virtual machine executes the code designed to respond to the error. Class structures are basic source code that provides a framework for the classes, describes the class hierarchy, and provides the names of the class methods and properties. Does not include implementation details (method definitions). Downloads and documentation are available at http://java.sun.com. Selected Java products have been localized into many languages. This localization is one of the key factors for adoption of Java technology worldwide. The combination of the class structures and the user interface framework into a skeleton of the application's overall source code. Does not include implementation details. The software development process is iterative, with several rounds of designing, writing, compiling, running, and testing before software is deployed. A software utility that turns human-readable text files into machine-friendly byte code. Are computer-readable. Binary files usually have the suffixes .jar, .jcm, .class, .ear, or .war. Is human readable. Are processor dependent. They can be read by the processor directly. Java developers often use specific development environments called Integrated Development Environments, or IDEs. Are human-readable. Usually have the suffixes .java or .jav. A Reference Implementation is a working example of the JSR. Other companies will produce their own implementations. The TCK is a suite of tests, tools, and documentation that provides a standard way of testing an implementation for compliance with a Java specification. A proposal to develop a new specification or significant revision to an existing spec. Companies include IBM, Motorola, Nokia, Oracle, Novell, Netscape, Hewlett-Packard, Apple, and BEA. There are two executive committees: J2EE/J2SE and J2ME. Universal Description, Discovery, and Integration provides a way for businesses to discover each other. Can also be used programmatically by applications to locate an application or service. There are several implementations of Mobile Information Device Profile, including MIDP for Palm 1.0.3, MIDP 1.04 for Monty, and MIDP 2.0. Profiles are packages required for a particular vertical market segment or set of related devices. Other profiles include Foundation, Game, Personal Basis Profile, and PDA. A system that enables developers to incorporate online help in applications or web sites. A set of classes used to write three-dimensional graphics applets or applications. Connected Device Configuration includes specific packages that are subsets of the J2SE equivalent: java.lang java.util java.net java.io java.text java.security A set of packages that define basic services for a range of devices. Connected Limited Device Configuration includes specific packages that are subsets of the J2SE equivalent: java.io java.lang java.util javax.microedition.io The J2ME Wireless Toolkit includes the necessary tools, emulators, documentation, and examples to develop and simulate Java applications targeted at cell phones, pagers, PDAs, and other small devices. A JVM can be optimized for cell phones, PDAs, and other similarly resourced devices. Manage transactions, life-cycles, and data persistence. Provides a mechanism for connecting to legacy information systems. Cannot function on their own, but are used by other components or runnable components. Enterprise JavaBeans define independent pieces of business logic or application behavior that can call either servlets, JSPs, or other EJBs. Includes the binary version of the J2EE Reference Implementation, plus the development tools and documentation needed to build a J2EE application. Sometimes referred to as required or core packages. Servlets respond to an URL request. Servlets commonly generate HTML, XML, or dynamic images. They can call other servlets, JSPs, or EJBs. On handheld and embedded devices, the initial implementation of Java technology addresses the software needs of networked applications running on consumer devices such as set-top boxes and smart phones. A JVM can be optimized for set-top boxes. Specifies packages: http log device access timers framework Components that can run on their own. Examples include: ¡avax.activation javax.ejb javax.servlet javax.transaction javax.xml JSPs define a page element, which can be HTML, XML, or another markup language. JSPs execute as servlets. They can call other JSPs, servlets, or EJBs. Some JVMs are optimized for servers. Provides a framework for developing and hosting J2EE applications that run inside web containers. The pack includes the Java APIs for XML included in the Java XML Pack, the JavaServer Pages Standard Tag Library (JSTL), the Ant build tool, the Java WSDP Registry Server, and the Tomcat Java Servlet and JavaServer Pages container. Java 2 Platform Enterprise Edition is used to build secure, scalable, distributable server-based applications for large enterprises. Can be HTML, WML, XHTML, or voice XML. Provides a structured and extensible mechanism for organizing and presenting data. Many Java packages and classes utilize XML to store and exchange data. Provides a way for applications to communicate. SOAP is typically transmitted via HTTP. Discrete units of software functionality that conform to the JavaBeans API and are designed to be reusable components. The JavaBeans API makes it particularly easy for Beans to be utilized by visual programming tools. (In an architecture analogy, these would be prebuilt walls, windows, or doors.) A component kit that provides a set of graphical user interface elements. Swing can be used to rapidly build applications without writing original code to support common interface elements. Supports a native look and feel on many common operating systems. A powerful set of text matching and manipulation routines supported by many programming languages. Java technology implements Perl-compatible regular Some JVMs are optimized for various types of laptops, workstations, and desktops. Includes the necessary tools, emulators, and runtime environment to develop and test applets for the Java Card platform. Depend on the Java Media Framework (JMF), which is optional to J2SE but required for Java TV. Includes specific packages: java.lang javacard.framework javacard.security javacardx.crypto A JVM can be optimized for residential gateway servers. Telematic networks connect computers with telecommunications systems. Some browsers may be Java-enabled because they include the Java Plug-In. Some users may need to download the Java Plug-In for their browsers. Installing the Java Plug-In will also install the J2SE runtime environment. Implement a main method. A class that defines an application must declare a main method, which the Java virtual machine uses as the starting point for the application. The main method gets executed when the application starts. Extend the applet class, which provides developers with a basic framework for rapid development of a limited application. This includes a basic user interface framework and event model. Also referred to as required or core packages, platform packages are the heart of the Java programming language. The packages include myriad classes that define user interface components, a programming event model, text and math processing tools, code-level security, objects for memory storage of complex data, and methods for invoking remote applications, to name just a few. Includes Web Services, Getting Started, Java XML, Internationalization, Such as user-controlled camera Sound, and Java 2D. views and video on demand. Java technology is especially useful in devices that are connected by a network. Such as ATMs and point-of-sale services. Such as home services and network-aware automobiles. The J2SE SDK includes the source code, class libraries, development tools, and runtime environment required to build Java applications and applets. Including servers, web-based solutions, stand-alone applications, and clients. A Java specification describes some aspect of Java technology, including language, virtual machines, platform editions, profiles, and APIs. Jini network technology provides one infrastructure for delivering services in a network and for creating spontaneous interaction between programs that use those services. A JRE is the software environment in which programs compiled for the Java virtual machine can run. The runtime system comprises everything necessary to run programs written in the Java programming language, including the Java virtual machine, which may be a Java interpreter, and the platform packages. JREs may be developed by Sun or by other companies. Hosts EJBs, servlets and JSPs. Can host EJBs, servlets and JSPs. Optional packages define a set of methods to address specific functionality required for certain specialized applications. Applications that require optional packages must be shipped with the package code. Specifies that the entire J2SE JLS is applicable to J2EE, includes additional specifications for J2EE, specifies what features the JVM must support, and what the platform packages are. Includes the JLS and documentation describing what the platform packages are and what features the JVM must support. Specifies which parts of the JLS are applicable to J2ME, what features the JVM must support, and what the platform packages are. Java BluePrints Guidelines, patterns, and code for end-to-end applications. is available via http://java.sun.com. The Java Specification Participation Agreement is a one-year renewable agreement that allows signatories to become members of the JCP. Alternatively, developers can sign the more limited Individual Expert Participation Agreement (IEPA). Alternate implementations are written to the same specification and pass the TCK, but can be licensed differently and may have enhanced features beyond the reference Java™ Technology Concept Map Java concept map Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 40
  • 41. Heart attack concept map Health Coach Notebook for Coronary Artery Disease Patients Concept Map is a which results from which results from risk factors some of which can be controlled by behavior healthy living can help control 1. 2. 3. 4. taking prescribed medications cholesterol sodium calories reduces being3 3 more active eases 5. controllable risk factors 1. 2. 3. 4. 5. 6. following dietary recommendations controls control such as such as lowering such as lowering such as lowering burns 4 managed, controls managed, controls managed, controls causes build up of control 2 stopping smoking lowers lowers reducing stress insulin reduces the heart muscle’s such as A heart attack (also called myocardial infarction or MI, from Greek mus, muscle and kardi, heart and from Latin infarcre, to cram) blockage of blood flow to the heart build up of plaque in the arteries of the heart (also called atherosclerosis, from Greek athero, meaning gruel or paste, and sclerosis, meaning hardness) uncontrollable risk factors diabetes (also called diabetes mellitus, from the Latin diabetes, siphon and melltus, honey-sweet) can induce obesity contributes to physical inactivity heredity (including being African-American) under age 55, being male over age 65, being female increases liklihood of tobacco increasing age exposure high cholesterol (also called hypercholesterolemia, from Greek huper, over, khole, bile and stereos, solid) high blood pressure (also called hypertension, from Greek huper, over, and Latin tensis, stretching out) innermost layer of the artery (also called endothelium, from Greek endon, within and thele, nipple) contributes to the risk of 2 stroke can also cause 3 4 contributes to contributes to the risk of contributes to the risk of contributes to the risk of begins with damage to the contributes to the risk of contributes to the risk of contributes to the liklihood of sufferers usually have increses risk of contributes to contributes to contributes to damages the contributes to contributes to damages the damages the may speed can become a may be may be plaque (deposit of fatty material) blood clot that moves until it lodges in a vessel (also called embolus, from Greek embolos, plug) blood clot that forms in a vessel or cavity of the heart (also called thrombus, from Greek thrombos, clot) may rupture, causing can be caused by can be relieved by is one kind of insufficiency of blood supply (also called ischemia, from Greek iskhein, to keep back and haima, blood) can result in increases the risk of causes pain in the chest, neck, jaw, back or arm (also called angina, from Greek anchone, a strangling) is an indicator of is arterial build up of may be oxygen supply reduces the may disturb the disturbed, can cause the heart to stop (also called cardiac arrest) can lead to death may reduce the heart’s capacity (which may cause it to work harder) heart rhythm may disturb the reduced, may cause may disturb the may disturb the may cause symptoms weakness, nausea and vomiting, sweating, and shortness of breath medication, coronary bypass surgery, or angioplasty (Angioplasty is a non-surgical procedure which enlarges the inner diameter of a blood vessel - most commonly by flattening plaque with a balloon, or vaporizing plaque with a laser.) may be indicated by dead, scarred heart tissue HMG CoA reductase inhibitors (statins), bile acid sequestrants, nicotinic acid, and fibric acid ACE* inhibitors, angiotensin II receptor blockers, vasodilators (such as aspirin and nitroglycerin), beta blockers, calcium antagonists, anti-hypertensives, and diuretics (*angiotensin converting enzyme inhibitor) Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 41
  • 42. Female = 655 + (4.35 × CW) + (4.7 × H) – (4.7 × A) Wellspace variables equation Weight control concept map = Female Male = = Male Extremely active Very active 66 + (6.23 × CW) + (12.7 × H) – (6.8 × A) Moderately active Lightly active Sedentary Coma 1.0 + .175 + .2 + .175 + .175 + .175 1.9 1.725 1.55 1.375 1.2 1.0 100 lbs at 5' 5 lbs for each 1 5' 106 lbs at 5' 6 lbs for each 1 5' cW Current weight C+ Calories eaten rW Recommended weight (Hamwi formula) Current Gender weight Gender suggests suggests Height Height Age day C– Calories burned gW Goal weight ΔW Weight change RR ate of weight loss per day lbs 3500 Calories in 1 lbs Can’t be 2 lbs /week (or .286 lbs /day) Defaults to 1 lbs /week (or .143 lbs /day) day Cd Calorie deficit day day day day ΔT Time to reach goal weight mCb Maintanence calorie budget rCb Recommended calorie budget BMR Basal metabolic rate AF Activity factor Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 42
  • 43. inverse more accurately... 98.6º proportional inverse proportional proportional more accurately... proportional proportional proportional Needle Cost Strength inverse proportional proportional proportional Injection Depth Needle Length Temperature inverse inverse Time Pain Volume Viscosity Needle Gauge Flow Rate inverse proportional Concentration proportional proportional Drug delivery device map Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 43
  • 44. can sends and receives Messages can be Created - New - - Manually - - From short cuts - Reply - Reply All - Forward - Sent - Sent Again Read (opened) - As preview - Full text Read - Text-to-speech Updated (draft) Primary (Default) Deleted or - Locally Secondary - Globally can be - Singly Designated - En Masse - Undo Saved - Locally - To Cloud Filtered Sorted Searched - Locally - Globally - Within Filter Moved - Singly - En masse Flagged Marked (read/not) - Singly - En masse Black = Entities (data Gray = Entity to be added Cyan = Relation between Green = Action user can Light Green = Action to Email conceptual model Android, Email Client, Conceptual Model are Account Name User Name Email Address User Name Password Server Protocols - SMTP for sending - IMAP or POP for retrieving - Exchange Port Secure Connection - Auto - SSL/TLS - STARTTLS Domain Secure Connection (yes or no) can be Configured are associated with for IMAP / POP for Exchange contain Text - Original - Quoted can be Created - By Virtual Keyboard - By Microphone (voice-to-text) Deleted Formatted Annotated Spell-checked Enlarged / Reduced has Format Annotations - Highlights - Notes can be Created / Deleted Displayed / Hidden Images can be Attached / Deleted Displayed / Hidden Saved Loaded from remote source Attachments can be Attached Deleted Opened / Closed Saved Meta-data can be Created / Deleted - Automatic - Manual Displayed / Hidden Used to Filter Used to Sort includes Recipients could be - Main - CC - BCC Sender Subject Preview Time Stamp (year, month, day, hour, minute) Flag (on or off, depends on service) Tags Status (unread or read) Response (none, reply, or forward) Priority (low, normal, or high) Routing Information are organized in Folders can be Created / Deleted Opened / Closed Moved such as All (unified in-box, default if multiple services) Account (1 to n; mean = 6) Inbox (Default, if only one service) Drafts (Depends on service) Sent (Depends on service) Junk (Spam, depends on service) Trash (Depends on service) Archive (Depends on service) sent to / uploaded from Local memory Cloud Gallery Quick Office Documents to Go Social network sites (later) sent to / uploaded from Plain Text can be Viewed + Created are stored in Contacts List be accessed by Email Client Access includes - Fetch and Push - Auto and Manual Mail Boxes can be Added Deleted Logged in to Logged out of Threads (Conversations) can be Displayed / Hidden Hot Strings - URLs (Auto-formed links) - Dates (Calendar events) - Names (Contacts) - Phone numbers - Addresses can be Auto-recognized RichText can be Viewed only HTML Text can be Viewed only Accounts include such as - AOL - Exchange - Gmail - Hotmail - iCloud - Ymail Related Features - Contacts - Calendar - Bookmarks - Reminders (To-do’s) - Documents (Files) - Media (e.g., books, music, video) may include Preferences - Primary Account - Notification - - Sound - - By Account - - By Sender - Preview Length - Meta-data View - Auto Download - - Yes / No - - Up to file size - Number of Messages Stored - Number of Days Saved - Signature (default from Amazon) - Auto-response (out-of-the-office) can be Configured includes Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 44
  • 45. Disney map Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 45
  • 46. PART THREE How do we achieve systems literacy? Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 46
  • 47. Teaching systems in design is not a new idea. HfG Ulm had courses in operations research and cybernetics in the 1960s. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 47
  • 48. All graduate design programs should have courses in systems literacy— as should under grad programs in -- product design -- interaction design -- service design -- information design -- and any program in innovation or social entrepreneurship Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 48
  • 49. One course, 3 hours per week for 12 to 15 weeks is a bare minimum survey of systems. Ideal would be 3 semesters: -- Intro to Systems: systems dynamics, regulation, requisite variety -- Second-Order Systems: observing systems, autopoiesis, learning, ethics -- Systems for Conversation: co-evolution, co-ordination, and collaboration Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 49
  • 50. Recommended readings: -- A Systems View of Life, Capra -- Thinking in Systems, Meadows -- An Introduction to Cybernetics, Ashby -- “Second-order Cybernetics,” Glanville -- “Ethics and Second-order Cybernetics,” von Foerster -- “Systemic and Meta Systemic Laws,” Maturana + Davila -- “What is conversation?” Pangaro -- “The Limits of Togetherness,” Pask -- Decision and Control, Beer -- “Meta-design,” Maturana Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 50
  • 51. Recommended format: seminar + studio -- Readings and discussions -- Review of common patterns (via canonical diagrams) -- In class exercises to apply the patterns -- Homework to apply the patterns again -- In class critiques of previous week’s homework -- Final project to design a new system or repair (or improve) a faulty one Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 51
  • 52. Literacy requires fluency in a language. As with any language, learning the language of systems requires immersion, practice, and time. The reward is that practice becomes habit, and habit becomes a way of thinking— an other (another) point of view. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 52
  • 53. CONCLUSION Implications of (and for) observing systems Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 53
  • 54. “Designers need to be able to observe, describe, and understand the context and environment of the design situation... ...a designer is obliged to use whatever approaches provide the best possible understanding of reality...” — Harold Nelson, Erik Stolterman Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 54
  • 55. “Pask… distinguishes two orders of analysis. The one in which the observer enters the system by stipulating the system’s purpose… [the other] by stipulating his own purpose… [and because he can stipulate his own purpose] he is autonomous… [responsible for] his own actions…” — Heinz von Foerster, 1979 Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 55
  • 56. “…if we know that the reality that we live arises through our emotioning, and we know that we know, we shall be able to act according to our awareness of our liking or not liking the reality that we are bringing forth with our living. That is, we shall become responsible of what we do.” — Humberto Maturana, 1997 Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 56
  • 57. “We human beings can do whatever we imagine if we respect the structural coherences of the domain in which we operate. But we do not have to do all that we imagine, we can choose, and it is there where our behavior as socially conscious human beings matters.” — Humberto Maturana, 1997 Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 57
  • 58. We have a responsibility to try to make things better. If we want decision makers to have a basis to judge the effects of their decisions, or if we acknowledge that almost all the challenges that matter— and most social and economic innovation—involve systems, and if we know that tools exist to help us think about systems, then we must put those tools into circulation. We must build systems literacy. To not do so would be irresponsible. Dubberly Design Office · A Systems Literacy Manifesto · 17 October 2014 58
  • 59. Special thanks to Peter Jones Harold Nelson Birger Sevaldson Paul Pangaro Ryan Reposar hugh@dubberly.com Presentation posted at www.dubberly.com/presentations/system_literacy.pdf