Refer to the specific census and withdrawal dates for the semester(s) in which this module is offered.
Business, Engineering and Technology
On-campus block of classes
This module provides students an overview of programming and its role in problem-solving and strategies for meeting user requirements and for designing solutions to problems. The fundamental programming concepts of the memory model, data types, declarations, expressions and statements, control structures, block structures, modules, parameters and input and output will be applied within the context of objects, attributes, methods, re-use, information-hiding, encapsulation and message-passing. Software engineering topics include maintainability, readability, testing, documentation and modularisation.
On completion of the module, students will be expected to be able to:
|1||use diagrams to design solutions for programming problems|
|2||apply problem solving strategies|
|3||use pseudo-code to design algorithms|
|4||design object oriented solutions to simple problems using multiple user-defined classes|
|5||edit, compile and execute a computer program|
|6||analyse, explain and debug existing programs|
|7||write a test plan|
|8||produce formal documentation for a program|
Coursework assessment: 40%
The module has been designed to provide students with an overview of programming, problem solving, testing and debugging. It explores many fundamental programming concepts with emphasis on applying theoretical knowledge to practical situations.
The module develops attitudes that enable students to adopt a problem-solving approach; recognise the importance of programming and documentation conventions; appreciate quality parameters in program development; accept the code of professional conduct and practice; and act in accordance with best practice, industry standards and professional ethics.
On completion of the module, students will be expected to be able to develop an understanding of the relationship between a problem description and program design; the management of problems using recognised frameworks; the use of design representations; the semantics of imperative programs; the object oriented paradigm as represented by Java; the sequence of steps that a computer takes to translate source code into executable code; primitive data types and basic data structures. There will be a combination of lectures, that will include interactive elements, practical work and tutorial work that will be done on an individual basis. All outcomes will be assessed by means of tutorials, class tests and a final examination.
Dr Sheelagh Walton