JADE Issue 12 JADE Issue 12 - November 2020 | Page 44

6. Represent a hierarchy diagram as Structured English and develop appropriate pseudocode;
7. Use a programming language to code an algorithm;
8. Produce a user manual for a piece of software and evaluate a piece of software;
9. Use binary arithmetic, boolean algebra and finite state machines to solve problems.
As a Foundation Year module, it also has a role in preparing students for a three-year Computer Science degree programme. Accordingly, the module must also give students a flavour of studying Computer Science. For example, the module should give a novice programmer the opportunity to determine whether or not they enjoy working on coding projects in their free time and, hence, if a full Computer Science degree programme is suitable for them.
The module is split into two distinct strands: computational theory and programming. These are taught and assessed separately, despite comprising the same module.
Module Changes, 2015- Present
The review of the module began in the 2015-16 academic year, with one member of staff responsible for changing the delivery and assessment for the theory side of the module. In the 2017-18 academic year, the review also considered the programming side of the module, leading to further changes.
Teaching
A breakdown of the teaching structure of the module prior to 2015-16 is given in Figure 1.
The module outline specifies a total of 23 hours each for lectures, programming laboratories and problem classes( i. e. one hour per week each). The theory side of the module was entirely delivered through the weekly lectures, although seven of the 23 problem classes were also given over to theory content at various points in the year. The remaining problem classes were used to teach the students about assembly language in preparation for an assembly language assignment. The 23 programming laboratories were used to teach the students about programming and program planning using the Processing language.
Assessment
The intended learning outcomes are measured by three assessments, listed below.
1. A range of hardware and software tasks( 25 %): split into two separate assignments, one theory assignment on logic gates( 12.5 %) and one assembly language programming assignment( 12.5 %).
2. Algorithm and program design( 50 %): when the module was first written, this was met by a portfolio comprising three separate elements, namely planning documents( 17.5 %), a user manual( 7.5 %) and Processing code( 25 %). A later iteration of the module added two formative and two assessed tasks in semester 1.
3. 2-hour examination( 25 %): a two hour examination on all elements of the theory side of the module, held in semester 2.
This is summarised in Figure 2, which shows how the three assessments actually comprised eight summative assignments and two formative assignments, and that the programming side of the module was subject to a greater amount of assessment.
Structure of Paper
The remainder of this paper is organised as follows. Section 2 critically evaluates the module, identifying some areas that worked well alongside a number
Article # 3 23