Curriculum Vitae

Dr. Robert S. Rist

School of Computing Sciences

University of Technology, Sydney

P. O. Box 123 Broadway

Sydney, N.S.W. 2000

Australia

phone: (612) 9514-1849

fax: (612) 9514-1807

rist@socs.uts.edu.au

Personal information

Born: April 16, 1954, Sydney, Australia

Citizenship: Australian

Current position: Senior Lecturer (Associate Professor) with tenure.

Qualifications

Bachelor of Science (Computer Science), University of New South Wales, 1974.

Graduate Diploma (Computing Studies), University of Canberra, 1975.

Bachelor of Science (Honours, Psychology), University of New South Wales, 1980.

Master of Science (Cognitive Science), Yale University, 1987.

Master of Philosophy, Yale University, 1987.

Doctor of Philosophy, Yale University, 1989.

Programming experience

Applications programmer for the Federal Department of Customs, 1976.

Systems programmer/analyst for the Federal Department of Customs, 1977.

Communications programmer/analyst for the N.S.W. Public Service, 1979.

Consulting systems analyst for various firms in Darwin, 1980-1982.

Artificial intelligence programming: Projects written in Lisp and T for natural language understanding in the Yale AI Project. Systems written in CLOS for program generation, understanding and maintenance systems at the University of Technology, Sydney.

General programming: Applications and systems programming for the Federal Department of Customs. Communications programming for the N.S.W. Public Service.

Statistical programming: Writing statistical procedures (cluster analysis, ANOVA) in APL, Fortran and Lisp. Use of the SPSS, SAS, BMDP, and SYSTAT packages.

Languages: Smalltalk, C++, Eiffel, CLOS, LISP, T, Prolog, C, Pascal, APL, FORTRAN, Basic, COBOL, IBM and ICL assembler, Simula, Dynamo, GASP, GPSS.

Teaching experience

Northern Territory University (1980-1982): I taught various programming languages, systems analysis and design, commercial systems, and management information systems.

Yale University (1985-1988): I taught introductory programming in Pascal at the Yale Summer School. I also tutored in several psychology subjects for the School of Psychology at Yale, such as Memory and Cognition.

University of Technology, Sydney (1989-1998): I have taught in the School of Computing Science's undergraduate and graduate programs. In the undergraduate programs, I taught introductory programming (Pascal, Eiffel, Smalltalk), data structures and algorithms, AI programming (Lisp, CLOS), and AI theory, as well as co-ordinating a subject on the social implications of computing and tutoring in other subjects. At the graduate level, I taught subjects on specialist topics in artificial intelligence (AI) and cognition, such as case-based reasoning, recent advances in AI, and paradigms of human and machine intelligence. My current teaching areas are object-oriented programming and paradigms of intelligence.

Research

My research topic is human program design. This is a cross-disciplinary area that combines techniques from psychology, cognitive science, artificial intelligence, and software engineering. I have published in the journals Cognitive Science, Human-Computer Interaction, and The International Journal of Human-Computer Studies. My latest paper in Cognitive Science presents a single cognitive model that captures a wide range of human design strategies. My book on object-oriented design in Eiffel presents a new, accessable and powerful tool for designing OO systems that takes advantage of the common human design strategies. My current research interests are case-based reasoning, human program design, knowledge representation, the strucure of memory, and the interaction of semantic and episodic memory.

Books

Rist, R. S., & Terwilliger, R. (1995). Object-oriented programming in Eiffel. Sydney: Prentice Hall.

Book chapters

Rist, R. S. (1986). Plans in programming: Definition, demonstration and development. In E. Soloway and R. Iyengar (Eds.), Empirical studies of programmers, pp. 28-47. New York: Ablex.

Rist, R. S. (1994). Search through multiple representations. In D. J. Gilmore, R. L. Winder, and F. Detienne (Eds.), User-centred requirements for software engineering environments. New York: Springer-Verlag.

Rist, R. S. (1996). System structure and design. Empirical Studies of Programmers: Sixth Workshop. W. D. Gray and D. A. Boehm-Davis (Eds.), pp. 163-194. Norwood, NJ: Ablex Publishing.

Journal articles

Rist, R. S. (1989). Schema creation in programming. Cognitive Science, 13, 67-96.

Rist, R. S. (1990). Variability in program design: the interaction of knowledge and process. The International Journal of Man-Machine Studies, 33, 305-322.

Cummins, D. E., Lubart, T., Alksnis, O. & Rist, R. (1991). Conditional reasoning and causation. Memory and Cognition, 19, 274-282.

Rist, R. S. (1991). Knowledge creation and retrieval in program design: a comparison of novice and intermediate student programmers. Human-Computer Interaction, 5, 1-72.

Detienne, F. and Rist, R. (1995). Introduction to the Special Issue on Empirical Studies of Object-Oriented Design. Human-Computer Interaction, 10, 121-128.

Rist, R. S. (1995). Program structure and design. Cognitive Science, 19, 507-562.

Rist, R. S. (1996). Teaching Eiffel as a first language. Journal of Object-Oriented Programming, 9, 3, 30-41.

Refereed proceedings

Rist, R. S. (1986). Focus and learning in program design. In Proceedings of the Eighth Annual Conference of the Cognitive Science Society, pp. 371-380. University of Massachusetts, Amherst, MA.

Rist, R. S. (1991). Models of routine and non-routine design in programming. Workshop on Design, International Joint Conference on AI, pp. 245-264, Sydney.

Rist, R. S. (1992a). Plan identification and reuse in programs. AAAI Spring Symposium on Computational Considerations in Supporting Incremental Modification and Reuse, pp. 67-72. Stanford, CA.

Rist, R. S. (1992b). Plans in program design and understanding. AAAI-92 Workshop on AI and Automated Program Understanding, pp. 98-102. San Jose, CA.

Rist, R. S. (1994). A cognitive model of system development. First Australian Seminar on Modelling and Improving System Development, pp. 67-83. Melbourne, Victoria.

Rist, R. S. (1995). Teaching system design in Eiffel. Proceedings of TOOLS 17 (Technology of Object-Oriented Languages and Systems), R. Ege and M. Singh (Eds.), pp 423-432. New York: Prentice Hall.

Service to the community

In my first academic position I was employed to develop a degree course, the Bachelor of Business (Data Processing) for the Northern Territory University. This course was nationally accredited at the first attempt.

I have designed and taught several extension courses at UTS on the design and coding of object-oriented (OO) systems in Eiffel. These courses were well-attended and well-received, and taught skills that I developed at UTS to the wider business community.

With Francoise Detienne from the Paris branch of INRIA, I put together a special issue of Human-Computer Interaction on empirical studies of object-oriented design and reuse.

Conference Committees

1994 CHI 94: Computer-Human Interaction: Regional co-ordinator, Asian area.

1995 CHI 95: Organization Overviews Co-chair, with Jean Scholtz from INTEL.

1996 CHI 96: Paper selection committe.

ESP 6: Empirical Studies of Programmers: Program Committee.

1997 CHI 97: Regional co-ordinator, Australian region.

ESP 7: Program Committee.

1998 CHI 98: Regional co-ordinator, Australian region.

ASE 98: Automated Software Engineering. Program Committee.