Module Descriptors
INTRODUCTION TO PROGRAMMING
COSE40468
Key Facts
Faculty of Computing, Engineering and Sciences
Level 4
30 credits
Contact
Leader: Graham Mansfield
Hours of Study
Scheduled Learning and Teaching Activities: 96
Independent Study Hours: 204
Total Learning Hours: 300
Assessment
  • COURSEWORK weighted at 100%
Module Details
Module Additional Assessment Details
A Portfolio based coursework assessed by in-class tests weighted at 100% assessing Learning Outcomes 1, 2 and 3
Module Learning Strategies
2 lectures per week presenting key topics and concepts.
Tutor assisted practical based learning via 2 practical sessions per week.

Formative, self-directed exercises to support transfer of knowledge and understanding.
Students will develop a portfolio of practical work.
Students will also be encouraged to develop their intellectual, communicative and problem solving skills.
Module Texts
Absolute Java, W. Savitch and M. Kenrick, 5th edition, 2012 ISBN: 978-0132830317
(Recommended reading)
or any other similar book
Module Resources
Hardware and software suitable for supporting the Java development environment.
Module Special Admissions Requirements
None.
Module Indicative Content
Introductory Programming Skills - developing, compiling, running, testing and documenting programs.
Controlling Program Flow (using sequence, selection, iteration, entry/exit points and functions).
Understanding Programming Language Constructs (including declarations, definitions, keywords, constants, primitive data types, structure and syntax, and how program code is executed by a computer).
Problem solving using programmed solutions.
Simple program/algorithm design using natural language and pseudocode and simple notation.
Introduction to collections of data and associated operations (including arrays).
Ordering data programmatically using basic sorting techniques.
Introduction to debugging strategies. Simple file handling.
Planning and implementing program testing including walkthroughs, white box and black box testing.
Introduction to Object based and Event Driven Programming
Introduction to Integrated Development Environments for supporting application development.
Fundamentals of Object based programming techniques including classes, attributes, methods and introducing implementing class relationships such as inheritance, association and aggregation.
Introduction to designing OO applications using key elements of the Unified Modelling Language such as class diagrams, object diagrams and sequence diagrams.