📖Program Curriculum
Year 1
Core Modules
Credits
Programming Concepts
20.00
Discover the foundational principles for programming languages. You'll study variables data types assignment conditionals functions data structures and the object-oriented paradigm. You'll work with other students on a project to simulate the working environment and will develop your problem-solving and computational thinking skills.
Computer Architecture
20.00
You'll look at principles of computer organisation the layered nature of systems structures & the interfaces between them. You'll also study: components of a computer the architecture how they're organised hardware data representation computer logic circuits manipulation of data at the bit level & the theory of computation and its paradigms.
Networks
20.00
You'll study the architecture structure functions and models of the Internet and computer networks. You'll use models to examine protocols and services at the application network data link & physical layers and will analyse the principles & structure of IP addressing and the fundamentals of Ethernet concepts network media & network operations.
Web
20.00
You'll study key concepts of the Internet and WWW applications like HTML stylesheets and JavaScript then more advanced Web scripting techniques such as: the Document Object Model; DHTML event-driven scripting for dynamic user experience; contemporary frameworks and standards for cross-platform operability sophisticated layouts SVGs (Scalable V...
Computational Fundamentals
20.00
This module introduces the mathematical language knowledge and problem-solving skills that you'll need to study computing. You'll look at concepts such as set relation function and recursion/induction and principles of counting and finite probability. The fundamental notions of logic and their use for representation and proof are also explored.
Opportunity Modules
You must choose 2 x 10 credit Level 4 Opportunity modules from the Opportunity module catalogue www.bnu.ac.uk/oppmodules.
Year 2
Core Modules
Credits
Software Engineering
20.00
Software Engineering is the application of a systematic disciplined quantifiable approach to design development operation and maintenance of software. You'll investigate the reasons for this approach and directly apply the techniques investigated against the various lifecycle stages in commercial software development.
Object Orientated Analysis and Design
20.00
You'll study Object Oriented Analysis and Design (OOAD) a software engineering approach that models a system as a group of interacting objects. Each object is characterised by its class data elements and behaviour. You'll use various techniques using the Unified Modelling Language (UML) approach to describe the views under investigation.
Research Methods
20.00
This module aims to support you in gaining an understanding of the research process including principles of research methods theory (ontology/epistemology) and practical elements. You'll be guided in how to plan and prepare for a research-based dissertation or work-based project or artefact-based project.
Optional Modules
Credits
Object Orientated Programme
20.00
This module within a practical Integrated development environment (Visual Studio) and using a modern OOP language (C# C++ Java) will demonstrate how the key techniques of inheritance polymorphism and encapsulation can be directly applied to produce high quality software systems.
Agile Project Management
20.00
Agile project management is often applied to game & creative projects with its emphasis on iterative development. You'll study the incremental evolving & responsive thinking that defines agile methodology covering techniques of adaptive planning prioritisation estimation & collaboration that result in products that meet the needs of end users.
Algorithms and Data Structures
20.00
This module extends the Level 4 Programming module to introduce alternative data structures to arrays and lists in addition to a variety of algorithms that perform typical operations such as sort search insert delete and find on these data structures. You'll also look at how to evaluate storage structures and algorithms based on requirements.
Data Essentials
20.00
This module aims to give you an understanding of how data is collected stored and managed. You'll look at different approaches to data and the reasons for choosing one approach or another. You will also study issues of selecting an appropriate data solution aligned to real world use and application.
Real-time Systems
20.00
Real-time computing (RTC) is the study of hardware and software systems that are subject to a “real-time constraint” e.g. operational deadlines from event to system response. You'll work in a team to implement a real-time system alongside ensuring the final system has addressed the dependability aspects of fault avoidance and fault tolerant.
Web Application Development
20.00
You'll look at the implementation & deployment of data-driven web applications data analysis & the creation & maintenance of database repositories using web APIs & services. You'll implement & deploy web-based systems based on the creation of multi-tier architectures using industry-standard platforms frameworks & development environments.
Computer Science
20.00
This module aims to link between the modules concerned with computational complexity data structures algorithms and artificial intelligence. Data scientists find insights and solve business problems. In this module you will study how to work with and explore data using a variety of visualisation analytical and statistical techniques.
Opportunity Modules
In addition you must choose 2 x 10 credit Level 5 Opportunity modules from the Opportunity module catalogue www.bnu.ac.uk/oppmodules.
Year 3
Core Modules
Credits
Advanced Programming
20.00
This practical class aims to provide you with a deeper understanding of high-level programming language. It covers several advanced topics including object oriented concurrent and network programming and provides insight into how data is managed in such systems. Practical sessions expose you to industrial software development practices.
Extended Independent work
40.00
You'll carry out an individual in-depth investigation of a topic of interest working on your skills in research problem solving and critical analysis. The project will be selected in consultation with your supervisor and may involve a local company. You'll work on the project throughout the year culminating in a final report and oral defence.
Optional Modules
Credits
Software Testing and QA
20.00
This module investigates and applies the successful combination of static verification techniques (inspection walkthrough) alongside dynamic testing approaches (component system integration and acceptance) in the pursuit of creating software that is both fit for purpose and right first time all within the framework of quality assurance.
Design Patterns
20.00
Design Patterns provide robust reusable software solutions to common problems in different types of application. This module examines those ‘elegant’ patterns most widely used within the industry. Having successfully completed this module you should have a firm grasp of the structures intentions and implementations of the major Design Patterns.
Digital Innovation
20.00
Building on material covered in Level 5 modules you'll study how to develop multi-tier web based & mobile-ready applications using distributed frameworks and components. You'll look at issues of web services data access event handling security & caching and how to develop & deploy robust secure scalable web solutions for organisational needs.
Cloud Computing
20.00
This module explores the essential characteristics of Cloud Computing. This includes: the architectures associated with the provision of services (software platforms and infrastructure services); the models for Cloud deployment (e.g. private community public and hybrid clouds); and emerging standards for interoperability.
Advanced Mobile
20.00
This module is concerned with the issues surrounding mobile and ubiquitous computing systems. It examines mobile systems from various technical perspectives and the underlying theoretical and technological frameworks. You'll study development tools and techniques for building mobile systems.
Critical Systems
20.00
You'll study the ‘Critical Systems Specification’ a crucial point-of-reference for all subsequent activities in the software development process. This document must be expressed in a language whose vocabulary syntax and semantics are formally defined so is based on maths. This generates proofs that the resulting code will meet its requirements.
Data Science
20.00
Data science is a crucially important domain in computing due to the significant amounts of data being captured by businesses for analysis processing and to support decision-making. In this module you will learn to work with and explore data using a variety of visualisation analytical and statistical techniques.
Network Security
20.00