istituto di scienza e tecnologie dell'informazione “a ... · the definition of an...

60
Istituto di Scienza e Tecnologie dell'Informazione “A. Faedo” Software Engineering Laboratory SOA Test Governance: enabling service integration testing across organization and technology borders Keynote Talk @ WebTest2009: 1 st Int. Wksp on Web Testing April 4th, 2009 Co-located with ICST 2009, Denver, Colorado, USA Antonia Bertolino [email protected] Andrea Polini [email protected]

Upload: others

Post on 29-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

Istituto di Scienza e Tecnologie dell'Informazione “A. Faedo”Software Engineering Laboratory

SOA Test Governance:enabling service integration testing

across organization and technology borders

Keynote Talk @ WebTest2009: 1st Int. Wksp on Web Testing

April 4th, 2009

Co-located with ICST 2009, Denver, Colorado, USA

Antonia [email protected]

Andrea [email protected]

Page 2: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 2

Agenda

SOASOA GovernanceSOA Testing Challenges SOA Test Governance (STG)STG Cases:

AuditionSOCT

Conclusions&discussion

Page 3: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 3

SOA: a new paradigm

Service-orientation is claimed to be the “New Computing Paradigm for the Networked World”

(c.f.r. the theme of the First ICSOC in 2003)Revolution or Evolution?

Service-orientation (like Rome) “was not built in a day”: it is nota revolution in IT, rather it is the natural (and relatively slow) evolution from the confluence of several recent and less recentapproaches and technologies.

The WWW era in the 90’s heralded SOA byemphasizing:

shift from intra-organization to inter-organization integrationneed: “B2B” adventincreasingly dynamic nature of IT market: companies enter and exit the scene continuously and fastly

Page 4: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 4

SOA promises

IT-based companies seem infatuated of the SO wave and in different ways and with differentexpectations are jumping on the bandwagon.The new paradigm brings in many attracting features, among which:

reuseinteroperabilityloose couplingstandardization flexibilityfaster time to deployment

Page 5: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 5

SOA in numbers“SOA will be used in more than 50 percent of new mission-critical operational applications and business processes designed in 2007 and in more than 80 percent by 2010”

Press Release from Gartner Symposium/ITxpo2007: Emerging Trends

In its report “SOA Infrastructure Market Shares, Strategies, and Forecasts, 2008 to 2014”, Research And Markets predicts SOA worldwide market will grow froman estimated $2 billion in 2007 to more than $9 billion by2014

See at http://blogs.zdnet.com/service-oriented/?p=1104, or youcan buy the whole report from R&M (for € 3,531.00)

Page 6: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 6

Conceptual View

Service-orientation is a design paradigm comprised of service-orientation design principles. The logic units are services yielding distinct design characteristics that support the overall goals and vision of service-oriented computing.

[From Thomas Erl’s book: “SOA: Principles of Service Design”Copyright Prentice Hall/PearsonPTR]

Page 7: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 7

ServiceA software service is a software component providing a functionality to other software componentsA service defines a precise interface to be used by clients in order to access it. Precisely, each service exposes one or more access points, defining the location where a provided functionality can be accessedThe interface and the access points can be dynamically retrieved and used by other software componentsService development is not related to the requirements of its future usersService is an abstract concept that is realized through the definition of an “including” infrastructure

Page 8: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 8

Service Oriented ArchitectureSOA is a conceptual architecture supporting the idea and the characteristics of services.In a minimalistic scenario there exist a service provider and a service requestor or consumer.

Publishing a Web service involves to create the software artifact and make it accessible to potential consumers.

Service discovery is the processof finding a suitable service fora given task. Optionally a provider can explicitly register a service within a service registry or broker.

Page 9: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 9

SOA DevelopmentTraditional SE emphasizes the importance of fully documentingsystem requirements and specifications, based on which thoroughanalyses of the system under development can be performed asearly as possible

SOA development in its very conception is drastically different: the vision is that SOA applications are composed on the fly at runtime using existing services

Therefore, SOA development is a collaborative effort fromseveral parties: service developers, service providers, service brokers, application integrators.

SOA engineering tasks are performed by separate organizations, none of which having complete information or control over the building pieces.

