37 research outputs found
Recommended from our members
Modeling and Simulating a Software Architecture Design Space
Frequently, a similar type of software system is used in the implementation of many different software applications. Databases are an example. Two software development approaches are common to Þll the need for instances from a class of similar systems: (1) repeated custom development of similar instances, one for each different application, or (2) development of one or more general purpose off-the-shelf systems that are used many times in the different applications. Each approach has advantages and disadvantages. Custom development can closely match the requirements of an application, but has an associated high development cost. General purpose systems may have a lower cost when amortized across multiple applications, but may not closely match the requirements of all the different applications. It can be difÞcult for application developers to determine which approach is best for their application. Do any of the existing off-the-shelf systems sufÞciently satisfy the application requirements? If so, which ones provide the best match? Would a custom implementation be sufÞciently better to justify the cost difference between an off-the-shelf solution? These difÞcult buy-versus-build decisions are extremely important in todayÕs fastpaced, competitive, unforgiving software application market. In this thesis we propose and study a software engineering approach for evaluating how well off-the-shelf and custom software architectures within the design space of a class of OODB systems satisfy the requirements for different applications. The approach is based on the ability to explicitly enumerate and represent the key dimensions of commonality and variability in the space of OODB designs. We demonstrate that modeling and simulation of OODB software architectures can be used to help software developers rapidly converge on OODB requirements for an application and identify OODB software architectures that satisfy those requirements. The technical focus of this work is on the circular relationships between requirements, software architectures, and system properties such as OODB functionality, size, and performance. We capture these relationships in a parametrized OODB architectural model, together with an OODB simulation and modeling tool that allows software developers to reÞne application requirements on an OODB, identify corresponding custom and offthe- shelf OODB software architectures, evaluate how well the software architecture properties satisfy the application requirements, and identify potential reÞnements to requirements
Query processing in temporal object-oriented databases
This PhD thesis is concerned with historical data management in the context of objectoriented
databases. An extensible approach has been explored to processing temporal object queries within a uniform query framework. By the uniform framework, we mean
temporal queries can be processed within the existing object-oriented framework that is extended from relational framework, by extending the existing query processing
techniques and strategies developed for OODBs and RDBs.
The unified model of OODBs and RDBs in UmSQL/X has been adopted as a basis for this purpose. A temporal object data model is thereby defined by incorporating a time
dimension into this unified model of OODBs and RDBs to form temporal relational-like cubes but with the addition of aggregation and inheritance hierarchies. A query algebra,
that accesses objects through these associations of aggregation, inheritance and timereference, is then defined as a general query model /language. Due to the extensive
features of our data model and reducibility of the algebra, a layered structure of query processor is presented that provides a uniforrn framework for processing temporal object
queries. Within the uniform framework, query transformation is carried out based on a set of transformation rules identified that includes the known relational and object rules plus those pertaining to the time dimension. To evaluate a temporal query involving a path with timereference, a strategy of decomposition is proposed. That is, evaluation of an enhanced path, which is defined to extend a path with time-reference, is decomposed by initially dividing the path into two sub-paths: one containing the time-stamped class that can be optimized by
making use of the ordering information of temporal data and another an ordinary sub-path (without time-stamped classes) which can be further decomposed and evaluated using
different algorithms. The intermediate results of traversing the two sub-paths are then joined together to create the query output. Algorithms for processing the decomposed query components, i. e., time-related operation algorithms, four join algorithms (nested-loop forward join, sort-merge forward join, nested-loop reverse join and sort-merge reverse join) and their modifications, have been presented with cost analysis and implemented with stream processing techniques using C++. Simulation results are also provided. Both cost analysis and simulation show the effects of time on the query processing algorithms: the join time cost is linearly increased with the expansion in the number of time-epochs (time-dimension in the case of a regular TS). It is also shown that using heuristics that make use of time information can lead to a significant time cost saving. Query processing with incomplete temporal data has also been discussed
HOOD : a Higher-Order Object-Oriented Database model and its implementation
Bibliography: pages 133-140.There is no accepted standard for the object-oriented database paradigm at present, which has led to different definitions of features and conformance requirements. HOOD is a Higher-Order Object-Oriented Database system which defines a meta-data model for specifying the requirements of an Object-Oriented Database, which provides uniformity and extensibility. From this specification and by making use of a comprehensive structure system, an exemplar or implementation model is defined. Among the constructs provided by the model are types, instances, objects, values, methods, base types, generic types and metatypes. The mechanisms of instantiation and subtyping allow for relationships between these constructs. Extensibility is provided in the model for types, base types, structures and methods. Uniformity is achieved by defining all constructs as instances and through the use of messages for all operations. There is only one form of object construct which provides persistence and identities. The complex values and extensibility of the model allow it to adapt in order to model the real world instead of adapting the real world to fit the model. We have implemented a subset of the structures and values defined in the model, provided persistence and identities for object, and included the various constructs mentioned above. The method language allows for the specification of methods, the passing of messages, and the use of complex values. The compiler performs type checking and resolution and generates instructions for an abstract machine which manipulates the database
Making object-oriented databases more knowledgeable (From ADAM to ABEL)
Tesis leida en la Universidad de Aberdeen. 178 p.The salient points of this thesis are as follows:
• Object-Oriented Databases can help in solving the impedance mismatch problem
by introducing methods. However, methods have sometimes been overused in the
sense th at the code encapsulated refers not only to how the operation is implemented
but also to other kinds of knowledge that are implicit in the code. The
disadvantages of this approach for modelling integrity constraints, user-defined relationships
and active behaviour are pointed out.
• The ADAM Object-Oriented Database has been extended to allow the designer
to specify integrity constraints declaratively. A constraint equation approach is
implemented th at supports the inheritance of constraints.
• A need for semantic-rich user-defined relationships has been identified. In this thesis,
relationships are represented as objects. An approach to enhance the semantics
of relationships in both its structural and behavioural aspects is presented. The
most novel idea of the approach presented is the support of the inferred properties
and the operational semantics of relationships.
• Active Databases have recently become an im portant area of research. This thesis
shows how to extend an Object-Oriented Database with active capabilities. The
principal contribution lies in representing as ‘first-class’ objects not only the active
rules but also the rule manager itself. Hence, besides handling active rules as
any other object in the system, future requirements can be supported just by
specialising the current rule manager.
• Active rules have been proposed for several purposes. Several examples, are given
of the direct use of rules. However, higher level tools can be provided of which rule
Extending functional databases for use in text-intensive applications
This thesis continues research exploring the benefits of using functional
databases based around the functional data model for advanced database
applications-particularly those supporting investigative systems. This is a
growing generic application domain covering areas such as criminal and military
intelligence, which are characterised by significant data complexity, large data
sets and the need for high performance, interactive use. An experimental
functional database language was developed to provide the requisite semantic
richness. However, heavy use in a practical context has shown that language
extensions and implementation improvements are required-especially in the
crucial areas of string matching and graph traversal. In addition, an
implementation on multiprocessor, parallel architectures is essential to meet the
performance needs arising from existing and projected database sizes in the
chosen application area. [Continues.
International Workshop on Description Logics : Bonn, May 28/29, 1994
This collection of papers forms the permanent record of the 1994 Description Logic Workshop, that was held at the Gustav Stresemann Institut in Bonn, Germany on 28 and 29 May 1994, immediately after the Fourth International Conference on Principles of Knowledge Representation and Reasoning. The workshop was set up to be as informal as possible, so this collection cannot hope to capture the discussions associated with the workshop. However, we hope that it will serve to remind participants of their discussion at the workshop, and provide non-participants with indications of the topics that were
discussed at the workshop. The workshop consisted of seven regular sessions and one panel session. Each regular session had about four short presentations on a single theme, but also had considerable time reserved for discussion. The themes of the sessions were Foundations of Description Logics, Architecture of Description Logics and Description Logic
Systems, Language Extensions, Expanding Description Logics, General Applications of Description Logics, Natural Language Applications of Description Logics, Connections
between Description Logics and Databases, and the Future of Description Logics and Description Logic Systems. The session on Foundations of Description Logics concentrated
on computational properties of description logics, correspondences between description logics and other formalisms, and on semantics of description logics, Similarly, there is discussion on how to develop tractable desription logics, for some notion of tractable, and
whether it is useful to worry about achieving tractability at all.
Several of the participants argued in favour of a very expressive description logic. This obviously precludes tractability or even decidability of complete reasoning. Klaus Schild proposed that for some purposes one could employ "model checking" (i .e., a closed world assumption) instead of "theorem proving," and has shown that this is still tractable for very large languages. Maurizio Lenzerini's opinion was that it is important to have decidable
languages. Tractability cannot be achieved in several application areas because there one needs very expressive constructs: e.g., axioms, complex role constructors, and cycles with fixed-point semantics. For Bob MacGregor, not even decidability is an issue since he claims that Loom's incomplete reasoner is sufficient for his applications. The discussion addressed the question of whether there is still need for foundations, and whether the work on foundation done until now really solved the problems that the designers of early DL systems had. Both questions were mostly answered in the affirmative, with the caveat that new research on foundations should make sure that it is concerned with "real" problems, and not just generates new problems. In the session on Architecture of Description Logics
and Description Logic Systems the participants considered different ways of putting together description logics and description logic systems. One way of doing this is to have a different kind of inference strategy for description logics, such as one based on intuitionistic logics or one based directly on rules of inference-thus allowing variant systems. Another way of modifying description logic systems is to divide them up in different ways, such as
making a terminology consist of a schema portion and a view portion. Some discussion in this session concerned whether architectures should be influenced by application areas, or even by particular applications. There was considerable discussion at the workshop on how Description Logics should be extended or expanded to make them more useful. There are several methods to do this. The first is to extend the language of descriptions, e.g ., to represent n-ary relations, temporal information, or whole-part relationships, all of which were
discussed at the workshop. The second is to add in another kind of reasoning, such as default reasoning, while still keeping the general framework of description logic
reasoning. The third is to incorporate descriptions or description-like constructs in a larger reasoner, such as a first order reasoner. This was the approach taken in OMEGA and is the approach being taken in the Loom project. There have been many extensions of the first two kinds proposed for description logics, including several presented at the workshop. One quest ion discussed at the workshop was whether these extensions fit in well with the
philosophy of description logic. Another question was whether the presence of many proposals for extensions means that description logics are easy to expand, or that description logics are inadequate representation formalisms? The general consensus was that description logics adequately capture a certain kind of core reasoning and that
they lend themselves to incorporation with other kinds of reasoning. Care must be taken, however, to keep the extended versions true to the goals of description logics. The sessions on Applications of Description Logics had presentations on applications of description logics in various areas, including configuration, tutoring, natural language
processing, and domain modeling. Most of these applications are research applications, funded by government research programs. There was discussion of what is needed to have more fielded applications of description logics. The session on Connections between Description Logics and Databases considered three kinds of connections between Description Logics and Databases:
1. using Description Logics for expressing
database schemas, including local schemas,
integrated schemas, and views, integrity constraints,
and queries;
2. using Description Logic reasoning for various
database-related reasoning, including schema integration
and validation, and query optimization, and
query validation and organization; and
3. making Description Logic reasoners more like
Database Mangagement Systems via optimization. All three of these connections are being actively investigated by the description logic community. The panel session on the Future of Description Logics and Description Logic Systems discussed where the future of description logics will lie. There seems to be a consensus that description logics must forge tighter connections with other formalisms, such as databases or object-oriented systems. In this way, perhaps, description logics will find more real applications
International Workshop on Description Logics : Bonn, May 28/29, 1994
This collection of papers forms the permanent record of the 1994 Description Logic Workshop, that was held at the Gustav Stresemann Institut in Bonn, Germany on 28 and 29 May 1994, immediately after the Fourth International Conference on Principles of Knowledge Representation and Reasoning. The workshop was set up to be as informal as possible, so this collection cannot hope to capture the discussions associated with the workshop. However, we hope that it will serve to remind participants of their discussion at the workshop, and provide non-participants with indications of the topics that were
discussed at the workshop. The workshop consisted of seven regular sessions and one panel session. Each regular session had about four short presentations on a single theme, but also had considerable time reserved for discussion. The themes of the sessions were Foundations of Description Logics, Architecture of Description Logics and Description Logic
Systems, Language Extensions, Expanding Description Logics, General Applications of Description Logics, Natural Language Applications of Description Logics, Connections
between Description Logics and Databases, and the Future of Description Logics and Description Logic Systems. The session on Foundations of Description Logics concentrated
on computational properties of description logics, correspondences between description logics and other formalisms, and on semantics of description logics, Similarly, there is discussion on how to develop tractable desription logics, for some notion of tractable, and
whether it is useful to worry about achieving tractability at all.
Several of the participants argued in favour of a very expressive description logic. This obviously precludes tractability or even decidability of complete reasoning. Klaus Schild proposed that for some purposes one could employ "model checking" (i .e., a closed world assumption) instead of "theorem proving," and has shown that this is still tractable for very large languages. Maurizio Lenzerini\u27s opinion was that it is important to have decidable
languages. Tractability cannot be achieved in several application areas because there one needs very expressive constructs: e.g., axioms, complex role constructors, and cycles with fixed-point semantics. For Bob MacGregor, not even decidability is an issue since he claims that Loom\u27s incomplete reasoner is sufficient for his applications. The discussion addressed the question of whether there is still need for foundations, and whether the work on foundation done until now really solved the problems that the designers of early DL systems had. Both questions were mostly answered in the affirmative, with the caveat that new research on foundations should make sure that it is concerned with "real" problems, and not just generates new problems. In the session on Architecture of Description Logics
and Description Logic Systems the participants considered different ways of putting together description logics and description logic systems. One way of doing this is to have a different kind of inference strategy for description logics, such as one based on intuitionistic logics or one based directly on rules of inference-thus allowing variant systems. Another way of modifying description logic systems is to divide them up in different ways, such as
making a terminology consist of a schema portion and a view portion. Some discussion in this session concerned whether architectures should be influenced by application areas, or even by particular applications. There was considerable discussion at the workshop on how Description Logics should be extended or expanded to make them more useful. There are several methods to do this. The first is to extend the language of descriptions, e.g ., to represent n-ary relations, temporal information, or whole-part relationships, all of which were
discussed at the workshop. The second is to add in another kind of reasoning, such as default reasoning, while still keeping the general framework of description logic
reasoning. The third is to incorporate descriptions or description-like constructs in a larger reasoner, such as a first order reasoner. This was the approach taken in OMEGA and is the approach being taken in the Loom project. There have been many extensions of the first two kinds proposed for description logics, including several presented at the workshop. One quest ion discussed at the workshop was whether these extensions fit in well with the
philosophy of description logic. Another question was whether the presence of many proposals for extensions means that description logics are easy to expand, or that description logics are inadequate representation formalisms? The general consensus was that description logics adequately capture a certain kind of core reasoning and that
they lend themselves to incorporation with other kinds of reasoning. Care must be taken, however, to keep the extended versions true to the goals of description logics. The sessions on Applications of Description Logics had presentations on applications of description logics in various areas, including configuration, tutoring, natural language
processing, and domain modeling. Most of these applications are research applications, funded by government research programs. There was discussion of what is needed to have more fielded applications of description logics. The session on Connections between Description Logics and Databases considered three kinds of connections between Description Logics and Databases:
1. using Description Logics for expressing
database schemas, including local schemas,
integrated schemas, and views, integrity constraints,
and queries;
2. using Description Logic reasoning for various
database-related reasoning, including schema integration
and validation, and query optimization, and
query validation and organization; and
3. making Description Logic reasoners more like
Database Mangagement Systems via optimization. All three of these connections are being actively investigated by the description logic community. The panel session on the Future of Description Logics and Description Logic Systems discussed where the future of description logics will lie. There seems to be a consensus that description logics must forge tighter connections with other formalisms, such as databases or object-oriented systems. In this way, perhaps, description logics will find more real applications