applying the palladio tool in a soa project€¦ · •oracle service-oriented architecture (soa)...

24
1. fortiss GmbH - An-Institut Technische Universität München 2. Chair for Information Systems - Technische Universität München Applying the Palladio tool in a SOA Project Performance & Virtualization Group Information Systems Division Andreas Brunnert 1 , Daniel Tertilt 1 , Christian Vögele 1 , Helmut Krcmar 2

Upload: others

Post on 28-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

1. fortiss GmbH - An-Institut Technische Universität München

2. Chair for Information Systems - Technische Universität München

Applying the Palladio tool

in a SOA Project

Performance & Virtualization Group

Information Systems Division

Andreas Brunnert1, Daniel Tertilt1, Christian Vögele1, Helmut Krcmar2

Page 2: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Agenda

• Introduction

• Project Context

• PCM Use Cases

• Conclusion

• Outlook

Palladio in a SOA Project © fortiss GmbH 2 Palladio Days Paderborn, 8 – 9 November 2012

Page 3: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Agenda

• Introduction

• Project Context

• PCM Use Cases

• Conclusion

• Outlook

Palladio in a SOA Project © fortiss GmbH 3 Palladio Days Paderborn, 8 – 9 November 2012

Page 4: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Introduction

• An-Institut Technische Universität München

• Application-oriented research institute

• Industry collaboration to improve the

applicability of research results in practice

• Performance analysis and prediction

• Performance Management Work

• Focus on complex enterprise applications

Palladio in a SOA Project © fortiss GmbH 4 Palladio Days Paderborn, 8 – 9 November 2012

Page 5: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Agenda

• Introduction

• Project Context

– Goals

– Technology

– Performance Challenges

– Performance Evaluation Approaches

– Model Driven Development Process

• PCM Use Cases

• Conclusion

• Outlook

Palladio in a SOA Project © fortiss GmbH 5 Palladio Days Paderborn, 8 – 9 November 2012

Page 6: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Project Context

Goals

• Current IT landscape

Palladio in a SOA Project © fortiss GmbH 6 Palladio Days Paderborn, 8 – 9 November 2012

Activity 1

... ... .... Activity

n

Process View

Key Services

Service 1 Service 2 Service 3

User Interfaces

Page 7: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Project Context

Goals

• Target IT landscape

Palladio in a SOA Project © fortiss GmbH 7 Palladio Days Paderborn, 8 – 9 November 2012

Activity 1

... ... .... Activity

n

Service 2 Service 3

Enterprise Service Bus (ESB)

Key Services

Process View

User Interface

Service 1

Page 8: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Project Context

Technology

• Oracle WebLogic Application Server 11g

• Oracle Application Development Framework (ADF)

– JavaServer Faces (JSF) based web-applications using Enterprise Java Beans

(EJB)

• Oracle Service-oriented Architecture (SOA) Suite

– Service Component Architecture (SCA)-based web-service components

– Sometimes plain web-service implementations

• Facades in front of legacy systems

• Oracle Service Bus (OSB)

– Enterprise Service Bus

Palladio in a SOA Project © fortiss GmbH 8 Palladio Days Paderborn, 8 – 9 November 2012

Page 9: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Project Context

Performance Challenges

• Estimating resource requirements and response times for:

– User interfaces

– Enterprise Service Bus (ESB)

– Web services

• How to handle the dynamic workload?

– ~13‘400 concurrent users of the system between 9 and 12 am during weekdays –

otherwise much lower load

• Further challenges:

– Maximum CPU utilization in production 40%

– SAML authentication performance

– Web service operation granularity (ESB roundtrip overhead)

Palladio in a SOA Project © fortiss GmbH 9 Palladio Days Paderborn, 8 – 9 November 2012

Page 10: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Project Context

Performance Evaluation Approaches

• Load Tests:

– Evaluate response times and resource utilization for running components

• Performance models:

