The unit covers professional, legal and career development issues in the Computing and Digital Technology industries and includes a pathway-specific group project.
The current legal framework of Computing and Digital Technology is examined e.g. data protection legislation, intellectual property rights, computer misuse, freedom of information, computer contracts and employment contracts as is an overview and comparison of workable ethical theories eg utilitarianism and duty based approaches. Important issues regarding professional bodies in computing are also addressed including their role, structure, codes of conduct and practice. You will also investigate employability factors and learn about the employment application process and the importance of continuing professional development. A themed case study mini-project linked to the subject pathway, which may include the opportunity to work with an external company. This will help you to develop your skills and understanding of project planning and control concepts, planning techniques (eg Gantt charts) and monitoring, academic research, software prototyping and report writing.
Computer Games Design
This unit provides an introduction to concepts and techniques in computer games design, development and evaluation and a practical overview of programming for computer games, industries and audiences. It includes the history of computer games design, computer games design, documentation, development processes, evaluation procedures, level development, game abstraction and logic, game engines, game balancing, introduction to narrative and interactive fiction and interaction design and games. You will learn how to critically evaluate current debates in games design and apply practical production skills.
This unit introduces the theory and practice of computer graphics with modern game programming techniques. It will develop awareness, technical understanding and principles of interactive graphics. Includes C++ programming, programme structure, control structures, functions, overloads and templates, name visibility, compound data types, arrays, character sequences, pointers, dynamic memory, data structures, classes, polymorphism, input/output with files, graphics systems and modules, geometry representation, modelling, 3D transformations, menus and interactions, colour, shading and lighting, digital image representation, image manipulation, texture mapping, rasterisation and fragment processing, compositing, blending and transparency and lighting techniques.
Algorithms and Data Structures
Advanced programming and development techniques focussed on the data structures and algorithms that underpin Computer Science. Static data structures: implementation and use. Problem decomposition, module abstraction. Dynamic data structures: pointers linked lists graphs and trees. Object oriented: design implementation and use. Application implementation and component reuse. Algorithms: sorting searching and graph traversal. Basic complexity issues: time and space complexity. Software development techniques.