172,379 research outputs found

    A systematic approach for component-based software development

    Get PDF
    Component-based software development enables the construction of software artefacts by assembling prefabricated, configurable and independently evolving building blocks, called software components. This paper presents an approach for the development of component-based software artefacts. This approach consists of splitting the software development process according to four abstraction levels, viz., enterprise, system, component and object, and three different views, viz., structural, behavioural and interactional. The use of different abstraction levels and views allows a better control of the development process

    A Model-Driven Engineering Approach for ROS using Ontological Semantics

    Full text link
    This paper presents a novel ontology-driven software engineering approach for the development of industrial robotics control software. It introduces the ReApp architecture that synthesizes model-driven engineering with semantic technologies to facilitate the development and reuse of ROS-based components and applications. In ReApp, we show how different ontological classification systems for hardware, software, and capabilities help developers in discovering suitable software components for their tasks and in applying them correctly. The proposed model-driven tooling enables developers to work at higher abstraction levels and fosters automatic code generation. It is underpinned by ontologies to minimize discontinuities in the development workflow, with an integrated development environment presenting a seamless interface to the user. First results show the viability and synergy of the selected approach when searching for or developing software with reuse in mind.Comment: Presented at DSLRob 2015 (arXiv:1601.00877), Stefan Zander, Georg Heppner, Georg Neugschwandtner, Ramez Awad, Marc Essinger and Nadia Ahmed: A Model-Driven Engineering Approach for ROS using Ontological Semantic

    Designing community care systems with AUML

    Get PDF
    This paper describes an approach to developing an appropriate agent environment appropriate for use in community care applications. Key to its success is that software designers collaborate with environment builders to provide the levels of cooperation and support required within an integrated agent–oriented community system. Agent-oriented Unified Modeling Language (AUML) is a practical approach to the analysis, design, implementation and management of such an agent-based system, whilst providing the power and expressiveness necessary to support the specification, design and organization of a health care service. The background of an agent-based community care application to support the elderly is described. Our approach to building agent–oriented software development solutions emphasizes the importance of AUML as a fundamental initial step in producing more general agent–based architectures. This approach aims to present an effective methodology for an agent software development process using a service oriented approach, by addressing the agent decomposition, abstraction, and organization characteristics, whilst reducing its complexity by exploiting AUML’s productivity potential. </p

    Search for a New Conceptual Bookkeeping Model: Different Levels of Abstraction

    Get PDF
    Nowadays, every bookkeeping system used in practice is automated. Most bookkeeping software and integrated information systems are based on databases. In this paper, we develop a new conceptual bookkeeping model which is not based on manual techniques, but which is applicable in a database environment. The model is designed as a composition of equations. The startingpoint of these equations is the well-known accounting equation. In the development of the model, several levels of abstraction are distinguished: from an abstract level to a more concrete level. Every level of abstraction is described by one equation. This equation has both an input-function and an output-function. With the development of this model, the gap between the bookkeeping literature and bookkeeping practice has been reduced.bookkeeping;accounting information systems;conceptual modeling

    Empirical Validation of the Usefulness of Information Theory-Based Software Metrics

    Get PDF
    Software designs consist of software components and their relationships. Graphs are abstraction of software designs. Graphs composed of nodes and hyperedges are attractive for depicting software designs. Measurement of abstractions quantify relationships that exist among components. Most conventional metrics are based on counting. In contrast, this work adopts information theory because design decisions are information. The goal of this research is to show that information theory-based metrics proposed by Allen, namely size, complexity, coupling, and cohesion, can be useful in real-world software development projects, compared to the counting-based metrics. The thesis includes three case studies with the use of global variables as the abstraction. It is observed that one can use the counting metrics for the size and coupling measures and the information metrics for the complexity and cohesion measures

    Resolving Architectural Mismatches of COTS Through Architectural Reconciliation

    Get PDF
    The integration of COTS components into a system under development entails architectural mismatches. These have been tackled, so far, at the component level, through component adaptation techniques, but they also must be tackled at an architectural level of abstraction. In this paper we propose an approach for resolving architectural mismatches, with the aid of architectural reconciliation. The approach consists of designing and subsequently reconciling two architectural models, one that is forward-engineered from the requirements and another that is reverse-engineered from the COTS-based implementation. The final reconciled model is optimally adapted both to the requirements and to the actual COTS-based implementation. The contribution of this paper lies in the application of architectural reconciliation in the context of COTS-based software development. Architectural modeling is based upon the UML 2.0 standard, while the reconciliation is performed by transforming the two models, with the help of architectural design decisions.

    Empirical Validation Of Requirement Error Abstraction And Classification: A Multidisciplinary Approach

    Get PDF
    Software quality and reliability is a primary concern for successful development organizations. Over the years, researchers have focused on monitoring and controlling quality throughout the software process by helping developers to detect as many faults as possible using different fault based techniques. This thesis analyzed the software quality problem from a different perspective by taking a step back from faults to abstract the fundamental causes of faults. The first step in this direction is developing a process of abstracting errors from faults throughout the software process. I have described the error abstraction process (EAP) and used it to develop error taxonomy for the requirement stage. This thesis presents the results of a study, which uses techniques based on an error abstraction process and investigates its application to requirement documents. The initial results show promise and provide some useful insights. These results are important for our further investigation

    Observation and abstract behaviour in specification and implementation of state-based systems

    Get PDF
    Classical algebraic specification is an accepted framework for specification. A criticism which applies is the fact that it is functional, not based on a notion of state as most software development and implementation languages are. We formalise the idea of a state-based object or abstract machine using algebraic means. In contrast to similar approaches we consider dynamic logic instead of equational logic as the framework for specification and implementation. The advantage is a more expressive language allowing us to specify safety and liveness conditions. It also allows a clearer distinction of functional and state-based parts which require different treatment in order to achieve behavioural abstraction when necessary. We shall in particular focus on abstract behaviour and observation. A behavioural notion of satisfaction for state-elements is needed in order to abstract from irrelevant details of the state realisation
    • 

    corecore