Computer systems examines the underlying fundamentals of computer system’s operations, including the number systems they use, how computer processors operate at a simple level and the relationship between different hardware components.
The Computing Professional
This module introduces you to the variety of roles there are in computing and some of the key skills required to work in those areas. You will also start to think about the ethical issues in the field of computing and start to develop your own ideas of appropriate responses to these. You will also start to look at some of the non-technical skills that are involved in computing: team work, presentation and research.
E-Commerce and Web Development
One area of computing that has grown enormously in the last fifteen years is that of e-commerce. Both business to business and business to consumer sales and marketing is now often done electronically using web sites and systems. This module looks at the concepts of e-commerce systems and looks at development of web sites using HTML 5/CSS and the use of content management systems (CMS) to produce end user informational websites.
Principles of Software Development
We look at the basic ideas of software engineering – the processes that should be followed to develop software solutions. You will also study the basic concepts of standard algorithms and data storage and the mathematics required to support this area.
Introduction to Programming
This is the first module of programming in the degree and teaches students who may have no prior programming experience some of the fundamental concepts in the area. You will work with two different programming languages – for example to develop Android apps using MIT App Inventor and traditional applications in the C# programming language.
This module continues on from introduction to programming and develops your programming skills in the main development language, e.g. the C# programming language. You will develop Graphical User Interface applications that run in the Windows operating system. A strong emphasis is placed on high quality development that provides a strong foundation for future more advanced software development skills.
Computer Law and Ethics
You will look at the laws that apply especially to computer systems and their users. A largely UK centred approach is taken looking at such laws as the Data Protection Act and the Computer Misuse Act how these have been applied in practice and how they might apply in the future.
The computer networks module introduces you to the theories and practical deployment of computer networks to enable more than one computer to communicate to share both data and processing. You will be introduced to the OSI and TCP/IP models of network operation.
This module introduces you to the concepts, practices and issues of ensuring computer systems are kept secure. You will be introduced to the common approaches to attacking systems and some mechanisms that help protect them.
Developing Database Systems with SQL
This module looks at the concepts and theories behind the use the relational database model and how this is practically implemented in the Oracle Relational Database Management System using the SQL language. Oracle is the world’s most popular database management system by market share.
Interactive Web Programming
Research Methods looks at how we can research new areas in computing. You will be given a range of tools to glean data such as interviews, questionnaires and experimentation. You will also be given the analysis tools to make sense of the data collected such qualitative and quantitative statistics. By the end of the module you will have produced a fully articulated research proposal.
Current Issues in Web Technology
This module aims to develop your understanding of underlying issues faced by web technology developers. The assumption is that technology is not neutral and its design can be motivated for reasons that are not always immediately apparent. By looking at the latest technological ideas you should understand the broader implications of its application to society.
Ethical and Professional Computing
This module deepens the understanding of how ethics and professional codes of conduct may affect what a computing professional will do and how they approach it. You will look at a number of issues and use an evidence-based approach to consider the alternative choices that would be open to a person working in the computing field.
Human-Computer Interaction looks at the interplay between the human user of a computer system and the computer system itself in order to maximize its effectiveness. You will study a number of theories of good design of computer systems and will deploy these in the design of your own interfaces. Further, once designed or implemented you will learn effective techniques for evaluating the effectiveness of the interfaces in order to improve them.
Individual Study (20 credits)
This module is the culmination of your learning experiences on the entire course. You will, under the guidance of a supervisor, undertake a piece of focussed research. This will build on work completed elsewhere on the course by an in-depth study of one aspect of such work or by the exploration of a new area.
Likely optional modules
Advanced Database Development with Oracle
This module deepens your knowledge of database development, following on from Developing Database Systems with SQL, giving you a greater understanding in order to maximize the benefits of using a Database Management System.
This module looks at the operation and underlying operations of the Operating System in the use of modern, large-scale computer systems. You will gain an understanding of how resources are managed by the operating system by looking at these in theory and the actual operation of an operating system, such as Windows and Linux.
Recent Advances in Computer Networks
This module deepens your understanding of computer networking by looking at a number of more recent mechanisms for computer networking, such as mobile networks and the latest versions of the TCP/IP protocols. This will enable you to make the most effective use of networking hardware to create distributed systems.
Placement in Industry or Commerce (subject to approval)
The placement module is a flexible module that allows you to gain experience and put your knowledge into practice outside the classroom setting. This can be done over the summer before your third year of study as a block of work; during your third year on a given number of hours each week; or some combination in agreement with the organisation and University.
You will be required to: pass all your second year modules of study at first attempt; have a good overall average and must gain your placement place to be eligible to take this module. You will be given assistance in identifying and applying for placements.