Sunteți pe pagina 1din 27

TRANSFORMATIONAL

SYSTEMS
Definition:
A transformational system is a
computer program that accepts
some input, performs computation
on it, produces output, and then
terminates.

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,

Transformational Systems are essentially those


whose
behaviour can be described in terms of each
components 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.

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.

Examples :
1)
2)

Computer the sum of a list of numbers


Read a text file, computer how often each
word occurs and display the result
graphically.

PROGRAM TRANSFORMATION
-A program

transformation is any operation that


takes a computer program and generates
another program.
- In many cases the transformed program is
required to be semantically equivalent to the
original, relative to a particular formal semantics
and in fewer cases the transformations result in
programs that semantically differ from the
original in predictable ways.

LIST OF PROGRAM TRANSFORMATION


SYSTEMS :

i) Coccinelle
ii) Stratego/XT
iii) TXL
iv) DMS
v) ASF+SDF
vi) Fermat
vii) Spoon

REACTIVE SYSTEMS
- A reactive

system is a computer program that


continuously interacts with its environment.
-Reactive

systems, unlike the purely classical


transformational systems, maintain a continuous
interaction with their environment, responding to
external stimuli as a function of its internal state
-Examples

of reactive systems fall into two


categories: those which terminate with some
final result but exhibit other characteristics of
reactive systems, and those which do not
terminate.

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

Reactive system most of the following


characteristics:

nonterminating
interactive
interrupt-driven
state-dependent
environment-oriented
parallel
real-time

More about Reactive System..

1) Partitioning of systems into information


systems, control systems and telecommunication
systems
2 ) More informative partitioning:
transformational versus reactive systems.
3) Reactive systems respond to stimuli in order
to bring about desirable eects in their
environment.
4) Reactive systems may do one or or of these
things:
- manipulate complex data,
- engage in complex behavior,
- communicate with many other systems.

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-datainterchange/

E-D-I SYSTEMS

Embedded system
An embedded system is a
computer system with a dedicated function
within a larger mechanical or
electrical system, often with real-time
computing constraints.
It is embedded as part of a complete device
often including hardware and mechanical
parts.

Embedded systems control many devices in


common use today.
Usually use in advance design electronic
system

Embedded
Systems
- An embedded system is a computer system with a
dedicated function within a larger mechanical or
electrical system, often with real-time computing
constraints. It is embedded as part of a complete
device often including hardware and mechanical
parts.

Reactive Systems: A Very


Simple Model
1) A reactive system generates a set of execution
paths
2) An execution path is a concatenation of the states
(configurations) of the system, starting from some initial
state
3) There is a transition relation which specifies the

next-state relation, i.e., given a state what are the states


that can follow that state
We need an example

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 input and
output.

A possible dialog is now:


User System
0:0
1 : INCR
2:1
3 : INCR
4:2
5 : RESET
6:0
7 : RESET
8 : RESET
9 : INCR
10 : 1

REACTIVE SYSTEMS AS A SET OF


TRACES
If we form an event type consisting of the disjoint
sum of input events and output events, we can
merge 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

TRANSFORMATIONAL VS
REACTIVE SYSTEMS

Transformational
Systems can be classified as being
either transformational or event-hased.
In the transformational definition, a
system is a function that receives one or
more system inputs I from an external
environment, transforms them with
process T , and then releases them as
system outputs O to an external
environment. This input-output (I/O)
relationship can be expressed
symbolically as
T(I) = O or T : I -----> O.

TRANSFORMATIONAL VS REACTIVE
SYSTEMS
Transformational systems

.Reactive

systems

get input;
compute something;

while (true) {receive some input, send some


output

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

Nowadays, the reactive system view seems

more natural: components which


continuously interact with each other and
their environment without terminating

Differentiate between Transformational and


Reactive System

A transformational system generates


an output and then terminates.
reactive systems does not have to end
or no limit

Reactive Systems
A reactive system is a system that, when
turned on, is able to create desired
effects in its environment by enabling,
enforcing, or preventing events in the
environment.
Reactive systems typically exist to
collaborate or interact with some entity or
entities in the environment (e.g., traffic
controllers; process control). They never
have all of their inputs ready -- rather, the
inputs arrive in endless and perhaps
unexpected sequences.

Transformational systems
get input;{pre-condition}

Reactive systems
while (true) {
receive some input,

compute something;
{post-condition} return result;

Earlier work in verification uses the

send some output


}

For reactive systems:

transformational view:

termination is not the main issue

halting problem

pre and post-conditions are not

Hoare logic

enough

pre and post-conditions

dealing with concurrency is


important

partial vs. total correctness

Reference

https://www.isr.umd.edu/~austin/ence200.d/softw
are.html
http://www2.warwick.ac.uk/fac/sci/dcs/research/e
m/publications/mscbyresearch/mslade/files/a2.pd
f
http://booksite.elsevier.com/9781558607552/slid
es/slides.pdf
http://thomasfeng.com/papers/fzv07scsc.pdf
http://www.cs.waikato.ac.nz/Teaching/COMP424
A/module1/comp424-lecture01.pdf
http://doc.utwente.nl/37300/1/w412nxtreu2m8xvp
.pdf
http://wwwverimag.imag.fr/~raymond/edu/eng/intro-mini1x2.pdf

S-ar putea să vă placă și