6,147 research outputs found
A reference architecture for software protection
This paper describes the ASPIRE reference architecture designed to tackle one major problem in this domain: the lack of a clear process and an open software architecture for the composition and deployment of multiple software protections on software application
Middleware for Wireless Sensor Networks: An Outlook
In modern distributed computing, applications are rarely built directly atop operating system facilities, e.g., sockets. Higher-level middleware abstractions and systems are often employed to simplify the programmer’s chore or to achieve interoperability. In contrast, real-world wireless sensor network (WSN) applications are almost always developed by relying directly on the operating system.
Why is this the case? Does it make sense to include a middleware layer in the design of WSNs? And, if so, is it the same kind of software system as in traditional distributed computing? What are the fundamental concepts, reasonable assumptions, and key criteria guiding its design? What are the main open research challenges, and the potential pitfalls? Most importantly, is it worth pursuing research in this field?
This paper provides a (biased) answer to these and other research questions, preceded by a brief account on the state of the art in the field
Putting the Semantics into Semantic Versioning
The long-standing aspiration for software reuse has made astonishing strides
in the past few years. Many modern software development ecosystems now come
with rich sets of publicly-available components contributed by the community.
Downstream developers can leverage these upstream components, boosting their
productivity.
However, components evolve at their own pace. This imposes obligations on and
yields benefits for downstream developers, especially since changes can be
breaking, requiring additional downstream work to adapt to. Upgrading too late
leaves downstream vulnerable to security issues and missing out on useful
improvements; upgrading too early results in excess work. Semantic versioning
has been proposed as an elegant mechanism to communicate levels of
compatibility, enabling downstream developers to automate dependency upgrades.
While it is questionable whether a version number can adequately characterize
version compatibility in general, we argue that developers would greatly
benefit from tools such as semantic version calculators to help them upgrade
safely. The time is now for the research community to develop such tools: large
component ecosystems exist and are accessible, component interactions have
become observable through automated builds, and recent advances in program
analysis make the development of relevant tools feasible. In particular,
contracts (both traditional and lightweight) are a promising input to semantic
versioning calculators, which can suggest whether an upgrade is likely to be
safe.Comment: to be published as Onward! Essays 202
A Survey of the Security Challenges and Requirements for IoT Operating Systems
The Internet of Things (IoT) is becoming an integral part of our modern lives
as we converge towards a world surrounded by ubiquitous connectivity. The
inherent complexity presented by the vast IoT ecosystem ends up in an
insufficient understanding of individual system components and their
interactions, leading to numerous security challenges. In order to create a
secure IoT platform from the ground up, there is a need for a unifying
operating system (OS) that can act as a cornerstone regulating the development
of stable and secure solutions. In this paper, we present a classification of
the security challenges stemming from the manifold aspects of IoT development.
We also specify security requirements to direct the secure development of an
unifying IoT OS to resolve many of those ensuing challenges. Survey of several
modern IoT OSs confirm that while the developers of the OSs have taken many
alternative approaches to implement security, we are far from engineering an
adequately secure and unified architecture. More broadly, the study presented
in this paper can help address the growing need for a secure and unified
platform to base IoT development on and assure the safe, secure, and reliable
operation of IoT in critical domains.Comment: 13 pages, 2 figure
Providing value to a business using a lightweight design system to support knowledge reuse by designers
This paper describes an alternative approach to knowledge based systems in engineering than traditional geometry or explicit knowledge focused systems. Past systems have supported product optimisation rather than creative solutions and provide little benefit to businesses for bespoke and low volume products or products which do not benefit from optimisation. The approach here addresses this by supporting the creativity of designers through codified tacit knowledge and encouraging knowledge reuse for bespoke product development, in particular for small to medium sized enterprises. The implementation and evaluation of the approach is described within a company producing bespoke fixtures and tooling in shorter than average lead times. The active support of knowledge management in the company is intended to add value to the business by further reducing the lead times of the designs and creating a positive impact to business processes. The evaluation demonstrates a viable alternative framework to the traditional management of knowledge in engineering, which could be implemented by other small to medium enterprises
- …