Renato de Jesus Manzoni, A. Nascimento, C. M. F. Rubira
Service-Oriented Architecture is an architectural model that aims to enhance the efficiency, agility, and productivity of an enterprise by structuring services in terms of services compositions, which can be executed either synchronously or asynchronously. Such architectures should meet the main dependability requirements (e.g. high availability, high reliability). The objective of this work is to describe a software infrastructure, called WSCA-DRIP, that operates in the communication between a web service's clients and the web service itself, in order to implement fault tolerance techniques that make effective use of exception handling of undependable existing services. Also, the proposed solution lies in systems structuring in terms of a collaborative realization of a given function by composed web services and a fault tolerance strategy by means of cooperative exception handling. Finally, the WSCA-DRIP infrastructure will be designed to be remotely accessible via web services technology, so that it can be easily reused during the implementation of different web services-based service oriented architectures.
{"title":"WSCA-DRIP: An Infrastructure to Web Service Composition Actions","authors":"Renato de Jesus Manzoni, A. Nascimento, C. M. F. Rubira","doi":"10.1109/LADCW.2011.20","DOIUrl":"https://doi.org/10.1109/LADCW.2011.20","url":null,"abstract":"Service-Oriented Architecture is an architectural model that aims to enhance the efficiency, agility, and productivity of an enterprise by structuring services in terms of services compositions, which can be executed either synchronously or asynchronously. Such architectures should meet the main dependability requirements (e.g. high availability, high reliability). The objective of this work is to describe a software infrastructure, called WSCA-DRIP, that operates in the communication between a web service's clients and the web service itself, in order to implement fault tolerance techniques that make effective use of exception handling of undependable existing services. Also, the proposed solution lies in systems structuring in terms of a collaborative realization of a given function by composed web services and a fault tolerance strategy by means of cooperative exception handling. Finally, the WSCA-DRIP infrastructure will be designed to be remotely accessible via web services technology, so that it can be easily reused during the implementation of different web services-based service oriented architectures.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126975560","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}
Classical requirements validation methods usually work with static behavioral models, and under the assumption that there are no dependencies and interactions between the requirements. Requirements verification is mostly done by statically analyzing the design artifacts and by running tests. This work presents a practical formal approach for requirements validation and verification (V&V) of dependable systems, under two different perspectives: development and acquisition. The approach considers the system's dynamic behavior that is formally represented as state chart assertions and validated using JUnit test scenarios. Runtime execution monitoring (REM) data is used to create JUnit tests to verify the system's behavior against the assertions. The V&V activities are supported by the State Rover tool. Two space systems case studies are briefly presented. As dependability often manifests as decidable system sequencing behaviors, the main contribution of this work is centered on the validation and verification of such behaviors.
{"title":"A Practical Formal Approach for Requirements Validation and Verification of Dependable Systems","authors":"M. B. Alves, D. Drusinsky, M. Shing","doi":"10.1109/LADCW.2011.14","DOIUrl":"https://doi.org/10.1109/LADCW.2011.14","url":null,"abstract":"Classical requirements validation methods usually work with static behavioral models, and under the assumption that there are no dependencies and interactions between the requirements. Requirements verification is mostly done by statically analyzing the design artifacts and by running tests. This work presents a practical formal approach for requirements validation and verification (V&V) of dependable systems, under two different perspectives: development and acquisition. The approach considers the system's dynamic behavior that is formally represented as state chart assertions and validated using JUnit test scenarios. Runtime execution monitoring (REM) data is used to create JUnit tests to verify the system's behavior against the assertions. The V&V activities are supported by the State Rover tool. Two space systems case studies are briefly presented. As dependability often manifests as decidable system sequencing behaviors, the main contribution of this work is centered on the validation and verification of such behaviors.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"60 6 Pt B 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115026460","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}
In this paper, we present a exception-flow analysis tool, called eFlow Mining, that automates the process of gathering and visualizing exception-handling constructs in multi-programming languages. More specifically, the current version of eFlow Mining focuses on code written using the. NET framework to help developers in inspecting applications either to improve them or to understand their exception handling behavior. eFlow Mining extracts metrics and information about the exception flows in. NET applications, providing different views of the exception handling. For instance, an Evolution View allows developers to visualize the behavior of multiple metrics over the application history. Use of this tool on five. NET applications demonstrates that the tool can be helpful to support developers building and evolving applications with appropriate error-handling strategies.
{"title":"eFlowMining: An Exception-Flow Analysis Tool for .NET Applications","authors":"Israel García, N. Cacho","doi":"10.1109/LADCW.2011.18","DOIUrl":"https://doi.org/10.1109/LADCW.2011.18","url":null,"abstract":"In this paper, we present a exception-flow analysis tool, called eFlow Mining, that automates the process of gathering and visualizing exception-handling constructs in multi-programming languages. More specifically, the current version of eFlow Mining focuses on code written using the. NET framework to help developers in inspecting applications either to improve them or to understand their exception handling behavior. eFlow Mining extracts metrics and information about the exception flows in. NET applications, providing different views of the exception handling. For instance, an Evolution View allows developers to visualize the behavior of multiple metrics over the application history. Use of this tool on five. NET applications demonstrates that the tool can be helpful to support developers building and evolving applications with appropriate error-handling strategies.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132798412","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}
C. Esposito, Domenico Cotroneo, R. Barbosa, N. Silva
Mission critical systems are increasingly been developed by means of Off-The-Shelf (OTS) items since this allows reducing development costs. Crucial issues to be properly treated are (i) to assess the quality of each potential OTSitem to be used and (ii) to select the one that better fits the system requirements. Despite the importance of these issues, the current literature lacks a systematic approach to perform the previous two operations. The aim of this paper is to present a framework that can overcome this lack. Reasoning from the available product assurance standards for certifying mission critical systems, the proposed approach is based on the customized quality model that describes the quality attributes. Such quality model will guide a proper evaluation of OTS products, and the choice of which product to use is based on the outcomes of such an evaluation process. This framework represents a key solution to have a dominant role in the market of mission critical systems due to the demanding request by manufactures of such systems for an efficient qualification/certification process.
{"title":"Qualification and Selection of Off-the-Shelf Components for Safety Critical Systems: A Systematic Approach","authors":"C. Esposito, Domenico Cotroneo, R. Barbosa, N. Silva","doi":"10.1109/LADCW.2011.13","DOIUrl":"https://doi.org/10.1109/LADCW.2011.13","url":null,"abstract":"Mission critical systems are increasingly been developed by means of Off-The-Shelf (OTS) items since this allows reducing development costs. Crucial issues to be properly treated are (i) to assess the quality of each potential OTSitem to be used and (ii) to select the one that better fits the system requirements. Despite the importance of these issues, the current literature lacks a systematic approach to perform the previous two operations. The aim of this paper is to present a framework that can overcome this lack. Reasoning from the available product assurance standards for certifying mission critical systems, the proposed approach is based on the customized quality model that describes the quality attributes. Such quality model will guide a proper evaluation of OTS products, and the choice of which product to use is based on the outcomes of such an evaluation process. This framework represents a key solution to have a dominant role in the market of mission critical systems due to the demanding request by manufactures of such systems for an efficient qualification/certification process.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114326175","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}
Since Critical Infrastructures (CI) strongly rely on network services, robustness testing is a key step to assure the resilience of such systems in the presence of abnormal situations. This work proposes a dynamic robustness test cases generation from state models, using an executable version of the model. A meta-heuristics search based algorithm is used to generate test cases taking into account the control and data aspects of the model.
{"title":"A Model-Based Approach for Robustness Test Generation","authors":"T. Yano, E. Martins, F. L. de Sousa","doi":"10.1109/LADCW.2011.16","DOIUrl":"https://doi.org/10.1109/LADCW.2011.16","url":null,"abstract":"Since Critical Infrastructures (CI) strongly rely on network services, robustness testing is a key step to assure the resilience of such systems in the presence of abnormal situations. This work proposes a dynamic robustness test cases generation from state models, using an executable version of the model. A meta-heuristics search based algorithm is used to generate test cases taking into account the control and data aspects of the model.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"198 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132296657","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}
Many of the problems found in the uses of exception handling are caused by the lack of testing and a priori design of the exceptional behavior. As a consequence, exceptions flow in unforeseen ways during the execution of a software system, causing a negative impact on reliability. This paper presents a new agile approach to test the exceptional behavior of a system. It supports developers in checking whether exceptions, at runtime, travel through the expected paths. It is agile because tests are written without the need for extra documentation. We present a preliminary evaluation of the proposed approach, where it helped us to uncover four bugs in a production system, two of them previously unknown. We have implemented the proposed approach as an extension of the JUnit framework.
{"title":"Towards Agile Testing of Exceptional Behavior","authors":"Rafael Di Bernardo, Fernando Castor, S. Soares","doi":"10.1109/LADCW.2011.12","DOIUrl":"https://doi.org/10.1109/LADCW.2011.12","url":null,"abstract":"Many of the problems found in the uses of exception handling are caused by the lack of testing and a priori design of the exceptional behavior. As a consequence, exceptions flow in unforeseen ways during the execution of a software system, causing a negative impact on reliability. This paper presents a new agile approach to test the exceptional behavior of a system. It supports developers in checking whether exceptions, at runtime, travel through the expected paths. It is agile because tests are written without the need for extra documentation. We present a preliminary evaluation of the proposed approach, where it helped us to uncover four bugs in a production system, two of them previously unknown. We have implemented the proposed approach as an extension of the JUnit framework.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116415655","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}
This Position Paper addresses some problems and challenges in safety assessment of current Critical Infrastructures introduced by system complexity and by the current 'safety process framework' adopted in most high risk domains.
{"title":"Challenges in Safety Assessment of Complex Critical Infrastructures","authors":"João Batista Camargo Jr., L. Vismari","doi":"10.1109/LADCW.2011.21","DOIUrl":"https://doi.org/10.1109/LADCW.2011.21","url":null,"abstract":"This Position Paper addresses some problems and challenges in safety assessment of current Critical Infrastructures introduced by system complexity and by the current 'safety process framework' adopted in most high risk domains.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"51 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114099193","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}
Software frameworks are constantly evolving, either by the introduction of new product features, bug fixes or new technology adoption. During the evolution of a framework, new exceptional conditions arise, requiring that exception handling strategies be constantly revisited. However, introducing exception handling changes in a software framework project is far from trivial. Exception handling elements are usually scattered through the system and changing them may have a ripple impact not only on the components of the framework, but also on a whole family of systems build based on the framework. Thus, continuous and proactive exception handling design analysis plays a key role in order to achieve success during software evolution. This paper presents our preliminary results on analyzing exceptional interfaces on evolving frameworks. Exceptional interface is defined as a list of possible exception types raised by a module. We analyzed two mainstream Java open-source frameworks, revealing: (i) the strategies adopted by framework developers regarding exceptional interfaces, and (ii) how basic properties of exceptional interfaces evolved during framework evolution.
{"title":"Analyzing Exceptional Interfaces on Evolving Frameworks","authors":"E. Barbosa, Alessandro F. Garcia","doi":"10.1109/LADCW.2011.19","DOIUrl":"https://doi.org/10.1109/LADCW.2011.19","url":null,"abstract":"Software frameworks are constantly evolving, either by the introduction of new product features, bug fixes or new technology adoption. During the evolution of a framework, new exceptional conditions arise, requiring that exception handling strategies be constantly revisited. However, introducing exception handling changes in a software framework project is far from trivial. Exception handling elements are usually scattered through the system and changing them may have a ripple impact not only on the components of the framework, but also on a whole family of systems build based on the framework. Thus, continuous and proactive exception handling design analysis plays a key role in order to achieve success during software evolution. This paper presents our preliminary results on analyzing exceptional interfaces on evolving frameworks. Exceptional interface is defined as a list of possible exception types raised by a module. We analyzed two mainstream Java open-source frameworks, revealing: (i) the strategies adopted by framework developers regarding exceptional interfaces, and (ii) how basic properties of exceptional interfaces evolved during framework evolution.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"46 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128017040","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}
This note describes some of the challenges in the assessment of the resilience of multiple interdependent infrastructures.
本说明描述了在评估多个相互依赖的基础设施的复原力时面临的一些挑战。
{"title":"Evaluating Resilience of Multiple Infrastructures: Some Initial Challenges","authors":"R. Bloomfield","doi":"10.1109/LADCW.2011.22","DOIUrl":"https://doi.org/10.1109/LADCW.2011.22","url":null,"abstract":"This note describes some of the challenges in the assessment of the resilience of multiple interdependent infrastructures.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128026343","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}
G. Carrozza, A. Napolitano, N. Laranjeiro, M. Viera
Web services are widely used as software components that must provide a robust interface to client applications. Robustness testing is an approach particularly suitable for detecting robustness issues in web services. In fact, several research works have been conducted in the past leading to the proposal of different robustness testing techniques for such environments. However, although of utmost importance, most techniques do not consider the needs of complex systems and services as the ones being developed by the software industry for business and safety critical scenarios. In this industrial practice paper we introduce an enhanced web services robustness testing approach that is being used at SESM Scarl. The proposed technique was built based on actual needs and has been applied in the context of an Air Traffic Control (ATC) application. Results show that companies can successfully use robustness testing during the development of highly complex service based applications.
{"title":"WSRTesting: Hands-On Solution to Improve Web Services Robustness Testing","authors":"G. Carrozza, A. Napolitano, N. Laranjeiro, M. Viera","doi":"10.1109/LADCW.2011.15","DOIUrl":"https://doi.org/10.1109/LADCW.2011.15","url":null,"abstract":"Web services are widely used as software components that must provide a robust interface to client applications. Robustness testing is an approach particularly suitable for detecting robustness issues in web services. In fact, several research works have been conducted in the past leading to the proposal of different robustness testing techniques for such environments. However, although of utmost importance, most techniques do not consider the needs of complex systems and services as the ones being developed by the software industry for business and safety critical scenarios. In this industrial practice paper we introduce an enhanced web services robustness testing approach that is being used at SESM Scarl. The proposed technique was built based on actual needs and has been applied in the context of an Air Traffic Control (ATC) application. Results show that companies can successfully use robustness testing during the development of highly complex service based applications.","PeriodicalId":383812,"journal":{"name":"2011 Fifth Latin-American Symposium on Dependable Computing Workshops","volume":"420 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121821962","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}