Trying to advance any scientific or technological discipline by relying on unproven belief (even if the belief is perceived to be a self-evident truth), is a well-established violation of scientific processes, principles or rules. Software researchers have been trying to advance CBSD (Component Based Software Design) for 50 years by relying on such unproven beliefs, myths or fantasy. That is, existing flawed CBSD paradigm is rooted in unproven beliefs (that were perceived to be self-evident facts 50 years ago) and has been evolving for 50 years, without knowing or realizing the huge violation of basic scientific processes, principles or rules. That is, existing CBSD paradox (i.e. flawed of perception of altered reality) is result of over 45 years of passionate hard work and efforts of tens of thousands of researchers at any time.
Any scientific or technological research diverts into a wrong path (away from right path), as soon as it relies on a flawed belief (e.g. by erroneously assuming it to be an accurate fact). The well-established scientific principles and process forbids any real scientist from ever relying on a belief (e.g. an assumption), except for theoretical experimentation and exploration to see if the path leads a useful discovery. Hence it is absolutely essential to document any belief (that the belief is just an assumption, that is not yet proven), until the belief is proven to be a fact beyond any doubt.
If and when the belief is proven to be a demonstrable and repeatable fact, the proof must be clearly documented, so that the proof can be independently validated and could be falsified, if the fact is flawed. Anything that is not proven beyond any reasonable doubt must be treated and clearly documented as a belief. No belief can be treated as a fact until the proof is provided openly and independently validated. The proof must be in open domain for anyone to validate or to falsify. Such proven belief may be considered as a fact only as long as the proof cannot be falsified by anyone.
Most of the definitions and/or concepts at the root of existing CBSD paradigm are made out of thin air, based on wishful thinking and pure fantasy, such as, building software products by assembling COTS (Commercially Of The Shelf) components from third party component vendors, as computer hardware engineers design and build computers by using standardised reusable ICs (e.g. CPU or DRAM) and other parts such as Hard Drive, CD-player or network-card etc. It is a pure fantasy and fiction, in light of reality and design of any other physical products (e.g. cars or airplanes), which can’t be competitively differentiated by using software OS and applications: http://real-software-components.com/CBD/main-differences.html
The researchers violated the basic scientific principles and rules by relying on beliefs. If they considered that the beliefs are facts, they violated the scientific process and principles by not documenting the proof, so that others can validate the proof independently. Also allows the future generations to falsify the proof, if and when new discoveries or technological advancements make it possible to invalidate the proof. In real science, it is impossible to find any widely accepted fact having no proof. That is, it is not a real science, if it relies on unproven belief, which were considered to be a fact (without having well documented proof, which is open for independent validation). Anyone who can’t understand this very simple reasoning or basic scientific principles or processes is not a real scientist. It is not wrong to rely on beliefs, but it is violation of scientific process to not clearly documenting the beliefs as assumptions.
I am sure any good collage student of science can understand this logic. I have no idea, why the most brilliant computer scientists have problem accepting these facts and logic. Instead they feel that it is a heresy, if I mention that it is wrong violate such basic well established scientific processes, principles and proven rules.
Isn’t it the stupidest violation in history of science, many times stupider than the flawed belief that was lead to the geocentric paradigm? It is not hard to understand why mankind few 1000 years ago concluded that “the Earth is static” is a fact. But how any one can possible understand the foolish definitions at the root of CBSD such as reusable and/or standardised parts are components, and using such fake components is CBSD.
As per these foolish definitions, parts equivalent to highly standardised and reusable ingredient parts such as 53 grade cement, TMT steal, paint, plastic, metals, silicon wafers or alloys are components (and using them to build houses is CBD). On the other hand, software parts equivalent to the highly customised components (that are neither reusable nor standardised) used in designing and building one-of-a-kind physical products (e.g. prototype of a next generation jet-fighter or experimental spacecraft) are not components, and using such parts is not CBD. Isn’t it these beliefs (that are at the root of existing CBSD paradigm) many times more foolish than the 2000 years old belief “the Earth is static”?
The belief “the Earth is static” evolved for 1000 years into a complex altered perception of reality depicted by FIG-1 – doesn’t it look like a huge spaghetti code? The FIG-4 depicts the exiting perception of reality described by Kepler’s laws – So simple and elegant (compared to FIG-1): http://real-software-components.com/more_docs/epicyles_facts.html.
Existing CBSD paradigm evolving for nearly 50 years by relying of flawed beliefs and it looks 10 times uglier than the FIG-1. When the flaw at the root of existing CBSD is exposed by using facts, real CBD for software will be simple and elegant as illustrated by FIG-2 at: http://real-software-components.com/CBD/CBD-structure.html and FIG-4 at: http://real-software-components.com/CBD/City_GIS.html