364,703 research outputs found

    Towards the definition of a pattern sequence for real-time applications using a model-driven engineering approach

    Get PDF
    Real-Time (RT) systems exhibit specific characteristics that make them particularly sensitive to architectural decissions. Design patterns help integrating the desired timing behaviour with the rest of the elements of the application architecture. This paper reports a pattern story that shows how a component-based design has been implemented using periodic concurrent tasks with RT requirements. This work has been done in the context of the development of robotic applications using a Model-Driven Software Development (MDSD) approach. In this context the model-to-code transformations are designed taking into account both the system requirements and the patterns that satisfy them. MDSD provides the conceptual technology for implementing a pattern-guided transition from component-based models to object-oriented implementations. The results of applying the described story of patterns are shown by an application that initializes, configures and schedules the execution of platform-specific components.This work has been partially supported by the Spanish CICYT Project EXPLORE (ref. TIN2009-08572), and the Fundación Séneca Regional Project COMPAS-R (ref. 11994/PI/09)

    A model driven component agent framework for domain experts

    Get PDF
    Industrial software systems are becoming more complex with a large number of interacting parts distributed over networks. Due to the inherent complexity in the problem domains, most such systems are modified over time to incorporate emerging requirements, making incremental development a suitable approach for building complex systems. In domain specific systems it is the domain experts as end users who identify improvements that better suit their needs. Examples include meteorologists who use weather modeling software, engineers who use control systems and business analysts in business process modeling. Most domain experts are not fluent in systems programming and changes are realised through software engineers. This process hinders the evolution of the system, making it time consuming and costly. We hypothesise that if domain experts are empowered to make some of the system cha nges, it would greatly ease the evolutionary process, thereby making the systems more effective. Agent Oriented Software Engineering (AOSE) is seen as a natural fit for modeling and implementing distributed complex systems. With concepts such as goals and plans, agent systems support easy extension of functionality that facilitates incremental development. Further agents provide an intuitive metaphor that works at a higher level of abstraction compared to the object oriented model. However agent programming is not at a level accessible to domain experts to capitalise on its intuitiveness and appropriateness in building complex systems. We propose a model driven development approach for domain experts that uses visual modeling and automated code generation to simplify the development and evolution of agent systems. Our approach is called the Component Agent Framework for domain-Experts (CAFnE), which builds upon the concepts from Model Driven Development and the Prometheus agent software engineering methodolo gy. CAFnE enables domain experts to work with a graphical representation of the system, which is easier to understand and work with than textual code. The model of the system, updated by domain experts, is then transformed to executable code using a transformation function. CAFnE is supported by a proof-of-concept toolkit that implements the visual modeling, model driven development and code generation. We used the CAFnE toolkit in a user study where five domain experts (weather forecasters) with no prior experience in agent programming were asked to make changes to an existing weather alerting system. Participants were able to rapidly become familiar with CAFnE concepts, comprehend the system's design, make design changes and implement them using the CAFnE toolkit

    Adaptive business rules framework for workflow management

    Get PDF
    Changing scattered and dynamic business rules in Business Workflow Systems has become a growing problem that hinders the use and configuration of workflow-based applications. There is a gap in the existing research studies which currently focus on solutions that are application specific, without accounting for the universal logical dependencies between the business rules and, as a result, do not support adaptation of the business rules in real time. Design/methodology/approach – To tackle the above problems, this paper adopts a bottom-up approach, which puts forward a component model of the business process workflows and business rules based on purely logical specification which allows incremental development of the workflows and indexing of the rules which govern them during the initial acquisition and real-time execution. Results – The paper introduces a component-based event-driven model for development of business workflows which is purely logic based and can be easily implemented using an object-oriented technology together with a formal model for accounting the business rules dependencies together with a new method for incremental indexing of the business rules controlling the workflows. It proposes a two-level inference mechanism as a vehicle for controlling the business process execution and adaptation of the business rules at real time based on propagating the dependencies between the rules. Originality/value –The major achievement of this research is the universal, strictly logic-based event-driven framework for business process modelling and control which allows automatic adaptation of the business rules governing the business workflows based on accounting for their structural dependencies. An additional advantage of the framework is its support for object-oriented technology which can be implemented with enterprise-level quality and efficiency. Although developed primarily for application in construction industry the framework is entirely domain-independent and can be used in other industries, too

    Pattern Reification as the Basis for Description-Driven Systems

    Full text link
    One of the main factors driving object-oriented software development for information systems is the requirement for systems to be tolerant to change. To address this issue in designing systems, this paper proposes a pattern-based, object-oriented, description-driven system (DDS) architecture as an extension to the standard UML four-layer meta-model. A DDS architecture is proposed in which aspects of both static and dynamic systems behavior can be captured via descriptive models and meta-models. The proposed architecture embodies four main elements - firstly, the adoption of a multi-layered meta-modeling architecture and reflective meta-level architecture, secondly the identification of four data modeling relationships that can be made explicit such that they can be modified dynamically, thirdly the identification of five design patterns which have emerged from practice and have proved essential in providing reusable building blocks for data management, and fourthly the encoding of the structural properties of the five design patterns by means of one fundamental pattern, the Graph pattern. A practical example of this philosophy, the CRISTAL project, is used to demonstrate the use of description-driven data objects to handle system evolution.Comment: 20 pages, 10 figure

    A Framework for Evaluating Model-Driven Self-adaptive Software Systems

    Get PDF
    In the last few years, Model Driven Development (MDD), Component-based Software Development (CBSD), and context-oriented software have become interesting alternatives for the design and construction of self-adaptive software systems. In general, the ultimate goal of these technologies is to be able to reduce development costs and effort, while improving the modularity, flexibility, adaptability, and reliability of software systems. An analysis of these technologies shows them all to include the principle of the separation of concerns, and their further integration is a key factor to obtaining high-quality and self-adaptable software systems. Each technology identifies different concerns and deals with them separately in order to specify the design of the self-adaptive applications, and, at the same time, support software with adaptability and context-awareness. This research studies the development methodologies that employ the principles of model-driven development in building self-adaptive software systems. To this aim, this article proposes an evaluation framework for analysing and evaluating the features of model-driven approaches and their ability to support software with self-adaptability and dependability in highly dynamic contextual environment. Such evaluation framework can facilitate the software developers on selecting a development methodology that suits their software requirements and reduces the development effort of building self-adaptive software systems. This study highlights the major drawbacks of the propped model-driven approaches in the related works, and emphasise on considering the volatile aspects of self-adaptive software in the analysis, design and implementation phases of the development methodologies. In addition, we argue that the development methodologies should leave the selection of modelling languages and modelling tools to the software developers.Comment: model-driven architecture, COP, AOP, component composition, self-adaptive application, context oriented software developmen

    An architecture and methodology for the design and development of Technical Information Systems

    Get PDF
    In order to meet demands in the context of Technical Information Systems (TIS) pertaining to reliability, extensibility, maintainability, etc., we have developed an architectural framework with accompanying methodological guidelines for designing such systems. With the framework, we aim at complex multiapplication information systems using a repository to share data among applications. The framework proposes to keep a strict separation between Man-Machine-Interface and Model data, and provides design and implementation support to do this effectively.\ud The framework and methodological guidelines have been developed in the context of the ESPRIT project IMPRESS. The project also provided for ldquotesting groundsrdquo in the form of a TIS for the Spanish Electricity company Iberdrola.\ud This work has been conducted within the ESPRIT project IMPRESS (Integrated, Multi-Paradigm, Reliable and Extensible Storage System), ESPRIT No. 635
    corecore