quality analysis of service-oriented architectures · gebhart quality analysis (qa) 82 19.11.2012...

31
Quality Analysis of Service-Oriented Architectures Keynote SoftNet 2012 19. November 2012 Gebhart Quality Analysis (QA) 82 http://www.qa82.com Dr. Michael Gebhart [email protected]

Upload: others

Post on 28-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Quality Analysis of Service-Oriented Architectures

Keynote SoftNet 2012

19. November 2012

Gebhart Quality Analysis (QA) 82 http://www.qa82.com

Dr. Michael Gebhart [email protected]

Page 2: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

What does Gebhart Quality Analysis (QA) 82 do?

2 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 3: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Gebhart Quality Analysis (QA) 82 Services Offered and Target Groups

Quality Analysis in the context of SOA and cloud

Companies running service-oriented

architectures

Software producers

Consulting companies

Certification of high-quality

services

Software producers

Training for an engineering

methodology

IT architects of service-oriented

architectures and services

3 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 4: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Sponsors

4 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 5: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Why do companies decide for service-oriented architectures?

5 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 6: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Motivations for Service-Oriented Architectures Surveys

Aberdeen Research (2007)

Survey of more than 150 companies in the world

Main driver for SOA

Agility and flexibility (62%)

Better services for end users (61%)

Reduced operating costs (39%)

Benefit achieved

Reduced development costs for new solutions (0 - 100%)

Reduced maintenance costs (7 - 72%)

Software AG (2009)

Survey of German companies with revenue of at least 50 Mio. euro

Focused on financial service providers

Main driver for SOA

Flexibility und Transparency (93%)

6 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 7: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Why is a disciplined design of services necessary?

7 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 8: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82 8

19.11.2012

Service-Oriented Architecture in Companies Flexible Support of Business Processes

Purchasing System Construction

System

Enterprise Resource Planning

(ERP) System

Manufacturing Business Process

Service

~ ~

Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 9: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

Adapter

Adapter

19.11.2012

Inefficient Business Process Support

Purchasing System Construction

System

Enterprise Resource Planning

(ERP) System

Manufacturing Business Process

9 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 10: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Efficient Business Process Support Increases Flexibility and Maintainability

Purchasing System Construction

System

Enterprise Resource Planning

(ERP) System

Manufacturing Business Process

10 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 11: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Outsourcing of Functionality Into the Cloud and Integration of Cloud Services

Company Cloud

11 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 12: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Well-Designed Services Increase Efficiency

Company Cloud

12 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 13: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Maintainability Effects of System Changes

Purchasing System Construction

System

Enterprise Resource Planning

(ERP) System

Manufacturing Business Process

13

Current Database New Database

Changing

Changing

Changing?

Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 14: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Maintainability Effects of Data Type Changes

Purchasing System Construction

System

Enterprise Resource Planning

(ERP) System

Manufacturing Business Process

14

Changing Changing?

Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 15: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Conclusion: The design of services critically influences flexibility, maintainability, and cost-efficiency of IT

But what is “design of services”?

15 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 16: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82 16

19.11.2012

Design of Services Typical Questions

Is the service “correctly” designed?

Specification of all necessary information, correct naming …

Does this service group the “correct” set of operations?

Which operations should be grouped?

Should some operations be moved into another service?

Are the operations “correctly” designed?

Functional scope, naming, required parameters …

Are the “correct” data types chosen?

Usage of local / global data types, naming …

«interface»

Manufacturing

+ manufacture(: Manufacture) : ManufactureResponse + getManufacturedAutomobile(: Get) : GetResponse

Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 17: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Evolution of Services Addition of new Functionality

«interface»

Manufacturing

+ manufacture(: Manufacture) : ManufactureResponse

«interface»

Manufactured Automobile

+ update(: Update) : UpdateResponse + create(: Create) : CreateResponse

+ getManufacturedAutomobile(: Get) : GetResponse

Which one is the right service for this new functionality?

More important: Why? What is the impact of a certain decision?

?

17 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 18: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

How should services be designed?

18 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 19: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

From Strategic Goals to Quality Attributes Refering to the Design of Services

Maintainability Flexibility

Strategic Goals

Quality Attributes

