try to make one of them more important
than the others.
Around 1997, many of us began to
think the popular label IT (information
technology) would reconcile these three
parts under a single umbrella unique
to computing.
3, 7 Time has proved us
wrong. IT now connotes technological infrastructure and its financial and
commercial applications, but not the
core technical aspects of computing.
a Computing Paradigm
There is something unsatisfying about
thinking of computing as a “blend of
three sub-paradigms.” What new paradigm does the blend produce?
Recent thinking about this question
has produced new insights that, taken
together, reveal a computing paradigm.
A hallmark of this thinking has been
to shift attention from computing machines to information processes, including natural information processes
such as DNA transcription.
2, 6 The great
principles framework interprets computing through the seven dimensions
of computation, communication, co-ordination, recollection, automation,
evaluation, and design (see http://
greatprinciples.org). The relationships
framework interprets computing as a
dynamic field of many “
implementation” and “influencing” interactions.
10
There is now a strong argument that
computing is a fourth great domain of
science alongside the physical, life, and
social sciences.
5
These newer frameworks all recognize that the computing field has
expanded dramatically in the past
decade. Computing is no longer just
about algorithms, data structures, numerical methods, programming languages, operating systems, networks,
databases, graphics, artificial intelligence, and software engineering, as it
was prior to 1989. It now also includes
there is an
interesting
distinction between
computational
expressions and the
normal language of
engineering, science,
and mathematics.
table 1. Sub-paradigms embedded in computing.
Initiation
Engineering
Create statements
about desired system
actions and responses
(requirements)
hypothesize possible relationships among objects
(theorem)
Construct a model that
explains the observation
and enables predictions
(model)
Create formal statements
of system functions and
interactions (
specifications)
Perform experiments and
collect data (validate)
Design and implement
prototypes (design)
Interpret results Test the prototypes
Act on results (predict) Act on results (build)
math
Characterize objects
of study (definition)
Science
Observe a possible
recurrence or pattern of
phenomena (hypothesis)
Conceptualization
Realization
evaluation
Action
Deduce which relation-
ships are true (proof)
Interpret results
Act on results (apply)
table 2. the computing paradigm.
Initiation
Conceptualization
Realization
evaluation
Action
Computing
Determine if the system to be built (or observed) can be
represented by information processes, either finite (terminating)
or infinite (continuing interactive).
Design (or discover) a computational model (for example,
an algorithm or a set of computational agents) that generates
the system’s behaviors.
Implement designed processes in a medium capable of executing
its instructions. Design simulations and models of discovered
processes. Observe behaviors of information processes.
Test the implementation for logical correctness, consistency
with hypotheses, performance constraints, and meeting original
goals. evolve the realization as needed.
Put the results to action in the world. monitor for continued
evaluation.
exciting new subjects including Internet, Web science, mobile computing,
cyberspace protection, user interface
design, and information visualization.
The resulting commercial applications
have spawned new research challenges
in social networking, endlessly evolving
computation, music, video, digital photography, vision, massive multiplayer
online games, user-generated content,
and much more.
The newer frameworks also recognize the growing use of the scientific
(experimental) method to understand
computations. Heuristic algorithms,
distributed data, fused data, digital forensics, distributed networks, social
networks, and automated robotic systems, to name a few, are often too complex for mathematical analysis but yield
to the scientific method. These scientific approaches reveal that discovery is
as important as construction or design.
Discovery and design are closely linked:
the behavior of many large designed
systems (such as the Web) is discovered
by observation; we design simulations
to imitate discovered information processes. Moreover, computing has developed search tools that are helping make
scientific discoveries in many fields.
The newer frameworks also recognize natural information processes in
many fields including sensing and cognition in living beings, thought processes, social interactions, economics, DNA
transcription, immune systems, and
quantum systems. Computing concepts
enable new discoveries and understandings of these natural processes.
The central focus of the computing paradigm can be summarized as