Whether software engineering needs to be artificially intelligent
IEEE Transactions on Software Engineering
The partial metrics system: modeling the stepwise refinement process using partial metrics
Communications of the ACM
CSC '90 Proceedings of the 1990 ACM annual conference on Cooperation
CSC '91 Proceedings of the 19th annual conference on Computer Science
Program development by stepwise refinement
Communications of the ACM
Elements of Software Science (Operating and programming systems series)
Elements of Software Science (Operating and programming systems series)
Structured Programming; Theory and Practice the Systems Programming Series
Structured Programming; Theory and Practice the Systems Programming Series
Designing and explaining programs with a literate pseudocode
Journal on Educational Resources in Computing (JERIC)
Hi-index | 0.00 |
The possibility of reexpressing the traditional notion of stepwise refinement as a combination of general problem-solving activities that are based on paradigms taken from artificial intelligence research is discussed. This reexpression can form the basis for a more explicit view of programming as a problem-solving activity. Experiments in which each step of the refinement process is encoded into problem solving activities are described. 26 examples of code implementation using the stepwise refinement of pseudocode have been analyzed. The presence of certain combinations of activities suggest that programmers are implicitly emulating certain paradigms that have proved useful in solving complex problems. Also, a particular paradigm and its associated activities seem to be applied often throughout the refinement sequence for a given problem. The nature of the problem to be solved influences the type of activities performed to achieve a solution, as well as the problem-solving paradigm that they implicitly support.