1,817 research outputs found

    Quantity of Resource Properties Expression and Runtime Assurance for Embedded Systems

    Get PDF
    International audienceRecent work on component-based software design has proved the need of resource-accurate development of embedded software. In the more specific cases of mobile systems, the developer also needs tools to facilitate the adaptation of functionalities to resources (lack of memory or bandwidth, \etc), and also to evaluate the performance w.r.t. the resource issues . As we want to design and develop at the same time the application and its resource controllers, we chose to use Qinna, which was designed to manage resource issues (specification, contractualization, management) during the development process of such an application. We propose a complete formalization of the resource constraints specification, through the use of a variant of the event-based logics, MEDL and PEDL introduced in \cite{lee99runtime}. Qinna then automatically performs the runtime resource assurance. We illustrate this work in a case study

    Quantity of Resource Properties Expression and Runtime Assurance for Embedded Systems

    Get PDF
    International audienceRecent work on component-based software design has proved the need of resource-accurate development of embedded software. In the more specific cases of mobile systems, the developer also needs tools to facilitate the adaptation of functionalities to resources (lack of memory or bandwidth, \etc), and also to evaluate the performance w.r.t. the resource issues . As we want to design and develop at the same time the application and its resource controllers, we chose to use Qinna, which was designed to manage resource issues (specification, contractualization, management) during the development process of such an application. We propose a complete formalization of the resource constraints specification, through the use of a variant of the event-based logics, MEDL and PEDL introduced in \cite{lee99runtime}. Qinna then automatically performs the runtime resource assurance. We illustrate this work in a case study

    Resource Properties Expression and Runtime assurance for embedded programs, using Qinna, a component-based software architecture

    Get PDF
    Designing embedded communicating systems such as PDAs, mobile phones, is getting more and more complex as the hardware performance grows. The component paradigm appears as promising mainly due to the reusability and flexibility of code, but new problems appear such as security, safety and quality of service managements, which have not been integrated in the component-based designs. In this context, a component-based software architecture, Qinna, has been designed to manage quality of service from the resource point of view. In this research report, we propose a complete formalization of resource constraints expression and management using Qinna, and illustrate on a classic case study

    Multilevel Runtime Verification for Safety and Security Critical Cyber Physical Systems from a Model Based Engineering Perspective

    Get PDF
    Advanced embedded system technology is one of the key driving forces behind the rapid growth of Cyber-Physical System (CPS) applications. CPS consists of multiple coordinating and cooperating components, which are often software-intensive and interact with each other to achieve unprecedented tasks. Such highly integrated CPSs have complex interaction failures, attack surfaces, and attack vectors that we have to protect and secure against. This dissertation advances the state-of-the-art by developing a multilevel runtime monitoring approach for safety and security critical CPSs where there are monitors at each level of processing and integration. Given that computation and data processing vulnerabilities may exist at multiple levels in an embedded CPS, it follows that solutions present at the levels where the faults or vulnerabilities originate are beneficial in timely detection of anomalies. Further, increasing functional and architectural complexity of critical CPSs have significant safety and security operational implications. These challenges are leading to a need for new methods where there is a continuum between design time assurance and runtime or operational assurance. Towards this end, this dissertation explores Model Based Engineering methods by which design assurance can be carried forward to the runtime domain, creating a shared responsibility for reducing the overall risk associated with the system at operation. Therefore, a synergistic combination of Verification & Validation at design time and runtime monitoring at multiple levels is beneficial in assuring safety and security of critical CPS. Furthermore, we realize our multilevel runtime monitor framework on hardware using a stream-based runtime verification language

    Component-Based Real-Time Operating System for Embedded Applications

    Get PDF
    Acceptance rate: 37%, Rank (CORE): AInternational audienceAs embedded systems must constantly integrate new functionalities, their developement cycles must be based on high-level abstractions, making the software design more flexible. CBSE provides an approach to these new requirements. However, low-level services provided by operating systems are an integral part of embedded applications, furthermore deployed on resource-limited devices. Therefore, the expected benefits of CBSE must not impact on the constraints imposed by the targetted domain, such as memory footprint, energy consumption, and execution time. In this paper, we present the componentization of a legacy industry-established Real-Time Operating System, and how component-based applications are built on top of it. We use the Think framework that allows to produce flexible systems while paying for flexibility only where desired. Performed experimentions show that the induced overhead is negligeable

    A survey on software testability

    Full text link
    Context: Software testability is the degree to which a software system or a unit under test supports its own testing. To predict and improve software testability, a large number of techniques and metrics have been proposed by both practitioners and researchers in the last several decades. Reviewing and getting an overview of the entire state-of-the-art and state-of-the-practice in this area is often challenging for a practitioner or a new researcher. Objective: Our objective is to summarize the body of knowledge in this area and to benefit the readers (both practitioners and researchers) in preparing, measuring and improving software testability. Method: To address the above need, the authors conducted a survey in the form of a systematic literature mapping (classification) to find out what we as a community know about this topic. After compiling an initial pool of 303 papers, and applying a set of inclusion/exclusion criteria, our final pool included 208 papers. Results: The area of software testability has been comprehensively studied by researchers and practitioners. Approaches for measurement of testability and improvement of testability are the most-frequently addressed in the papers. The two most often mentioned factors affecting testability are observability and controllability. Common ways to improve testability are testability transformation, improving observability, adding assertions, and improving controllability. Conclusion: This paper serves for both researchers and practitioners as an "index" to the vast body of knowledge in the area of testability. The results could help practitioners measure and improve software testability in their projects

    Applets vs JavaScript

    Get PDF
    Client-side scripting languages are used to design the interactive web pages used by consumers to view web applications. With the tremendous growth in technology, numerous client-side scripting languages are being introduced into daily life. However, applets were the first technology introduced to create dynamic web pages and were the popular programming for over a decade. Later, JavaScript was introduced for the same purpose and is the most popular scripting language used by the developers today. Both the applets and JavaScript have their advantages and disadvantages. The usage of these two technologies is dependent on the performance and other general requirements of the web application that is being developed. Hence, this paper compares JavaScript and applets concerning network, memory, performance, and security to help developers find the most efficient use between these two technologies based on the requirement of the application. This paper will also discuss other features that need to be considered while developing the application

    A JML-Based strategy for incorporating formal specifications into the software development process

    Get PDF
    This thesis presents a JML-based strategy that incorporates formal specifications into the software development process of object-oriented programs. The strategy evolves functional requirements into a “semi-formal” requirements form, and then expressing them as JML formal specifications. The strategy is implemented as a formal-specification pseudo-phase that runs in parallel with the other phase of software development. What makes our strategy different from other software development strategies used in literature is the particular use of JML specifications we make all along the way from requirements to validation-and-verification.Orientador: NĂ©stor Catañ
    • 

    corecore