{'fraction_non_alphanumeric': 0.02175805047867711, 'fraction_numerical': 0.0, 'mean_word_length': 5.927710843373494, '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}}
The role of critiquing in cooperative problem solving

Cooperative problem-solving systems help users design solutions themselves as opposed to having solutions designed for them, Critiquing—presenting a reasoned opinion about a user’s product or action–is a major activity of a cooperative problem-solving system. Critics make the constructed artifact “talk back” to the user. Conditions under which critics are more appropriate than autonomous expert systems are discussed. Critics should be embedded in integrated design environments along with other components, such as an argumentative hypertext system, a specification component, and a catalog. Critics support learning as a by-product of problem solving. The major subprocesses of critiquing are goal acquisition, product analysis, critiquing strategies, adaptation capability, explanation and argumentation, and advisory capability. The generality of the critiquing approach is demonstrated by discussing critiquing systems developed in our group and elsewhere. Limitations of many current critics include their inability to learn about specific user goals and their intervention strategies.