Loose Coupling Autonomy

Unique Categorization

Discoverability

19 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 20: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Complex Verification of Quality Attributes Interpretation Required

Purchase Construction Manufactured

Automobile

Manufacturing

Description ?

Application

Loosely coupled?

Loose coupling means… Autonomy is … A Service is discoverable, if … …

Autonomous? Discoverable? Uniquely categorizable?

20 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 21: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Changes Require Repeatedly Complex Analysis Review of all Services necessary

Purchase Construction Manufactured

Automobile

Manufacturing

Purchase (Changed)

Construction Manufactured

Automobile

Manufacturing

Currently

Changes

Shipping

Direct access to manufactured automobiles. Not obvious when considering single services only.

Still loosely coupled?

Addition of new functionality. New service?

21 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 22: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

How can the good design of services be verified?

22 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 23: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Specifying Architecture as a Whole Application of SoaML as UML Profile

Advantages

Standard for specifying service-oriented architectures

Clear terminology and semantics

Basis for correct determination of quality attributes

Platform-independent description

Instrument stable over time

Holistic view on the architecture

Generates transparency

Application during design phase

Tool support

Disadvantages

Non-consideration of technology specifics

Combination as solution possible

Complex specification required

«Participant»

Manufacturing Service Component

«ServiceInterface»

Manufacturing

«interface»

Manufacturing

+ manufacture(: Manufacture) : ManufactureResponse + getManufacturedAutomobile(: Get) : GetResponse

«Service» manufacturing: Manufacturing

23 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 24: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

Determination of Verifiable Quality Indicators Focus on SoaML for Architecture Description

SoaML WSDL

SCA

BPEL

BPMN

Quality Attribute Unique Categorization

Data Superiority

(conceptual)

Organizational Affiliation (not verifiable)

Endpoint URL (technology-specific)

Quality Indicator

19.11.2012

24 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 25: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Example Verification of Data Superiority

Data Superiority: A service that manages an entity exclusively manages

this entity

Overview over the entire architecture required SoaML

After changing the design a repeatedly verification is necessary

«ServiceInterface»

Manufacturing

«interface»

Manufacturing

+ manufacture(: Manufacture) : ManufactureResponse + getManufacturedAutomobile(: Get) : GetResponse

Manages the Entity

„Manufactured Automobile“

«ServiceInterface»

Manufactured Automobile

«interface»

Manufactured Automobile

+ update(: Update) : UpdateResponse + create(: Create) : CreateResponse

Manages the Entity

„Manufactured Automobile“

«Participant»

Manufacturing Service Component

«Service» : Manufacturing

«Participant» ERP System

«Service» : Manufactured Automobile

25 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 26: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Efficient and Faultless Verification Using Tool Support

𝐷𝐵𝑇𝐹 𝑠 = 𝐵𝐹 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐷𝐴𝑁𝐹 𝑠 = 𝐴𝐹 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐷𝑆 𝑠 = 1 −

𝑀𝐵𝐸 𝑂 𝑅𝐼 𝑆𝐼 𝑠 ∩

𝑀𝐵𝐸 𝑂 𝑅𝐼 𝑆𝐼 𝐴𝐿𝐿𝑆\ 𝑠

𝑀𝐵𝐸 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐶𝐵𝐸𝑈 𝑠

=

𝑂𝑈𝐵𝐸

𝑂 𝑅𝐼 𝑆𝐼 𝑠 ,

𝐶𝑀𝑃𝑂 𝑅𝐼 𝑆𝐼 𝑠 , 𝑀𝑂𝑈𝐵𝐸 𝑂 𝑅𝐼 𝑆𝐼 𝑠 ,

𝑈𝐵𝐸 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐹𝑁𝑆𝐼 𝑠 = 𝐹𝑁 𝑆𝐼 𝑠

𝑆𝐼 𝑠

𝑁𝐶𝐶𝐷𝑇 𝑠 =

𝑁𝐶𝐶 𝐷𝑇 𝑃 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐷𝑇 𝑃 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐴𝑆𝑌𝑁𝐶(𝑠) = 𝐴𝑆𝑂 𝐼𝑃 𝑆𝐼 𝑠 ∩ 𝐿𝑅𝑂 𝑂 𝑅𝐼 𝑆𝐼 𝑠

