65 research outputs found

    SenNet : a programming toolkit to develop wireless sensor network applications

    Get PDF
    One of the reasons that Wireless Sensor Network(WSN) applications are not widely available is the complexity in their development. This is a consequence of the complex nature in low-level details, which a developer must manage. The vast majority of the present application developments are done using node-centric low-level languages, for example, C. In order to make the WSN technology more universal; application development complexity nature should be reduced, and development efficiency increased. This paper describes SenNet language, which is a new approach to WSN application development using a Domain-Specific Language (DSL). SenNet empowers application developers to focus on modelling the application logic using domain specific terms. The new approach gives the ability to write applications using multi-levels of abstraction (i.e. network, group, and node-level). Evaluation results show that SenNet decreases the cognitive effort required for learning WSN application development in addition to the time required to write the application by using automated code generation from abstracted language commands

    Enabling High-Level Application Development for the Internet of Things

    Get PDF
    Application development in the Internet of Things (IoT) is challenging because it involves dealing with a wide range of related issues such as lack of separation of concerns, and lack of high-level of abstractions to address both the large scale and heterogeneity. Moreover, stakeholders involved in the application development have to address issues that can be attributed to different life-cycles phases. when developing applications. First, the application logic has to be analyzed and then separated into a set of distributed tasks for an underlying network. Then, the tasks have to be implemented for the specific hardware. Apart from handling these issues, they have to deal with other aspects of life-cycle such as changes in application requirements and deployed devices. Several approaches have been proposed in the closely related fields of wireless sensor network, ubiquitous and pervasive computing, and software engineering in general to address the above challenges. However, existing approaches only cover limited subsets of the above mentioned challenges when applied to the IoT. This paper proposes an integrated approach for addressing the above mentioned challenges. The main contributions of this paper are: (1) a development methodology that separates IoT application development into different concerns and provides a conceptual framework to develop an application, (2) a development framework that implements the development methodology to support actions of stakeholders. The development framework provides a set of modeling languages to specify each development concern and abstracts the scale and heterogeneity related complexity. It integrates code generation, task-mapping, and linking techniques to provide automation. Code generation supports the application development phase by producing a programming framework that allows stakeholders to focus on the application logic, while our mapping and linking techniques together support the deployment phase by producing device-specific code to result in a distributed system collaboratively hosted by individual devices. Our evaluation based on two realistic scenarios shows that the use of our approach improves the productivity of stakeholders involved in the application development

    Reducing complexity in developing wireless sensor network systems using model-driven development

    Get PDF
    Wireless Sensor Network (WSN) is a collection of small and low-powered gadgets called sensor nodes (motes), which are capable of sensing the environment, collecting and processing the sensed data, and communicating with each other to accomplish a specific task. Moreover, all sensed and processed data are finally handed over to a central gathering point called a base station (sink), where all collected data are stored and can be reviewed by the user. Most of the current methods concerning WSN development are application or platform-dependent; hence it is not a trivial task to reuse developed applications in another environment. Therefore, WSN application development is a challenging and complex task because of the low-level technical details and programming complexity. Furthermore, most WSN development projects are managed by software engineers, not application field experts or WSN end users. Consequently, WSN solutions are considered expensive, due to the amount of effort that has to be put into these projects. This research project aims to reduce the complexity in developing WSN applications, by abstracting the low-level technical and programming details for average developers and domain experts. In this research, we argue that reducing complexity can be achieved by defining a new Domain-Specific Language (DSL) as a new application development and programming abstraction, which supports multi-levels modelling (i.e. network, group, and node-level). The outcome of this work is the definition of a new language called SenNet, which is an open source DSL programming abstraction that enables application developers to concentrate on the high-level application logic rather than the low-level complex details. SenNet was developed using the principles of Model-Driven Development (MDD) and macro-programming. Developers can use SenNet as a high-level programming abstraction to auto-generate a ready-to-deploy single node nesC code for all sensor nodes that comprise the SenNet application. SenNet gives developers the flexibility they need by offering them a broad range of predefined monitoring tasks and activities, enabling developers to develop different application types such as Sense-Forward (SF), and Event-Triggered (ET); besides providing a set of node-level and in-network data processing tasks. The current SenNet version is configured to generate nesC code, yet SenNet can be set up to produce and generate any programming language such as Java, or C++, by reconfiguring the code generator to produce the new language format, without changing the language design and produced semantics. Various tests and user study have been used to evaluate SenNet’s usability and functional suitability. Evaluation results found that SenNet could save 88.45% of the LOC required to be programmed by a developer, and 87.14% of the required vocabularies. Furthermore, results showed that SenNet could save 92.86% and 96.47% of the program length and volume respectively. Most of the user study participants (96%) found SenNet to be usable and helps to achieve the required WSN application with reduced development effort. Moreover, 82% of the participants believe that SenNet is functionally suitable for WSN application development. Two real-world business case studies developed were used to assess SenNet’s appropriateness to develop WSN real applications, and how it can be used to develop applications related to data processing tasks. Based on the final evaluation results, it can be concluded that our research has been successful in introducing SenNet as a new abstraction to reduce complexity in the WSN application development process

    Model-based development for MAC protocols in industrial wireless sensor networks

    Get PDF
    Model-Driven Software Engineering (MDSE) is an approach for design and implementation of software applications, that can be applied across multiple domains. The advantages include rapid prototyping and implementation, along with reduction in errors induced by humans in the process, via automation. Wireless Sensor Actuator Networks (WSANs) rely on resource-constrained hardware and have platform-specific implementations. Medium Access Control (MAC) protocols in particular are mainly responsible for radio communication, the biggest consumer of energy, and are also responsible for Quality of Service (QoS). The design and development of protocols for WSAN could benefit from the use of MDSE. In this article, we use Coloured Petri Nets (CPN) for platform independent modeling of protocols, initial verification, and simulation. The PetriCode tool is used to generate platform-specific implementations for multiple platforms, including MiXiM for simulation and TinyOS for deployment. Further the generated code is analyzed via network simulations and real-world deployment test. Through the process of MDSE-based code generation and analysis, the protocol design is validated, verified and analyzed. We use the GinMAC protocol as a running example to illustrate the design and development life cycle.publishedVersionnivå

    Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching Efforts

    Full text link
    This Innovative Practice Full Paper presents an approach of using software development artifacts to gauge student behavior and the effectiveness of changes to curriculum design. There is an ongoing need to adapt university courses to changing requirements and shifts in industry. As an educator it is therefore vital to have access to methods, with which to ascertain the effects of curriculum design changes. In this paper, we present our approach of analyzing software repositories in order to gauge student behavior during project work. We evaluate this approach in a case study of a university undergraduate software development course teaching agile development methodologies. Surveys revealed positive attitudes towards the course and the change of employed development methodology from Scrum to Kanban. However, surveys were not usable to ascertain the degree to which students had adapted their workflows and whether they had done so in accordance with course goals. Therefore, we analyzed students' software repository data, which represents information that can be collected by educators to reveal insights into learning successes and detailed student behavior. We analyze the software repositories created during the last five courses, and evaluate differences in workflows between Kanban and Scrum usage

    Sensor grid middleware metamodeling and analysis

    Full text link
    Sensor grid is a platform that combines wireless sensor networks and grid computing with the aim of exploiting the complementary advantages of the two systems. Proper integration of these distinct systems into effective, logically single platform is challenging. This paper presents an approach for practical sensor grid implementation and management. The proposed approach uses a metamodeling technique and performance analysis and tuning as well as a middleware infrastructure that enable practical sensor grid implementation and management. The paper presents our implementation and analysis of the sensor grid. © 2014 Srimathi Chandrasekaran et al

    A Dual-Mode Adaptive MAC Protocol for Process Control in Industrial Wireless Sensor Networks

    Get PDF
    Doktorgradsavhandling ved Fakultet for teknologi og realfag, Universitetet i Agder, 2017Wireless Sensor Networks (WSNs) consist of sensors and actuators operating together to provide monitoring and control services. These services are used in versatile applications ranging from environmental monitoring t oindustrial automation applications. Industrial Wireless Sensor Network (IWSN) is a sub domain of the WSN domain, focussing the industrial monitoring and automation applications. The IWSN domain differs from the generic WSN domains in terms of its requirements. General IWSN requirements include: energy efficiency and quality of service, and strict requirements are imposed on the quality of service expected by IWSN applications. Quality of service in particular relates to reliability, robustness, and predictability. Medium Access Control (MAC) protocols in an IWSN solution are responsible for managing radio communications, the main consumer of power in every IWSN element. With proper measures, MAC protocols can provide energy efficient solutions along with required quality of service for process control applications. The first goal of the thesis was to assess the possibility of creating a MAC protocol exploiting properties of the application domain, the process control domain. This resulted in the creation of the Dual-Mode Adaptive Medium Access Control Protocol (DMAMAC) which constitutes the main contribution of this thesis. The DMAMAC protocol is energy efficient,while preserving real-time requirements, and is robust to packet failure. This has been guaranteed by the thorough evaluation of the protocol via simulation, verification, and implementation with deployment testing. In parallel, we also investigated the possibility of using an alternative development approach for MAC protocols. Specifically, we have proposed a development approach based on MAC protocol model in CPN tools. The development approach consists of automatic code generation for the MiXiM simulation tool and the TinyOS platform. We used the related GinMAC protocol as a running example for the development approach. The generated code for MiXiM simulation platform and the TinyOS implementation platform are evaluated via simulation and deployment respectively. This results in a faster design to implementation time, and closely related protocol artifacts, improving on the traditional approach

    On demand multicast routing in wireless sensor networks

    Get PDF
    The wireless networking environment presents imposing challenges to the study of broadcasting and multicasting problems. Developing an algorithm to optimize communication amongst a group of spatially distributed sensor nodes in a WSN (Wireless Sensor Network) has been met with a number challenges due to the characterization of the sensor node device. These challenges include, but are not limited to: energy, memory, and throughput constraints. The traditional approach to overcome these challenges have emphasised the development of low power electronics, efficient modulation, coding, antenna design etc., it has been recognised that networking techniques can also have a strong impact on the energy efficiency of such systems. A variety of networking based approaches to energy efficiency are possible. One of the well-known approaches is to apply clustering techniques to effectively establish an ordered connection of sensor nodes whilst improving the overall network lifetime. This paper proposes an improved clustering based multicast approach that allows any cluster head to be a multicast source with an unlimited number of subscribers, to optimize group communication in WSNs whilst ensuring sensor nodes do not deprecate rapidly in energy levels. We review several clustering approaches and examine multicast versus broadcast communication in WSNs
    corecore