This book presents 13 high-quality research articles that provide long sought-after answers to questions concerning various aspects of reuse and integration. Its contents lead to the inescapable conclusion that software, hardware, and design productivity - including quality attributes - is not bounded. It combines the best of theory and practice and contains recipes for increasing the output of our productivity sectors.
The idea of improving software quality through reuse is not new. After all, if software works and is needed, why not simply reuse it? What is new and evolving, however, is the idea of relative validation through testing and reuse, and the abstraction of code into frameworks for instantiation and reuse. Literal code can be abstracted. These abstractions can in turn yield similar codes, which serve to verify their patterns. There is a taxonomy of representations from the lowest-level literal codes to their highest-level natural language descriptions. As a result, product quality is improved in proportion to the degree of reuse at all levels of abstraction.
Any software that is, in theory, complex enough to allow for self-reference, cannot be certified as being absolutely valid. The best that can be attained is a relative validity, which is based on testing. Axiomatic, denotational, and other program semantics are more difficult to verify than the codes, which they represent! But, are there any limits to testing? And how can we maximize the reliability of software or hardware products through testing? These are essential questions that need to be addressed; and, will be addressed herein.
On the Tractable Acquisition of Heuristics for Software Synthesis Demonstrating that P~NP.- An Approach Transmutation-Based in Case-Based Reasoning.- Utilizing Semantic Techniques for Automatic Code Reuse in Software Repositories.- A Multi-strategy Approach for Ontology Reuse through Matching and Integration Techniques.- Classifier Fusion by Judgers on Spark Clusters for Multimedia Big Data Classification.- Employing Graph Databases As a Standardization Model for Addressing Heterogeneity and Integration.- Modeling Terminologies for Reusability in Faceted Systems.- A Layered Approach to Specification Authoring, Sharing, and Usage.- FCL: A Formal Language for Writing Contracts.- Operational Semantics for the Rigorous Analysis of Distributed Systems.- BHive: Behavior-Driven Development Meets B-Method.- A Pre-processing Tool for Z2SAL to Broaden Support for Model Checking Z Specifications.- Reasoning About Temporal Faults Using an Activation Logic.