2005
Journal article
Unknown
Interoperability testing of web services for e-learning
Polini A.Web Services technologies seem to open interesting unexplored scenarios in the e-Learning domain. Particularly appealing is the possibility of defining and standardizing Services that when implemented and composed, will result in complex e-learning applications. However an agreed standard specification per se is not sufficient, rather methodologies for validating conformance against it must also be released. This paper discusses current approaches standardise Web Service specification and implementation and outlines an approach to conformance verification of services through testing, aiming at reducing the risk of interoperability issues at execution time.Source: Forschungsberichte des Fachbereichs Elektrotechnik & Informationstechnik 12 (2005): 495–497.
See at:
CNR ExploRA
2004
Conference article
Unknown
Early performance testing of distributed software applications
Denaro G., Polini A., Emmerich W.Performance characteristics, such as response time, throughput and scalability, are key quality attributes of distributed applications. Current practice, however, rarely applies systematic techniques to evaluate performance characteristics. We argue that evaluation of performance is particularly crucial in early development stages, when important architectural choices are made. At first glance, this contradicts the use of testing techniques, which are usually applied towards the end of a project. In this paper, we assume that many distributed systems are built with middleware technologies,such as the Java 2 Enterprise Edition (J2EE) or the Common Object Request Broker Architecture (CORBA).These provide services and facilities whose implementations are available when architectures are defined. We also note that it is the middleware functionality, such as transaction and persistence services, remote communication primitives and threading policy primitives, that dominate distributed system performance. Drawing on these observations, this paper presents a novel approach to performance testing of distributed applications. We propose to derive application-specific test cases from architecture designs so that performance of a distributed application can be tested using the middleware software at early stages of a development process.We report empirical results that support the viability of the approach.Source: Fourth International Workshop on Software and Performance WOSP 2004, pp. 94–103, California, USA, January 14-16
See at:
CNR ExploRA
2005
Report
Open Access
Interoperability testing of web services for e-learning
Polini A.Web Services technologies seem to open interesting unexplored scenarios in the e-Learning domain. Particularly appealing is the possibility of defining and standardizing Services that when implemented and composed, will result in complex e-learning applications. However an agreed standard specification per se is not sufficient, rather methodologies for validating conformance against it must also be released. This paper discusses current approaches standardise Web Service specification and implementation and outlines an approach to conformance verification of services through testing, aiming at reducing the risk of interoperability issues at execution time.Source: ISTI Technical reports, 2005
See at:
ISTI Repository | CNR ExploRA
2006
Journal article
Unknown
Audition of Web services for testing conformance to open specified protocols
Bertolino A., Frantzen L., Polini A., Tretmans J.A Web Service (WS) is a type of component specifically conceived for distributed machine-to-machine interaction. Interoperability between WSs involves both data and messages exchanged and protocols of usage, and is pursued via the establishment of standard specifications to which service providers must conform. In previous work we have envisaged a framework for WS testing. Within this framework, this paper focuses on how the intended protocol of access for a standard service could be specified, and especially on how the conformance of a service instance to this specified protocol can then be tested. We propose to augment the WSDL description with a UML2.0 Protocol State Machine (PSM) diagram. The PSM is intended to express how, and under which conditions, the service provided by a component through its ports and interfaces can be accessed by a client. We then propose to translate the PSM to a Symbolic Transition System, to which existing formal testing theory and tools can be readily applied for conformance evaluation. A simple example illustrates the approach and highlights the peculiar challenges raised by WS conformance testing.Source: Lecture notes in computer science 3938 (2006): 1–25.
See at:
CNR ExploRA
2007
Conference article
Restricted
Architectural verification of black-box component-based systems
Bertolino A., Muccini H., Polini A.We introduce an original approach, which combines monitoring and model checking techniques into a comprehensive methodology for the architectural verification of Component-based systems. The approach works by first capturing the traces of execution via the instrumented middleware; then, the observed traces are reverse engineered into Message Sequence Charts, which are then checked for compliance to the Component-based Software Architecture, using a model checker. The methodology has been conceived for being applied indifferently for validating the system in house before deployment and for continuous validation in the field following evolution. A case study for the first case is here illustrated.Source: RISE 2006 Third International Workshop, pp. 98–113, Geneva, Switzerland, 13-15 September 2006
DOI: 10.1007/978-3-540-71876-5Metrics:
See at:
www.springerlink.com | CNR ExploRA
2007
Conference article
Restricted
Monitoring architectural properties in dynamic component-based systems
Muccini H., Polini A., Ricci F., Bertolino A.Modern systems are increasingly required to be capable to evolve at run-time, in particular allowing for the dynamic plugging of new features. It is important that this evolution happens preserving some established properties (which can concern the structure, the interaction patterns, or crucial extra-functional properties, such as reliability or security), and due to dynamicity this needs to be checked at run-time, as the changes occur. In this work we consider evolving component-based systems formed by a kernel architecture to which new components can be plugged in at run-time, and introduce the MOSAICO approach for the run-time monitoring of architectural properties. MOSAICO uses Aspect-oriented technologies for instrumenting and monitoring the system according to selected architectural properties. MOSAICO can handle evolving black-box component systems since it continuously watches the events occurring at the extension points of the kernel architecture.The application of a prototype implementation of MOSAICO, capable to handle interaction pattern properties, is illustrated on the NewsFeeder case study.Source: Component-Based Software Engineering. 10th International Symposium CBSE 2007, pp. 124–139, Medford, MA, USA, 9-11 July 2007
DOI: 10.1007/978-3-540-73551-9Metrics:
See at:
www.springerlink.com | CNR ExploRA
2007
Journal article
Closed Access
Testing software components for integration: a survey of issues and techniques
Rehman M. J., Jabeen F., Bertolino A., Polini A.Component-based development has emerged as a system engineering approach that promises rapid software development with fewer resources. Yet, improved reuse and reduced cost benefits from software components can only be achieved in practice if the components provide reliable services, thereby rendering component analysis and testing a key activity. This paper discusses various issues that can arise in component testing by the component user at the stage of its integration within the target system. The crucial problem is the lack of information for analysis and testing of externally developed components. Several testing techniques for component integration have recently been proposed. These techniques are surveyed here and classified according to a proposed set of relevant attributes. The paper thus provides a comprehensive overview which can be useful as introductory reading for newcomers in this research field, as well as to stimulate further investigation. Copyright 2006 John Wiley & Sons, Ltd.Source: Software testing, verification & reliability 17 (2007): 95–133. doi:10.1002/stvr.357
DOI: 10.1002/stvr.357Metrics:
See at:
Software Testing Verification and Reliability | onlinelibrary.wiley.com | CNR ExploRA
2005
Conference article
Closed Access
The audition framework for testing web services interoperability
Antonia Bertolino, Andrea PoliniService oriented architectures and Web services are emerging technologies, which have overall inherited problems and advantages from the component-based approach, but exacerbated the aspects of loose coupling, distribution and dynamism of "components", here elements furnishing published services on external client requests. In this paper, we highlight the urgent need for methodologies supporting Web services reliable interaction, and in particular deal with testing concerns. We then propose a framework that extends UDDI registry role from the current one of a "passive" service directory, to also sort of an accredited testing organism, which validates service behaviour before actually registering it. This testing stage (called audition) mainly focuses on interoperability issues, so to facilitate the coordination among services registered at the same UDDI. The audition needs to rely on a Web service specification augmented with information on how the service has to be invoked. We propose that this information is given in the form of a protocol state machine, which is a newly introduced behaviour diagram of the UML 2.0.Source: 31st Euromicro Conference on Software Engineering and Advanced Applications, pp. 134–142, Porto, 30 Aug.-3 Sept. 2005
DOI: 10.1109/euromicro.2005.55Metrics:
See at:
doi.org | ieeexplore.ieee.org | CNR ExploRA
2002
Conference article
Unknown
Re-thinking the development process of component-based software
Bertolino A., Polini A.This paper contribution to the ECBS workshop is a position statement that a wide gap exists between the technologies for Component-based Software Engineering and the scientific foundations on which this technology relies. What is mostly lacking is a revised model for the development process. We very quickly outline a skeleton for re-thinking the models that have shaped the software production in the last decades, and we start to make some speculations, in particular for what concerns the testing stages. As a working example, we take in consideration the Enterprise Java Beans framework. However, our research goal is to draw generally valid conclusions and insights.Source: 9th IEEE Conference and Workshops on Engineering of Computer-Based Systems. Workshop on Component-based Software Engineering. Composing Systems from Components, pp. 7–10, Lund, Sweden, 8-11 April 2002
See at:
CNR ExploRA
2002
Conference article
Unknown
WCT: a wrapper for component testing
Bertolino A., Polini A.Within component based (CB) software development, testing becomes a crucial activity for interoperability validation, but enabling test execution over an externally acquired component is difficult and labor-intensive. To address such problem, we propose the WCT component, a generic test wrapper that dynamically adapts the component interfaces, making the test execution independent from any specific component implementation. The wrapper does not require that the component implements any specific interface for testing purposes, it permits to easily reconfigure the subsystem under test after the introduction/removal/substitution of a component, and helps optimize test reuse, by keeping trace of the test cases that directly affect the wrapped component.Source: FIDJI'2002 - International Workshop on ScientiFic Engineering of Distributed Java Applications, pp. 197–206, Luxembourg, 28-29 November 2002
See at:
CNR ExploRA
2004
Contribution to book
Unknown
A user oriented framework for component deployment testing
Bertolino A., Polini A.In this chapter we presented a framework for the easier and efficient execution of test cases in a component based environment. The framework is meant to give a partial answer to the need of the techniques for test derivation and execution since the traditional ones have been recognized as inadequate. In particular the main intention of the framework is to provide a simple mechanism for the execution of test cases derived by the component user on the basis of the system architecture specification, to validate the choice of possible candidate components. We intend to release shortly, for free download, a beta version of the framework implementing the illustrated funcionality. We verified our ideas on a simple case study that has been used in this chapter to present how a generic component user can take advantage from the usage of the framework. IN the next future we will further investigate the advantages tha the use of the framework can bring, and develop add-on tools to aid the user of the framework.Source: Testing Commercial-off-the-shelf Components and Systems, edited by Sami Beyeda, Volker Gruhn (Eds.), pp. 169–194. Berlin: Springer-Verlag, 2004
See at:
CNR ExploRA
2004
Contribution to book
Unknown
Performance testing of distributed component architecture
Denaro G., Polini A., Emmerich W.Performance characteristics, such as response time, throughput, and scalability, are key quality attributes of distributed applications. Current practice,however, rarely applies systematic techniques to evaluate performance characteristics. We argue that evaluation of performance is particularly crucial in early development stages, when important architectural choices are made. At first glance, this contradicts the use of testing techniques, which are usually applied toward the end of a project. In this chapter, we assume that many distributed systems are built with middleware technologies, such as the Java 2 Enterprise Edition (J2EE) or the Common Object Request Broker Architecture (CORBA). These provide services and facilities whose implementations are available when architectures are defined. We also note that it is the middleware functionality, such as transaction and persistence services, remote communication primitives, and threading policy primitives, that dominates distributed system performance. Drawing on these observations, this chapter presents a novel approach to performance testing of distributed applications. We propose to derive application-specific test cases from architecture designs so that the performance of a distributed application can be tested based on the middleware software at early stages of a development process. We report empirical results that support the viability of the approach.Source: , pp. 1–24, 2004
See at:
CNR ExploRA
2007
Software
Unknown
WS-Guard
Polini A., Bertolino A.WS-Guard (WS-Guaranteeing Uddi Audition at Registration and Discovery) provides an implementation of the Audition Framework. Main idea of the Audition framework is to augment the registration phase of a service within a registry with a testing phase. Registration is then guaranteed only if the service passes the testing phase. WS-Guard to derive test cases to be applied to services requires the availability behavioral models in the form of Service State Machines (SSM).
See at:
CNR ExploRA
2009
Conference article
Restricted
SOA test governance: enabling service integration testing across organization and technology borders
Bertolino A., Polini A.The Service-Oriented Architecture (SOA) is the emerging paradigm in information technology. More than a true "architecture", SOA provides a general reference model for the development, deployment and management of distributed dynamic systems. Companies are progressively adopting service-oriented technology, because of its many (real or idealized) foreseen benefits, among which notably loose coupling and dynamic interoperability. Such benefits, however, can only be achieved through discipline and standardization: in this respect, SOA Governance qualifies a framework of policies, procedures, design rules and documentation standards to be enforced for ensuring that different services and components can successfully cooperate towards a shared business goal. What about testing of such composite SOA applications? Little attention has been devoted so far by researchers to SOA testing, but awareness is raising that existing techniques and tools are not adequate. Our position in this paper is that the establishment of a test governance framework is a key issue for enabling SOA testing at integration and system levels. We discuss the inter-relation between technical and "social" aspects of SOA application testing, and attempt a first abstract definition of a SOA Test Governance notion. We provide examples of proposed SOA testing approaches that, more or less explicitly, rely on a cross-organization agreed test process.Source: International Conference on Software Testing, Verification and Validation Workshops, 2009., pp. 277–286, Denver, Colorado, 1-4 April 2009
DOI: 10.1109/icstw.2009.39Project(s): TAS3 ,
TAS3 Metrics:
See at:
doi.org | ieeexplore.ieee.org | CNR ExploRA
2010
Conference article
Restricted
A counter-example testing approach for orchestrated services
De Angelis F., Polini A., De Angelis G.Service oriented computing is based on a typical combination of features such as very late binding, run-time integration of software elements owned and managed by third parties, run-time changes. These characteristics generally make difficult both static and dynamic verification capabilities of service-centric systems. In this domain verification and testing research communities have to face new issues and revise existing solutions; possibly profiting of the new opportunities that the new paradigm makes available. In this paper, focusing on service orchestrations, we propose an approach to automatic test case generation aiming in particular at checking the behaviour of services participating in a given orchestration. The approach exploits the availability of a runnable model (the BPEL specification) and uses model checking techniques to derive test cases suitable to detect possible integration problems. The approach has been implemented in a plug-in for the Eclipse platform already released for public usage. In this way BPEL developers can easily derive, using a single environment, test suites for each participant service they would like to composeSource: Third International Conference on Software Testing, Verification and Validation, pp. 373–382, Paris, 6-10 April 2010
DOI: 10.1109/icst.2010.27Metrics:
See at:
doi.org | ieeexplore.ieee.org | CNR ExploRA
2005
Report
Open Access
Software component integration testing: a survey
Rehman M. J., Jabeen F., Bertolino A., Polini A.Component-based development has emerged as a system engineering approach that promises rapid software development with fewer resources. Yet, improved reuse and reduced cost benefits from software components can only be achieved in practice if the components provide reliable services, which makes component analysis and testing a key activity. This paper discusses various issues that can arise at component integration phase. The crucial problem is the lack of information for analysis and testing of components externally developed, aggravated by differing perspectives of the key players in component based software development. Several component integration testing techniques have been recently proposed to provide a solution for those issues. These techniques are here surveyed and classified according to a proposed set of relevant attributes. The paper thus provides a useful and comprehensive overview as a starting point for investigation in the field.Source: ISTI Technical reports, 2005
See at:
ISTI Repository | CNR ExploRA
2005
Report
Open Access
The audition framework for testing web services interoperability
Bertolino A., Polini A.Service Oriented Architectures and Web Services are emerging technologies, which have overall inherited problems and advantages from the component-based approach, but exacerbated the aspects of loose coupling, distribution and dynamism of "components", here elements furnishing published services on external client requests. In this paper we highlight the urgent need for methodologies supporting Web Services reliable interaction, and in particular deal with testing concerns. We then propose a framework that extends UDDI registry role from the current one of a 'passive' service directory, to also sort of an accredited testing organism, which validates service behaviour before actually registering it. This testing stage (called audition) mainly focuses on interoperability issues, so to facilitate the coordination among services registered at the same UDDI. The audition needs to rely on a Web Service speci cation augmented with information on how the service has to be invoked. We propose that this information is given in the form of a Protocol State Machine, which is a newly introduced behaviour diagram of the UML 2.0.Source: ISTI Technical reports, 2005
See at:
ISTI Repository | CNR ExploRA
2004
Report
Unknown
A User Oriented Framework for Component Deployment Testing
Polini A., Bertolino A.In this chapter we presented a framework for the easier and efficient execution of test cases in a component based environment. The framework is meant to give a partial answer to the need of the techniques for test derivation and execution since the traditional ones have been recognized as inadequate. In particular the main intention of the framework is to provide a simple mechanism for the execution of test cases derived by the component user on the basis of the system architecture specification, to validate the choice of possible candidate components. We intend to release shortly, for free download, a beta version of the framework implementing the illustrated funcionality. We verified our ideas on a simple case study that has been used in this chapter to present how a generic component user can take advantage from the usage of the framework. IN the next future we will further investigate the advantages tha the use of the framework can bring, and develop add-on tools to aid the user of the framework.Source: ISTI Technical reports, 2004
See at:
CNR ExploRA
2004
Report
Open Access
Performance Testing of Distributed Component Architecture
Denaro G., Polini A., Emmerich W.Performance characteristics, such as response time, throughput, and scalability, are key quality attributes of distributed applications. Current practice,however, rarely applies systematic techniques to evaluate performance characteristics. We argue that evaluation of performance is particularly crucial in early development stages, when important architectural choices are made. At first glance, this contradicts the use of testing techniques, which are usually applied toward the end of a project. In this chapter, we assume that many distributed systems are built with middleware technologies, such as the Java 2 Enterprise Edition (J2EE) or the Common Object Request Broker Architecture (CORBA). These provide services and facilities whose implementations are available when architectures are defined. We also note that it is the middleware functionality, such as transaction and persistence services, remote communication primitives, and threading policy primitives, that dominates distributed system performance. Drawing on these observations, this chapter presents a novel approach to performance testing of distributed applications. We propose to derive application-specific test cases from architecture designs so that the performance of a distributed application can be tested based on the middleware software at early stages of a development process. We report empirical results that support the viability of the approach.Source: ISTI Technical reports, pp.1–24, 2004
See at:
ISTI Repository | CNR ExploRA