8/10/2019 Transformational System
1/27
8/10/2019 Transformational System
2/27
8/10/2019 Transformational System
3/27
Contrast reactive systems with transformational
systems, that compute output from an input and
then terminate.
- Terminating
- sometimes interactive
- not interrupt-driven- output not state-dependent
- output dened in terms of input
- sequential
- usually not real-time- compiler, assembler, loader, expert system,
optimization algorithm, search algorithm,
linear programming algorithm,
8/10/2019 Transformational System
4/27
Transformational Systems are essentially thosewhose
behaviour can be described in terms of eachcomponents input/output behaviour.
Each component in a system receives some input,carries
out some computations (typically on internal data
structures), and terminates producing some output.
8/10/2019 Transformational System
5/27
Transformational
A Transformational System
A data input is taken and it returns an
output.
The order of data inputs is preset.
Its execution must end.
8/10/2019 Transformational System
6/27
Examples :
1) Computer the sum of a list of numbers
2) Read a text file, computer how often each
word occurs and display the resultgraphically.
8/10/2019 Transformational System
7/27
8/10/2019 Transformational System
8/27
LIST OF PROGRAM TRANSFORMATION
SYSTEMS :
i) Coccinelle
ii) Stratego/XT
iii) TXLiv) DMS
v) ASF+SDF
vi) Fermat
vii) Spoon
8/10/2019 Transformational System
9/27
REACTIVE SYSTEMS
-A reactive system is a computer program thatcontinuously interacts with its environment.
-Reactive systems, unlike the purely classical
transformational systems, maintain a continuousinteraction with their environment, responding toexternal stimuli as a function of its internal state
-Examples of reactive systems fall into twocategories: those which terminate with somefinal result but exhibit other characteristics ofreactive systems, and those which do not
terminate.
8/10/2019 Transformational System
10/27
System that continuously interacts with the environment,receiving stimuli and producing outputs in response.
The order of events in the system is not predictable, is determined by
external events.
The execution(time) of reactive systems does not have to end
8/10/2019 Transformational System
11/27
Reactive system most of the followingcharacteristics:
nonterminating interactive interrupt-driven state-dependent environment-oriented parallel
real-time
8/10/2019 Transformational System
12/27
More about Reactive System..
1) Partitioning of systems into informationsystems, control systems and telecommunicationsystems
2 ) More informative partitioning:transformational versus reactive systems.
3) Reactive systems respond to stimuli in orderto bring about desirable eects in theirenvironment.
4) Reactive systems may do one or or of thesethings:
- manipulate complex data,- engage in complex behavior,
- communicate with many other systems.
8/10/2019 Transformational System
13/27
Examples of reactive systems
- information systems- worked flow systems- groupware- EDI systems
- web market places- production control software- embedded software
http://www.canary.co.nz/solutions/electronic-data-interchange/
8/10/2019 Transformational System
14/27
E-D-I SYSTEMS
8/10/2019 Transformational System
15/27
Embedded system
An embedded systemis acomputer system with a dedicated functionwithin a larger mechanical orelectrical system, often with real-time
computing constraints. It is embeddedas part of a complete device
often including hardware and mechanicalparts.
Embedded systemscontrol many devices incommon use today.
Usually use in advance design electronic
system
8/10/2019 Transformational System
16/27
8/10/2019 Transformational System
17/27
8/10/2019 Transformational System
18/27
Reactive Systems: A Very
Simple Model
1) A reactive system generates a set of execut ion
paths
2) An execution path is a concatenation of the states
(configurations) of the system, starting from some ini t ial
state
3) There is a t ransi t ion relat ionwhich specifies the
next-staterelation, i.e., given a state what are the states
that can follow that state
We need an example
8/10/2019 Transformational System
19/27
REACTIVE SYSTEMS AS AN I/O
RELATION
A program can be specied by giving
the relation between its input and
output. But how can we specify a
reactive system, for example an
interactive system that engages in a
dialog?Basically in the same way:
by giving a relation between inputandoutput.
8/10/2019 Transformational System
20/27
A possible dialog is now:
User System
0 : 0
1 : INCR
2 : 1
3 : INCR4 : 2
5 : RESET
6 : 0
7 : RESET8 : RESET
9 : INCR
10 : 1
8/10/2019 Transformational System
21/27
REACTIVE SYSTEMS AS A SET OF
TRACES
-If we form an event type consisting of the disjointsum of input events and output events, we canmerge the two event sequences into a single event
sequence without loss of information.
For the example, we get then:
h(0; 0); (1; INCR); (2; 1); (3; INCR); (4; 2); (5; RESET); (6; 0); (7;RESET);
(8; RESET); (9; INCR); (10; 1)i
But now the sequence numbers are redundant! Omitting them,we get:
h0; INCR; 1; INCR; 2; RESET; 0; RESET; RESET; INCR; 1i
8/10/2019 Transformational System
22/27
TRANSFORMATIONAL VS
REACTIVE SYSTEMSTransformational
Systems can be classified as beingeither transformational or event-hased.
In the transformational definition, a
system is a function that receives one ormore system inputs I from an externalenvironment, transforms them withprocess T , and then releases them as
system outputs O to an externalenvironment. This input-output (I/O)relationship can be expressedsymbolically as
T(I) = O or T : I -----> O.
8/10/2019 Transformational System
23/27
TRANSFORMATIONAL VS REACTIVE
SYSTEMS
Transformational systems
get input;
compute something;
return result;
Transformational view follows from the
initial use of computers as advanced
calculators: A component receives some
input, does some calculation and then
returns a result
.Reactive systems
while (true) {receive some input, send some
output
}
Nowadays, the reactive system view seemsmore natural: components which
continuously interact with each other and
their environment without terminating
8/10/2019 Transformational System
24/27
Differentiate between Transformational and
Reactive System
A transformational system generatesan output and then terminates.
reactive systems does not have to end
or no limit
8/10/2019 Transformational System
25/27
Reactive Systems
A reactive system is a system that, whenturned on, is able to create desiredeffects in its environment by enabling,enforcing, or preventing events in the
environment. Reactive systems typically exist to
collaborate or interact with some entity orentities in the environment (e.g., trafficcontrollers; process control). They neverhave all of their inputs ready -- rather, theinputs arrive in endless and perhaps
unexpected sequences.
8/10/2019 Transformational System
26/27
Transformational systems
get input;{pre-condition}
compute something;
{post-condition} return result;
Earlier work in verification uses the
transformational view:
halting problem
Hoare logic
pre and post-conditions
partial vs. total correctness
Reactive systems
while (true) {
receive some input,
send some output
}
For reactive systems:
termination is not the main issue
pre and post-conditions are not
enough
dealing with concurrency is
important
8/10/2019 Transformational System
27/27
Reference
https://www.isr.umd.edu/~austin/ence200.d/software.html
http://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdf
http://booksite.elsevier.com/9781558607552/slides/slides.pdf
http://thomasfeng.com/papers/fzv07scsc.pdf
http://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdf
http://doc.utwente.nl/37300/1/w412nxtreu2m8xvp.pdf
http://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-
1x2 pdf
https://www.isr.umd.edu/~austin/ence200.d/software.htmlhttps://www.isr.umd.edu/~austin/ence200.d/software.htmlhttp://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdfhttp://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdfhttp://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdfhttp://booksite.elsevier.com/9781558607552/slides/slides.pdfhttp://booksite.elsevier.com/9781558607552/slides/slides.pdfhttp://thomasfeng.com/papers/fzv07scsc.pdfhttp://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdfhttp://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdfhttp://doc.utwente.nl/37300/1/w412nxtreu2m8xvp.pdfhttp://doc.utwente.nl/37300/1/w412nxtreu2m8xvp.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://www-verimag.imag.fr/~raymond/edu/eng/intro-mini-1x2.pdfhttp://doc.utwente.nl/37300/1/w412nxtreu2m8xvp.pdfhttp://doc.utwente.nl/37300/1/w412nxtreu2m8xvp.pdfhttp://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdfhttp://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdfhttp://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdfhttp://www.cs.waikato.ac.nz/Teaching/COMP424A/module1/comp424-lecture01.pdfhttp://thomasfeng.com/papers/fzv07scsc.pdfhttp://booksite.elsevier.com/9781558607552/slides/slides.pdfhttp://booksite.elsevier.com/9781558607552/slides/slides.pdfhttp://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdfhttp://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdfhttp://www2.warwick.ac.uk/fac/sci/dcs/research/em/publications/mscbyresearch/mslade/files/a2.pdfhttps://www.isr.umd.edu/~austin/ence200.d/software.htmlhttps://www.isr.umd.edu/~austin/ence200.d/software.html