110 research outputs found

    Multi-perspective modelling for knowledge management and knowledge engineering

    Get PDF
    ii It seems almost self-evident that “knowledge management ” and “knowledge engineering” should be related disciplines that may share techniques and methods between them. However, attempts by knowledge engineers to apply their techniques to knowledge management have been praised by some and derided by others, who claim that knowledge engineers have a fundamentally wrong concept of what “knowledge management” is. The critics also point to specific weaknesses of knowledge engineering, notably the lack of a broad context for the knowledge. Knowledge engineering has suffered some criticism from within its own ranks, too, particularly of the “rapid prototyping ” approach, in which acquired knowledge was encoded directly into an iteratively developed computer system. This approach was indeed rapid, but when used to deliver a final system, it became nearly impossible to verify and validate the system or to maintain it. A solution to this has come in the form of knowledge engineering methodology, and particularly in the CommonKAD

    Software Sustainability: Research and Practice from a Software Architecture Viewpoint

    Get PDF
    Context: Modern societies are highly dependent on complex, large-scale, software-intensive systems that increasingly operate within an environment of continuous availability, which is challenging to maintain and evolve in response to the inevitable changes in stakeholder goals and requirements of the system. Software architectures are the foundation of any software system and provide a mechanism for reasoning about core software quality requirements. Their sustainability – the capacity to endure in changing environments – is a critical concern for software architecture research and practice. Problem: Accidental software complexity accrues both naturally and gradually over time as part of the overall software design and development process. From a software architecture perspective, this allows several issues to overlap including, but not limited to: the accumulation of technical debt design decisions of individual components and systems leading to coupling and cohesion issues; the application of tacit architectural knowledge resulting in unsystematic and undocumented design decisions; architectural knowledge vaporisation of design choices and the continued ability of the organization to understand the architecture of its systems; sustainability debt and the broader cumulative effects of flawed architectural design choices over time resulting in code smells, architectural brittleness, erosion, and drift, which ultimately lead to decay and software death. Sustainable software architectures are required to evolve over the entire lifecycle of the system from initial design inception to end-of-life to achieve efficient and effective maintenance and evolutionary change. Method: This article outlines general principles and perspectives on sustainability with regards to software systems to provide a context and terminology for framing the discourse on software architectures and sustainability. Focusing on the capacity of software architectures and architectural design choices to endure over time, it highlights some of the recent research trends and approaches with regards to explicitly addressing sustainability in the context of software architectures. Contribution: The principal aim of this article is to provide a foundation and roadmap of emerging research themes in the area of sustainable software architectures highlighting recent trends, and open issues and research challenges

    Learning and discovery in incremental knowledge acquisition

    Full text link
    Knowledge Based Systems (KBS) have been actively investigated since the early period of AI. There are four common methods of building expert systems: modeling approaches, programming approaches, case-based approaches and machine-learning approaches. One particular technique is Ripple Down Rules (RDR) which may be classified as an incremental case-based approach. Knowledge needs to be acquired from experts in the context of individual cases viewed by them. In the RDR framework, the expert adds a new rule based on the context of an individual case. This task is simple and only affects the expert s workflow minimally. The rule added fixes an incorrect interpretation made by the KBS but with minimal impact on the KBS's previous correct performance. This provides incremental improvement. Despite these strengths of RDR, there are some limitations including rule redundancy, lack of intermediate features and lack of models. This thesis addresses these RDR limitations by applying automatic learning algorithms to reorganize the knowledge base, to learn intermediate features and possibly to discover domain models. The redundancy problem occurs because rules created in particular contexts which should have more general application. We address this limitation by reorganizing the knowledge base and removing redundant rules. Removal of redundant rules should also reduce the number of future knowledge acquisition sessions. Intermediate features improve modularity, because the expert can deal with features in groups rather than individually. In addition to the manual creation of intermediate features for RDR, we propose the automated discovery of intermediate features to speed up the knowledge acquisition process by generalizing existing rules. Finally, the Ripple Down Rules approach facilitates rapid knowledge acquisition as it can be initialized with a minimal ontology. Despite minimal modeling, we propose that a more developed knowledge model can be extracted from an existing RDR KBS. This may be useful in using RDR KBS for other applications. The most useful of these three developments was the automated discovery of intermediate features. This made a significant difference to the number of knowledge acquisition sessions required

    A Simplified Faceted Approach To Information Retrieval for Reusable Software Classification

    Get PDF
    Software Reuse is widely recognized as the most promising technique presently available in reducing the cost of software production. It is the adaptation or incorporation of previously developed software components, designs or other software-related artifacts (i.e. test plans) into new software or software development regimes. Researchers and vendors are doubling their efforts and devoting their time primarily to the topic of software reuse. Most have focused on mechanisms to construct reusable software but few have focused on the problem of discovering components or designs to meet specific needs. In order for software reuse to be successful, it must be perceived to be less costly to discover a software component or related artifact to satisfy a given need than to discover one anew. As results, this study will describe a method to classify software components that meet a specified need. Specifically, the purpose of the present research study is to provide a flexible system, comprised of a classification scheme and searcher system, entitled Guides-Search, in which processes can be retrieved by carrying out a structured dialogue with the user. The classification scheme provides both the structure of questions to be posed to the user, and the set of possible answers to each question. The model is not an attempt to replace current structures; but rather, seeks to provide a conceptual and structural method to support the improvement of software reuse methodology. The investigation focuses on the following goals and objectives for the classification scheme and searcher system: the classification will be flexible and extensible, but usable by the Searcher; the user will not be presented with a large number of questions; the user will never be required to answer a question not known to be germane to the query

    Application of knowledge based engineering principles to intelligent automation systems

    Get PDF
    The automation of engineering processes provides many benefits over manual methods including significant cost and scheduling reduction as well as intangible advantages of greater consistency based on agreed methods, standardisation and simplification of complex problems and knowledge retention. Knowledge Based Engineering (KBE) and Design Automation (DA) are two sets of methodologies and technologies for automating engineering processes through software. KBE refers to the structured capture, modelling and deployment of engineering knowledge in high level intelligent systems that provide a wide scope of automation capability. KBE system development is supported by numerous mature methodologies that cover all aspects of the development process including: problem identification and feasibility studies, knowledge capture and modelling, and system design, development and deployment. Conversely, DA is the process of developing automated solutions to specific, well defined engineering tasks. The DA approach is characterised by agile software development methods, producing lower level systems that are intentionally limited in scope. DA-type solutions are more commonly adopted by industry than KBE applications due to shorter development schedules, lower cost and less complex development processes. However, DA application development is not as well supported by theoretical frameworks, and consequently, development processes can be unstructured and best practices not observed. The research presented in this thesis is divided into two key areas. Firstly, a methodology for automating engineering processes is proposed, with the aim of improving the accessibility of mature KBE methods to a broader industrial base. This methodology supports development of automation applications ranging in complexity from high level KBE systems to lower level DA applications. A complexity editing mechanism is introduced that relates detailed processes of KBE methodologies to a set of characteristics that can be exhibited by automated solutions. Depending on individual application requirements, complexity of automated solutions can lowered by deselecting one or more of these characteristics, omitting associated high-level processes from the development methodology. At the lowest level of complexity, the methodology provides a structured process for producing DA applications that incorporates principles of mature KBE methodologies. The second part of this research uses the proposed automation methodology to develop a system to automate the layout design of aircraft electrical harnesses. Increasing complexity of aircraft electrical systems has an associated increase in the number and size of electrical harnesses required to connect subsystems throughout the airframe. Current practices for layout design are highly manual, with many governing rules and best practices. The automation of this process will provide a significant reduction in low level, repetitive, manual work. The resulting automated routing tool implements path-finding techniques from computer game artificial intelligence and microprocessor design domains, together with new methods for incorporating the numerous design rules governing harness placement. The system was tested with a complex industrial test case, and was found to provide harness solutions in a fraction of the time and with comparable quality as equivalent manual design processes. The repeatability of the automated process can also minimise scheduling impacts caused by late design changes

    AFRANCI : multi-layer architecture for cognitive agents

    Get PDF
    Tese de doutoramento. Engenharia Electrotécnica e de Computadores. Faculdade de Engenharia. Universidade do Porto. 201

    DEVELOPMENT OF A FORMAL FRAMEWORK FOR USABLE OPERATIONS SUPPORT IN E-HEALTH BASED SYSTEMS

    Get PDF
    This study uses advanced communications and computing technologies to support health care delivery and education. The automated e-Health-based system was designed to eliminate clumsy and tedious treatment procedures associated with manual treatment processes prevalent in care centres, especially in the developing countries. The operations support functionalities of the system are provided within a formal framework to eliminate system errors, improve dependability and enhance its usability. The framework presented in this thesis uses algebraic specifications in object constraint language (OCL) and Unified Modelling Language (UML) in the analysis and design of some subsystems in an e-Health based system. Wireless Markup Language (WML) and Java programming language were used to develop the operations support functionality with real-time access to medical information via hand-held devices. The application was deployed on a 3-tiered client / server architecture with hand-held devices as clients, providing mobile access to real-time information from server-based systems within a care centre. The system was evaluated empirically and analytically. The application’s usability evaluation was done using a questionnaire based on the attributes suggested by ISO, ANSI and ITU. The product was found to be usable with a mean rating above 4 on a scale of 5 for all attributes used for the measurement. The study revealed that 92% of the medical professionals who evaluated the application would like to see it deployed for use in medical centres in order to enhance health care delivery

    The 1993 Goddard Conference on Space Applications of Artificial Intelligence

    Get PDF
    This publication comprises the papers presented at the 1993 Goddard Conference on Space Applications of Artificial Intelligence held at the NASA/Goddard Space Flight Center, Greenbelt, MD on May 10-13, 1993. The purpose of this annual conference is to provide a forum in which current research and development directed at space applications of artificial intelligence can be presented and discussed
    corecore