Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
2007, … of the First International Working Session …
In this paper we describe an experience of Data Reverse Engineering supported by a repository of conceptual schemas.We first introduce a set of integration/abstraction primitives that are used in order to organize a large set of conceptual schemas in a repository. We describe the methodology conceived to produce the repository of schemas of central public administrations in Italy. Then we describe an heuristic methodology, applied in the production of the set of schemas of the public administrations of an italian region. We also compare the former exact methodology and the heuristic one according to their correctness, completeness, and efficiency.
Large amounts of data are managed by organizations, available to be viewed and analysed from multiple perspectives, which becomes a fundamental resource to the effectiveness of the organizations. An organization can achieve full benefit from the available information by managing its data resource, through the planning of its exploitation and its maintenance. The concept of data repository fulfils these requirements, due to the fact that it contains the description of all types of data produced, managed, maintained and exchanged in an organization. This paper describes an experience of the use of an existing repository of conceptual schema, representing a wide amount of entities of interest for Central Public administration, in order to produce the corresponding repository of the administrations located in a region. Several heuristics are described and experiments are reported.
Journal of Software: Evolution and Process, 2014
In this paper, an approach for information systems reverse engineering is proposed and applied. The aim is to support a unified perspective to the reverse engineering process of both data and software. At the state of the art, indeed, many methods, techniques, and tools for software reverse engineering have been proposed to support program comprehension, software maintenance, and software evolution. Other approaches and tools have been proposed for data reverse engineering, with the aim, for example, to provide complete and up-to-date documentation of legacy databases. However, the two engineering communities often worked independently, and very few approaches addressed the reverse engineering of both data and software as information system's constituencies. Hence, a higher integration is needed to support a better co-evolution of databases and programs, in an environment often characterized by high availability of data and volatility of information flows. Accordingly, the approach we propose leverages the detection of object-relational mapping design patterns to build a conceptual schema of the software under analysis. Then, the conceptual schema is mapped to the domain model of the system, to support the design of the evolution of the information system itself. The approach is evaluated on two large-scale open-source enterprise applications.
Information & Software Technology, 1995
This paper describes the steps of a reverse engineering process for translating a hierarchical data schema into a conceptual description in the extended entity-relationship model. The methodology presented is composed of well-defined tasks which, due to the good level of automation, forecast the possibility of a profitable use of CASE tools. However, the final production of a semantically richer conceptual schema requires the involvement of the designer, whose experience could be implemented with artificial intelligent techniques. The forward process is also analysed to determine all useful decisions which could be applied in the reverse methodology. In addition, an example is presented which illustrates the real applicability of the proposed approach.
Electronic Notes in Theoretical Computer Science, 2003
This paper presents a solution and a methodology to recover legacy databases of most DBMS using formal-method based techniques. These formal methods (terms rewriting systems) are applied during the data reverse engineering process and allow for an automatic approach. This automatic approach reduces the time invested and the number of people involved in the data reverse engineering and data migration
Reverse engineering applied to databases permits to extract a conceptual schema that represents, at a higher level of abstraction, the database implementation. This resulting conceptual schema may be used to facilitate, among others, system maintenance, evolution and reuse. In the last years, the use of object-relational constructs was incorporated into database development. However, reverse engineering techniques for these specific constructs have not been yet provided. In this sense, the main goal of this paper is to present a method that considers these new constructs in the reverse engineering of an existing object-relational database. As a result of the process, our method returns an equivalent conceptual schema specified in UML (extended with a set of OCL integrity constraints) that represents, at a conceptual level, the database schema. We provide a prototype tool that implements our method for the Oracle9i database management system. context Checkpoint inv: Checkpoint.allInstances->isUnique(id) context Person inv: self.age > 10 context Person inv: Person.allInstances->isUnique(name) context Address inv: self.floor->size()<=10 self.town->size() <= 30 context Address inv: self.floor->size() <= 10 context Address inv: self.street->size() <= 40 3 Obtained CS
Working Conference on Reverse Engineering, 1995
This paper proposes a general architecture for Information systems (or data-centered applications) reverse engineering CASE environments. Recovering the specifications of such applications requires recovering first those of their data, i.e. database reverse engineering (DBRE). First, the paper describes a generic DMS-independent DBRE methodology, then it analyses the main characteristics of DBRE activities in order to collect a set of minimum
Proceedings of the Third European Conference on Software Maintenance and Reengineering (Cat. No. PR00090), 1999
The problem of choosing one method to use in the reverse engineering of existing relational database systems is not a trivial one. On one hand, methods hold different input requirements. On the other hand, each legacy system has its particular characteristics that restrict the available information. Our experience has identified different information types, with different degrees of availability and reliability, which can be found in existing systems. In this paper we present a short description of several reverse engineering methods and propose one classification model. The characterisation of the methods is organized in 5 categories: input, assumptions, output, methodology and main contributions. The classification model is based on the input requirements of the method, namely, attribute semantics, attribute's name coherency, data instances, applications code, candidate keys, 3NF, inclusion dependencies and human input. We analyse the applicability of each method to existing database systems, as well as the possibility to apply different methods to different parts of the system.
Computing Research Repository, 2004
Ontologies facilitate the integration of heterogeneous data sources by resolving semantic heterogeneity between them. This research aims to study the possibility of generating a domain conceptual model from a given ontology with the vision to grow this generated conceptual data model into a global conceptual model integrating a number of existing data and information sources. Based on ontologically derived semantics of the BWW model, rules are identified that map elements of the ontology language (DAML+OIL) to domain conceptual model elements. This mapping is demonstrated using TAMBIS ontology. A significant corollary of this study is that it is possible to generate a domain conceptual model from a given ontology subject to validation that needs to be performed by the domain specialist before evolving this model into a global conceptual model.
Journal of Software Maintenance: Research and Practice, 1995
With the growing awareness of the importance of software maintenance has come a re-evaluation of software maintenance tools. Such tools range from source code analysers to semi-intelligent tools which seek to reconstruct system designs and specification documents from source code. However, it is clear that relying solely upon source code as a basis for reverse engineering has many problems. These problems include poor abstraction which leads to over detailed specification models and the inability to link other parts of a software system, such as documentation and user expertise, to the underlying code. This paper describes the work of the Esprit DOCKET project which has developed a prototype environment to support the development of a system model linking user-oriented, business aspects of a system, to operational code using a variety of knowledge source inputs: code, documents and user expertise. The aim is to provide a coherent model to form the basis for system understanding and to support the software change and evolution process.
Automated Software Engineering, 1996
This paper analyzes the requirements that CASE tools should meet for effective database reverse engineering (DBRE), and proposes a general architecture for data-centered applications reverse engineering CASE environments. First, the paper describes a generic DBMS-independent DBRE methodology, then it analyzes the main characteristics of DBRE activities in order to collect a set of desirable requirements. Finally, it describes DB-MAIN, an operational CASE tool developed according to these requirements. The main features of this tool that are described in this paper are its unique generic specification model, its repository, its transformation toolkit, its user interface, the text processors, the assistants, the methodological control and its functional extensibility. Finally, the paper describes five real-world projects in which the methodology and the CASE tool were applied.
Proceedings of the 5th International Conference on Software and Data Technologies, 2010
At the state of the art, objects oriented applications use data structured in relational databases by exploiting some patterns, like the Domain Model and Data Mapper. These approaches aim to represent data in the OO way, using objects for representing data entities. Furthermore, we point out that the identification of these patterns can show the link between the object model and the conceptual entities, exploiting their associations to the physical data objects. The aim of this paper is to present a unified perspective for the definition of an integrated approach for software and data reverse engineering. The discussion is carried out by means of a sample application and a comparison with results from current tools.
2000
Abstract The reverse engineering research community has been investigating mechanisms for exchanging data and partial results between reverse engineering tools (Woods et al., 1998; Holt et al., 2000). Among the many subproblems inherent in implementing a standard exchange format (SEF) is the design of schemas that represent views of source code at various levels of abstraction.
1999
Database reverse engineering (DBRE) methods recover conceptual data models from physical databases. The bottom-up nature of these methods imposes two major limitations. First, they do not provide an initial high level abstract schema suitable for use as a basis for reasoning about the application domain: a single detailed schema is only produced at the very end of the project. Second, they provide no support for a divide-and-conquer approach: the entire database schema must be analysed and processed as a unit, and cannot be divided into smaller database schemas. We present a simple solution to overcome both limitations. In our proposal, relations are grouped based on their primary keys. Each group can be perceived in two ways as a relational schema that can be reversed engineered as a standalone DBRE project; and as an element, either an entity or a relationship, of a high-level abstract schema that provides initial insight about the application domain. We also present examples from actual large database systems
Object-Oriented and Entity-Relationship Modelling/International Conference on Conceptual Modeling / the Entity Relationship Approach, 1999
Database reverse engineering is a complex activity that can be modeled as a sequence of two major processes, namely data structure extraction and data structure conceptualization. The first process consists in reconstructing the logical - that is, DBMS-dependent - schema, while the second process derives the conceptual specification of the data from this logical schema. This paper concentrates on the
The International Arab Journal of Information Technology, 2010
The heterogeneous and dynamic nature of components making up a web application, the lack of effective programming mechanisms for implementing basic software engineering principles in it, and undisciplined development processes induced by the high pressure of a very short time-to-market, make web application maintenance a challenging problem. A relevant issue consists of reusing the methodological and technological experience in the sector of traditional software maintenance, and exploring the opportunity of using reverse engineering to support effective web application maintenance. This paper presents reverse engineering approach that help to understand existing undocumented web applications to be maintained or evolved, through the extraction from domain ontology of conceptual schema describing a web application. The advantage of using ontology for conceptual data modelling is the reusability of domain knowledge. As a result of it the conceptual data model will be made faster, easier and with fewer errors than creating conceptual data model in usual way. We demonstrate the value of the approach by providing an implementation that exhibits appropriate characteristics.
2008
One important problem in today organizations is the existence of non-integrated information systems, inconsistency and lack of suitable correlations between legacy and modern systems. One main solution is to transfer the local databases into a global one. In this regards we need to extract the data structures from the legacy systems and integrate them with the new technology systems. In legacy systems, huge amounts of a data are stored in legacy databases. They require particular attention since they need more efforts to be normalized, reformatted and moved to the modern database environments. Designing the new integrated (global) database architecture and applying the reverse engineering requires data normalization. This paper proposes the use of database reverse engineering in order to integrate legacy and modern databases in organizations. The suggested approach consists of methods and techniques for generating data transformation rules needed for the data structure normalization.
… Engineering, 1996., …, 1996
Recovering the semantic description of file and database structures is an important aspect of business application reverse engineering. It includes a particularly delicate activity, namely data structure extraction, i.e. finding the exact data structures and integrity constraints of the database. This process is made more complex than generally expected due to the fact that these structures and constraints often are not explicitly defined, but are translated into implicit constructs, controlled and managed through procedural code or user interface protocol for instance. This paper describes the problem of implicit structure elicitation. It proposes an analysis of this phenomenon, and of the techniques and heuristics that can be used in the elicitation process. It develops a set of efficient techniques and a strategy for the elicitation of one of the most common implicit construct, namely the foreign key. The paper also explains how DB-MAIN, a general-purpose database reverse engineering CASE tool, can help analysts elicit implicit constructs, and specifically foreign keys.
Proceedings of the Fourth Working Conference on Reverse Engineering
This paper presents a generic methodology for database reverse engineering comprising two main steps, namely Data structure extraction and Data structure conceptualization. The first process tries to elicit the physical data structures of the database, while the second one tries to recover the semantics of these structures. This methodology is illustrated by a small, but non-trivial, example through which a set of COBOL files is transformed into a relational database.
2009
Reverse engineering applied to databases permits to extract a conceptual schema that represents, at a higher level of abstraction, the database implementation. This resulting conceptual schema may be used to facilitate, among others, system maintenance, evolution and reuse. In the last years, the use of object-relational constructs was incorporated into database development. However, reverse engineering techniques for these specific constructs have not been yet provided. In this sense, the main goal of this paper is to present a method that considers these new constructs in the reverse engineering of an existing object-relational database. As a result of the process, our method returns an equivalent conceptual schema specified in UML (extended with a set of OCL integrity constraints) that represents, at a conceptual level, the database schema. We provide a prototype tool that implements our method for the Oracle9i database management system. context Checkpoint inv: Checkpoint.allInstances->isUnique(id) context Person inv: self.age > 10 context Person inv: Person.allInstances->isUnique(name) context Address inv: self.floor->size()<=10 self.town->size() <= 30 context Address inv: self.floor->size() <= 10 context Address inv: self.street->size() <= 40 3 Obtained CS
Colloque sur l'Optimisation et les Systèmes d'Information-COSI'2009, 2009
Extracting Conceptual Schema From Domain Ontology: A Web Application Reverse-Engineering Approach
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.