The purpose of this blog, as started earlier, is to
“Design a Resilient Core banking IT system”. A secondary objective is to extract the principle of IT
systems resiliency. Having defined
Resilience and understood its importance let us now understand IT
systems. Understanding what makes an IT systems will help us address
our main issue which is: What set of factors taken together help
build a resilient IT system.
Let us start form the fundamentals.
Let us first address as to, "What is a
system?"
A system is
a set of interacting elements that exhibit a specific behavior under a specific
set of conditions when subjected to specific stimuli.
Extending the above definition, an IT system
consists of a collection of "interacting Programs" that exhibit a
specific behavior (output) when faced with a given input (i.e. when subjected
to a specific stimuli).
To get a better understanding of IT systems let us
delve deeper into understanding the function of a program.
Programs are instructions to machines (computers)
to manipulate values.
For programs to achieve something useful the values
must have some meaning to the users i.e. they must represent something that
happens in the real world.
Because these values are “representative’ of some
“thing” in the real world, therefore the rules by which they are manipulated
must also be the same as the rules that are applicable to the real world
“thing”.
Of course you can always write programs that
manipulate values in ways and means that have no linkages to real world
phenomena. But if you do so then the question to ask is, what
purpose does such a program serve?
For computer programs to be useful these programs
need to “model” something useful in real life. Successful modeling
requires (1) that we identify the elements (or “things”)
whose behavior we want to study, (2) that we identify the behaviors
they exhibit under different conditions and (3) that we identify the different
conditions under which we want to study the behavior of these elements.
We can now advance our definition of IT systems as
not just merely collection of programs but as a collection of programs that
model real world phenomena. Each "program" can be thought of as modeling
a real world element.
Elaborating Further: An IT system is a collection
of programs that model the behavior of real world elements under different conditions. An
IT system simulates the real world system by changing the observable values of
IT elements (behaviors) as the inputs (conditions) are modified.
Each Program in the IT system can then be thought
of as representing and entity in the real world. In other words each IT-program
can be thought of as representing a real world object. There is a special
technique called the object-oriented design that provides us the necessary
nomenclature and rules to represent the real world objects into IT-programs. There are also special languages called
object oriented languages that allow us to easily write programs such that each
program represents an object.
This
understanding of IT systems is sufficient for us to study the problem of
resilience in IT systems.
No comments:
Post a Comment