1 Introduction, Methodology and Related Work  
1.1 Methodology  
1.2 Related Work  
2 General Software Engineering Techniques for Robotic Systems  
3 External Challenges of Autonomous Robotic Systems  
3.1 Modelling the Physical Environment  
3.2 Evidence for Certification and Trust  
3.3 Summary of External Challenges  
4 Internal Challenges of Autonomous Robotic Systems  
4.1 Agent-Based Systems  
4.2 Multi-Robot Systems  
4.3 Self-Adaptive and Reconfigurable Systems  
4.4 Summary of Internal Challenges  
5 Formalisms for Robotic Systems  
5.1 Set-Based Formalisms  
5.2 State-Transition Formalisms  
5.3 Logics  
5.4 Process Algebras  
5.5 Ontologies  
5.6 Other Formalisms  
5.7 Summary of Formalisms for Robotic Systems  
6 Formal Verification Approaches for Robotics  
6.1 Model-Checking  
6.2 Theorem Proving  
6.3 Runtime Monitoring  
6.4 Integrated Formal Methods  
6.5 Frameworks for Verifiable Robotic Software  
6.6 Summary of Approaches  
7 Conclusion