It is a clear violation of well established scientific processes
and proven principles to rely on untested and unproven assumptions (as if the
assumptions are self-evident facts) for advancing our scientific or
technological knowledge. If the untested or undocumented tacit assumption at
the root of any scientific or technological paradigm is flawed, the whole
paradigm is nothing more than science fiction and a paradox, even if the
paradigm evolved for decades or even centuries and comprising countless
concepts and observations created painstakingly by tens of thousands of
respected researchers.
Mankind tried to
advance scientific knowledge for 1000 years by relying on tacit assumption that
“the Earth is static”. No one ever tried to validate this assumption (by
insisting that it is a self-evident fact that requires no validation), while most
philosophers don’t even aware that it was an assumption.
Likewise,
software researchers have been tiring to advance scientific and technological
knowledge by relying on tacit assumption such as it is impossible to discover
accurate description for physical functional components (or CBD of physical
products) and even if it is possible, it is impossible to invent real software
components equivalent to the physical functional components for achieving real
CBD for software, where real CBD for software is equivalent to the CBD of
physical products. No one ever tried to validate these tacit assumptions and
most researchers don’t even aware that these are the assumption at the root of
existing software engineering paradigm.
Most researchers
feel offended, if I say the assumptions at the root of software engineering
never tested and flawed. Unfortunately many resorted to personal attacks and
insults, by assuming that I am offending their common sense. There are two ways
to resolve this debate (1) prove me wrong: If they feel, I am wrong, they can
show me who validated the assumption that it is impossible to discover accurate
description for physical functional components (or CBD of physical products)? If
it is possible to if it is possible, it is impossible to invent real software
components equivalent to the physical functional components for achieving real
CBD for software, where real CBD for software is equivalent to the CBD of
physical products.
If such proof
exists, I don’t believe that it is a top secret and known only to select few
researchers. Unfortunately many experts feel offended, when I asked for proof
to show that such axioms are not assumptions but facts.
The other way for
resolving this debate is (2) give me an opportunity and validate my proof with
open mind. I provided comprehensive proof at http://www.real-software-components.com
and articles published under my research-gate account. This rational reasoning
is backed by my invention of first ever GUI-API to build
real-software-components for allowing COP (Component Oriented Programming) for
achieving real CBD (Component Based Design):
Of course, COP
requires ability to build real-software-components. Likewise, COP requires
discovering and knowledge of essential characteristics (uniquely and
universally shared by each and every known physical functional components) to
positively identify functionality and features that can be implemented as
real-software-components. Using our GUI-API even junior Java programmers can
create real-software-components and assemble them to build component hierarchies
for achieving real CBD: https://www.researchgate.net/publication/292378253_Brief_Introduction_to_COP_Component_Oriented_Programming
Unfortunately
most researchers insist that, no such proof needs more than 45 minutes and 9
slides. Furthermore, many of them insist or feel offended, if any of the
concepts of new paradigm contradicts accepted concepts or so called facts (e.g.
epicycles or retrograde motions) of existing deeply entrenched paradigm. They
grossly underestimate the complexity of a paradigm shift. It took more than 100
years for such paradigm shift, which is illustrated by chronology of events: http://www.real-software-components.com/forum_blogs/BriefSummaryOfTruths.html#Chronology
Few undocumented
assumptions (such as software is different and/or unique) were made in the
1960, when computer science and software engineer were in infancy (when
assembly language was widely used for programming language and FORTRAN was cutting
edge language). Structured and Object oriented languages were just beyond imagination.
Unfortunately the assumptions were not documented, even though such assumption might
be justifiable or considered self-evident facts at that time. If the
assumptions were documented, they would be on the radar of the successive generation
of researchers, for example, for validation when and if technology advances
sufficiently.
Tens of thousands
of researchers around the world created countless concepts for advancing our scientific
knowledge and software engineering during 1970s by relying on such untested and
tacit assumptions made in 1960s. During 1980s, countless new concepts,
experience reports and observations were created by tens of thousands of researchers
relying on the concepts and knowledge created during 1970s. Likewise, during
1990s, countless new concepts, experience reports and observations were created
by relying on the concepts and knowledge accumulated since 1960s, and so on.
I am sure most of
these accepted concept and research papers were created by sound logic and impeccable
reasoning, which further rigorously vetted by community of independent researchers
before being accepted. I am not questioning the validity of these research papers
or their brilliant contributions, but I am questioning the validity of hidden (and
now unknown) assumption at the root of these complex paradigm. The retrograde motions
and epicycles are irrefutable facts, if the hidden seed assumption “the Earth
is static” is True. Anyone can observe retrograde motions and epicycles by
standing on so called static Earth, but now we know what went wrong.
Unfortunately
many researchers feel that I am questioning their reasoning and logic, when my
concepts or statements contradict the concepts presented by their research papers.
It is wrong. I am only questioning the validity of forgotten or unknown assumptions
at the root of existing software engineering paradigm. If the seed assumptions at
the root are flawless, each of the concepts derived by relying on them by using
sound logic and irrefutable reasoning must be flawless. Just because any one
can observe them, the retrograde motions can’t be scientific fact. Likewise, accurately
describing observable phenomena in isolation can’t make a concept a scientific
fact. I am sure, each of the papers was rigorously vetted (e.g. based on long
list of references provided at the end) before accepting the concepts and experiences
presented in the paper.
The software researchers,
who are writing papers now in 2010s may be relying on knowledge of existing
paradigm evolving for past 45 years and consistent with countless concepts accumulated
during past 45 years. For example, every concept and observation accepted up
until 500 years ago were consistent with the perception of reality illustrated
by the FIG-1 in this webpage: http://www.real-software-components.com/more_docs/epicyles_facts.html
(FIG-4 illustrates the perception of reality exists today).
It is impossible
to see a new paradigm form the prism tainted by old paradigm. It is illegal circular
logic to defend egocentrism by relying on retrograde motions. So the researchers must ignore all the accumulated
knowledge and focus on validating the seed assumption at the root. I can expose
the errors in the seed assumptions at the root, if the researchers willing to look
at the evidence with open mind (i.e. non-tainted prism).
If the
researchers insist there is nothing wrong with the existing paradigm, they must
answer why do we need new/different and strange definitions for software
components and CBD for software, which are in clear contradiction to the
reality we know about the physical functional components and CBD for physical
products? https://www.researchgate.net/publication/285345329_Software_researchers_practising_bad_science_by_relying_on_untestedunproven_flawed_conceptsdefinitions
Best Regards,
Raju Chiluvuri