– Evaluate the expected response times for the new applications based on

monitoring data for existing web services

– Evaluate architectural changes (e.g. with or without ESB)

– Capture data about workloads, resource demands and response times

– Support the sizing process for the new infrastructure-components (especially in

the UI-Layer and for the web services)

Palladio in a SOA Project © fortiss GmbH 10 Palladio Days Paderborn, 8 – 9 November 2012

Page 11: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Project Context

Model Driven Development Process

• Process Representations by

the field specialists

• Combining Process and IT Views

(e.g. dependency from processes

to services)

• Navigation Rules for the UI

• Performance Models

Palladio in a SOA Project © fortiss GmbH 11 Palladio Days Paderborn, 8 – 9 November 2012

ARIS - EPC

MID Innovator

Oracle ADF Task Flows

PCM

manual transformation

automated transformation

(semi-)automated transformation

Page 12: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Agenda

• Introduction

• Project Context

• PCM Use Cases

– Data Store

– Use Case Modeling

– Software Performance Curves

– Resource Estimation

• Conclusion

• Outlook

Palladio in a SOA Project © fortiss GmbH 12 Palladio Days Paderborn, 8 – 9 November 2012

Page 13: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

PCM Use Cases

Data Store

• PCM models offer a good way to store performance data in a

structured form

– reuse performance data gathered during the software engineering process

– The ability to make use of this data by simulating the environment motivates

people to invest time in it

Palladio in a SOA Project © fortiss GmbH 13 Palladio Days Paderborn, 8 – 9 November 2012

• Propabilities for user interactions

• Resource demands for specific components

• Response times for different web service

operations

Design Development Test

Page 14: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

PCM Use Cases

Use Case Modeling

• PCM usage models are used to dicuss propabilities for using certain

functionalities with the users of the system

– PCM repository models are generated based on ADF Task Flows

– Propabilities represented in these usage models are used to support the creation

of load test scripts as well

Palladio in a SOA Project © fortiss GmbH 14 Palladio Days Paderborn, 8 – 9 November 2012

Design Development Test

Oracle ADF Task Flows

Usage Probabilities Load Test Scripts

Page 15: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

PCM Use Cases

Software Performance Curves

• The web services are facades in front of existing legacy systems:

– No access to the backend (legacy) systems

– No possibility to install monitoring functionalities

• Introduced in PCM by Alexander Wert, Jens Happe, Dennis Westermann

Palladio in a SOA Project © fortiss GmbH 15 Palladio Days Paderborn, 8 – 9 November 2012

Service 2 Service 3

Key Services

Service 1

Page 16: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

PCM Use Cases

Resource Estimation

• UI layer is is a Java EE web application based on the Oracle

Application Development Framework (ADF)

– JSF, Servlets, JSPs, EJBs, Web services

– Extract components, component relationships and resource demands from a running

Java EE application (different approach than Brosig et al. 2009, 2011)

Palladio in a SOA Project © fortiss GmbH 16 Palladio Days Paderborn, 8 – 9 November 2012

User Interface (Oracle ADF web applications)

• Components (Java EE-predefined):

• Servlets, Java Server Pages (JSP),

Enterprise Java Beans (EJB)

• Component Relationships

• Components Resource Demand

Page 17: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Agenda

• Introduction

• Project Context

• PCM Use Cases

• Conclusion

– What works?

– What does not work?

– What can be improved? aka feature wishlist ;-)

• Outlook

Palladio in a SOA Project © fortiss GmbH 17 Palladio Days Paderborn, 8 – 9 November 2012

Page 18: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Conclusion

What works?

• PCM allows to create performance models that are easily

comprehensible by technical staff in an organisaton

– Thanks to the UML alignment and the different views on the system

• PCM models allow to store performance related information that

often will not be documented otherwise

• User behaviour modeling in usage models

• SimuCom works reliable once the model has been established

• Evaluating design alternatives

