This is an old revision of the document!
| Study level | Bachelor | |
| ECTS credits | 1 ECTS | |
| Study forms | Hybrid or fully online | |
| Module aims | Equip students with a comprehensive understanding of autonomy software stacks, middleware, and lifecycle management in cyber-physical and autonomous systems. The module covers multi-layered software architectures—from hardware abstraction and middleware to AI-driven autonomy layers—highlighting real-time performance, determinism, interoperability, safety, and maintenance challenges. Students will learn how these architectures enable reliable sensing, perception, planning, and control across distributed and safety-critical systems. | |
| Pre-requirements | Basic programming knowledge in C/C++ or Python; understanding of operating systems, networks, and data structures; familiarity with embedded or control systems concepts; and basic linear algebra and probability. Prior exposure to Linux-based development, Git, or simulation environments (e.g., Gazebo, MATLAB/Simulink) is beneficial. | |
| Learning outcomes | Knowledge: • Explain the architecture and purpose of multi-layered autonomy software stacks (HAL, OS, Middleware, Control, AI). • Describe middleware technologies such as DDS, ROS 2, and AUTOSAR Adaptive, and their role in deterministic data exchange. • Identify lifecycle models (Waterfall, V-Model, Agile, DevOps) and configuration management practices for autonomous software. Skills: • Design modular autonomy software architectures integrating perception, localisation, planning, and control modules. • Configure and deploy middleware frameworks to support real-time, distributed communication. • Apply CI/CD and configuration management principles using Git, Docker, and orchestration tools. Understanding/Attitudes: • Evaluate safety, verification, and cybersecurity aspects of autonomy software systems. • Recognize challenges in maintainability, scalability, and interoperability across heterogeneous systems. • Appreciate ethical, reliable, and transparent AI integration in autonomous decision-making. |
|
| Topics | 1. Introduction to Autonomy Software Stacks: – Functional layers: perception, localisation, planning, control, middleware, cloud. – Characteristics: real-time behaviour, determinism, scalability, resilience, interoperability. 2. Middleware and Communication Frameworks: – DDS, ROS 2, MQTT, AUTOSAR Adaptive, CAN, Ethernet. – Quality of Service (QoS), message scheduling, fault tolerance. 3. Software Lifecycle and Configuration Management: – Lifecycle models (Waterfall, V-Model, Agile, DevOps, Spiral). – Configuration management, version control, CI/CD pipelines, baselines. 4. Development and Maintenance Challenges: – Real-time performance, safety, AI integration, cybersecurity, and continuous updates. 5. Simulation and Testing: – SIL/HIL methods, virtual environments (CARLA, Gazebo, AirSim), digital twins. 6. Ethics and Human–Machine Collaboration: – Transparency, accountability, and explainability in autonomy. |
|
| Type of assessment | The prerequisite of a positive grade is a positive evaluation of module topics and presentation of practical work results with required documentation. | |
| Learning methods | Lectures: Cover theoretical and architectural foundations of autonomy software stacks and middleware frameworks. Lab works: Practical exercises in ROS 2, DDS, and containerised deployments; simulation of autonomy software using Gazebo or CARLA. Individual assignments: System design and configuration management case studies applying CI/CD and risk analysis. Self-learning: Reading standards (AUTOSAR, ISO 26262), research papers, and exploring MOOC content on middleware and DevOps. |
|
| AI involvement | Yes — used for assisting code documentation, simulation setup, performance analysis, and literature review. Students must verify generated outputs, cite AI tool usage transparently, and ensure compliance with academic integrity policies. | |
| References to literature | 1. Lee, E. A., & Seshia, S. A. (2020). Introduction to Embedded Systems: A Cyber-Physical Systems Approach (3rd ed.). MIT Press. 2. Raj, A., & Saxena, P. (2022). Software architectures for autonomous vehicle development: Trends and challenges. IEEE Access, 10. 3. AUTOSAR Consortium. (2023). AUTOSAR Adaptive Platform Specification. 4. LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. 5. Fowler, M. (2021). Patterns of Enterprise Software Architecture. Addison-Wesley. 6. Boyens, J., et al. (2020). NIST SP 800-161: Supply Chain Risk Management Practices for Federal Information Systems and Organizations. 7. Russell, S. J., & Norvig, P. (2021). Artificial Intelligence: A Modern Approach (4th ed.). Pearson. |
|
| Lab equipment | Yes | |
| Virtual lab | Yes | |
| MOOC course | Suggested MOOC: 'ROS2 and Robotics Middleware Foundations' (Coursera) or 'Software Engineering for Autonomous Systems' (edX). | |