Skip to main content Skip to navigation

Revision notes for CS405 examination 2011

Some notes to guide your revision for the CS405 exam to be held on Friday morning May 27th 2011

The examination paper carries 50% of the module credit, has 5 questions on it (of which you should attempt 3) and is marked out of 50. The first question is compulsory, and carries 20 marks. The remaining 4 questions carry 15 marks, and you should answer two of them. CS405 is a three hour examination. This gives you ample time to think and write. For instance, if you spend approximately 70 minutes on answering question 1, and about 50 minutes on each of the other two questions, you will still have 10 minutes for reviewing your answers overall.

The CS405 lectures cover a very broad range of topics, and I appreciate that it is hard to find a suitable focus for your revision. This year, I tried to make it somewhat easier to link the themes of the exam questions with the lectures by matching these themes to lectures in particular blocks of weeks. Essentially as set out in the Background Information for studying CS405 presented in Lecture 3, the module was roughly divided into 5 sections: EM ideas, principles, concepts and tools (wks 1-3); EM and learning (wks 4-5); EM and software development (wks 6-7); EM and concurrent systems modelling (wks 8-9); EM implications and prospects (wk 10). My intention in these revision notes is to give you sufficient indication of the kinds of topics to be addressed in questions 2-5 to enable you to make a choice in advance about which two of these questions you wish to answer. For each of these questions, I shall give you pointers to the principal sources within the lecture notes and labs that you should consult in revising for them. Of course, it is in your interests to get as much broad familiarity with all the lecture material as possible. Much of the material is interconnected. It is also useful to be able to cite standard examples of models that we have studied in the course of the module; indeed, knowledge of specific models is essential in giving good answers to certain questions, as will be made clear below.

The format of the examination has been the same for the last few years, apart from the fact that it used to be marked out of 100, and the specific topics covered vary from year to year. Note that this year's paper makes no explicit reference to the Cadence interpreter, and no knowledge of this interpreter beyond what is required to appreciate Lab 1 and lectures 1 and 2 is assumed (though you may of course refer to it in other contexts if you wish). A brief summary of the themes of the five questions on the paper follows.

Question 1: 20 marks

This compulsory question is concerned with the core ideas of EM, as described in Lectures 3, 4 and 5 and illustrated by the models introduced in Lab 3. If you have only engaged with the practical side of the module through using Cadence, it is most important that you should study Lab 3 and become sufficiently familiar with EDEN to answer this question. You will be expected to demonstrate that you know how to devise and combine simple definitive scripts using EDEN (cf. the cabinet/digit model as constructed using the definitive notation for line drawing DoNaLD, and Question 4 from the June 2010 exam paper), though precise syntatic details are not required.

Key issues here are understanding what is meant by a construal, and by observables, dependencies and agents, and appreciating why it is generally appropriate to conceive an EM model in several different ways according to how you choose to interact with it and interpret that interaction. You should be familiar with the key diagram that was used throughout the module to highlight Empirical Modelling as construction (this first appears as the opening slide in Lecture 5 "Modelling with definitive scripts").

Other relevant topics include: the use of the Dependency Modelling Tool, as illustrated for instance in Lab 7 on the OXO laboratory, the role for different varieties of definitive notation and different metaphors in describing state, and how processes ccan be described in EDEN.

Question 2: 15 marks

The theme of this question is EM and learning as discussed and illustrated in Lectures 7, 8 and 9. Relevant case-studies and models were introduced in these lectures (notably the Imagine-d Logo, OXO laboratory - cf. Lab 7, and vi modes - cf. Lab 5 models) and you should be familiar with these. You should also consult the online papers cited in these lectures and appreciate how EM thinking relates to the ideas of Turkle, Papert and Ben-Ari where constuctionism and constructivist computer science education are concerned. (You can access a video of a seminar related to these themes that I gave in parallel with these lectures at Nottingham LSRI via the url

Question 3: 15 marks

The theme of this question is the potential for applying EM principles and tools in software development with particular reference to the writings of Fred Brooks, David Harel and Michael Jackson as framed in the lecture slides in Lecture 19 (you can find the most relevant papers via the Additional Resources link). In answering this question, you will need to draw on understanding of the way in which EM relates to traditional programming, as discussed in Lectures 10-13. You will also need to be familiar with relevant models - notably the digital watch, railway animation and heapsort models (see links in lecture 12 and 19).

Question 4: 15 marks

This question concerns the applications of EM to concurrent systems modelling, as discussed in Lectures 14, 15, 16 and 18. The focal points are: the concept of an LSD account as discussed in Lecture 16, and the animation of such accounts using the Abstract Definitive Machine (see Lecture 18). A particularly significant idea to bear in mind in this context is the way in which LSD accounts are developed with reference to observables whose characteristics and significance are explored in parallel through building an EM construal. Relevant models with which you should be familiar include the ant navigation model (cf. Lecture 15) and the train.e model in the public directory ~wmb/public/projects/simulations/train (cf. Lecture 16). An important objective in preparing to tackle this question is getting to understand the overview of EM for concurrent systems that is given in the Lecture 14 lecture slides (which has links to eight lectures relating to the theme of Concurrency).

Question 5: 15 marks

This is a more open-ended essay-style question where relevant ideas from your own wider reading may be rewarded (though you should beware of the danger of straying from the specific issues you will be asked to address!). Its theme is the extent to which EM provides a broader view of computing than the traditional view that is expressed (e.g.) by Peter Denning in his answer to the question What is CS?. A key resource for your answer is Steve Russ's discussion of Denning's question from an EM perspective (see Lecture 4, which features some quotations from Denning), and in particular the two key slides that contrast the focus of conventional Computer Science with the EM view of computing. The discussion of the nature and quality of the experience involved in traditional programming and in EM in Lectures 1 and 2 is also topical. Other relevant sources are:

  • Alternative treatments of the What is CS? theme (based on the same core resources, but with other supplementary material) in previous years - see e.g. CS405 Lecture 1 from 2007-8
  • Ideas from Dewey (see lecture 2), James (see for instance the Appendix to the second lecture from the series on Concurrency) and Cantwell-Smith touched on elsewhere in the module: cf. the discussion and quotes in Lecture 20.
  • Neil McBride (2007) on "The death of computing" at

By way of general guidance, in making your choice of questions, you should consider carefully what background knowledge and experience you need to tackle each question. You are strongly advised to come to the examination having devoted focused attention to the specific topics highlighted in these revision notes in connection with Question 1 and two other questions of your own choosing. Do remember though that I can only award good marks for answers which address specific issues detailed in each question: take care to read the questions and be prepared to adapt any partially prepared answers accordingly. Also please bear in mind that I appreciate the difficulty of writing about EM, especially if English is not your first language, but you should not feel imtimidated by this. I can only award marks for what you write!