72 research outputs found

    On the selection of connectivity-based metrics for WSNs using a classification of application behaviour

    Get PDF
    This paper addresses a subset of Wireless Sensor Network (WSN) applications in which data is produced by a set of resource-constrained source nodes and forwarded to one or more sink nodes. The performance of such applications is affected by the connectivity of the WSN, since nodes must remain connected in order to transfer data from sources to sinks. Designers use metrics to measure and improve the efficacy of WSN applications. We aim to facilitate the choice of connectivity-based metrics by introducing a classification of WSN applications based on their data collection behaviour and indicating the metrics best suited to the evaluation of particular application classes. We argue that no suitable metric currently exists for a significant class of applications with the following characteristics: 1) application data is periodically routed or disseminated from source nodes to one or more sink nodes, and 2) the application can continue to function with the loss of source nodes although its useful network lifetime diminishes as a result. We present a new metric, known as Connectivity Weighted Transfer, which may be used to evaluate WSN applications with these characteristics.Preprin

    A framework for considering uncertainty in software systems

    Get PDF
    Funding: This work is partly funded through a PhD studentship to the first author by the School of Computer Science, University of St Andrews.There are many aspects involved in the development and operation of a software system, including system artefacts, activities, and infrastructure. Most of these aspects are vulnerable to uncertainty, which can result in risks to system quality and performance. Thus it is important to identify, represent and manage uncertainty in software systems. We hypothesise that using an underlying conceptual framework for characterising uncertainty can facilitate these activities. This paper demonstrates the use of an extensible framework, which defines a foundation for the systematic and explicit consideration of uncertainty in software systems. A software architecture case study is used to illustrate and evaluate the framework. A discussion of potential uses for the framework and future research is also provided.Postprin

    Extension polymorphism

    Get PDF
    Any system that models a real world application has to evolve to be consistent with its changing domain. Dealing with evolution in an effective manner is particularly important for those systems that may store large amounts of data such as databases and persistent languages. In persistent programming systems, one of the important issues in dealing with evolution is the specification of code that will continue to work in a type safe way despite changes to type definitions. Polymorphism is one mechanism which allows code to work over many types. Inclusion polymorphism is often said to be a model of type evolution. However, observing type changes in persistent systems has shown that types most commonly exhibit additive evolution. Even though inclusion captures this pattern in the case of record types, it does not always do so for other type constructors. The confusion of subtyping, inheritance and evolution often leads to unsound or at best, dynamically typed systems. Existing solutions to this problem do not completely address the requirements of type evolution in persistent systems. The aim of this thesis is to develop a form of polymorphism that is suitable for modelling additive evolution in persistent systems. The proposed strategy is to study patterns of evolution for the most generally used type constructors in persistent languages and to define a new relation, called extension, which models these patterns. This relation is defined independent of any existing relations used for dealing with evolution. A programming language mechanism is then devised to provide polymorphism over this relation. The polymorphism thus defined is called extension polymorphism. This thesis presents work involving the design and definition of extension polymorphism and an implementation of a type checker for this polymorphism. A proof of soundness for a type system which supports extension polymorphism is also presented

    A component-based model and language for wireless sensor network applications

    Get PDF
    Wireless sensor networks are often used by experts in many different fields to gather data pertinent to their work. Although their expertise may not include software engineering, these users are expected to produce low-level software for a concurrent, real-time and resource-constrained computing environment. In this paper, we introduce a component-based model for wireless sensor network applications and a language, Insense, for supporting the model. An application is modelled as a composition of interacting components and the application model is preserved in the Insense implementation where active components communicate via typed channels. The primary design criteria for Insense include: to abstract over low-level concerns for ease of programming; to permit worst-case space and time usage of programs to be determinable; to support the fractal composition of components whilst eliminating implicit dependencies between them; and, to facilitate the construction of low footprint programs suitable for resource-constrained devices. This paper presents an overview of the component model and Insense, and demonstrates how they meet the above criteria.Preprin

    Incorporating ethics in software engineering : challenges and opportunities

    Get PDF
    Ethics is recognised as an important concern in the development and operation of software systems. While there are codes of ethics and sets of ethical principles available to software professionals, there is a lack of tool and process support for systematic ethical deliberation at most stages of the software lifecycle. To create and deploy ethical software, it is vital that ethical concerns of software systems are reflected in their artefacts, such as requirements, software architecture, code and test suites, and that software professionals are supported in considering the ethical as well as technical consequences of their decisions. This paper reports on some early work in identifying the challenges of ethical decision making and opportunities for addressing these challenges in the context of software engineering.Postprin

    ViLO: A Visual Interactive Resource for Supporting Self-Guided Learning

    Get PDF
    Traditional module delivery in higher education often follows a linear structure, which is not always conducive to understanding concepts and the many possible relationships between them. In this paper we introduce an online visual interactive learning resource called ViLO designed to address this problem. We describe the principles guiding the development of ViLO, early evaluation results and our plans for future work

    Improving the digital literacy and social participation of older adults : an inclusive platform that fosters intergenerational learning

    Get PDF
    In an increasingly digitalised world, many older adults face the choice of improving their digital skills or risking social isolation and exclusion from essential services. With older adults expected to represent 16% of the global population by 2050, there is a renewed urgency to improve their digital literacy. Although many in-person and online technology training initiatives exist, they are often not accessible or poorly optimised for older adults. Younger adults, who typically form older adults’ support network, may be key to any solution. However, their help typically serves as a temporary fix until a new issue arises, leading to a cycle of dependency. This pilot study offers insights into the technology experiences of older adults, the ways in which younger individuals assist them, and how both groups stay connected. We conducted small-scale but in-depth user studies with older adults, and an online survey of younger adults, to understand how the technology support process could be improved to promote older adult autonomy and active ageing. Based on our findings, we propose an age-friendly platform that leverages intergenerational exchanges for a personalised learning experience that brings together younger and older adults. The final prototype was well received by participants in the user study. However, further exploration of other aspects of their lives and cultural differences in intergenerational learning, and larger studies of younger and older individuals are needed to co-create a solution that helps bridge the global digital divide while enabling older adults to have more fulfilling lives

    System Evolution, Feedback and Compliant Architectures

    Get PDF
    Proceedings, International Workshop on Feedback and Evolution in Software and Business Processes (FEAST 2000), Imperial College, London. Supported by EPSRCPostprintNon peer reviewe

    Towards verifying correctness of wireless sensor network applications using Insense and Spin

    Get PDF
    The design and implementation of wireless sensor network applications often require domain experts, who may lack expertise in software engineering, to produce resource-constrained, concurrent, real-time software without the support of high-level software engineering facilities. The Insense language aims to address this mismatch by allowing the complexities of synchronisation, memory management and event-driven programming to be borne by the language implementation rather than by the programmer. The main contribution of this paper is all initial step towards verifying the correctness of WSN applications with a focus on concurrency. We model part of the synchronisation mechanism of the Insense language implementation using Promela constructs and verify its correctness using SPIN. We demonstrate how a previously published version of the mechanism is shown to be incorrect by SPIN, and give complete verification results for the revised mechanism.Preprin

    Instances and connectors : issues for a second generation process language

    Get PDF
    This work is supported by UK EPSRC grants GR/L34433 and GR/L32699Over the past decade a variety of process languages have been defined, used and evaluated. It is now possible to consider second generation languages based on this experience. Rather than develop a second generation wish list this position paper explores two issues: instances and connectors. Instances relate to the relationship between a process model as a description and the, possibly multiple, enacting instances which are created from it. Connectors refers to the issue of concurrency control and achieving a higher level of abstraction in how parts of a model interact. We believe that these issues are key to developing systems which can effectively support business processes, and that they have not received sufficient attention within the process modelling community. Through exploring these issues we also illustrate our approach to designing a second generation process language.Postprin
    corecore