School of Computer Science BCS accreditation 2021 - 2026
[Home]
B.1 Programme data
Programme title | Computer Science with Business Management BSc (Hons) |
Date programme first offered | 1995 |
Date programme revised | 2019 |
Mode(s) of study | FT |
Programme duration | 3 years |
Student intake to programme for current academic year | 0 students |
Names, positions and dates of appointments of external examiners | Test |
Accreditation sought | Test |
Accreditation period sought | 2021-2026 |
Programme also accredited by | None |
Responsible department | Department of Computer Science |
B.2.4 map of core course units to Computer Science with Business Management BSc (Hons)
Table key= assessed mandatory learning outcome = assessed optional learning outcome = unassessed mandatory learning outcome = unassessed optional learning outcome = not relevant for accreditation | ⓘ COMP30030 View All Courses | ⓘ BMAN30010 View All Courses | ⓘ BMAN30021 View All Courses | ⓘ BMAN30022 View All Courses | ⓘ COMP32412 View All Courses | ⓘ COMP33511 View All Courses | ⓘ COMP33712 View All Courses | ⓘ COMP34120 View All Courses | ⓘ COMP34412 View All Courses | ⓘ COMP35112 View All Courses | ⓘ COMP36111 View All Courses | ⓘ COMP36212 View All Courses | ⓘ COMP36511 View All Courses | ⓘ COMP37111 View All Courses | ⓘ COMP37212 View All Courses | ⓘ COMP38211 View All Courses | ⓘ COMP38411 View All Courses | |
2.1.1 Knowledge and understanding of facts, concepts, principles & theories ⓘ View All Criteria | ResponseThe knowledge gained during the programme is demonstrated by the student in executing the projectAssesementIndividual coursework | ResponseLecturesAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test - But it is like an exam | ResponseThe unit covers the values and principles that underly agile approaches. Students are introduced to, and apply, common agile practices for requirements gathering, project planning and tracking, software estimation, design and testing.AssesementExamination | ResponseThis is a full-year course on game theory and computational game theory. It has a large practical component which consists of two substantial projects: one is to design and implement an agent which connects to a game engine and plays a particular board game against other agents. The second is to design an agent which predicts the price which will be set by another agent in order to optimize economic benefit. The theories of games, economic games, mechanism design, and solving such games, including the use of machine learning approaches, are presented in lectures and documents, and is assessed by examination. The practical implementation of these concepts are assessed through group project work. In each semester, the knowledge (the lectures) comes in the first half; the practical implementation comes in the second half.AssesementExamination, Lab work | ResponseThe course unit covers key linguistic and algorithmic foundations of natural language processing, providing essential facts, concepts and theories.AssesementExamination, Individual coursework | ResponseLectures on these topics: how to construct a parallel computer, shared memory vs. distributed memory; how to program a parallel computer, data sharing vs. message passing (vs. functional programming); multithreading; cache coherence; synchronisation mechanisms; hardware support for synchronisation; lock-free data structures; OpenMP/MPI; thread-level speculation; transactional memory; memory consistency; attached accelerators and their programming; functional programming and dataflow.AssesementExamination, Lab work | ResponseThe course develops knowledge and understanding of mathematical systems and their relation to computation. Aspects of precision, computer arithmetic, numerical algorithms and applications are all explored to understand their impact on mathematical modelling and simulation.AssesementExamination, Individual coursework | ResponseThis course unit focuses on principles and techniques that underpin the web, and to investigate how these are applied to provide webs of documents and data. In so doing, the concepts and standards associated with resource identification, access, indexing, classification, publication and search are discussed, with specific focus on scalability.AssesementIndividual coursework, Lab work | 2.1.1 Knowledge and understanding of facts, concepts, principles & theories ⓘ View All Criteria | ||||||||
2.1.2 Use of such knowledge in modelling and design ⓘ View All Criteria | ResponseStudents apply knowledge gained from other course units and personal research in the design and implementation of a substantial project.AssesementIndividual coursework | ResponseDesign examples and model analysisAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseUser stories are used to model the requirements for a computer system, with a focus on capturing the value that a software project is expected to deliver to the customer. Story points are used to describe the relative size of a piece of functionality, for the prediction of delivery times and effort. Evolutionary design techniques based on test-driven methods are introduced, as a means of adapting the design of a software system to the requirements are they are understood at each point in a project.AssesementExamination | ResponseIn each project, the students have to use the knowledge from the course to design and implement their solutions. They will not be able to succeed without that knowledge. Modelling the actions of other agents is essential.AssesementExamination, Lab work | ResponseThe course unit used that knowledge to build two computer-based systems as part of coursework.AssesementIndividual coursework | ResponseThis is investigated in the lab work. There are 3 exercises, each of which requires students to develop a multithreaded parallel data sharing program in Java to perform a given task (vector addition, sorting, partial differential equations solving). The focus is on measuring the resulting performance and demonstrating at least some degree of speedup. Trade-offs are inherent in this.AssesementLab work | ResponseThe use of this course knowledge in modelling and design is through the ability to apply the techniques taught in this course across different disciplines within and outside computer science. For example when designing numerical analysis software for engineering applications.AssesementExamination, Individual coursework | ResponseCoursework and labs provide experience of a new programming model for big data (MapReduce), as well as requiring design of systems for indexing and searching on the web for documents and data. Coursework specifically ask to discuss trade-offs between modelling decisionsAssesementIndividual coursework | 2.1.2 Use of such knowledge in modelling and design ⓘ View All Criteria | ||||||||
2.1.3 Problem solving strategies ⓘ View All Criteria | ResponseThe project may involve students developing a solution to a specific problem suggested by a supervisor or the studentAssesementIndividual coursework | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Individual coursework | ResponseThe course covers the assumptions that underly sequential and agile processes for software development, and helps students to recognise when each is appropriate.AssesementNot Assessed | ResponseThe group project work is done largely from scratch. Particularly for the first project, there are multiple ways to do it.AssesementLab work | ResponseStudents are asked to solve a particular problem, so they need to analyse the requirements and criteria, and design a solution.AssesementIndividual coursework | ResponseInvestigated in the lab work.AssesementLab work | ResponseThe course explores engineering problem solving from the perspective of the computational modeller. Core concepts and analysis tools including finite precision computation, floating point arithmetic, mixed precision algorithms and numerical solution of differential equations, are used to solve a range of problems along with their impact on computer performance.AssesementExamination, Individual coursework | ResponseThe course unit discusses specific case studies - indexing a real-world set of documents and data. Students are asked to come up with specification to address the problem and plan how to solve it. For one of the tasks, students are asked to mostly focus on identification of design challenges and come up with a balanced strategy to address these.AssesementIndividual coursework | 2.1.3 Problem solving strategies ⓘ View All Criteria | |||||||||
2.1.4 Analyse if/how a system meets current and future requirements ⓘ View All Criteria | ResponseThe student's work will be evaluated against requirements derived as part of the project.AssesementIndividual coursework | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseThe unit covers agile approaches to software testing, including the use of acceptance tests to both specify and verify the requirements for a system. The unit touches upon the question of how we can decide whether a software system delivers the value initially hoped for from it.AssesementExamination | ResponseThe course unit discusses how to analyse the outcomes/outputs of computer-based systemsAssesementExamination, Individual coursework | ResponseIn the lectures we cover how some design points of multiprocessors (such as cache coherency) do not scale well with the increase in cores expected in future processors.AssesementExamination | ResponseThis course has been designed with the main objective of making available to students research questions in the field. Topics studied are intended to equip students with the analytical problem-solving skills required to handle and exploit future developments of computer-based systems.AssesementExamination, Individual coursework | ResponseStudents are asked to critically evaluate what their solution to a problem would support (e.g. what kind of queries), and how would any future requirements fit. They also need to understand and discuss the efficiency of proposed solutions - e.g. in the context of large number of documents to index.AssesementIndividual coursework | 2.1.4 Analyse if/how a system meets current and future requirements ⓘ View All Criteria | ||||||||||
2.1.5 Deploy theory in design, implementation and evaluation of systems ⓘ View All Criteria | ResponseStudents are expected to apply knowledge acquired during the programme and through their personal research.AssesementIndividual coursework | ResponseLecturesAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseKey agile practices associated with requirements gathering, project planning, software testing and evolutionary design are introduced in the course. Students have a chance to apply the practices in class, with students choosing one practice to apply in depth in their coursework. Tools made use of include Cucumber, JUnit and IDE-based refactoring.AssesementExamination | ResponseThe knowledge concerning how to solve games in the contexts of the two practical projects is highly theoretical. The students design and implement solutions based on that theory. The students will not achieve successful results without making use of the theory that they learned.AssesementLab work | ResponseAs above - the course unit focuses on specification, design, implementation and evaluation of natural language processing systems.AssesementExamination, Individual coursework | ResponseConcepts from the lectures are applied in the lab exercises in which the students are asked to design, implement, and evaluate parallel shared-memory programs.AssesementExamination, Lab work | ResponseThe course addresses the problem of deploying appropriate theory, practices and tools for the specification, design, implementation and evaluation of computer-based systems. For example, by developing numerically stable and accurate algorithms and applying them across a range of example problems.AssesementIndividual coursework | ResponseWe introduce different MapReduce patterns for developing the methods to implement indexing of documents and data. A variety of standard and emerging methods for evaluation of information retrieval are considered.AssesementIndividual coursework | 2.1.5 Deploy theory in design, implementation and evaluation of systems ⓘ View All Criteria | ||||||||
2.1.6 Recognise legal, social, ethical & professional issues ⓘ View All Criteria | ResponseStudents are expected to adhere to the relevant ethical guidelines during their project work.AssesementIndividual coursework | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseThe unit covers a number of professional issues: whole-team responsibility, issues of trust and openness between customer and development team, honesty in making commitments or dealing with unrealistic commitments made on the team's behalf, learning from team members, the management of technical debt and techniques for maintaining high software quality. We also touch on contracts for agile projects.AssesementExamination | ResponseGame theory can help in understanding the incentives for behaving in an unethical or antisocial manner. Computational game theory, and particularly mechanism design can provide incentives against dishonest behavior. These topics are part of the theoretical content of the course.AssesementExamination | ResponseA brief discussion on social and ethical issues when it comes to what data to index and how autonomous data representation models should be.AssesementNot Assessed | 2.1.6 Recognise legal, social, ethical & professional issues ⓘ View All Criteria | ||||||||||||
2.1.7 Knowledge and understanding of commercial and economic issues ⓘ View All Criteria | ResponseCommercial considerations may impact some projectsAssesementIndividual coursework | ResponseDescribed through case studies in the courseAssesementNot Assessed | ResponseThe issue of contracts for agile projects is covered briefly by this unit, as is the importance of ensuring that software systems deliver real value to customers.AssesementExamination | ResponseThe second semester of the course is about economic application of games. The project is about setting prices to maximize profit by predicting the behavior of other players in the market.AssesementExamination, Lab work | ResponseThe course unit regularly features a guest lecture from industry.AssesementNot Assessed | ResponseLectures are explicit about the lack of accurate information about how commercial cache protocols and related hardware-level schemes actually work due to the commercial sensitivities.AssesementExamination | ResponseRegularly covered by a guest lecture from industry, discussing practical issues in maintaining search and indexing systems.AssesementNot Assessed | 2.1.7 Knowledge and understanding of commercial and economic issues ⓘ View All Criteria | ||||||||||
2.1.8 Knowledge of management techniques to achieve objectives ⓘ View All Criteria | ResponseStudents are expected to use an appropriate planning tool to manage their work.AssesementIndividual coursework | ResponseA number of the practices covered by the course relate to project management: task boards are introduced as a lightweight means of planning and tracking the progress of software projects. Agile estimation techniques are also covered. We provide an overview of common agile management methodologies, e.g. Scrum, Kanban.AssesementExamination | ResponseOnly indirectly. The projects are substantial and are done in small groups. The students have to manage the projects themselves.AssesementLab work | 2.1.8 Knowledge of management techniques to achieve objectives ⓘ View All Criteria | ||||||||||||||
2.1.9 Knowledge of information security issues ⓘ View All Criteria | ResponseInformation security may be a concern in some projectsAssesementIndividual coursework | ResponseSeveral lectures are dedicated to IoT securityAssesementExamination | 2.1.9 Knowledge of information security issues ⓘ View All Criteria | |||||||||||||||
2.2.1 Specify, design or construct computer-based systems ⓘ View All Criteria | ResponseStudents may specify, design and implement a substantial computer-based system.AssesementIndividual coursework | ResponseLecturesAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseUser stories are covered as a means of gathering and documenting requirements in a lightweight form. Evolutionary design techniques are covered as a means of avoiding the need to design software systems up-front, while attempting to meet requirements over the long term. Test-driven development is covered as an approach to the implementation of high-quality, highly-maintainable code.AssesementExamination | ResponseIn doing the two projects, the students have to specify, design, and implement computer-based agents largely from scratch.AssesementLab work | ResponseNatural language processing systems are discussed - what they tasks are (specification), how to design them and how to construct them. The exam often asks students to discuss a specification, design and construction of a real-world processing system (e.g. for a case study).AssesementExamination, Individual coursework | ResponseLectures describe many important details of the construction of multiprocessors.AssesementExamination | ResponseThis course specifies, designs and constructs computer models capturing mathematical systems defining real-world problems. Model implementations are analysed from the perspective of accuracy, stability, and computational performance.AssesementExamination, Individual coursework | ResponseStudents are asked to design and construct two computer-based systems for indexing sets of documents and data. These are introduced in workshops.AssesementIndividual coursework | 2.2.1 Specify, design or construct computer-based systems ⓘ View All Criteria | ||||||||
2.2.2 Evaluate systems in terms of quality and trade-offs ⓘ View All Criteria | ResponseStudents are expected to evaluate alternative solutions in their work and to reflect on their completed work.AssesementIndividual coursework | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseThe key focus of agile methods on delivering real value to the customer through the development of software is covered by the unit.AssesementExamination | ResponseAgain it is indirect. The students have procedures whereby they can test their solutions. This allows them to test the efficacy of the decisions they have made.AssesementLab work | ResponseCoursework asks students to discuss alternatives and trade-offs between decisions they made.AssesementIndividual coursework | ResponseSome lecture topics go into these issues. For example, early attempts to provide synchronisation instructions require a read-modify-write directly into memory, but modern pipelined processors cannot do this efficiently, so novel schemes have had to be invented.AssesementExamination | ResponseThis course provides students with a wide range of criteria to evaluate different types of systems, such as numerical precision, error, model convergence, and computer hardware requirements (e.g. memory, operations, energy).AssesementExamination, Individual coursework | ResponseAs above - this is a key request for the two coursework pieces: evaluate possible trade-offs in addressing the indexing problem, and illustrate that with real-world data.AssesementIndividual coursework | 2.2.2 Evaluate systems in terms of quality and trade-offs ⓘ View All Criteria | |||||||||
2.2.3 Recognise risk/safety for safe operation of computing equipment ⓘ View All Criteria | ResponseSafety issues may be a concern in some projectsAssesementIndividual coursework | ResponseLectures emphasise the importance of correct behaviour/implementation in data protection. The incorrect implementation of Transactional Memory extensions for the i86 ISA in Intel's Haskell processor is specifically mentioned.AssesementExamination | 2.2.3 Recognise risk/safety for safe operation of computing equipment ⓘ View All Criteria | |||||||||||||||
2.2.4 Deploy tools effectively ⓘ View All Criteria | ResponseWe encourage students to research and use appropriate tools for designing and implementing applications (if they exist)AssesementIndividual coursework | ResponseThe unit covers the use of specification-by-example tools (FitNesse and Cucumber), and automated testing tools (JUnit). The use of refactoring tools provided by IDEs in evolutionary design is also covered.AssesementExamination | ResponseThe goal of the course is to provide students with the skills to define mathematical systems via computational models, and assess their efficacy against target objectives. This requires a range of skills including: defining a problem and casting it in a computational model, implementing a model in software, and analysing the output to measure performance. This process is explored across a range of problems from mechanical engineering, physics, and neural networks.AssesementExamination, Individual coursework | ResponseThis course unit requires students to understand and implement their solutions in a Hadoop environment, so they need to be able to demonstrate effective deployment.AssesementLab work | 2.2.4 Deploy tools effectively ⓘ View All Criteria | |||||||||||||
2.3.1 Work as a member of a development team ⓘ View All Criteria | ResponseSeveral team-based practices are covered by the course, including self-organising teams, team-based estimation through planning poker/rock-paper-scissors, and the Three Amigos approach to specification-by-example.AssesementExamination | ResponseThe students work in small groups to develop their agents.AssesementLab work | 2.3.1 Work as a member of a development team ⓘ View All Criteria | |||||||||||||||
2.3.2 Development of general transferable skills ⓘ View All Criteria | ResponseIndependent planning and working, self guided professional development, reporting via written work and a video,AssesementIndividual coursework, Presentation | ResponseStudents are encouraged to take part in in-lecture discussions with their peers.AssesementNot Assessed | ResponseStudents are asked to work in teams and pairs in all classes. Communication skills are developed by this means, as well as through frequent whole-class discussion.AssesementNot Assessed | ResponseThe students are required to work in teams, so teamwork is reinforced through practice. Time management is reinforced by the requirement a rough plan by the second week, and by the requirement of a journal. Communication skills are reinforced by the requirement of a group presentation and a final report in the journal.AssesementLab work | ResponseWriting reports (two coursework discussion reports) and an essay as the final examination.AssesementExamination, Individual coursework | ResponseMainly by the problem-solving nature of the lab exercises and some parts of exam questions.AssesementExamination, Lab work | ResponseThis course develops general transferable skills through the advanced multi-disciplinarily nature of topics studied. The development of problem-solving skills is explained in Section 2.1.3. Communication skills are developed through high participation in class, with creative and critical thinking encouraged in all teaching sessions. Technical writing is also developed in written report assignments.AssesementExamination, Individual coursework | ResponseWritten reports are part of the coursework.AssesementIndividual coursework | 2.3.2 Development of general transferable skills ⓘ View All Criteria | |||||||||
3.1.1 Deploy systems to meet business goals ⓘ View All Criteria | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | 3.1.1 Deploy systems to meet business goals ⓘ View All Criteria | ||||||||||||||||
3.1.2 Methods, techniques and tools for information modelling, management and security ⓘ View All Criteria | ResponseLecturesAssesementExamination | ResponseInformation modelling for natural language data is considered, including various statistical, machine learning and knowledge-based approaches.AssesementExamination, Individual coursework | 3.1.2 Methods, techniques and tools for information modelling, management and security ⓘ View All Criteria | |||||||||||||||
3.1.3 Knowledge of systems architecture ⓘ View All Criteria | ResponseExamples and case studiesAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseInherent in the nature of the material covered. The course unit is part of the School's Architecture Theme.AssesementExamination, Lab work | ResponseStudents are introduced to Hadoop and related architectures and technologies for distributed computing.AssesementNot Assessed | 3.1.3 Knowledge of systems architecture ⓘ View All Criteria | |||||||||||||
3.1.4 Knowledge and understanding of mathematical and/or statistical principles ⓘ View All Criteria | ResponseEvaluation of some projects may require robust statistical analysis. Some projects require significant amounts of applied maths and logic.AssesementIndividual coursework | ResponseProblem solvingAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementNot Assessed | ResponseGame theory is a mathematical subject. Students must understand it and put it into practice.AssesementExamination, Lab work | ResponseThe course develops knowledge and understanding of mathematical systems and their solution through computational modelling. This includes aspects of numerical precision and accuracy on digital hardware, the use of numerical algorithms to approximate solutions to computationally hard problems, and exploration of these concepts under a range of engineering and science applications.AssesementExamination, Individual coursework | 3.1.4 Knowledge and understanding of mathematical and/or statistical principles ⓘ View All Criteria | ||||||||||||
3.2.1 Specify, deploy, verify and maintain information systems ⓘ View All Criteria | ResponseUser stories are covered as a means of gathering and documenting system requirements in a lightweight way. Agile approaches to software testing are covered in some depth, being the focus of a half of the course unit. Evolutionary design techniques are introduced and practiced by students, with an emphasis on producing code that is easy to change in the long term (as requirements change).AssesementExamination | 3.2.1 Specify, deploy, verify and maintain information systems ⓘ View All Criteria | ||||||||||||||||
3.2.2 Defining problems, managing design process and evaluating outcomes ⓘ View All Criteria | ResponseThe project requires students to define the problem they are tackling, attempt to solve it and evaluate the outcome.AssesementIndividual coursework | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Individual coursework, Test | ResponseMany students do a lot of research in order to design the agent used in the first project. There are many ways to create an agent to play two-player games, and also a literature on the particular game. The students are highly motivated to create the best agent which beats the other agents, and succeed by finding appropriate literature.AssesementLab work | ResponseIn this course students define problems, manage design processes and evaluate outcomes in the written assignments exploring accuracy and precision and solution of differential equations. The encourage students to consider not just the ‘correct’ answer, but to define and justify a solution which fulfils all problem requirements.AssesementIndividual coursework | 3.2.2 Defining problems, managing design process and evaluating outcomes ⓘ View All Criteria | |||||||||||||
3.2.3 System Design ⓘ View All Criteria | ResponseThrough teaching a design methodologyAssesementExamination | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Test | ResponseUser stories are covered as a lightweight means to gather and document the user requirements, and the value that is expected to result from the new or modified software. Specification-by-example/acceptance test driven development is taught as a means of ensuring that the final system delivers the functionality described by the user stories, with a minimum of additional (unwanted) functionality.AssesementExamination | ResponseDesign of parallel systems.AssesementExamination, Lab work | 3.2.3 System Design ⓘ View All Criteria | |||||||||||||
4.1.1 Knowledge and understanding of scientific and engineering principles ⓘ View All Criteria | ResponseSuch knowledge is required in a small number of projectsAssesementIndividual coursework | ResponseThe students are encouraged to evaluate their solutions in order to improve them.AssesementLab work | ResponseWe consider specific scientific principles in computational linguistics (e.g. morphology) as a basis for creation of natural language processing systems and solving problems.AssesementExamination | ResponseInherent in the lab work.AssesementExamination, Lab work | ResponseThe course develops knowledge and understanding of scientific and engineering principles for the solution of practical problems: e.g. by developing numerically stable and accurate algorithms, and through assessing the impact of computational modelling choices on mathematical models. A wide variety of examples are provided to ground theory in real-world problems.AssesementExamination, Individual coursework | 4.1.1 Knowledge and understanding of scientific and engineering principles ⓘ View All Criteria | ||||||||||||
4.1.2 Knowledge and understanding of mathematical principles ⓘ View All Criteria | ResponseSuch knowledge is required in a small number of projectsAssesementIndividual coursework | ResponseThrough examples and specific problemsAssesementExamination | ResponseThe students must understand the mathematical principles of game theory and also a bit of machine learning prediction to succeed with the projects.AssesementLab work | ResponseThe course develops knowledge and understanding of a range of mathematical principles commonly employed in computational modelling. For example, the numerical solution of systems described by differential equations, optimisation algorithms, and the use of bio-inspired systems such as neural networks. Application of these methods on computers is explored to understand and evaluate the interaction and optimisation of techniques and underlying hardware.AssesementExamination, Individual coursework | 4.1.2 Knowledge and understanding of mathematical principles ⓘ View All Criteria | |||||||||||||
4.1.3 Knowledge and understanding of computational modelling ⓘ View All Criteria | ResponseSuch knowledge is required in a small number of projectsAssesementIndividual coursework | ResponseComputational game theory, which is what this course is about, is intrinsically about computational modelling.AssesementExamination, Lab work | ResponseLanguage modelling (statistical, machine learning) are considered and discussed.AssesementExamination | ResponseThe course develops knowledge and understanding of scientific and engineering principles for the solution of practical problems: e.g. by developing numerically stable and accurate algorithms, and through assessing the impact of computational modelling choices on mathematical models. A wide variety of examples are provided to ground theory in real-world problems.AssesementExamination, Individual coursework | ResponseWe introduce different computational models for information retrieval, including language modelling.AssesementIndividual coursework | 4.1.3 Knowledge and understanding of computational modelling ⓘ View All Criteria | ||||||||||||
4.2.1 Specify, deploy, verify and maintain computer-based systems ⓘ View All Criteria | ResponseThe course covers a range of agile practices designed to help us specify, design, implement and verify software systems in a lightweight, efficient manner. The management of technical uncertainty is covered through several routes: techniques for choosing which features to implement in what order are taught, based on risk and the need to acquire information that will help to reduce risk; and the use of learning spikes to reduce estimation and technical uncertainty.AssesementExamination | 4.2.1 Specify, deploy, verify and maintain computer-based systems ⓘ View All Criteria | ||||||||||||||||
4.2.2 Defining problems, managing design process and evaluating outcomes ⓘ View All Criteria | ResponseThe project requires students to define the problem they are tackling, attempt to solve it and evaluate the outcome.AssesementIndividual coursework | ResponseThese are addressed in lecture notes, slides, and videoed lectures.AssesementExamination, Individual coursework, Test | ResponseMany students do a lot of research in order to design the agent used in the first project. There are many ways to create an agent to play two-player games, and also a literature on the particular game. The students are highly motivated to create the best agent which beats the other agents, and succeed by finding appropriate literature.AssesementLab work | ResponseIn this course students define problems, manage design processes and evaluate outcomes in the written assignments exploring accuracy and precision and solution of differential equations. The encourage students to consider not just the ‘correct’ answer, but to define and justify a solution which fulfils all problem requirements.AssesementIndividual coursework | 4.2.2 Defining problems, managing design process and evaluating outcomes ⓘ View All Criteria | |||||||||||||
4.2.3 Principles of appropriate supporting engineering and scientific disciplines ⓘ View All Criteria | ResponseDraws on prior course units that cover the basic engineering of computer hardware and architecture.AssesementExamination | ResponseIn every part the course applies the principles of appropriate supporting engineering and scientific disciplines: machine learning and statistics, mathematics and theoretical computer science, and control theory, applied mathematics.AssesementExamination, Individual coursework | 4.2.3 Principles of appropriate supporting engineering and scientific disciplines ⓘ View All Criteria | |||||||||||||||
5.1 Additional criteria for integrated Masters ⓘ View All Criteria | 5.1 Additional criteria for integrated Masters ⓘ View All Criteria |