{'fraction_non_alphanumeric': 0.020785219399538105, 'fraction_numerical': 0.003079291762894534, 'mean_word_length': 5.666666666666667, '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}}
Adaptive tool support for database reverse engineering

Today's information technology undergoes dramatic mass changes due to urgent requirements like the Year 2000 problem, the European currency union and emerging technologies like the World Wide Web. Many older industrial database applications do not meet these requirements. Often, such legacy databases (LDB) have evolved over several generations of programmers and lack a sufficient technical documentation. However, this documentation is a prerequisite to migrate LDBs to new technologies. Recovering this documentation is a complex task that requires a high amount of expert knowledge and coordination. Computer-aided reverse engineering (CARE) tools have a great potential to reduce this complexity. Still, a practical limitation of current CARE tools is their lack of customizability. In most cases, reverse engineering (RE) knowledge is hardly adaptable, because it has been implemented in general-purpose programming languages. We outline an approach that overcomes this limitation. We introduce a dedicated formalism to specify uncertain RE knowledge. Furthermore, we adapt the backpropagation algorithm to obtain a CARE tool that automatically adjusts the confidences of the implemented RE knowledge to its current application context.