extracting and facilitating architecture in service...

27
Extracting and Facilitating Architecture in Service-Oriented Software Systems WICSA / ECSA 2012, Finland Rainer Weinreich Cornelia Miesbauer Georg Buchgeher Thomas Kriechbaum

Upload: others

Post on 01-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Extracting and Facilitating Architecture in Service-Oriented Software Systems

WICSA / ECSA 2012, Finland Rainer Weinreich

Cornelia Miesbauer

Georg Buchgeher

Thomas Kriechbaum

Page 2: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  SOA in the banking domain -  SOA systems based on Java EE, Web Services, host transactions

(CICS), .NET -  Service development and operation is governed by a service lifecycle -  Service information is managed in service registries/repositories -  Stakeholders needing architectural information for SOA management

activities

§  Problems -  SOA information managed in different locations and tools -  Manual maintenance of SOA information -  Architecture documentation out of date -  Manual reconstruction from implementation

Context

Slide 2 23.08.2012

Page 3: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Provides concepts similar to ADLs (e.g., xADL) §  Includes code model similar to AMTs §  Can be bound to different implementation technologies §  Support for AKM and variability management

LISA Model

Slide 3 23.08.2012

Technology Bindings

Java, C#Eclipse,

OSGi, SCA, J2EE, GWT,

Spring, JOAL

Code Model

class, interface, metadata, operation, field, ...

Design Model

design decision, module, component, port, service, configuration, component

instance, endpoint, ...

LISA Core Models

Page 4: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Based on LISA Model, integrated in Eclipse IDE §  Views, editors, analysis, continuous synchronization of

architecture and implementation

LISA Toolkit

Slide 4 23.08.2012

Page 5: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  SOA -  System of Systems (SoS) -  Different implementation and access technologies (heterogeneity) -  Different administrative domains -  Decoupled subsystems -  Evolution through reconfiguration and adaptation of subsystems -  …

§  SOA support in LISA -  High-level architectural concepts, support for run-time configurations -  Bindings to different technologies within one architecture model -  Support for distributing and combining architecture descriptions from

different subsystems and administrative domains

SOA Characteristics and Support

Slide 5 23.08.2012

Page 6: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Provide architectural information that is consistent and up-to-date -  Automatically extract architecture -  Synchronize with EA and SOA management tools

§  Support architecture reviews, design and evolution -  Provide support for architecture visualization, browsing, and review

§  Extend and validate LISA approach for supporting SOA-based software systems

Aims

Slide 6 23.08.2012

Page 7: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Different parsers, extract and map to LISA models §  Differ in information source, supported abstraction level,

supported technology §  Incremental extraction

Architecture Extraction

Slide 7 23.08.2012

System Implementation

Project 1

Project 2

Project ...

Project n

LISAArchitecture Model

Design Model

Code ModelSource

Parsers

LibraryParsers

ComponentParsers

Page 8: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

1.  Create component (and service) definitions -  Component types

•  Java Bean •  CICS •  DAO •  HAO

-  Protocol bindings •  Web Services •  EJB/IIOP

2.  Create configurations -  Service and component instances

3.  Create connections

Example: XML-Service Configuration

Slide 8 23.08.2012

Page 9: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Example: Resulting Configuration

Slide 9 23.08.2012

Page 10: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Example: Extract connections from code

Slide 11 23.08.2012

Page 11: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Software architect -  Establish company-wide reference architectures and standards, ensure

conformance to these standards -  Interested in system overview and standards conformance

§  Solution architect -  Design and evolve a specific solution within a SOA over time -  Requires more detailed information used for future design activities

§  Application and component designer -  Detailed component and interface design -  Requires information on design of internal services -  Is responsible for managing information in service registries

Stakeholders

Slide 12 23.08.2012

Page 12: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  System overview -  Available services -  System configuration

§  Detailed analysis -  Service relationships -  Host transactions -  Conformance to reference architectures

Typical questions

Slide 13 23.08.2012

Page 13: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Available Services

Slide 14 23.08.2012

§  External Services §  Components

-  BLOs -  CICS -  HAOs -  DAOs

§  Configurations

Page 14: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Component/Service Usage

Slide 15 23.08.2012

Page 15: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

System Configuration – Overview (1)

Slide 16 23.08.2012

Page 16: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

System Configuration – Overview (2)

Slide 17 23.08.2012

Page 17: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

System Configuration – Overview (3)

Slide 18 23.08.2012

Page 18: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

System Configuration – Overview (4)

Slide 19 23.08.2012

Page 19: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

System Configuration – Focus Mode (1)

Slide 20 23.08.2012

Page 20: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

System Configuration – Focus Mode (2)

Slide 21 23.08.2012

Page 21: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Method Invocation Analysis (1)

Slide 22 23.08.2012

Page 22: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Method Invocation Analysis (2)

Slide 23 23.08.2012

Page 23: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Method Invocation Analysis (3)

Slide 24 23.08.2012

Page 24: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

Host Transactions

Slide 25 23.08.2012

Page 25: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Continuous adaptation and refinement of approach (action research) with company stakeholders

§  Applied approach to several different SOA subsystems, developed by different teams

§  Decided to use approach as part of EAM effort spanning whole banking group

§  Want to include client architecture and architecture of back-end software (host)

§  Decided to provide architectural information in a standardized way to restrict diversity

Experiences

Slide 26 23.08.2012

Page 26: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent

§  Provide additional views §  Synchronization with SOA registry/repository §  (Synchronization with EAM tools) §  Export to UML tools for further design activities §  Automatic analysis of conformance to reference

architectures §  Enhanced review support through facilitation of AKM and

context information §  …

Current and Future Work

Slide 27 23.08.2012

Page 27: Extracting and Facilitating Architecture in Service ...wicsa2012.soberit.hut.fi/.../WEB...Service-oriented-Software-Systems.… · Provide architectural information that is consistent