508 research outputs found

    Automated Verification of Design Patterns with LePUS3

    Get PDF
    Specification and [visual] modelling languages are expected to combine strong abstraction mechanisms with rigour, scalability, and parsimony. LePUS3 is a visual, object-oriented design description language axiomatized in a decidable subset of the first-order predicate logic. We demonstrate how LePUS3 is used to formally specify a structural design pattern and prove (‗verify‘) whether any JavaTM 1.4 program satisfies that specification. We also show how LePUS3 specifications (charts) are composed and how they are verified fully automatically in the Two-Tier Programming Toolkit

    On the Definition of Architecture, Design and Implementation

    Get PDF
    The terms architecture, design, and implementation are typically used informally in partitioning software specifications into three coarse strata of abstraction. But these strata are not well-defined in either research or practice and often overlap causing confusion and needless discussion. To remedy this problem we formally define two criteria: the Intension and the Locality Criteria, and show that the intuitive discrimination between the three terms architecture, design, and implementation is qualitative and not merely quantitative. We demonstrate that architectural styles are intensional and non-local; that design patterns are intensional and local; and that implementations are extensional and loca

    The Architecture of Complexity Revisited: Design Primitives for Ultra-Large-Scale Systems

    Get PDF
    As software-intensive systems continue to grow in scale and complexity the techniques that we have used to design and analyze them in the past no longer suffice. In this paper we look at examples of existing ultra-large-scale systems—systems of enormous size and complexity. We examine instances of such systems that have arisen spontaneously in nature and those that have been human-constructed. We distill from these example systems the design primitives that underlie them. We capture these design primitives as a set of tactics— fundamental architectural building-blocks—and argue that to efficiently build and analyze such systems in the future we should strongly consider employing such building-blocks

    A Longitudinal Study of Identifying and Paying Down Architectural Debt

    Full text link
    Architectural debt is a form of technical debt that derives from the gap between the architectural design of the system as it "should be" compared to "as it is". We measured architecture debt in two ways: 1) in terms of system-wide coupling measures, and 2) in terms of the number and severity of architectural flaws. In recent work it was shown that the amount of architectural debt has a huge impact on software maintainability and evolution. Consequently, detecting and reducing the debt is expected to make software more amenable to change. This paper reports on a longitudinal study of a healthcare communications product created by Brightsquid Secure Communications Corp. This start-up company is facing the typical trade-off problem of desiring responsiveness to change requests, but wanting to avoid the ever-increasing effort that the accumulation of quick-and-dirty changes eventually incurs. In the first stage of the study, we analyzed the status of the "before" system, which indicated the impacts of change requests. This initial study motivated a more in-depth analysis of architectural debt. The results of this analysis were used to motivate a comprehensive refactoring of the software system. The third phase of the study was a follow-on architectural debt analysis which quantified the improvements made. Using this quantitative evidence, augmented by qualitative evidence gathered from in-depth interviews with Brightsquid's architects, we present lessons learned about the costs and benefits of paying down architecture debt in practice.Comment: Submitted to ICSE-SEIP 201

    Teknik Pengambilan Data Praktikum Photovoltaic Dengan Memanfaatkan Jaringan Internet

    Get PDF
     Tujuan dari penelitian ini agar dapat menampilkan hasil pengukuran parameter modul photovoltaic secara real time menggunakan protokol komunikasi rs 485 sehingga dapat di akses di berbagai tempat dengan syarat ketersediaan jaringan dan perangkat kebutuhan. Metode dalam penelitian ini adalah pengujian terhadap pemanfaatan jaringan komunikasi menggunakan Rs485 dalam mengukur parameter Solar Modul (Modul Photovoltaic) kapasitas 120 Wp dengan membandingkan metode pengukuran secara manual yang umumnya dilakukan pada masa sebelum penerapan protokol covid 19 (pandemi).  Adapun data-data yang diperoleh dari pengukuran ini antara lain parameter suhu (T), Tegangan (V) Arus (I) maupun Daya (P). selama beberapa jam, hasil nilai pengukuran pun masing-masing dibuat dalam bentuk grafik dimana parameter-parameter tersebut ditampilkan dalam fungsi waktu (t). Hasil dari penelitian ini menunjukkan bahwa selisih antara pengukuran secara manual/langsung terhadap pengukuran menggunakan jaringan komunikasi Rs 485 rata rata 0,12 hingga 0,414  atau selisih persentase 0,001 hingga 0,146%. pengukuran menggunakan komputer dapat menghasilkan nilai grafik secara real time yang dapat mempermudah dalam pengambilan data praktikum

    KELAYAKAN PLC OUTSEAL PADA PENGONTROLAN MOTOR INDUKSI 3 FASA

    Get PDF
    KELAYAKAN PLC OUTSEAL PADA PENGONTROLAN MOTOR INDUKSI 3 FAS
    • 

    corecore