9 research outputs found

    Designing precise and flexible graphical modelling languages for software development

    Get PDF
    Model-driven approaches to software development involve building computerized models of software and the environment in which it is intended to operate. This thesis offers a selection of the author’s work over the last three decades that addresses the design of precise and flexible graphical modelling languages for use in model-driven software development. The primary contributions of this work are: • Syntropy: the first published object-oriented analysis and design (OOAD) method to fully integrate formal and graphical modelling techniques. • The creation of the Object Constraint Language (OCL) and its integration into the Unified Modeling Language (UML) specification. • The identification of requirements and mechanisms for increasing the flexibility of the UML specification. • The design and implementation of tools for implementing graphical Domain Specific Languages (DSLs). The starting point was the author’s experience with formal specification techniques contrasted with the lack of precision of published object-oriented analysis and design methods. This led to a desire to fully integrate these two topics – formal specification and object-orientation - into a coherent discipline. The Syntropy approach, created in 1994 by this author and John Daniels, was the first published complete attempt to do this. Much of the author’s subsequent published work concerns the Unified Modeling Language (UML). UML represented a welcome unification of earlier OOAD approaches, but suffered badly from inflexibility and lack of precision. A significant part of the work included in this thesis addresses the drawbacks of the UML and proposes improvements to the precision of its definition, including through the invention of Object Constraint Language (OCL) and its incorporation into the UML specification, and the consideration of UML as source material for the definition of Domain Specific Languages (DSLs). Several of the author’s published works in this thesis concern mechanisms for the creation of DSLs, both within a UML framework and separately

    Learning Static Knowledge for AI Planning Domain Models via Plan Traces

    Get PDF
    Learning is fundamental to autonomous behaviour and from the point of view of Machine Learning, it is the ability of computers to learn without being programmed explicitly. Attaining such capability for learning domain models for Automated Planning (AP) engines is what triggered research into developing automated domain-learning systems. These systems can learn from training data. Until recent research it was believed that working in dynamically changing and unpredictable environments, it was not possible to construct action models a priori. After the research in the last decade, many systems have proved effective in engineering domain models by learning from plan traces. However, these systems require additional planner oriented information such as a partial domain model, initial, goal and/or intermediate states. Hence, a question arises - whether or not we can learn a dynamic domain model, which covers all domain behaviours from real-time action sequence traces only. The research in this thesis extends an area of the most promising line of work that is connected to work presented in an REF Journal paper. This research aims to enhance the LOCM system and to extend the method of Learning Domain Models for AI Planning Engines via Plan Traces. This method was first published in ICAPS 2009 by Cresswell, McCluskey, and West (Cresswell, 2009). LOCM is unique in that it requires no prior knowledge of the target domain; however, it can produce a dynamic part of a domain model from training. Its main drawback is that it does not produce static knowledge of the domain, and its model lacks certain expressive features. A key aspect of research presented in this thesis is to enhance the technique with the capacity to generate static knowledge. A test and focus for this PhD is to make LOCM able to learn static relationships in a fully automatic way in addition to the dynamic relationships, which LOCM can already learn, using plan traces as input. We present a novel system - The ASCoL (Automatic Static Constraints Learner) which provides a graphical interface for visual representation and exploits directed graph discovery and analysis technique. It has been designed to discover domain-specific static relations/constraints automatically in order to enhance planning domain models. The ASCoL method has wider applications. Combined with LOCM, ASCoL can be a useful tool to produce benchmark domains for automated planning engines. It is also useful as a debugging tool for improving existing domain models. We have evaluated ASCoL on fifteen different IPC domains and on different types of goal-oriented and random-walk plans as input training data and it has been shown to be effective

    Subtyping and polymorphism in object-role modelling

    No full text
    Although Entity-Relationship (ER) modelling techniques are commonly used for information modelling, Object-Role Modelling (ORM) techniques are becoming increasingly popular, partly because they include detailed design procedures providing guidelines for the modeller. As with the ER approach, a number of different ORM techniques exist. In this paper, we propose an integration of two theoretically well founded ORM techniques: FORM and PSM. Our main focus is on a common terminological framework, and on the notion of subtyping. Subtyping has long been an important feature of semantic approaches to conceptual schema design. It is also the concept in which FORM and PSM differ the most in their formalization. The subtyping issue is discussed from three different viewpoints covering syntactical, identification, and population issues. Finally, a wider comparison of approaches to subtyping is made, which encompasses other ER-based and ORM-based information modelling techniques, and highlights how formal subtype definitions facilitate a comprehensive specification of subtype constraints
    corecore