{"title":"An Approach to Modelling and Evaluating AGG Based Reliable Software Systems","authors":"Chen Li, Linpeng Huang, Luxi Chen, Xiwen Wu","doi":"10.1109/TASE.2014.22","DOIUrl":"https://doi.org/10.1109/TASE.2014.22","url":null,"abstract":"AGG is a well established development environment which is used to model software systems in terms of graphs. Though AGG provides an appropriate basis for system modelling and verification, it can neither analyze nor evaluate the system reliability. In this paper, we propose an AGG-based strategy which, by combining generalized stochastic petri net (GSPN) and tools for reliability analysis, supports software system reliability modelling and evaluation. This work expands this idea in three directions: First, we give an AGG reliability model in which we add error attribute to AGG graph for capturing system error information, and at the same time performing the system error state transition through the AGG production. Second, we present how to map rules from the AGG reliability model into the GSPN one, which in turn can be used for reliability evaluation. The other direction is to use a Client/Server application to demonstrate our approach.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132367289","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Branch Obfuscation Using \"Black Boxes\"","authors":"Nan Zong, Chunfu Jia","doi":"10.1109/TASE.2014.19","DOIUrl":"https://doi.org/10.1109/TASE.2014.19","url":null,"abstract":"The path constraints are leaked by conditional jump instructions which are the binary form of software's internal logic. Based on the problem of above, reverse engineering using path-sensitive techniques such as symbolic execution and theorem proving poses a new threat to software intellectual property protection. In order to mitigate path information leaking problem, we propose a novel obfuscation technique called \"black box\" to combat the state-of-art reverse engineering techniques. By handling the branch conditions as knowledge embedded into black boxes, the black boxes can simulate the behaviors of the obfuscated branch logic, while the original branch condition is hidden. We show that based on the incomprehensibility of black boxes, revealing branch conditions hidden by our method is considerably harder due to the high computational cost. The results of the experiment further indicate that besides providing effective protection, our method is also a light-weight branch obfuscation scheme.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125817073","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Contemplating the Addition of Stochastic Behaviour to Hybrid Event-B","authors":"R. Banach","doi":"10.1109/TASE.2014.7","DOIUrl":"https://doi.org/10.1109/TASE.2014.7","url":null,"abstract":"In real hybrid and cyber physical systems, noise is a onstant accompaniment to (and distraction from) the deterministic behaviour that is ideally desired. Nevertheless, most formalisms for such systems restrict to the deterministic realm. This also includes Hybrid Event-B, an extension of Event-B that caters for continuous behaviour as first class citizen. The incorporation of stochastic behaviour into Hybrid Event-B is investigated. Some essential elements of this enhancement are discussed, and a small case study is explored.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121218906","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"On Statistical Model Checking with PLASMA","authors":"Axel Legay, Sean Sedwards","doi":"10.1109/TASE.2014.20","DOIUrl":"https://doi.org/10.1109/TASE.2014.20","url":null,"abstract":"This paper surveys the main functionalities of the PLASMA statistical model checking platform developed at India.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115620253","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Modeling Social Networking Privacy","authors":"Carolina Dania, M. Clavel","doi":"10.1109/TASE.2014.21","DOIUrl":"https://doi.org/10.1109/TASE.2014.21","url":null,"abstract":"In this paper we propose to use a formal language, called Secure UML, to model social networking privacy. Secure UML is a language for specifying role-based static and dynamic access control policies, the latter being policies that depend on the run-time satisfaction of specific constraints (e.g., the privacy settings in social networking sites). By using a formal language for modeling social networking privacy, we provide a rigorous, unambiguous description of the policies, and a solid, much-needed formal foundations for tools to validate them and to perform change impact analysis. To illustrate our proposal, as well as its benefits, we use Facebook as a case study, in particular, the latest two versions of Facebook's policy for posting and tagging.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"65 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126645685","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Verifying Preemptive Kernel Code with Preemption Control Support","authors":"Yu Guo, Haozhong Zhang","doi":"10.1109/TASE.2014.29","DOIUrl":"https://doi.org/10.1109/TASE.2014.29","url":null,"abstract":"Kernel preemption is an important feature among mainstream OS kernels. It allows that a kernel thread can be preempted by another kernel thread by performing context switch. A kernel thread can access shared data by disabling kernel preemption temporarily without turning off interruption. Kernel preemption and preemption control reduce kernel response time, but at the same time make kernels more difficult to develop or verify. It is difficult to define their clear semantics and reason about preemptive kernel code. In this paper, we propose a verification framework to verify preemptive kernel code with kernel preemption control. In the framework, we cannot only verify the implementation of preemption control, but also verify the preemptive kernel code which may turn-on/off kernel preemption. The basic idea of the framework is that we build an intermediate abstract layer, where kernel threads, preemption status and interrupt context are made into abstract resources such that we can easily specify the global invariant of the kernel and reason about code with the help of abstract knowledge.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"abs/2209.02010 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127787990","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Trace-Based Temporal Verification for Message-Passing Programs","authors":"Jinjiang Lei, Z. Qiu, Zhong Shao","doi":"10.1109/TASE.2014.14","DOIUrl":"https://doi.org/10.1109/TASE.2014.14","url":null,"abstract":"Verification of concurrent systems is difficult because of their inherent nondeterminism. Modern verification requires clean specifications of inter-thread interferences and modular reasoning over separated components. But for message-passing models, a general reasoning system, which meets these standards, is still in demand. Here we propose a new logic for verifying distributed programs modularly. We concretize the concept of event traces to represent interactions among distributed agents, and constrain the environmental interferences by logical invariants. The verification is compositional w.r.t. agents as long as some inter-agent constraints are satisfied. Using this logic we successfully verified two classic message-passing algorithms: leader election and merging network.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130391002","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Xinrui Guo, Xiaoyu Song, W. Hung, M. Gu, Jiaguang Sun
{"title":"Fault Localization with Partially Reliable Test Results Using Dempster-Shafer Theory","authors":"Xinrui Guo, Xiaoyu Song, W. Hung, M. Gu, Jiaguang Sun","doi":"10.1109/TASE.2014.36","DOIUrl":"https://doi.org/10.1109/TASE.2014.36","url":null,"abstract":"Fault localization is a critical procedure in software development process. Previous studies based their research on the precondition that test results are conveniently acquired and 100% correct, which does not happen in the real world. In this article, we propose the concept of γ- reliable test-suite to demonstrate the potential unreliability of test results. By modeling this unreliability using Dempster-Shafer theory, we managed to pin down the faults under the new situation. Experiments were conducted on both 100%-reliable and partial-reliable Siemens Test Suite and compared against several known spectrum-based localization algorithms, namely Naish1, Naish2, Binary, Wong1 and Russel&Rao. The results proved the prior performance of our approach. We conclude that fault localization problem is more precisely modeled by Dempster-Shafer theory than common statistical theory.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"94 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115155394","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Behaviour Inference for Deadlock Checking","authors":"Ka I Pun, M. Steffen, V. Stolz","doi":"10.1109/TASE.2014.23","DOIUrl":"https://doi.org/10.1109/TASE.2014.23","url":null,"abstract":"This paper extends our behavioural type and effect system for detecting deadlocks by polymorphism and formalizing type inference (with respect to lock types). Our inference is defined for a simple concurrent, first-order language. From the inferred effects, after suitable abstractions to keep the state space finite, we either obtain the verdict that the program will not deadlock, or that it may deadlock. We show soundness and completeness of the type inference.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"35 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116685925","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Spotlight Abstraction with Shade Clustering -- Automatic Verification of Parameterised Systems","authors":"Nils Timm","doi":"10.1109/TASE.2014.17","DOIUrl":"https://doi.org/10.1109/TASE.2014.17","url":null,"abstract":"Parameterised verification is concerned with checking global properties of software systems composed of an arbitrary number of processes. A promising approach to this generally undecidable problem is combining symmetry arguments with spotlight abstraction. This combination allows to construct small abstract models of parameterised systems on which the properties can be checked. Spotlight abstraction partitions the systems processes into a spotlight and a shade. The processes in the shade are summarised into a single approximative component and the inherent loss of information is modelled by a third truth value unknown. Thus, a verification run may also return unknown, which does not allow to draw any conclusions whether the system satisfies the property or not. Here we introduce an extension of spotlight abstraction called shade clustering, which allows to divide the shade into multiple approximative components, and thus, to preserve more definite information in the abstract model. Finding suitable clusters is, however, not straightforward. Moreover, an inadequate clustering can easily lead to an unnecessary explosion of the abstract state space. Therefore, we also present a fully automatic abstraction refinement framework for verifying parameterised systems. Based on abstract counterexamples, refinement is iteratively performed by either adding new predicates, shifting processes from the shade to the spotlight, or building appropriate shade clusters. Experimental results show that our shade clustering-based approach can significantly reduce the number of necessary refinement steps and thus speed up parameterised verification.","PeriodicalId":371040,"journal":{"name":"2014 Theoretical Aspects of Software Engineering Conference","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126857101","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}