Reducing Complexity in Developing Wireless Sensor Network Systems Using Model-Driven Development
Total Page:16
File Type:pdf, Size:1020Kb
REDUCING COMPLEXITY IN DEVELOPING WIRELESS SENSOR NETWORK SYSTEMS USING MODEL-DRIVEN DEVELOPMENT Aymen J. Salman School of Computing, Science and Engineering College of Science and Technology University of Salford, Salford, UK Submitted in Partial Fulfilment of the Requirements of the Degree of Doctor of Philosophy Augest, 2017 Table of Contents TABLE OF CONTENTS .................................................................................................................................... II LIST OF FIGURES ............................................................................................................................................ VI LIST OF TABLES ...........................................................................................................................................VIII LIST OF CODE SNIPPETS ............................................................................................................................... X LIST OF EQUATIONS ...................................................................................................................................... XI LIST OF ABBREVIATION ............................................................................................................................ XII ACKNOWLEDGMENTS ............................................................................................................................... XIV DECLARATION .............................................................................................................................................. XV ABSTRACT ..................................................................................................................................................... XVI KEYWORDS ................................................................................................................................................ XVIII CHAPTER 1: THESIS INTRODUCTION AND RESEARCH METHODOLOGY .................................. 1 1.1 INTRODUCTION ......................................................................................................................................... 1 1.2 MOTIVATION ............................................................................................................................................. 1 1.2.1 Research Motivation ....................................................................................................................... 1 1.2.2 Motivations for a Proposed Solution .............................................................................................. 2 1.3 ANALYSIS OF CHALLENGES IN WSN DEVELOPMENT ................................................................................ 3 1.3.1 Challenging Dimensions of WSN Application Development ......................................................... 4 1.3.2 Potential Developers of WSN Application ..................................................................................... 6 1.3.3 Demonstration Case Study (Scenario) ............................................................................................ 8 1.4 RESEARCH PROBLEM ................................................................................................................................ 9 1.5 RESEARCH AIM AND OBJECTIVES ............................................................................................................. 9 1.6 RESEARCH SCOPE ................................................................................................................................... 10 1.7 CONTRIBUTIONS TO KNOWLEDGE ........................................................................................................... 10 1.8 RESEARCH METHODOLOGY .................................................................................................................... 12 1.9 PUBLICATIONS ........................................................................................................................................ 15 1.10 THESIS OUTLINE................................................................................................................................. 15 CHAPTER 2: BACKGROUND AND OVERVIEW ................................................................................... 17 2.1 INTRODUCTION ....................................................................................................................................... 17 2.2 WIRELESS SENSOR NETWORK ................................................................................................................. 17 2.2.1 Most Popular WSN Hardware ...................................................................................................... 18 2.2.2 TinyOS .......................................................................................................................................... 19 2.3 HOW CAN COMPLEXITY BE SOLVED? ..................................................................................................... 20 2.3.1 Model-Driven Development (MDD) ............................................................................................ 21 II 2.3.2 Domain-Specific Language (DSL) ............................................................................................... 22 2.4 APPROACHES TO DEFINING WSN DEVELOPMENT ABSTRACTION - RELATED WORK .............................. 23 2.4.1 Embedded Operating Systems ...................................................................................................... 23 2.4.2 Customised Platform..................................................................................................................... 24 2.4.3 Model-Driven Development ......................................................................................................... 27 2.4.4 Principal Findings ......................................................................................................................... 32 2.5 FORMULATED DESIGN REQUIREMENTS ................................................................................................... 37 2.6 CHAPTER SUMMARY ............................................................................................................................... 38 CHAPTER 3: SENNET META-MODEL .................................................................................................... 39 3.1 INTRODUCTION ....................................................................................................................................... 39 3.2 MODELLING AND META-MODELLING ..................................................................................................... 39 3.3 SENNET META-MODEL ........................................................................................................................... 41 3.3.1 Application Configuration in SenNet Mata-Model ....................................................................... 43 3.3.2 Network Configuration in SenNet Mata-Model ........................................................................... 45 3.4 ISO/IEC 29182 – SENSOR NETWORK REFERENCE ARCHITECTURE ......................................................... 45 3.5 APPLICATION TYPES SUPPORTED BY THE SENNET META-MODEL .......................................................... 47 3.6 CHAPTER SUMMARY ............................................................................................................................... 49 CHAPTER 4: SENNET LANGUAGE - INTERNAL VIEW ..................................................................... 50 4.1 INTRODUCTION ....................................................................................................................................... 50 4.2 SENNET INTERNAL VIEW ........................................................................................................................ 50 4.3 CODE PARSING COMPONENT (CPC) ........................................................................................................ 52 4.3.1 Lexical and Syntactical Analysis Stage ........................................................................................ 53 4.3.2 Semantic Analysis Stage ............................................................................................................... 55 4.4 CODE GENERATION COMPONENT (CGC) ................................................................................................ 55 4.4.1 Why Use TinyOS as a Foundation for SenNet?............................................................................ 56 4.4.2 Code Generation Process .............................................................................................................. 59 4.5 SENNET EXTENSIBILITY AND UPDATE PROCESS ..................................................................................... 65 4.6 CHAPTER SUMMARY ............................................................................................................................... 66 CHAPTER 5: SENNET LANGUAGE - PROGRAMMING VIEW .......................................................... 67 5.1 INTRODUCTION ....................................................................................................................................... 67 5.2 SENNET LANGUAGE ................................................................................................................................ 67 5.3 SENNET COMPONENTS ............................................................................................................................ 69 5.3.1 Code Parsing