86 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
Protein Structure Data Management System
With advancement in the development of the new laboratory instruments and experimental techniques, the protein data has an explosive increasing rate. Therefore how to efficiently store, retrieve and modify protein data is becoming a challenging issue that most biological scientists have to face and solve. Traditional data models such as relational database lack of support for complex data types, which is a big issue for protein data application. Hence many scientists switch to the object-oriented databases since object-oriented nature of life science data perfectly matches the architecture of object-oriented databases, but there are still a lot of problems that need to be solved in order to apply OODB methodologies to manage protein data. One major problem is that the general-purpose OODBs do not have any built-in data types for biological research and built-in biological domain-specific functional operations. In this dissertation, we present an application system with built-in data types and built-in biological domain-specific functional operations that extends the Object-Oriented Database (OODB) system by adding domain-specific additional layers Protein-QL, Protein Algebra Architecture and Protein-OODB above OODB to manage protein structure data. This system is composed of three parts: 1) Client API to provide easy usage for different users. 2) Middleware including Protein-QL, Protein Algebra Architecture and Protein-OODB is designed to implement protein domain specific query language and optimize the complex queries, also it capsulates the details of the implementation such that users can easily understand and master Protein-QL. 3) Data Storage is used to store our protein data. This system is for protein domain, but it can be easily extended into other biological domains to build a bio-OODBMS. In this system, protein, primary, secondary, and tertiary structures are defined as internal data types to simplify the queries in Protein-QL such that the domain scientists can easily master the query language and formulate data requests, and EyeDB is used as the underlying OODB to communicate with Protein-OODB. In addition, protein data is usually stored as PDB format and PDB format is old, ambiguous, and inadequate, therefore, PDB data curation will be discussed in detail in the dissertation
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
Object Oriented Terrain Databases For Visual Simulators
Report on a project to develop methodologies and solutions to the problem of representation and utilization of dynamic terrain on a real-time simulator
Knowledge discOvery And daTa minINg inteGrated (KOATING) Moderators for collaborative projects
A major issue in any multidiscipline collaborative project is how to best share and simultaneously exploit different types of expertise, without duplicating efforts or inadvertently causing conflicts or loss of efficiency through misunderstanding of individual or shared goals. Moderators are knowledge based systems designed to support collaborative teams by raising awareness of potential problems or conflicts. However, the functioning of a Moderator is limited by the knowledge it has about the team members. Knowledge acquisition, learning and updating of knowledge are the major challenges for a Moderator's implementation. To address these challenges a Knowledge discOvery And daTa minINg inteGrated (KOATING) framework is presented for Moderators to enable them to continuously learn from the operational databases of the company and semi-automatically update their knowledge about team members. This enables the reuse of discovered knowledge from operational databases within collaborative projects. The integration of knowledge discovery in database (KDD) techniques into the existing Knowledge Acquisition Module of a moderator enables hidden data dependencies and relationships to be utilised to facilitate the moderation process. The architecture for the Universal Knowledge Moderator (UKM) shows how Moderators can be extended to incorporate a learning element which enables them to provide better support for virtual enterprises. Unified Modelling Language diagrams were used to specify the ways to design and develop the proposed system. The functioning of a UKM is presented using an illustrative example
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
- âŚ