373 research outputs found

    The Koala component model for consumer electronics software

    No full text
    Published versio

    Using an Architecture Description Language to Model a Large- Scale Information System – An Industrial Experience Report

    Get PDF
    An organisation that had developed a large Information System wanted to embark on a programme of significant evolution for the system. As a precursor to this, it was decided to create a comprehensive architectural description. T his undertaking faced a number of challenges, including a low general awareness of software modelling and software architecture practices . The approach taken for this project included the definition of a simple, specific, architecture description language. This paper describes the experiences of the project and the ADL created as part of it

    Research Planning Course – Assignment 2

    Get PDF
    During the 90s, the Object-Oriented technology has shown its limits in its ability to produce both reliable and low-cost software. The Component-Based Software Engineering (CBSE) is a new paradigm which has emerged to overcome these drawbacks. Thus, CBSE is a sub-field of software engineering, which first lean on the object-oriented well-tried features and second focuses more particularly on the development of independent pieces of software, called components. These latter can be connected together to produce a final output, which can be a bigger component offering more functionalities, a system or an entire application. In other words, component-based software engineering is a discipline which aims at the production of software, in a broader sense, by the use of engineering principles. Consequently, in CBSE, a particular accent is put on the notion of reusability for the same reason that industry adopted this concept years ago. Indeed, reusability can allow to reduce the production costs while increasing the development speed of new products. Moreover, it also implies the utilisation of a “same ” component in different software. It can consequently b

    Developing Product Lines with Third-Party Components

    Get PDF
    AbstractThe trends toward product line development and toward adopting more third-party software are hard to combine. The reason is that product lines demand fine control over the software (e.g., for diversity management), while third-party software (almost by definition) provides only little or no control.A growing use of third-party software may therefore lead to less control over the product development process or, vice-versa, requiring large control over the software may limit the ability to use third-party components. Since both are means to reduce costs and to shorten time to market, the question is whether they can be combined effectively.In this paper, we describe our solution to this problem which combines the Koala component model developed within Philips with the concept of build-level components. We show that by lifting component granularity of Koala components from individual C files to build-level components, both trends can be united. The Koala architectural description language is used to orchestrate product composition and to manage diversity, while build-level components form the unit of third-party component composition

    Diagnosis of embedded software using program spectra

    Get PDF
    Automated diagnosis of errors detected during software testing can improve the efficiency of the debugging process, and can thus help to make software more reliable. In this paper we discuss the application of a specific automated debugging technique, namely software fault localization through the analysis of program spectra, in the area of embedded software in high-volume consumer electronics products. We discuss why the technique is particularly well suited for this application domain, and through experiments on an industrial test case we demonstrate that it can lead to highly accurate diagnoses of realistic errors

    A component-oriented programming framework for developing embedded mobile robot software using PECOS model

    Get PDF
    A practical framework for component-based software engineering of embedded real-time systems, particularly for autonomous mobile robot embedded software development using PECOS component model is proposed The main features of this framework are: (1) use graphical representation for components definition and composition; (2) target C language for optimal code generation with small micro-controller; and (3) does not requires run-time support except for real-time kernel. Real-time implementation indicates that, the PECOS component model together with the proposed framework is suitable for resource constrained embedded systems

    Detecting Mode Inconsistencies in Component-Based Embedded Software

    Get PDF
    To deal with increasing size and complexity, componentbased software development has been employed in embedded systems. These systems comprise a set of components each of which implements a particular functionality. The system utilizes the components to provide the functionalities that are required in a set of working modes. Components can also be considered to have a set of working modes. They should work in harmony and consistent with the working mode of the system. Due to several errors that remain undetected during the design and implementation phases, components can make wrong assumptions about the working mode of the system and the working modes of the other components. These errors may lead to severe failures. Fault tolerance is required to prevent these failures at runtime. The first step to achieve fault tolerance is error detection. To detect mode inconsistencies at run-time, we propose a "lightweight" error detection mechanism, which can be integrated with component-based embedded systems. We define three dependent levels of abstractions: the run-time behavior of components, the working mode specifications of components and the specification of the working modes of the system. We define explicit links among these levels by specifying a mutual consistency condition. This allows us to detect the user observable run-time errors. The effectiveness of the approach is demonstrated by implementing a software monitor integrated into a TV system
    • …
    corecore