Page 10: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 10

Need for SOA Governance

To achieve SOA promises we need to set the “Rules of the game” that the stakeholders haveto abide by

“Counterintuitive as it may seem, SOA requiresmore organizational discipline than previousdevelopment models. Your intuition might tellyou that flexibility results from fewer rules, not more, but that’s not the case”.

[Philippe J. Windley. SOA governance: Rules of the game. On line at http://www.infoworld.com, January 2006]

Page 11: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 11

Defining SOA Governance

Page 12: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 12

GovernanceThe rules, policies, practices and responsibilitiesby which any complex system of relations and interactions (a country, a company, a social community) is controlled and administered.

(as compared to “government” term) brings in notions of

societal participation and shared responsibility;moral qualification, orientation to the common welfare

(e.g., Wikipedia states: assuring, on behalf of thosegoverned, a worthy pattern of good while avoiding anundesirable pattern of bad)

Page 13: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 13

Enterprise GovernanceGovernance applied to a business organizationaimed at:

providing strategic directionsensuring that company objectives are achievedascertaining that risks are appropriately managedverifying that the enterprise’s resources are usedresponsibly.

EG’s emphasis is on business goals

[International Federation of Accountants, Professional Accountants in Business Committee. “Enterprise governance: Getting the balance right.”http://www.ifac.org/Members/DownLoads/EnterpriseGovernance.pdf, 2004]

Page 14: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 14

IT Governance

IT Governance is a subset of EG, of growingimportance in modern enterprises, thatspecifically focuses on IT assets and theirexploitation“ITG is the strategic alignment of IT with the business such that maximum business value isachieved through the development and maintenance of effective IT control and accountability, performance management and risk management”

[Phyl Webb, Carol Pollard, and Gail Ridley. Attempting to define IT governance: Wisdom or folly? Hawaii Int. Conf. on System Sciences, 8:194a, 2006]

Page 15: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 15

SOA Governance

Different key components make SOA governance at design-time and at run-timeAt design time it manages and deploys servicesthroughout their lifecycle in order to ensurehigh levels of control and monitorabilityAt run-time policies and procedures are embedded into the service management infastructure

e. g. the service registry

Page 16: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 16

Governance intra-organization

Assigns responsibilities, authorities and tasks(structural component of governance)Establishes measurement and enforcementmechanisms of assigned roles and responsibilities (dynamic or measurementcomponent of governance)

Page 17: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 17

Governance intra-organization (ctd)Taken from [S. Chulani, C. Williams and A. Yaeli, Software DevelopmentGovernance and Its Concerns, SDG’08, May 12, 2008, Leipzig, Germany]

Page 18: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 18

Inter-organization level

Governance is listed among the “grandchallenges” for Service-oriented computing in reference 1. below, because of the “cross-organizational nature of end-to-end business processes”Indeed, service compositions across differententerprises must establish ownership and governance responsibilities.

1. [M. Papazoglou, P. Traverso, S. Dustdar, F. Leymann, and B. Kramer. Service Oriented Computing Research Roadmap. In DagstuhlSeminar Proceedings 05462 (SOC), 2006.]

Page 19: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 19

Similarity between SO and CB development

There are similarities between CB developmentand Service-oriented life-cycleSuch similarities can be traced back to the separation of roles and concerns between thosewho develop a piece of software (a componentor a service) and those who later use such pieceof software for invocation or for integration

Page 20: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 20

Component/Service Developer

Public Comp. Repository

decides ( on business grounds)

develops Component Spec, Code and Validate

Component Documentation

For ext. use

Custom piece or reusable Component ?

augments

packages

Requirements

Maintenance

Code

Specification

Testing

Design

Page 21: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 21

Component/Service UserSystem Architecture

Component AComponent C

Component B

Component D

Candidatecomponent

Public Comp. Repository

System Assembly

Discovers and selects

Analyzes and tests

Integrates

basedbased onon

in the in the contextcontext ofof

Page 22: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 22

CommunicationBetween

Developer and User

Seen altogether

Public Comp. Repository

decides ( on business grounds)

develops Comp.Spec, Code and Validate

Component Documentation

For ext. use

Custom piece or reusable Comp.?

augments

packages

Candidatecomponent

Public Comp. Repository

System Assembly

Discovers and selects

Analyzes and tests

Integrates

Page 23: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 23

Concerning testing

acceptancetest

systemtest

integrationtest

unittestcode

design

specs

reqs

The classical V-model presupposes that the software tester yields full control and observability

Testing in the traditional lifecycle relies on planning ahead based on development artifacts, and testing before release:

Page 24: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 24

How is SOA testing different?

We get all “traditional” testing challenges (no discount!)

PLUS new ones:Global protocols of service interactionsAdaptability and dynamicityApplication “ilities”, e.g., availability, robustness, reliability, …, Distributedness, heterogeneity, mobility, …, aspects of the implementation first-classcitizen

Page 25: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 25

Challenges in SOA testing

Reduced Control:control all and only through the provided interfaceno control over the services lifecycle (un-alertedevolution)

Reduced Observability:inter-organization distributednessno access to code neither to its environment

Reduced Information Runtime integration:

dynamic discovery and bindingcontext-awareness

Increased relevance of QoS characteristics

Page 26: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 26

…and opportunities

Declarative and formal specification publiclyavailable both for functional and non functionalcharacteristicsNew “control” point in the platform to whichtesting activities can be associated

E.g., directory servicesOpen and standardized protocols and formats

SOAP, WSDL, XMLOrchestration provides a baseline for integration testingChoreography provide an open specification to whichcooperating services must conform

Need of trust among organizations

Page 27: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 27

Need for testing research

From the EU report: “The service engineering area: An overview of its current status and a vision of its future” -July 2005ftp://ftp.cordis.europa.eu/pub/ist/docs/directorate_d/st-ds/sota_v1-0.pdf

“The area of testing services and their specificationshas until now received limited attention from the research community. ….”

Page 28: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 28

Introducing SOA Test Governance

SOA Test Governance

Page 29: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 29

Introducing SOA Test Governance

SOA Test Governance

STG is a subset of SOA governance thatspecifically concerns the establishment

and enforcement of policies, procedures, notations and tools that are required to

enable distributed testing of service integrations

Page 30: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 30

STG: an artificial idea?Analysis of interacting BPEL web servicesX Fu, T Bultan, J Su – Proc. WWW 2004

…We assume that there is a virtual watcher which records the sequence of messages as they are sent by the peers. …

Model-based verification of web service compositionsH Foster, S Uchitel, J Magee, J Kramer – Proc. ASE 2003

… We need a specification that can closely resemble workflowspecification languages, and a tool to simulate from the specificationcreated in this language. …

Automatic conformance testing of web servicesR Heckel, L Mariani - Proc. FASE 2005

…we foresee the introduction of High-Quality Service Discovery agencies …. automatically tests a Web Service with respect to a provided model consisting of GT rules that specify the individual operations of the service.. …

……

All above and many others are assuming a STG

Page 31: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 31

A 2007 press release from Gartner warns against risks of SOA project failure, which are both technical and organizational.

Gartner’s ‘hit list’ of the most common organisationalerrors

includes:1. Overlooking governance2. Thinking an SOA project should be organised just

like any other application development project3. Not anticipating service number explosions in a

maturing SOA4. Giving up on an integration competency center or

SOA center of excellence5. Outsourcing architects (or not having them at all)

[taken from http://www.gartner.com/it/page.jsp?id=508397]

Risks of Failure in SOA Projects

Page 32: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 32

A 2007 press release from Gartner warns against risks of SOA project failure, which are both technical and organizational.

Gartner’s ‘hit list’ of the most common organisationalerrors

includes:1. Overlooking governance2. Thinking an SOA project should be organised just

like any other application development project3. Not anticipating service number explosions in a

maturing SOA4. Giving up on an integration competency center or

SOA center of excellence5. Outsourcing architects (or not having them at all)

[taken from http://www.gartner.com/it/page.jsp?id=508397]

Risks of Failure in SOA Projects

“Through 2010, the biggest barriers to SOA adoption will be non-technical issues related

to inadequate governance”Gartner Research Vice Presidents, 2006

Page 33: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 33

The ‘hit list’ of the most common technological errorsincludes:

1. Underestimating the technical complexity of a large-scale SOA

2. Bad selection of application infrastructure components (ESB, orchestration and adapters)

3. Insufficient validation of the SOA enabling technical infrastructure implementation (for example, no proof of concept and no stress tests)

4. SOA infrastructure, services and consumer applications are insufficiently instrumented for security/management/troubleshooting

5. Too-coarse/too-fine service granularity6. Insufficient/not up-to-date documentation

[taken from http://www.gartner.com/it/page.jsp?id=508397]

Risks of Failure in SOA Projects

Page 34: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 34

The ‘hit list’ of the most common technological errorsincludes:

1. Underestimating the technical complexity of a large-scale SOA

2. Bad selection of application infrastructure components (ESB, orchestration and adapters)

3. Insufficient validation of the SOA enabling technical infrastructure implementation (for example, no proof of concept and no stress tests)

4. SOA infrastructure, services and consumer applications are insufficiently instrumented for security/management/troubleshooting

5. Too-coarse/too-fine service granularity6. Insufficient/not up-to-date documentation

[taken from http://www.gartner.com/it/page.jsp?id=508397]

Risks of Failure in SOA Projects “testing is critical and at least 25

percent of the effort in a SOA project should be dedicated to this activity”

Gartner Vice President, 2005

Page 35: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 35

Building a STG framework

Page 36: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 36

STG Foundation

Page 37: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 37

STG design

Page 38: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 38

STG run-time

Page 39: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 39

STG enforcement

Page 40: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible
Page 41: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 41

STG stakeholders

Governance Boardthis is the organism that is deputed to define the rules. Typically will be constituted by experts fromorganizations willing to cooperate or interested in establishing an environment to be used forcooperation. At the same time the governance boardwill define the various roles and will assign specifictasks to the various roles.

Page 42: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 42

Example: WS-I

Web Services Interoperability Organization (WS-I) is an open industry consortium chartered to promote Web Services interoperability across platforms, operating systems, and programming languages.

http://www.ws-i.org/

To ensure interoperability, Web services must comply with standards purposely created to enable communications across heterogeneous environments, both inside and across enterprise firewalls.

WS-I does not itself define standards for web services; rather, in cooperation with standards development organizations such as OASIS / W3C, it creates guidelines and tests for interoperability.

Page 43: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 43

STG stakeholders

Service developer: develops a service, may be asconsequence of a request made by a service provider

governance within each given context could impose developmentstandards, implementation of specific interfaces and so on.

See, e.g., the role of service developer in SOCT case

Service provider: deploys the service over a server and makes it available to external organizations (for pay-per-use services it is the provider who gets money)

Also in this case the governance could impose rules on the way in which a service is provided, for instance requiring thatspecific information is publishedProvider can play the role of user when one of its services needto interact with a service deployed by another provider.

Page 44: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 44

STG stakeholders

Service integrator: derive new functionality integratingexisting services.

is influenced by the governance that can define the rules and policies to be followed in the integrationcode for the composition is available, invoked services insteadare not generally under the control of the integrator

Service user: accesses and uses a serviceHas to abide by the established rules when using a service.

Page 45: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 45

STG stakeholders

Monitor and enforcerThese are specific organizations that can usemechanisms within a SOA infrastructure to checkthat what is happening is in-line with what specifiedby the governance. The governance will have topreviously define which are the information ofrelevance for monitoring and which are the specificpowers of the “monitor and enforcer” organization

Certification Authorities (not shown in Figure)As standard architectures and policies are established, CAs will likely appear. The certification authority can provide formal“stamp” of approval

Page 46: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 46

STG: two cases

STG in choreography testing: AuditionAntonia Bertolino and Andrea Polini. The auditionframework for testing web services interoperability. In Proc. EUROMICRO ’05

STG in orchestration testing: SOCTCesare Bartolini, Antonia Bertolino, and EdaMarchetti. Introducing service-oriented coverage testing. In ASE Wksp ARAMIS 2008

Page 47: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 47

Audition testingThe Audition testing framework proposed toadd a testing phase before the service goes“on the scene”

The objective is to create a discovery service with trustable entries: registration isguaranteed only to services carefully tested

Development Admission Publication Live UsageInstallation

DevelopmentDevelopment TestingTestingAuditionAudition MonitoringMonitoring

Page 48: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 48

Page 49: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 49

STG behind Audition

On a pure SOA-based scenario the frameworkis not applicable. STG involves:

Service provider must be available and equipped foron-line testingRegistry takes on an enhanced roleThe testing service is an additional componentA choreography specifier publishes theirspecifications (according to a standardized format)Specific enforcement mechanisms must beimplemented

Page 50: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 50

STG: two cases

STG in choreography testing: AuditionAntonia Bertolino and Andrea Polini. The auditionframework for testing web services interoperability. In Proc. EUROMICRO ’05

STG in orchestration testing: SOCTCesare Bartolini, Antonia Bertolino, and EdaMarchetti. Introducing service-oriented coverage testing. In ASE Wksp ARAMIS 2008

Page 51: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 51

WS testing

Similarly to testing of Component-based systems, the testing process of service-oriented systems isdecomposed between two distinct stakeholders:

Service DeveloperFull access to code and specsDoes not know (future) use context

Service User/IntegratorOnly BB testingNeeds accompanyingdocumentationdesign

for test

Alice:Service Developer

Bob: Service User

Page 52: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 52

WB testing for SOA?

Services need to ensure “implementationneutrality”, i.e., the internal implementationdetails of a service must be totally uninfluentialto its usage:

Services must be used as black boxes

“[…] to users and systems integrators, servicesare just interfaces. This hinders white-boxtesting methods based on code structure and data flow knowledge.[…]”

[ G. Canfora, M. Di Penta. “Testing Services and Service-centricSystems: Challenges and Opportunities”. IEEE IT Pro, 2006]

Page 53: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 53

White-box testing of SOA?

It is a pity that service integrators cannot usewell-established and effective testing methodslike coverage measures.

we exploit the very feature of service-oriented technologyimplement coverage testing, realizing what we call

Service-oriented Coverage Testing (SOCT)

Page 54: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 54

SOCT scenario

TCOV Provider

TestableServices 2: Invokes

testable services

3: Logs coverageinformation

Coverage ReportServices

4: Gets test reports

1: Instrumentsservices withTCOV probes

Alice:Service Developer

Bob: Service User

Page 55: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 55

WB testingthrough TCov

Test roles in SOCT

The basic assumption behind SOCT is an STG agreedamong involved stakeholders:

Service Developer must be willing to incorporate the probes intothe servicesService Integrator performs WB testing, by analysing the log reports exported by the “testing Services”Appropriate “Testing Services” are deployed by (external or internal) service providers, Testing Houses, Regulatory bodies …

Alice:Service Developer

Bob: Service User

Page 56: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 56

STG behind SOCT

Service developer must be willing to in strumentservice with the standardized probesTCov is a new stakeholder

Logs test runsProvides test reports

Service integrator interacts with TCov toobtain coverage measures

Page 57: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 57

SOCT idea: Considerations

The framework presupposes a complexscenario, difficult to realizeNevertheless, all WS* technology assumesstandard processes and documentationCan be applied with varying thoroughness and at different levelsGovernance bodies must regulate the process

Page 58: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 58

ConclusionsWe have introduced STG conceptWe have discussed challenges of WS testing and pointed at STG as a potential way to address themWe have outlined a generic minimal STG frameworkWe have overviewed two previous proposed approaches, in relation with STG:

AuditionSOCT

We believe STG is a sensible important concept forSOA testing

Page 59: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 59

…to be doneSurvey literature and classify STG impliedapproachesRaise abstraction level and also look at process/organization issuesEmbrace and spread STG awarenessBuild concepts and processes for STGA consensus-based community effort

Page 60: Istituto di Scienza e Tecnologie dell'Informazione “A ... · the definition of an “including” infrastructure. ... involves to create the software artifact and make it accessible

WebTest2009: SOA Test Governance ©2009 A.Bertolino, A. Polini 60

WEbTest 2009

SOA Test Governance:SOA Test Governance:enabling service integration testingenabling service integration testing

across organization and technology bordersacross organization and technology borders