{'fraction_non_alphanumeric': 0.024287222808870117, 'fraction_numerical': 0.0, 'mean_word_length': 5.820143884892087, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Software hardening-unifying software reliability strategies

This paper attempts to explore a conceptual model of any generic software for capturing its macroscopic behavior via identification of attributes analogous to volume, pressure, entropy, etc., as known in physical systems. Logical volume, pressure and temperature are defined while retaining the concepts of entropy. Based on this model the totality of error control strategies via the constrained number of variables, their ranges, data typing, program structuring, etc., is termed software hardening which is parallel to liquefaction and solidification phenomena in physics. This model provides a framework for conceptual unification of various prevailing techniques of software reliability improvement, such as modularity, object orientation, software reuse, etc., which have similar effects of reducing the number of states traversed and thus are all ways towards software hardening.