Skip to main content
padlock icon - secure page this page is secure

A theory-driven testing methodology for developing scientific software

Buy Article:

$60.00 + tax (Refund Policy)

Computer implementations of theoretical concepts play an ever-increasing role in the development and application of scientific ideas. As the scale of such implementations increases from relatively small models and empirical setups to overarching frameworks from which many kinds of results may be obtained, it is important to consider the methodology by which these implementations are developed. Using cognitive architectures as an example, we discuss the relation between an implementation of an architecture and its underlying theory, a relation between a computer program and its description. We argue for the use of an agile development methodology, based around a three-layer scientific test harness and continuous refactoring, as most suitable for developing scientific software. The ideas are illustrated with extended examples of implementing unified theories of human learning, taken from the chunking and template theories.
No Reference information available - sign in for access.
No Citation information available - sign in for access.
No Supplementary Data.
No Article Media
No Metrics

Keywords: CHREST; agile development; cognitive architectures; scientific software; test-driven development

Document Type: Research Article

Affiliations: 1: School of Computer Science,University of Hertfordshire, College Lane, Hatfield AL10 9ABHertfordshire, UK 2: Fernand Gobet School of Social Sciences,Brunel University, Uxbridge UB8 3PHMiddlesex, UK

Publication date: December 1, 2012

More about this publication?
  • Access Key
  • Free content
  • Partial Free content
  • New content
  • Open access content
  • Partial Open access content
  • Subscribed content
  • Partial Subscribed content
  • Free trial content
Cookie Policy
X
Cookie Policy
Ingenta Connect website makes use of cookies so as to keep track of data that you have filled in. I am Happy with this Find out more