Table of Contents
INTRODUCTION ix
CHAPTER 1. DEVELOPING MODEL-BASED DESIGN METHODS IN SOFTWARE ENGINEERING 1
1.1. The history of model-based design 1
1.2. The Unified Modeling Language, a support for model-based methods 3
1.2.1. The philosophy and history of the Unified Modeling Language 3
1.2.2. The Unified Modeling Language normalized diagrams 5
1.2.3. The advantages of model-based design 12
1.3. Formal model-based validation techniques 13
1.3.1. Model Checking 14
1.3.2. Formal theorem proving 18
1.3.3. Code assertion 19
1.3.4. Applying for certification for complex systems 20
CHAPTER 2. METHODOLOGY FOR RAPID PROTOTYPING AVIONIC SOFTWARE 23
2.1. The specificities of the avionic domain 23
2.1.1. System virtualization: integrated modular avionics 24
2.1.2. MILS: divide and conquer, to rule over a secure world 27
2.1.3. Processing security and safety aspects simultaneously 30
2.2. The certification of an avionic system 32
2.2.1. The qualification of tools for certification 32
2.2.2. Model-based development approaches in aeronautics 33
2.2.3. A sophisticated methodology for the development of complex onboard systems 36
2.3. Methodology of rapid development in seven stages 36
2.3.1. Presentation of the different stages 36
2.3.2. Advantages of the methodology 39
2.3.3. Example of the benefits of using our model-based methodology 45
2.3.4. Instantiation of the methodology with different tools 46
2.4. Chapter summary 59
CHAPTER 3. IMPLEMENTING THE PROTOTYPING METHODOLOGY TO DEVELOP A NEXT GENERATION AVIONIC ROUTER 61
3.1. Introduction to next generation aeronautical communication domains 61
3.1.1. Avionic and aeronautical network domains 61
3.1.2. Communication standards and protocols for next generation aeronautics 65
3.1.3. The benefits of a next generation avionic router: secure next generation router 67
3.2. Implementing the SNG router 71
3.2.1. Architecture of the SNG router software 71
3.2.2. Routing functionalities (IPv4) 74
3.2.3. Filtering functionalities (IPv4) 79
3.3. Evaluating the performance of the SNG router 85
3.3.1. Experimental framework 85
3.3.2. Metrics and tools for evaluating performance 88
3.3.3. Results of the performance measurements 96
3.4. Chapter summary 106
CONCLUSION 109
BIBLIOGRAPHY 117
INDEX 131