Module |
Credits |
Compulsory/optional |
Programming (DTS)
|
30 Credits |
Compulsory |
This module is primarily concerned with developing basic skills necessary to produce computer-based solutions to simple problems in high level languages. The emphasis is on problem solving, problem solving strategies; fundamental constructs such as structure, syntax and semantics; variables and data types, operations and the evaluation of expressions, control structures, and modularisation, data structures and recursion. Program code will be expected to perform according to specification, be readable, maintainable and well designed. Although the given problems will initially be relatively simple, there will also be an appreciation of how simple solutions can be used in the solution of more complex problems. |
Models and Methods in Computing (DTS)
|
30 Credits |
Compulsory |
This module introduces a number of principles that underlie computation and computer-based systems, and how they may be modelled. Both the static and dynamic aspects of computing systems are considered, with computation being viewed both in functional terms, and as a series of state transitions defined over abstract or virtual machines. The module provides a clear concept of modelling and specification of computational systems. The module illustrates some of the ways in which the use of formalisms in modelling and specification can aid those involved in the design, development and operation of computer-based systems. |
Platforms for Computing (DTS)
|
15 Credits |
Compulsory |
This module introduces the notion of the computing platform in the organisation and function of modern computing systems. The computer and network hardware are platforms that support the operating system. The operating system is a platform that supports the application software and programming environment; The programming environment is a platform that supports the development of application software; The application software is a platform that supports the user experience. The organisation and combination of these platforms is illustrated by a historical succession of examples, culminating in the smartphone, a modern mobile computing device. The module also introduces the nature of data used by computing platforms, the form that data might take, the communication of that data, and constraints placed on that data by the choice of platform. |
Human Dimensions of Computing (DTS)
|
30 Credits |
Compulsory |
This module introduces the history and major accomplishments of computer science and information technology, and their impact on modern life. Technology is only one part of the overall process of software development for business, and the human and social dimension of computing, including good design and UX (User Experience), is just as important and relevant to the professional.
You will be led to understand how the human dimension must be a crucial factor to consider - in any decision-making process you will engage in as a professional - alongside the software development life-cycle. You will also learn to appreciate what an important role it plays in business-related environments and elsewhere.
The module will also act as a subject matter vehicle for instruction and practice of academic skills (e.g. critical reading, writing précis, essays, reviews, design proposals, research design, technical reports; how to use information sources; how to successfully manage and perform reasoning and calculations involving probability and basic statistics). |
System Requirements and Analysis (DTS)
|
15 Credits |
Compulsory |
This module focuses on the rationale, processes and outputs of software system analysis and requirements engineering activities. This requires you to focus on how organisations ensure that systems meet the requirements of all their stakeholders by using appropriate techniques. This approach will be used to cover the various processes such as eliciting, modelling, and validating requirements. At the elicitation stage this could include individual techniques such as benchmarking and interviewing.
Other techniques such as the use of prototypes, UML and user stories will be considered in the context of multiple processes, for example their use in both modelling and validating requirements. |