Results 1 - 10
of
12
Embedding Critics in Design Environments
, 1993
"... Human understanding in design evolves through a process of critiquing existing knowledge and consequently expanding the store of design knowledge. Critiquing is a dialog in which the interjection of a reasoned opinion about a product or action triggers further reflection on or changes to the artifac ..."
Abstract
-
Cited by 70 (49 self)
- Add to MetaCart
Human understanding in design evolves through a process of critiquing existing knowledge and consequently expanding the store of design knowledge. Critiquing is a dialog in which the interjection of a reasoned opinion about a product or action triggers further reflection on or changes to the artifact being designed. Our work has focused on applying this successful human critiquing paradigm to humancomputer interaction. We argue that computer-based critiquing systems are most effective when they are embedded in domain-oriented design environments, which are knowledge-based computer systems that support designers in specifying a problem and constructing a solution. Embedded critics play a number of important roles in such design environments: (1) they increase the designer's understanding of design situations by pointing out problematic situations early in the design process, (2) they support the integration of problem framing and problem solving by providing a linkage between the design...
Supporting Component-Based Software Development with Active Component Repository Systems
, 2001
"... ..."
Exploiting Program Schemata in a Prolog Tutoring System
, 1993
"... After their beginnings in computer-aided instruction, automated tutors have re-emerged as intelligent tutoring systems. These intelligent tutors have obtained considerable success by using results from cognitive psychology and artificial intelligence to permit non-traditional instruction which is ta ..."
Abstract
-
Cited by 8 (3 self)
- Add to MetaCart
After their beginnings in computer-aided instruction, automated tutors have re-emerged as intelligent tutoring systems. These intelligent tutors have obtained considerable success by using results from cognitive psychology and artificial intelligence to permit non-traditional instruction which is tailored to their individual students. The success of these automated tutors is due to their precise understanding and modeling of both the student and the domain being taught. A common measure of the robustness of an automated tutor is the size of the domain that it can understand. The schema-based Prolog tutor described in this dissertation is capable of recognizing a larger class of programs than existing Prolog tutors. By using powerful generalized transformations, our Prolog tutor can generate this class of programs from a very small set of normal form programs. Thus, our Prolog tutor recognizes a larger class of programs using fewer normal form programs than existing Prolog tutors. One o...
Incorporating Critique and Argumentation in DSS
- Decision Support Systems
, 1999
"... This paper proposes a framework for a decision support system DSS based on critique and argumentation. We make a distinction between positive and negative types of critique and argue that both of them are valuable in making substantiated decisions. We further propose use of debate and argumentation ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
This paper proposes a framework for a decision support system DSS based on critique and argumentation. We make a distinction between positive and negative types of critique and argue that both of them are valuable in making substantiated decisions. We further propose use of debate and argumentation as means for more informative decision support. We discuss the types of knowledge used for critiquing and the appropriate form of knowledge representation. The architecture of the proposed DSS contains intelligent critiquing agents which provide the user with the qualitative feedback on candidate
An Incremental Model for Developing Educational Critiquing Systems:
, 2004
"... Individualized feedback is an important factor in fostering effective learning. It is, however, often not seen in schools because providing it places a significant additional workload on teachers. One way to solve this problem is to employ critiquing systems. Critiquing systems, however, require ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Individualized feedback is an important factor in fostering effective learning. It is, however, often not seen in schools because providing it places a significant additional workload on teachers. One way to solve this problem is to employ critiquing systems. Critiquing systems, however, require significant development effort before they can be put into use. In this paper, we describe an incremental approach that facilitates the development of educational critiquing systems by integrating manual critiquing with critique authoring. As a result of the integration, the development of critiquing systems becomes an evolutionary process. We describe a system that we built, the Java Critiquer, as an exemplar of our model. Results from a pilot test and real-life usage of the system have shown that the system successfully provides a setting for accumulating critiques and at the same time supporting teachers in critiquing student code.
Facilitating Critiquing in Education: The Design and Implementation of the Java Critiquer
- In Proceedings of the International Conference on Computers in Education (ICCE), Hong Kong
, 2003
"... ..."
Proposal for a Software Metrics-Based Critiquing System
, 2000
"... Software design and code metrics are a promising quantitative engineering approach to manage software quality. By building models linking these to quality, poor designs and practices are revealed. Future development teams should learn to avoid these pitfalls and take preventive or corrective measure ..."
Abstract
- Add to MetaCart
Software design and code metrics are a promising quantitative engineering approach to manage software quality. By building models linking these to quality, poor designs and practices are revealed. Future development teams should learn to avoid these pitfalls and take preventive or corrective measures when necessary, especially in the early lifecycle phases. A computer-based critiquing system is ideal for providing this feedback, but one based on metrics does not yet exist. This thesis describes such a system. At various stages of development, designers submit proposed designs an automatic critiquing system, which evaluates them based on rules derived from insight drawn from past experiences. An explanation and course of action is provided for each critique so that designers understand the risks of particular designs and can take corrective action. The rules can be updated periodically to reflect new understanding. Furthermore, an implementation strategy which reuses modules from two pa...
Making Critiquing Practical: Incremental Development of
- in Proceedings of the 2004 International Conference on Intelligent User Interfaces, January 13-16, 2004, Island of
, 2004
"... Expert critiquing systems in education can support teachers in providing high quality individualized feedback to students. These systems, however, require significant development effort before they can be put into use. In this paper, we describe an incremental approach that facilitates the developme ..."
Abstract
- Add to MetaCart
Expert critiquing systems in education can support teachers in providing high quality individualized feedback to students. These systems, however, require significant development effort before they can be put into use. In this paper, we describe an incremental approach that facilitates the development of educational critiquing systems by integrating manual critiquing with critique authoring. As a result of the integration, the development of critiquing systems becomes an evolutionary process. We describe a system that we built, the Java Critiquer, as an exemplar of our model. Results from real-life usage of the system suggest benefits for supporting teachers in critiquing student code.
Intelligent Educational Systems for Teaching Programming
, 2004
"... this article, we described three types of systems: intelligent tutoring system, standalone expert critiquing system and computer supported critiquing system. They all can provide helpful feedback to student code, but each has its own pros and cons. Tutoring systems can provide step-by-step support f ..."
Abstract
- Add to MetaCart
this article, we described three types of systems: intelligent tutoring system, standalone expert critiquing system and computer supported critiquing system. They all can provide helpful feedback to student code, but each has its own pros and cons. Tutoring systems can provide step-by-step support for completing a program, but they usually need to have extensive knowledge about the domain content, student modeling and pedagogical strategy [22]. Users in the system can only work on a predefined set of exercises. Expert critiquing systems do not have this limitation. They can perform critiquing on any code, which enables them to be beneficial for both beginner and intermediate level programmers. As with intelligent tutoring systems, expert critiquing systems require significant development effort before they can be put into use. Computer supported critiquing systems avoid this difficulty by allowing incremental authoring during real use of the system. Systems can be put into use during the early development stages. They require, however, a human in the feedback loop to ensure the quality of the feedback and handle situations the system cannot. While most systems mentioned in this article have proved effective in teaching programming, they are primarily for research purposes. Few systems have been deployed and used in a large scale. Nearly all of Page 4 of 6 Intelligent Educational Systems for Teaching Programming them were started from scratch. Reusable infrastructures with authoring tools are needed to reduce the development effort for these systems. Eventually, integration into commonly used programming development environments can make the educational experience provided by these systems more available to real-life programmers