𝐿𝑅𝑂 𝑂 𝑅𝐼 𝑆𝐼 𝑠

QA82 Architecture Analyzer

26 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 27: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Application of Quality Analysis During Service Development or Subsequently

Development of Services

Implementation Analysis Design Deployment

Requirements

BPMN, UML, …

Service Designs

SoaML, UML

Web Services

WSDL, SCA, BPEL, …

Quality Analysis and Revision

Subsequent Quality Analysis

Analysis and Revision

Derivation of Design

Web Services

WSDL, SCA, BPEL, …

Service Designs

SoaML, UML

Deployment

Web Services

WSDL, SCA, BPEL, …

27 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 28: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Conclusion

Quality analysis in the context of SOA is a broad field

From a software perspective especially the design of services is important

Quality indicators enable the determination of quality attributes

SoaML enables the specification of the architecture as a whole

Holistic analyses

Unambiguous semantics enables the specification of metrics

QA82 Architecture Analyzer (tooling) enables the automatic calculation of

metrics

Efficient analyses

Fast impact analyses of architecture changes

Both quality analyses during service development and subsequently

possible

28 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 29: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

There is still a lot to do… Let’s go!

29 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 30: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Contact

Gebhart Quality Analysis (QA) 82

http://www.qa82.com

http://www.qa82.de (German)

Dr. Michael Gebhart

[email protected]

Quality Analysis in the context of SOA and cloud

Certification of high-quality Services

Training for an engineering methodology based on SoaML

ISBN 978-3-86644704-2

30 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures

Page 31: Quality Analysis of Service-Oriented Architectures · Gebhart Quality Analysis (QA) 82 19.11.2012 Motivations for Service-Oriented Architectures Surveys Aberdeen Research (2007) Survey

Gebhart Quality Analysis (QA) 82

19.11.2012

Related Publications

Gebhart, M. (2012). Service Identification and Specification with SoaML. In A. D. Ionita, M. Litoiu, & G. Lewis, Migrating Legacy Applications: Challenges in Service Oriented Architecture and Cloud Computing Environments (pp. 102-125). doi: 10.4018/978-1-4666-2488-7. ISBN: 978-1-46662488-7.

Gebhart, M. (2011). Qualitätsorientierter Entwurf von Anwendungsdiensten. Karlsruhe, Germany: KIT Scientific Publishing. ISBN 978-3-86644704-2.

Gebhart, M., & Abeck, S. (2011a). Metrics for Evaluating Service Designs based on SoaML. International Journal on Advances in Software, 4(1&2), 61-75. Retrieved from http://iariajournals.org/software/

Gebhart, M., & Abeck, S. (2011b). Quality-Oriented Design of Services. International Journal on Advances in Software, 4(1&2), 144-157. Retrieved from http://iariajournals.org/software/

Gebhart, M., Sejdovic, S., & Abeck, S. (2011). Case Study for a Quality-Oriented Service Design Process. In L. Lavazza, L. Fernandez-Sanz, O. Panchenko, & T. Kanstrén, Proceedings of the Sixth International Conference on Software Engineering Advances (ICSEA) 2011 (pp. 92-97). ISBN: 978-1-61208165-6.

Gebhart, M., Baumgartner, M., & Abeck, S. (2010). Supporting Service Design Decisions. In J. Hall, H. Kaindl, L. Lavazza, G. Buchgeher, & O. Takaki (Eds.), Proceedings of the Fifth International Conference on Software Engineering Advances (ICSEA) 2010 (pp. 76-81). doi: 10.1109/ICSEA.2010.19

Gebhart, M., Baumgartner, M., Oehlert, S., Blersch, M., & Abeck, S. (2010). Evaluation of Service Designs based on SoaML. In J. Hall, H. Kaindl, L. Lavazza, G. Buchgeher, & O. Takaki (Eds.), Proceedings of the Fifth International Conference on Software Engineering Advances (ICSEA) 2010 (pp. 7-13). doi: 10.1109/ICSEA.2010.8

31 Dr. Michael Gebhart: Quality Analysis of Service-Oriented Architectures