24 research outputs found

    A Catalog of Reusable Design Decisions for Developing UML/MOF-based Domain-specific Modeling Languages

    Get PDF
    In model-driven development (MDD), domain-specific modeling languages (DSMLs) act as a communication vehicle for aligning the requirements of domain experts with the needs of software engineers. With the rise of the UML as a de facto standard, UML/MOF-based DSMLs are now widely used for MDD. This paper documents design decisions collected from 90 UML/MOF-based DSML projects. These recurring design decisions were gained, on the one hand, by performing a systematic literature review (SLR) on the development of UML/MOF-based DSMLs. Via the SLR, we retrieved 80 related DSML projects for review. On the other hand, we collected decisions from developing ten DSML projects by ourselves. The design decisions are presented in the form of reusable decision records, with each decision record corresponding to a decision point in DSML development processes. Furthermore, we also report on frequently observed (combinations of) decision options as well as on associations between options which may occur within a single decision point or between two decision points. This collection of decision-record documents targets decision makers in DSML development (e.g., DSML engineers, software architects, domain experts).Series: Technical Reports / Institute for Information Systems and New Medi

    Jig mata alat bagi kerja melarik bulat

    Get PDF
    Kerja melarik bulat merupakan kerja yang biasa dilakukan menggunakan mesin larik. Projek telah diinovasikan daripada permasalahan yang timbul dalam proses melarik bulat dengan menggunakan mesin larik konvensional sebelum ini. Bertitik tolak dari permasalahan tersebut, satu kajian dan perbincangan telah dijalankan bagi mencari penyelesaian kepada masalah tersebut. Jig mata alat melarik bulat ialah suatu projek hasil cetusan idea untuk penambahbaikan bagi menggantikan sistem lama yang menggunakan teknik menggerakkan paksi X dan Y. Ianya direka khas untuk memudahkan proses melarik bulat pada mesin larik konvensional. Dengan menggunakan jig mata alat bagi kerja melarik bulat ini proses kerja di mesin menjadi lebih singkat dan menjimatkan masa serta produk yang dihasilkan lebih bermutu. Bagi industri yang mementingkan produktiviti dan keselamatan operator semasa menjalankan proses pemesinan, jig mata alat bagi kerja melarik bulat direka bagi memastikan keselamatan pengguna terjamin. Kajian ini telah diuji keboleh fungsiannya serta beberapa aspek daripada 3 orang pakar bidang yang mempunyai kelayakan akedamik dan kemahiran yang diperakui. Purata nilai min sebanyak 3.7 menunjukkan skor analisis adalah tinggi. Pakar bidang bersetuju bahawa produk ini berfungsi dengan baik. Dengan ini produk ini telah berjaya dilaksanakan

    A Review of Software Reliability Testing Techniques

    Get PDF
    In the era of intelligent systems, the safety and reliability of software have received more attention. Software reliability testing is a significant method to ensure reliability, safety and quality of software. The intelligent software technology has not only offered new opportunities but also posed challenges to software reliability technology. The focus of this paper is to explore the software reliability testing technology under the impact of intelligent software technology. In this study, the basic theories of traditional software and intelligent software reliability testing were investigated via related previous works, and a general software reliability testing framework was established. Then, the technologies of software reliability testing were analyzed, including reliability modeling, test case generation, reliability evaluation, testing criteria and testing methods. Finally, the challenges and opportunities of software reliability testing technology were discussed at the end of this paper

    Actes des 2èmes journées sur l’Ingénierie Dirigée

    Get PDF
    National audienceL’ingénierie dirigée par les modèles (IDM), appelée en anglais MDE (Model-Driven Engineering) ou aussi MDD (Model-Driven Development) place le modèle au centre du processus de conception et permet à cette notion de modèle de passer d’un rôle contemplatif à un rôle unificateur vis-à-vis des autres activités du cycle de développement du logiciel. L’IDM doit alors être vu non pas comme une révolution, mais comme un moyen d’intégrationde différents espaces techniques pour aller vers une production automatisée des logiciels.L’ingénierie dirigée par les modèles apporte alors des solutions à la construction de ces nouveaux logiciels en proposant des approches de modélisation, de métamodélisation, de détermination du domaine, de transformation et de prise en compte des plates-formes. Ces approches sont accompagnées de démarches de conception et de moyens de génération de code, mais également de validation et de vérification de la conformité des modèles produits vis-à-vis des métamodèles. Elles sont proches des idées actuelles comme la programmation générative, les langages spécifiques de domaine (DSL), le MIC (Model Integrating Computing) ou encore les usines à logiciels (Software factories). Après le succès des journées IDM à Paris en 2005, la seconde édition de ces journées se déroule à Lille et a pour objectif de rassembler les chercheurs francophones intéressés par ce domaine et souhaitant participer à la structuration de cette communauté scientifique émergente

    Component-based software engineering: a quantitative approach

    Get PDF
    Dissertação apresentada para a obtenção do Grau de Doutor em Informática pela Universidade Nova de Lisboa, Faculdade de Ciências e TecnologiaBackground: Often, claims in Component-Based Development (CBD) are only supported by qualitative expert opinion, rather than by quantitative data. This contrasts with the normal practice in other sciences, where a sound experimental validation of claims is standard practice. Experimental Software Engineering (ESE) aims to bridge this gap. Unfortunately, it is common to find experimental validation efforts that are hard to replicate and compare, to build up the body of knowledge in CBD. Objectives: In this dissertation our goals are (i) to contribute to evolution of ESE, in what concerns the replicability and comparability of experimental work, and (ii) to apply our proposals to CBD, thus contributing to its deeper and sounder understanding. Techniques: We propose a process model for ESE, aligned with current experimental best practices, and combine this model with a measurement technique called Ontology-Driven Measurement (ODM). ODM is aimed at improving the state of practice in metrics definition and collection, by making metrics definitions formal and executable,without sacrificing their usability. ODM uses standard technologies that can be well adapted to current integrated development environments. Results: Our contributions include the definition and preliminary validation of a process model for ESE and the proposal of ODM for supporting metrics definition and collection in the context of CBD. We use both the process model and ODM to perform a series experimental works in CBD, including the cross-validation of a component metrics set for JavaBeans, a case study on the influence of practitioners expertise in a sub-process of component development (component code inspections), and an observational study on reusability patterns of pluggable components (Eclipse plug-ins). These experimental works implied proposing, adapting, or selecting adequate ontologies, as well as the formal definition of metrics upon each of those ontologies. Limitations: Although our experimental work covers a variety of component models and, orthogonally, both process and product, the plethora of opportunities for using our quantitative approach to CBD is far from exhausted. Conclusions: The main contribution of this dissertation is the illustration, through practical examples, of how we can combine our experimental process model with ODM to support the experimental validation of claims in the context of CBD, in a repeatable and comparable way. In addition, the techniques proposed in this dissertation are generic and can be applied to other software development paradigms.Departamento de Informática of the Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa (FCT/UNL); Centro de Informática e Tecnologias da Informação of the FCT/UNL; Fundação para a Ciência e Tecnologia through the STACOS project(POSI/CHS/48875/2002); The Experimental Software Engineering Network (ESERNET);Association Internationale pour les Technologies Objets (AITO); Association forComputing Machinery (ACM

    Framework for automatic verification of UML design models : application to UML 2.0 interactions

    Get PDF
    Software-intensive systems have become extremely complex and susceptible to defects and vulnerabilities. At the same time, the consequences of software errors have also become much more severe. In order to reduce the overall development cost and assure the security and reliability of the final product, it is of critical importance to investigate techniques able to detect defects as early as possible in the software development process, where the costs of repairing a software flaw are much lower than at the maintenance phase. In this research work, we propose an approach for detecting flaw at the design phase by combining two highly successful techniques in the information technology (IT) industry in the field of modeling languages and verification technologies. The first one is the Unified Modeling Language (UML). It has become the de facto language for software specification and design. UML is now used by a wide range of professionals with very different background. The second one is Model Checking , which is a formal verification technique that allows the desired properties to be verified through the inspection of all possible states of the model under consideration. Despite the fact that Model Checking gives significant capabilities to developers in order to create a secure design of the system, they are still not very popular in the UML community. There are many challenges faced by UML developers when it comes to combine UML with model checking (e.g., developer are not familiar with formal logics, the verification result is not in the UML notation, and the generation of the model checkers code from UML models is a problematic task). The proposed approach addresses these problems by implementing a new verification framework with support to property specification without using the complexity of formal languages, UML-like notation for the verification results, and a fully automatic verification proces

    Modellgetriebene Entwicklung inhaltsbasierter Bildretrieval-Systeme auf der Basis von objektrelationalen Datenbank-Management-Systeme

    Get PDF
    In this thesis, the model-driven software development paradigm is employed in order to support the development of Content-based Image Retrieval Systems (CBIRS) for different application domains. Modeling techniques, based on an adaptable conceptual framework model, are proposed for deriving the components of a concrete CBIRS. Transformation techniques are defined to automatically implement the derived application specific models in an object-relational database management system. A set of criteria assuring the quality of the transformation are derived from the theory for preserving information capacity applied in database design.In dieser Dissertation wird das Paradigma des modellgetriebenen Softwareentwurfs für die Erstellung von inhaltsbasierten Bildretrieval-Systemen verwendet. Ein adaptierbares Frameworkmodell wird für die Ableitung des Modells eines konkreten Bildretrieval-Systems eingesetzt. Transformationstechniken für die automatische Generierung von Implementierungen in Objektorientierten Datenbank-Management-Systemen aus dem konzeptuellen Modell werden erarbeitet. Die aus der Theorie des Datenbankentwurfs bekannten Anforderungen zur Kapazitätserhaltung der Transformation werden verwendet, um Kriterien für die erforderliche Qualität der Transformation zu definieren

    Action semantics of unified modeling language

    Get PDF
    The Uni ed Modeling Language or UML, as a visual and general purpose modeling language, has been around for more than a decade, gaining increasingly wide application and becoming the de-facto industrial standard for modeling software systems. However, the dynamic semantics of UML behaviours are only described in natural languages. Speci cation in natural languages inevitably involves vagueness, lacks reasonability and discourages mechanical language implementation. Such semi-formality of UML causes wide concern for researchers, including us. The formal semantics of UML demands more readability and extensibility due to its fast evolution and a wider range of users. Therefore we adopt Action Semantics (AS), mainly created by Peter Mosses, to formalize the dynamic semantics of UML, because AS can satisfy these needs advantageously compared to other frameworks. Instead of de ning UML directly, we design an action language, called ALx, and use it as the intermediary between a typical executable UML and its action semantics. ALx is highly heterogeneous, combining the features of Object Oriented Programming Languages, Object Query Languages, Model Description Languages and more complex behaviours like state machines. Adopting AS to formalize such a heterogeneous language is in turn of signi cance in exploring the adequacy and applicability of AS. In order to give assurance of the validity of the action semantics of ALx, a prototype ALx-to-Java translator is implemented, underpinned by our formal semantic description of the action language and using the Model Driven Approach (MDA). We argue that MDA is a feasible way of implementing this source-to-source language translator because the cornerstone of MDA, UML, is adequate to specify the static aspect of programming languages, and MDA provides executable transformation languages to model mapping rules between languages. We also construct a translator using a commonly-used conventional approach, in i which a tool is employed to generate the lexical scanner and the parser, and then other components including the type checker, symbol table constructor, intermediate representation producer and code generator, are coded manually. Then we compare the conventional approach with the MDA. The result shows that MDA has advantages over the conventional method in the aspect of code quality but is inferior to the latter in terms of system performance

    A model-based systems engineering methodology to make engineering analysis of discrete-event logistics systems more cost-accessible

    Get PDF
    This dissertation supports human decision-making with a Model-Based Systems Engineering methodology enabling engineering analysis, and in particular Operations Research analysis of discrete-event logistics systems, to be more widely used in a cost-effective and correct manner. A methodology is a collection of related processes, methods, and tools, and the process of interest is posing a question about a system model and then identifying and building answering analysis models. Methods and tools are the novelty of this dissertation, which when applied to the process will enable the dissertation's goal. One method which directly enables the goal is adding automation to analysis model-building. Another method is abstraction, to make explicit a frequently-used bridge to analysis and also expose analysis model-building repetition to justify automation. A third method is formalization, to capture knowledge for reuse and also enable automation without human interpreters. The methodology, which is itself a contribution, also includes two supporting tool contributions. A tool to support the abstraction method is a definition of a token-flow network, an abstract concept which generalizes many aspects of discrete-event logistics systems and underlies many analyses of them. Another tool to support the formalization method is a definition of a well-formed question, the result of an initial study of semantics, categories, and patterns in questions about models which induce engineering analysis. This is more general than queries about models in any specific modeling language, and also more general than queries answerable by navigating through a model and retrieving recorded information. A final contribution follows from investigating tools for the automation method. Analysis model-building is a model-to-model transformation, and languages and tools for model-to-model transformation already exist in Model-Driven Architecture of software. The contribution considers if and how these tools can be re-purposed by contrasting software object-oriented code generation and engineering analysis model-building. It is argued that both use cases share a common transformation paradigm but executed at different relative levels of abstraction, and the argument is supported by showing how several Operations Research analyses can be defined in an object-oriented way across multiple layered instance-of abstraction levels. Enabling Operations Research analysis of discrete-event logistics systems to be more widely used in a cost-effective and correct manner requires considering fundamental questions about what knowledge is required to answer a question about a system, how to formally capture that knowledge, and what that capture enables. Developments here are promising, but provide only limited answers and leave much room for future work.Ph.D
    corecore