15 research outputs found

    Classifying and evaluating architecture design methods

    Get PDF
    The concept of software architecture has gained a wide popularity and is generally considered to play a fundamental role in coping with the inherent difficulties of the development of large-scale and complex software systems. This document first gives a definition of architectures. Second, a meta-model for architecture design methods is presented. This model is used for classifying and evaluating various architecture design approaches. The document concludes with the description of the identified problems

    Un système coopératif basé sur les transactions

    Get PDF
    Colloque avec actes et comité de lecture. nationale.National audienceLa conception ou la réalisation de tout projet un tant soit peu conséquent sous-entend l?implication d?un certain nombre de personnes, voire d?un certain nombre d?équipes ou d?entreprises. Outre le fait qu?ils travaillent tous sur le même projet, les différents acteurs coopèrent et collaborent. En effet la réalisation de tout projet n?est pas faite en une succession d?étapes menées par un seul acteur mais par une synergie d?acteurs coopérant à la réalisation d?un but commun. C?est le concept même d?ingénierie concourante. Celle-ci nécessite une coopération entre les différents acteurs et un échange des données produite par chacun d?entre eux. De plus en plus d?entreprises utilisant internet pour l?échange de données, les différents acteurs ne sont alors plus soumis à l?obligation de travailler dans un même lieu géographique. On parle alors d?entreprise virtuelle ou d?entreprise-projet si le travail en commun dure le temps d?un projet. Cependant, il ne suffit pas simplement d?échanger des données pour travailler ensemble, il faut aussi contrôler et gérer ces échanges. La collaboration impliquant une certaine concourance dans le travail de plusieurs acteurs, la production de différentes versions des documents échangés implique un contrôle des échanges. L?objectif de cet article est la description d?un système de coopération réellement distribué. La philosophie globale de notre système est la distribution du contrôle des échanges et l?accès aux données échangées de manière standard. Adoptant une approche transactionnelle pour la réalisation de notre système de coopération, nous avons formalisés notre système transactionnel coopératif et notre critère de correction distribué (DisCOO-sérialisabilité). Dans cet article, nous nous servons d?un exemple support pour illustrer notre propos et appliquer cette formalisation à un cas concret. Nous présentons le prototype DisCOO (réalisé en Java et Prolog au-dessus d?un ORB) mettant en oeuvre notre système

    Comparative analysis of PropertyFirst vs. EntityFirst modeling approaches in graph databases

    Get PDF
    While relational databases still hold the primary position in the database technology domain, and have been for the longest time of any Computer Science technology has since its inception, for the first time the relational databases now have valid and worthy opponent in the NoSQL database movement. NoSQL databases, even though not many people have heard of them, with a significant number of Computer Science people included, have spread rapidly in many shapes and forms and have done so in quite a chaotic fashion. Similarly to the way they appeared and spread, design and modeling for them have been undertaken in an unstructured manner. Currently they are subcategorized in 4 main groups as: Key-value stores, Column Family stores, Document stores and Graph databases. In this thesis, different modeling approaches for graph databases, applied to the same domain are analyzed and compared, especially from a design perspective. The database selected here as the implemented technology is Neo4J by Neo Technologies and is a directed property graph database, which means that relationships between its data entities must have a starting and ending (or source and destination) node. This research provides an overview of two competing modeling approaches and evaluates them in a context of a real world example. The work done here shows that both of these modeling approaches are valid and that it is possible to fully develop a data model based on the same domain data with both approaches and that both can be used later to support application access in a similar fashion. One of the models provides for faster access to data, but at a cost of higher maintenance and increased complexity

    Transactions and data management in NoSQL cloud databases

    Get PDF
    NoSQL databases have become the preferred option for storing and processing data in cloud computing as they are capable of providing high data availability, scalability and efficiency. But in order to achieve these attributes, NoSQL databases make certain trade-offs. First, NoSQL databases cannot guarantee strong consistency of data. They only guarantee a weaker consistency which is based on eventual consistency model. Second, NoSQL databases adopt a simple data model which makes it easy for data to be scaled across multiple nodes. Third, NoSQL databases do not support table joins and referential integrity which by implication, means they cannot implement complex queries. The combination of these factors implies that NoSQL databases cannot support transactions. Motivated by these crucial issues this thesis investigates into the transactions and data management in NoSQL databases. It presents a novel approach that implements transactional support for NoSQL databases in order to ensure stronger data consistency and provide appropriate level of performance. The novelty lies in the design of a Multi-Key transaction model that guarantees the standard properties of transactions in order to ensure stronger consistency and integrity of data. The model is implemented in a novel loosely-coupled architecture that separates the implementation of transactional logic from the underlying data thus ensuring transparency and abstraction in cloud and NoSQL databases. The proposed approach is validated through the development of a prototype system using real MongoDB system. An extended version of the standard Yahoo! Cloud Services Benchmark (YCSB) has been used in order to test and evaluate the proposed approach. Various experiments have been conducted and sets of results have been generated. The results show that the proposed approach meets the research objectives. It maintains stronger consistency of cloud data as well as appropriate level of reliability and performance

    A Framework for Data Sharing in Computer Supported Cooperative Environments

    Get PDF
    Concurrency control is an indispensable part of any information sharing system. Co-operative work introduces new requirements for concurrency control which cannot be met using existing applications and database management systems developed for non-cooperative environments. The emphasis of concurrency control in conventional database management systems is to keep users and their applications from inadvertently corrupting data rather than support a workgroup develop a product together. This insular approach is necessary because applications that access the database have been built with the assumptions that they have exclusive access to the data they manipulate and that users of these applications are generally oblivious of one another. These assumptions, however, are counter to the premise of cooperative work in which human-human interaction is emphasized among a group of users utilizing multiple applications to jointly accomplish a common goal. Consequently, applying conventional approaches to concurrency control are not only inappropriate for cooperative data sharing but can actually hinder group work. Computer support for cooperative work must therefore adopt a fresh approach to concurrency control which does promote group work as much as possible, but without sacrifice of all ability to guarantee system consistency. This research presents a new framework to support data sharing in computer supported cooperative environments; in particular, product development environments where computer support for cooperation among distributed and diverse product developers is essential to boost productivity. The framework is based on an extensible object-oriented data model, where data are represented as a collection of interrelated objects with ancillary attributes used to facilitate cooperation. The framework offers a flexible model of concurrency control, and provides support for various levels of cooperation among product developers and their applications. In addition, the framework enhances group activity by providing the functionality to implement user mediated consistency and to track the progress of group work. In this dissertation, we present the architecture of the framework; we describe the components of the architecture, their operation, and how they interact together to support cooperative data sharing

    University of Wollongong Postgraduate Handbook 2007

    Get PDF

    University of Wollongong Postgraduate Calendar 2003

    Get PDF

    University of Wollongong Postgraduate Calendar 2001

    Get PDF
    corecore