4,907 research outputs found

    Ontological Reengineering for Reuse

    Get PDF
    This paper presents the concept of Ontological Reengineering as the process of retrieving and transforming a conceptual model of an existing and implemented ontology into a new, more correct and more complete conceptual model which is reimplemented. Three activities have been identified in this process: reverse engineering, restructuring and forward engineering. The aim of Reverse Engineering is to output a possible conceptual model on the basis of the code in which the ontology is implemented. The goal of Restructuring is to reorganize this initial conceptual model into a new conceptual model, which is built bearing in mind the use of the restructured ontology by the ontology/application that reuses it. Finally, the objective of Forward Engineering is output a new implementation of the ontology. The paper also discusses how the ontological reengineering process has been applied to the Standard-Units ontology [18], which is included in a Chemical-Elements [12] ontology. These two ontologies will be included in a Monatomic-Ions and Environmental-Pollutants ontologies

    Software engineering

    Get PDF
    Today's software systems generally use obsolete technology, are not integrated properly with other software systems, and are difficult and costly to maintain. The discipline of reverse engineering is becoming prominent as organizations try to move their systems up to more modern and maintainable technology in a cost effective manner. The Johnson Space Center (JSC) created a significant set of tools to develop and maintain FORTRAN and C code during development of the space shuttle. This tool set forms the basis for an integrated environment to reengineer existing code into modern software engineering structures which are then easier and less costly to maintain and which allow a fairly straightforward translation into other target languages. The environment will support these structures and practices even in areas where the language definition and compilers do not enforce good software engineering. The knowledge and data captured using the reverse engineering tools is passed to standard forward engineering tools to redesign or perform major upgrades to software systems in a much more cost effective manner than using older technologies. The latest release of the environment was in Feb. 1992

    Software reengineering

    Get PDF
    Today's software systems generally use obsolete technology, are not integrated properly with other software systems, and are difficult and costly to maintain. The discipline of reverse engineering is becoming prominent as organizations try to move their systems up to more modern and maintainable technology in a cost effective manner. JSC created a significant set of tools to develop and maintain FORTRAN and C code during development of the Space Shuttle. This tool set forms the basis for an integrated environment to re-engineer existing code into modern software engineering structures which are then easier and less costly to maintain and which allow a fairly straightforward translation into other target languages. The environment will support these structures and practices even in areas where the language definition and compilers do not enforce good software engineering. The knowledge and data captured using the reverse engineering tools is passed to standard forward engineering tools to redesign or perform major upgrades to software systems in a much more cost effective manner than using older technologies. A beta vision of the environment was released in Mar. 1991. The commercial potential for such re-engineering tools is very great. CASE TRENDS magazine reported it to be the primary concern of over four hundred of the top MIS executives

    The development and technology transfer of software engineering technology at NASA. Johnson Space Center

    Get PDF
    The United State's big space projects of the next decades, such as Space Station and the Human Exploration Initiative, will need the development of many millions of lines of mission critical software. NASA-Johnson (JSC) is identifying and developing some of the Computer Aided Software Engineering (CASE) technology that NASA will need to build these future software systems. The goal is to improve the quality and the productivity of large software development projects. New trends are outlined in CASE technology and how the Software Technology Branch (STB) at JSC is endeavoring to provide some of these CASE solutions for NASA is described. Key software technology components include knowledge-based systems, software reusability, user interface technology, reengineering environments, management systems for the software development process, software cost models, repository technology, and open, integrated CASE environment frameworks. The paper presents the status and long-term expectations for CASE products. The STB's Reengineering Application Project (REAP), Advanced Software Development Workstation (ASDW) project, and software development cost model (COSTMODL) project are then discussed. Some of the general difficulties of technology transfer are introduced, and a process developed by STB for CASE technology insertion is described

    Guidelines to Study Differences in Expressiveness between Ontology Specification Languages: A Case Of Study

    Full text link
    We focus on our experiences on translating ontologies between two ontology languages, FLogic and Ontolingua, in the framework of Methontology and ODE. Rather than building "ad hoc" translators between languages or using KIF, our option consists of translating through ODE intermediate representations. So, we have built direct translators from ODE intermediate representations to Ontolingua and FLogic, and we have also built reverse translators from these two languages to ODE intermediate representations. Expressiveness of the target languages is the main feature to analyse when automatically generating ontologies from ODE intermediate representations. Therefore, we analyse the expressiveness of Ontolingua and FLogic for creating classes, instances, relations, functions and axioms, which are the essential components in ontologies. The motivation for this analysis can be found in the (KA)ÂČ initiative and can be easily extended to any other domains and languages

    Evolving software reengineering technology for the emerging innovative-competitive era

    Get PDF
    This paper reports on a multi-tool commercial/military environment combining software Domain Analysis techniques with Reusable Software and Reengineering of Legacy Software. It is based on the development of a military version for the Department of Defense (DOD). The integrated tools in the military version are: Software Specification Assistant (SSA) and Software Reengineering Environment (SRE), developed by Computer Command and Control Company (CCCC) for Naval Surface Warfare Center (NSWC) and Joint Logistics Commanders (JLC), and the Advanced Research Project Agency (ARPA) STARS Software Engineering Environment (SEE) developed by Boeing for NAVAIR PMA 205. The paper describes transitioning these integrated tools to commercial use. There is a critical need for the transition for the following reasons: First, to date, 70 percent of programmers' time is applied to software maintenance. The work of these users has not been facilitated by existing tools. The addition of Software Reengineering will also facilitate software maintenance and upgrading. In fact, the integrated tools will support the entire software life cycle. Second, the integrated tools are essential to Business Process Reengineering, which seeks radical process innovations to achieve breakthrough results. Done well, process reengineering delivers extraordinary gains in process speed, productivity and profitability. Most importantly, it discovers new opportunities for products and services in collaboration with other organizations. Legacy computer software must be changed rapidly to support innovative business processes. The integrated tools will provide commercial organizations important competitive advantages. This, in turn, will increase employment by creating new business opportunities. Third, the integrated system will produce much higher quality software than use of the tools separately. The reason for this is that producing or upgrading software requires keen understanding of extremely complex applications which is facilitated by the integrated tools. The radical savings in the time and cost associated with software, due to use of CASE tools that support combined Reuse of Software and Reengineering of Legacy Code, will add an important impetus to improving the automation of enterprises. This will be reflected in continuing operations, as well as in innovating new business processes. The proposed multi-tool software development is based on state of the art technology, which will be further advanced through the use of open systems for adding new tools and experience in their use

    The impact of enterprise application integration on information system lifecycles

    Get PDF
    Information systems (IS) have become the organisational fabric for intra-and inter-organisational collaboration in business. As a result, there is mounting pressure from customers and suppliers for a direct move away from disparate systems operating in parallel towards a more common shared architecture. In part, this has been achieved through the emergence of new technology that is being packaged into a portfolio of technologies known as enterprise application integration (EAI). Its emergence however, is presenting investment decision-makers charged with the evaluation of IS with an interesting challenge. The integration of IS in-line with the needs of the business is extending their identity and lifecycle, making it difficult to evaluate the full impact of the system as it has no definitive start and/or end. Indeed, the argument presented in this paper is that traditional life cycle models are changing as a result of technologies that support their integration with other systems. In this paper, the need for a better understanding of EAI and its impact on IS lifecycles are discussed and a classification framework proposed.Engineering and Physical Sciences Research Council (EPSRC) Grant Ref: (GR/R08025) and Australian Research Council (DP0344682)

    Ontology's crossed life cycles

    Full text link
    This paper presents the idea that the life cycle of an ontology is highly impacted as a result of the process of reusing it for building another ontology. One of the more important results of the experiment presented is how the different activities to be carried out during the development of a specific ontology may involve performing other types of activities on other ontologies already built or under construction. We identify in that paper new intradependencies between activities carried out inside the same otology and interdependencies between activities carried out in different ontologies. The interrelation between life cycles of several ontologies provokes that integration has to be approached globally rather than as a mere integration of out implementation

    Knowledge base methodology: Methodology for first Engineering Script Language (ESL) knowledge base

    Get PDF
    The primary goal of reusing software components is that software can be developed faster, cheaper and with higher quality. Though, reuse is not automatic and can not just happen. It has to be carefully engineered. For example a component needs to be easily understandable in order to be reused, and it has also to be malleable enough to fit into different applications. In fact the software development process is deeply affected when reuse is being applied. During component development, a serious effort has to be directed toward making these components as reusable. This implies defining reuse coding style guidelines and applying then to any new component to create as well as to any old component to modify. These guidelines should point out the favorable reuse features and may apply to naming conventions, module size and cohesion, internal documentation, etc. During application development, effort is shifted from writing new code toward finding and eventually modifying existing pieces of code, then assembling them together. We see here that reuse is not free, and therefore has to be carefully managed
    • 

    corecore