28 research outputs found

    Towards a Formalization of a Framework to Express and Reason about Software Engineering Methods

    Get PDF
    Software Engineering is considered a knowledge-intensive discipline, in which knowledge creation, collection and sharing is an uninterrupted process. However, a large part of this knowledge exists in a tacit form and depends on practitioners. Therefore defining a mechanism to transform tacit knowledge into explicit one is of upmost importance. This paper presents a formalization approach to represent Software Engineering practitioners' tacit knowledge, which is related to their ways of working, as a set of explicit statements. The formalization is based on KUALI-BEH, which is a normative kernel extension of ESSENCE formal specification, and consists of three parts: an ontology to share a common representation of knowledge as a set of concepts; a Situational Method Engineering based algebra that represents well-defined method properties and operations; and a knowledge representation of the ontology and algebra using Description Logics. The main objectives of this initial formalization are to improve communication among humans and machines, computational inference and reuse of knowledge

    Extensible Knowledge Representation: the Case of Description Reasoners

    Full text link
    This paper offers an approach to extensible knowledge representation and reasoning for a family of formalisms known as Description Logics. The approach is based on the notion of adding new concept constructors, and includes a heuristic methodology for specifying the desired extensions, as well as a modularized software architecture that supports implementing extensions. The architecture detailed here falls in the normalize-compared paradigm, and supports both intentional reasoning (subsumption) involving concepts, and extensional reasoning involving individuals after incremental updates to the knowledge base. The resulting approach can be used to extend the reasoner with specialized notions that are motivated by specific problems or application areas, such as reasoning about dates, plans, etc. In addition, it provides an opportunity to implement constructors that are not currently yet sufficiently well understood theoretically, but are needed in practice. Also, for constructors that are provably hard to reason with (e.g., ones whose presence would lead to undecidability), it allows the implementation of incomplete reasoners where the incompleteness is tailored to be acceptable for the application at hand

    Working Notes from the 1992 AAAI Workshop on Automating Software Design. Theme: Domain Specific Software Design

    Get PDF
    The goal of this workshop is to identify different architectural approaches to building domain-specific software design systems and to explore issues unique to domain-specific (vs. general-purpose) software design. Some general issues that cut across the particular software design domain include: (1) knowledge representation, acquisition, and maintenance; (2) specialized software design techniques; and (3) user interaction and user interface

    Doctor of Philosophy

    Get PDF
    dissertationLogical Observation Identifiers Names and Codes (LOINC®) was developed in 1994 to provide a universal vocabulary for reporting laboratory and clinical observations. This dissertation was aimed at determining whether LOINC is meeting its goal when it is used in the real world. Three institutions, Associated and Regional University Pathologist (ARUP), Intermountain Healthcare, and Regenstrief Institute, were invited to participate in this research. These institutions represented three of the seven institutions that provided their catalogue of laboratory test names for creating the first version of laboratory LOINC codes. After obtaining IRB approval, each institution provided 5 years (2003-2007) of laboratory data and their associated local codes and LOINC code mappings. Extensional definitions (EDs) were used to characterize the laboratory data reported by a specific LOINC code. EDs included frequency of testing, mean and standard deviation of the result values, coded variables, etc. To reduce privacy concerns, we distributed parsing and processing programs to each institution and the initial processing of the raw results occurred within the local systems, and only the deidentified EDs were sent to the primary investigator for combined analysis. We used the EDs to evaluate the coverage, correctness, consistency and competence of LOINC. For coverage, we analyzed how many laboratory tests being routinely tested in daily operations could be assigned a correct LOINC code. For correctness, we verified the accuracy of LOINC mappings to local codes. For consistency and usefulness, we detected any inconsistencies in LOINC design and measured the degree of semantic interoperability that could be achieved using LOINC. Besides auditing LOINC code use, we also analyzed the result values that were associated with the LOINC results (i.e. characteristics like the type of result (number, coded value), units of measure, answer set (positive/negative) etc.). We also found that consistent use of result values was important in achieving semantic interoperability when exchanging laboratory data. Our analysis produced the following results: 1. Completeness: LOINC can provide 99% coverage rate for the results in two typical health care institutions and 79% coverage for results from a reference laboratory. 2. Correctness: An error rate of 4.5% existed in mappings at the three institutions. 3. Consistency and usefulness: Several complicated or inconsistent designs for LOINC usage were found, which reduced the semantic interoperability of LOINC

    Semantic Web Enabled Software Engineering

    Get PDF
    Ontologies allow the capture and sharing of domain knowledge by formalizing information and making it machine understandable. As part of an information system, ontologies can capture and carry the reasoning knowledge needed to fulfill different application goals. Although many ontologies have been developed over recent years, few include such reasoning information. As a result, many ontologies are not used in real-life applications, do not get reused or only act as a taxonomy of a domain. This work is an investigation into the practical use of ontologies as a driving factor in the development of applications and the incorporation of Knowledge Engineering as a meaningful activity into modern agile software development. This thesis contributes a novel methodology that supports an incremental requirement analysis and an iterative formalization of ontology design through the use of ontology reasoning patterns. It also provides an application model for ontology-driven applications that can deal with nonontological data sources. A set of case studies with various application specific goals helps to elucidate whether ontologies are in fact suitable for more than simple knowledge formalization and sharing, and can act as the underlying structure for developing largescale information systems. Tasks from the area of bug-tracker quality mining and clone detection are evaluated for this purpose

    Artificial Intelligence Research Branch future plans

    Get PDF
    This report contains information on the activities of the Artificial Intelligence Research Branch (FIA) at NASA Ames Research Center (ARC) in 1992, as well as planned work in 1993. These activities span a range from basic scientific research through engineering development to fielded NASA applications, particularly those applications that are enabled by basic research carried out in FIA. Work is conducted in-house and through collaborative partners in academia and industry. All of our work has research themes with a dual commitment to technical excellence and applicability to NASA short, medium, and long-term problems. FIA acts as the Agency's lead organization for research aspects of artificial intelligence, working closely with a second research laboratory at the Jet Propulsion Laboratory (JPL) and AI applications groups throughout all NASA centers. This report is organized along three major research themes: (1) Planning and Scheduling: deciding on a sequence of actions to achieve a set of complex goals and determining when to execute those actions and how to allocate resources to carry them out; (2) Machine Learning: techniques for forming theories about natural and man-made phenomena; and for improving the problem-solving performance of computational systems over time; and (3) Research on the acquisition, representation, and utilization of knowledge in support of diagnosis design of engineered systems and analysis of actual systems
    corecore