What is the reality of CBD of
physical products? What is the true essence and nature of Component Based
Design? For example, what are the properties or aspects that are uniquely and
universally shared by every known design of physical products, including the
design and development of one of a kind physical products such as an
experimental spacecraft or prototype of a next generation Jet-fighter? Why
almost every software expert insists that it is impossible to invent real CBSD
(CBD for software), without even knowing what is real CBSD? Mankind designing
and building hundreds of newly invented products using CBD. For example, let’s
see an example that illustrates the reality of CBD: https://www.youtube.com/watch?v=hc5e5cYdshI
Please pay attention to 15
seconds bit starting at 1 minute 55 seconds. Let me paraphrase the 15 seconds
bit, as I understood it: Essential purpose of the real CBD or engineering is
ability to look, feel and test each component independently to tweak and optimize
individually for making each component as best as it can be. Periodically bring
the components together to build product for making sure that (a) each of them
properly collaborating with other parts, and (b) all the components are
fulfilling their respective roles as intended for proper operation of the
container product.
Let me define my understanding
of reality of true essence and essential aspect of ideal CBD: Implementing over
95% features & functionality in physical replaceable components. The term
replaceable component imply any component that can be un-plugged (or
disassembled), for example to redesign and test individually outside of the
product and re-plugged-in (or reassembled) into the container component/product.
Each replaceable component is
100% free from spaghetti code (or design), because each replaceable component
can be redesigned (e.g. even little-by-little) or refactored and tested individually
(e.g. to make it as best as it can be and/or to fit exactly and function as
expected when assembled into product) without any need for seeing even a single
line of internal code (or design) implemented for any other component or
container application/product. Over 95% of the code (or design) of the product
is free from spaghetti code, since over 95% of the features and functionality
of the application or product is implemented in such replaceable components.
Hence true essence of the CBD
is eliminating spaghetti code (or design). Over 90% of the features and
functionality of almost every known large physical product is implemented in
physical functional components, where each component is designed and refined
individually (free from spaghetti code/design). It is not necessary that even a
single large functional component in the physical product is reusable, standardized
or conformed to any component model attributed to so called software components.
Most experts insist software
is unique and/or different, without giving any valid reason or explain why and
what manner. Designers of every new product need to tweak most of the parts (i.e.
functionality and features) continuously and/or frequently until prototype is functioning
and performing as expected. So it is not unique to software products. The
difference is designers of physical products are doing the tweaks to over 90%
of the functionality and features free from spaghetti code/design. Only
designers of software unnecessarily burdened with the spaghetti code/design.
No software expert can answer
what is the true essence of CBD, but almost every one insist that real CBD for
software is impossible. Why is it not possible to achieve real CBD for
software, if real CBD for software is to implementing 90% of the functionality
and features in such replaceable components? No replaceable component (including
the necessary communication code for allowing collaboration between this component
and other parts of the application) requires more than 3 to 5 lines to plug-in
and removing the 3 to 5 lines must effectively remove the component.
It is impossible to find a
valid reason why it is not possible to achieve real CBSD. On the other hand, I
can demonstrate hundreds of replaceable components and hierarchies of
replaceable components to prove that real CBSD is possible. Almost every researcher
and scientist I contacted refuse to see proof to know the reality/Truth. Any scientific Truth/reality or engineering
invention (if it is real) can withstand rigorous validation and prevail, but
how a scientific Truth can prevail, if everyone try to ignore, try to cover-up or
evade necessary validation by giving every possible excuse?
We created the first and the
only GUI-API that is capable of creating replaceable GUI components for
building complex hierarchies of replaceable components to achieve real CBD for
software. So even junior Java programmers can achieve real CBSD for RIA (Rich
Internet Applications) with little or no help from us. Achieving real CBSD for
RIA help designers gain experience and knowledge about the innate nature and essential
properties uniquely and universally shared by each and every known physical
functional component, for example, to positively identify features and
functionality that can be implemented as equivalent replaceable software components
for achieving real CBSD for non-GUI applications as well.
Best Regards,
Raju
No comments:
Post a Comment