KF6010 - Distributed Real-Time Systems

APPLY NOW BOOK AN OPEN DAY Add to My Courses Register your interest / Course PDF

What will I learn on this module?

This module is designed to provide you with an in-depth understanding of the critical issues in the engineering of distributed real-time systems. It treats the theory and practical techniques required to implement such systems on both uni-processor and distributed systems. You will cover aspects of concurrent programming, the embedded programming design pattern, safe programming language subsets, reliability, fault tolerance, scheduling and resource management, distributed real-time design and implementation concepts, and the testing of distributed real-time systems.

The syllabus of the module will cover topics such as:
• Advanced Implementation Techniques: review of concurrent programming concepts; embedded programming design patterns; safe programming language subsets; design and implementation issues relating to performance analysis
• Distributed real-time systems: definition, overview of issues; predictable communications architectures, e.g. CAN, TTP; design and implementation concepts, system decomposition, partitioning and configuration; use of appropriate development tools
• Performance Analysis: predictable hardware and software; WCET analysis; real-time scheduling requirements; real-time scheduling algorithms; response time analysis for both uni-processor and distributed systems
• Reliability: issues relating to good engineering practice; notions of reliability, failure and faults; fault confinement; fault tolerance; N-version programming; recovery block approach; backward error recovery, forward error recovery; exception handling; testing, test case design, use of support tools

How will I learn on this module?

The module will include lectures that will introduce you to theory and concepts and laboratory sessions where you will further explore the material from the lectures and its application via exercises, problems and experiments. You will be provided with guided reading tasks, including from books and research papers that you are expected to do as independent learning to help further your knowledge and skills.

How will I be supported academically on this module?

In the laboratory sessions these you will be provided with guidance on your study of the subject, including on the practical exercises, and an opportunity to ask questions arising from your studies. You will get feedback on your work and on your progress in the module in the laboratory sessions.

What will I be expected to read on this module?

All modules at Northumbria include a range of reading materials that students are expected to engage with. The reading list for this module can be found at: http://readinglists.northumbria.ac.uk
(Reading List service online guide for academic staff this containing contact details for the Reading List team – http://library.northumbria.ac.uk/readinglists)

What will I be expected to achieve?

Knowledge & Understanding:
1. Evaluate the scheduling and resource management requirements of real-time systems and how to make effective use of the associated algorithms
2. Assess the problems involved in developing distributed real-time systems and their solutions

Intellectual / Professional skills & abilities:
3. Assess the issues relating to software engineering development of real-time distributed systems and apply your knowledge in the creation of such systems.
4. Appraise and produce reliable, fault tolerant real-time software.

Personal Values Attributes (Global / Cultural awareness, Ethics, Curiosity) (PVA):
5. Research a distributed systems problem and reflect upon the technical solution, considering security issues and professional standards

How will I be assessed?

For the summative assessment you will be given a portfolio of tasks, designed to allow you to demonstrate your achievement of the module learning outcomes. The portfolio will include 3 tasks:
• research into a distributed systems problem
• building a distributed system solution for the problem
• writing a report reflecting upon the solution, considering security issues and professional standards

You will be provided with written feedback on the tasks.

Formative assessment will take the form of laboratory activities designed to help you and your tutors assess your understanding and progress. You will be provided with verbal feedback on your work.

Pre-requisite(s)

None

Co-requisite(s)

None

Module abstract

This module is designed to provide you with an in-depth understanding of the critical issues in the engineering of distributed real-time systems. It treats the theory and practical techniques required to implement such systems on both uni-processor and distributed systems. You will cover aspects of concurrent programming, the embedded programming design pattern, safe programming language subsets, reliability, fault tolerance, scheduling and resource management, distributed real-time design and implementation concepts, and the testing of distributed real-time systems.

Course info

UCAS Code G404

Credits 20

Level of Study Undergraduate

Mode of Study 3 years full-time or 4 years with a placement (sandwich)/study abroad

Department Computer and Information Sciences

Location City Campus, Northumbria University

City Newcastle

Start September 2019 or September 2020

Fee Information

Module Information

Current, Relevant and Inspiring

We continuously review and improve course content in consultation with our students and employers. To make sure we can inform you of any changes to your course register for updates on the course page.

Your Learning Experience find out about our distinctive approach at 
www.northumbria.ac.uk/exp

Admissions Terms and Conditions - northumbria.ac.uk/terms
Fees and Funding - northumbria.ac.uk/fees
Admissions Policy - northumbria.ac.uk/adpolicy
Admissions Complaints Policy - northumbria.ac.uk/complaints