Archive for September 21, 2011

New Danish Computing Curriculum for Schools: Guest post from Michael Caspersen

Michael Caspersen of Aarhus Unversity just told me about the new computing curriculum that he’s been working on for Danish schools.  The links below are all in Danish, but he sent me an English summary:

The new subject is being tested for a three year period, and we expect it eventually to replace all of the current six IT subjects. The existing IT subjects each represent a specific and rather narrow view on computing, they are all elective, and they have (almost) no students.  I think there are three main reasons why there are so few students in the six “old” IT subjects: the nature of the subjects, curriculum structure, and (lack of) teacher competence.

  •  The first reason is that the subjects are not adressing what the students in general are interested in (the subjects represent very specific and rather narrow views on computing, e.g. programming).
  •  The second reason is structure.  The curent IT subjects are electives, and the current organization of the high school curriculum is unfavorable to small elective subjects — particularly if they don’t qualify for studies at university (or in higher ed in general).
  •  There is also a third reason.  Because the six “old” IT subjects are unpopular, they are seldom offered (lack of critical mass).  This means that (1) the field is unattractive for people with a computing background (you can’t teach the subject regularly), and (2) there is no need for recruiting new teachers.  Consequently, teachers in the field are relatively old, has little or no background in computing, and are generally not in a position to renew and revitalise the subject.  A perfect recipe for a death spiral.

We have aimed at identifying a core set of topics that characterize computing and that can be approached from different perspectives.  The seven topics are:

  1. Importance of computing and influence on human behaviour
  2. The architecture of IT systems
  3. Representation and manipulation of data
  4. Programming
  5. Modeling and structuring of data, processes and systems
  6. Interaction design
  7. Innovation

I am aware that there are many possible interpretations of the topics mentioned above.  Below I have tried to sketch our interpretation which I hope also motivates the inclusion of each topic — in case you are interested.


1. Importance of computing and influence on human behaviour

To truly understand and appreciate the importance of computing in modern society, the pupils must be presented to a portfolio of important and for the students relevant systems and innovations (e.g. facebook, iTunes, GPS-based navigation systems, email, health care systems, etc.) — systems that the students know and can relate to.  The design of an IT systems has strong consequences for the people, organisations, and sociale systems who use it.  Designers do not only design the system but also use patterns and workflows that unfold through the use of the system.  The purpose is to make the pupils aware of the interplay between design of a system and the use patterns which the system intentionally or unintentionally generates.

Pupils should be able to

– give examples of the impact of IT systems on human behaviour

– analyse and assess the importance and implications of IT systems and how they impact human behaviour

– apply user-oriented techniques for construction or modification of IT systems

2. The Architecture of IT Systems (three-tier model)

The majority of IT systems are structured according to the so-called three-tier model consisting of a presentation tier, a logic tier, and a data tier.  The model is relevant partly because it provides a general framework for understanding a very large class of IT systems, their components, and the interplay between these, and partly because the model is useful for qualified use of concrete systems, e.g. the Office package, Photoshop, iTunes, Facebook andgeneral types of systems, e.g. simulation tools, accounting systems, content management systems, mobile technology, and computer games.

Pupils should be able to

– describe principles for the architecture of IT systems

– apply specific architectures for construction of simpel IT products and adjustment of existing IT systems

3. Representation and manipulation of data

In order to understand the basic characteristics of the computer, the pupils must understand and work with representation and manipulation of data. The main point is that data need to be digitised in order to be represented in a computer and manipulated by programs.  The purpose with this topic is that the pupils gain concrete experience with (and hence understanding of) representation and manipulation of data including the fact that digitising often results in loss of information.  The other side of the coin is that digitising and manipuation makes it possible to create new data.  IT security is another important issue which must be addressed.

Pupils should be able to

– describe the representation of selected types of data (e.g. images, sound, text, etc.) and construct IT products (programs) that make simple manipulations of data

– integrate various types of data in simple IT products and extend functionality of existing IT systems by adding new types of data

4. Programming

Computers are indeed very simple machines that gain their power through scale.  The defining characteristics of the computer is it’s programmability and universality.  Programming comes in many forms, but common to these is the principle of defining and hence automating computations which can be executed again and again with arbitrary data and data sets.

Pupils should be able to

– identify basics tructures in programming languages, construct IT products (simple programs) and adjust existing programs

– apply programming technologies for development of IT products and adjustment of existing IT systems

5. Modeling and structuring of data, processes and systems

The purpose with this topic is to provide insight into modeling where data, processes and systems are described at an abstract level where design alternatives and properties can be evaluated and choices and desicions can be made.

Pupils should be able to

– give examples of models of data, processes and systems and describe the relation between a concrete model and the relevant associated parts of an IT system

– implement selected models in a concrete IT product and adjust existing models and implement these adjustments in existing IT systems

6. Interaction design

The previous topic is primarily about models for elements of the presentation and logic tiers of the three-tier model.  This topic is about models and designprinciples for the presentation tier — the interface where users and other systems meet an IT system.  It’s the purpose that the pupils understand the premises for as well as the consequences and importance of interaction design.

Pupils should be able to

– describe and analyse selected elements of a user interface design, construct simple user interface designs and adjust existing designs

– implement selected interaction design in a concrete IT product and adjust existing designs and implement these adjustments in existing IT systems

7. Innovation

The subject treats innovation from a product as well as process perspective.  The subject takes an innovative approach to IT product development and provides a background for understanding aspects of IT product development and the interplay between IT and users/society.

Pupils should be able to

– characterise innovative development processes and sketch ideas for innovative IT products.


Brief overview (our home page, with lots of links)

More background (it-vest home page, with lots of links)

The official guidelines (Ministry of Education)

Teaching material for the new IT subject (Teacher Association, open source)

September 21, 2011 at 11:08 am 1 comment

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,185 other subscribers


Recent Posts

Blog Stats

  • 2,060,430 hits
September 2011

CS Teaching Tips