Palladio in a SOA Project © fortiss GmbH 18 Palladio Days Paderborn, 8 – 9 November 2012

Page 19: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Conclusion

What does not work?

• Creating repository models and their associated RDSEFFS requires

a lot of effort

– Hard to capture the resource demands for the different components

• … it is mostly a technical and an organizational challenge to get the required data

• … sometimes the effort to get the data for PCM is higher than the benefit

• Representing memory would be benefitial especially for sizing Java EE

environments

• Some workflow cases can not be properly represented in PCM usage

models

• Simulation result visualizations are difficult to use for discussions with non-

PCM experts

Palladio in a SOA Project © fortiss GmbH 19 Palladio Days Paderborn, 8 – 9 November 2012

Page 20: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Conclusion

What can be improved? aka feature wishlist ;-)

• RDSEFF and Usage Model Editors need some enhancements in

terms of:

– Representing branches within branches within branches…

– Integrating capabilities to stop complete flows on certain conditions (like return to

caller)

– Referencing usage models from usage models (as of today we‘re using SEFFs)

• Often the PCM results do not contain data for all sensors

– specific RDSEFF results are missing

• It would be great to have a downloadable Windows 64bit version

– The tool seems to be much more stable and faster on MacOS

• Better migration support for existing models

– Apart from Anne Koziolek‘s migration script (e.g. for diagrams as well)

Palladio in a SOA Project © fortiss GmbH 20 Palladio Days Paderborn, 8 – 9 November 2012

Page 21: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Agenda

• Introduction

• Project Context

• PCM Use Cases

• Conclusion

• Outlook

Palladio in a SOA Project © fortiss GmbH 21 Palladio Days Paderborn, 8 – 9 November 2012

Page 22: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Outlook

What are we working on?

• Better visualization of the simulation results, e.g.:

– Generate graphs that are easily comprehendable by non-palladio specialists

• Instead of exporting results into CSV files and doing it in Excel…

• Remove ramp up times

• Automated PCM-model creation:

– From ADF Task Flows for early design cycle discussions

• Capturing user behaviour

– From running Java EE applications for resource estimation in later cycles

• Representing application components and their resource demands

Palladio in a SOA Project © fortiss GmbH 22 Palladio Days Paderborn, 8 – 9 November 2012

Page 23: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Palladio in a SOA Project © fortiss GmbH 23 Palladio Days Paderborn, 8 – 9 November 2012

Thanks for your attention!

Questions?

Page 24: Applying the Palladio tool in a SOA Project€¦ · •Oracle Service-oriented Architecture (SOA) Suite –Service Component Architecture (SCA)-based web-service components –Sometimes

Contact

Dipl.-Inf. Daniel Tertilt

fortiss GmbH – An-Institut Technische Universität München

Guerickestr. 25 | 80805 München | Deutschland

Tel. +49 89 360 35 22 - 18 | Fax +49 89 360 35 2250

[email protected] | www.fortiss.org

Christian Vögele, M.Sc.

fortiss GmbH – An-Institut Technische Universität München

Guerickestr. 25 | 80805 München | Deutschland

Tel. +49 89 360 35 22 - 18 | Fax +49 89 360 35 2250

[email protected] | www.fortiss.org

Prof. Dr. Helmut Krcmar

Technische Universität München - Lehrstuhl für Wirtschaftsinformatik

Boltzmannstraße 3 | 85748 Garching b. München | Deutschland

Tel. +49 89 289 – 195 32

[email protected] | www.winfobase.de

Andreas Brunnert, M.Sc.

fortiss GmbH – An-Institut Technische Universität München

Guerickestr. 25 | 80805 München | Deutschland

Tel. +49 89 360 35 22 - 44 | Fax +49 89 360 35 2250

[email protected] | www.fortiss.org

Palladio in a SOA Project © fortiss GmbH 24 Palladio Days Paderborn, 8 – 9 November 2012