47 research outputs found

    Önellenőrzés és futásidejű verifikáció számítógépes programokban = Self-checking and run-time verification in computer programs

    Get PDF
    A kutatás eredménye egy olyan, futásidejű hibadetektálásra alkalmas módszerkészlet kidolgozása számítógépes programokhoz, amely formálisan megalapozott és illeszkedik a modell alapú tervezési folyamathoz. A futásidejű verifikáció matematikai alapja egy általunk definiált, UML állapottérképekhez illesztett temporális logikai nyelv (SC-LTL) valamint az ehhez kidolgozott gyors és kis erőforrásigényű ellenőrzési algoritmus. Az ellenőrzést megvalósító forráskód részletek (assertions) generálására automatikus kódgenerátort fejlesztettünk. A módszerkészlet alapján a futásidejű verifikáció két szinten végezhető el: (1) A fejlesztés korai fázisaiban (a követelményanalízis után) a tervező a program biztonságos működéséhez tartozó követelményeket formalizálja az SC-LTL temporális logika segítségével. Ezeket futásidőben a programba illesztett kódrészletek segítségével ellenőrizzük. Így a későbbi fejlesztési fázisokban előforduló tervezési hibák következményei is kimutathatók. (2) A fejlesztés előrehaladtával rendelkezésre álló részletes viselkedési modell mint referencia alapján történik a program állapot- és akciószekvenciáinak teljes ellenőrzése, a modellből szintén automatikusan generált, futásidejű monitorozást biztosító úgynevezett watchdog kód segítségével. Ennek célja elsősorban az implementációs hibák és a működési hibák (tranziens hardver hibák) felderítése. A hibadetektálás módszerkészletét kiegészítettük a hibakezelés modellezésére és verifikációjára szolgáló eljárásokkal. | The main result of the research is the elaboration of a set of methods that can be applied for the run-time verification of computer programs. These methods are formally proven and fit well to the model based software development process. The mathematical basis of run-time verification is our temporal logic language (SC-LTL) that is based on UML statechart diagrams, and the corresponding fast and low resource-demanding checker algorithm. To derive the assertions (i.e., the program code snippets that implement the checking), we have developed an automatic source code generator. On the basis of this set of methods, run-time checking of program execution is supported at two levels: (1) In the early phases of development the designer can formalize the program safety and liveness requirements using SC-LTL. These requirements are checked in run-time by the automatically generated assertions. This way design errors introduced in later design phases can also be detected. (2) The full checking of the state- and action sequences of program execution is based on a detailed design model constructed in the last development phases. The run-time monitoring is performed by a so-called watchdog code that is generated from the fully elaborated statechart model automatically. This is able to detect both implementation and operational errors. To complete the error detection framework, we proposed a statechart based method for the modeling and verification of run-time exception handling

    Pengkombinasian Pohon Keputusan Data Pencilan Kelas Dan Pohon Keputusan Data Normal Untuk Peningkatan Akurasi Prediksi Cacat Perangkat Lunak

    Get PDF
    Keberadaan pencilan dalam set data prediksi cacat perangkat lunak memunculkan dua pilihan penanganan, yaitu apakah tetap digunakan dengan mengabaikan keberadaannya sebagai pencilan, ataukah dihapuskan dari set data uji coba. Pengabaian keberadaan pencilan dalam set data uji menghasilkan akurasi hasil prediksi yang secara signifikan lebih rendah dibandingkan dengan jika pencilan tersebut dihapuskan dari set data uji coba. Dalam paper ini diusulkan utilisasi pencilan kelas dalam set data prediksi cacat perang kat lunak untuk meningkatkan kinerja sistem prediksi cacat perangkat lunak. Metode yang diusulkan terdiri dari proses prediksi pencilan kontekstual dari set data uji, menggunakan model prediksi berbasis pohon keputusan tunggal. Selanjutnya dilakukan dengan proses prediksi label kelas cacat perangkat lunak menggunakan dua buah model prediksi berbasis pohon keputusan tunggal, yang masing-masing berfungsi untuk melakukan prediksi cacat perangkat lunak terhadap subset data normal dan subset data pencilan. Hasil pengujian terhadap lima set data NASA dari repository PROMISE menunjukkan bahwa metode yang diusulkan memiliki kinerja akurasi yang lebih baik dibandingkan penggunaan algoritma J48 yang mengabaikan keberadaan pencilan, maupun yang menghapuskan pencilan dari set data sampel pengujian

    Pattern languages in HCI: A critical review

    Get PDF
    This article presents a critical review of patterns and pattern languages in human-computer interaction (HCI). In recent years, patterns and pattern languages have received considerable attention in HCI for their potential as a means for developing and communicating information and knowledge to support good design. This review examines the background to patterns and pattern languages in HCI, and seeks to locate pattern languages in relation to other approaches to interaction design. The review explores four key issues: What is a pattern? What is a pattern language? How are patterns and pattern languages used? and How are values reflected in the pattern-based approach to design? Following on from the review, a future research agenda is proposed for patterns and pattern languages in HCI
    corecore