Maturity Assessments of Service- oriented Enterprise Architectures with Iterative Pattern Refinement

Similar documents
Enterprise Architecture Ontology for Services Computing

Leveraging Standard Software from the Cloud with Service-Oriented EAM

Integration Strategies and Patterns for SOA and Standard Platforms

Method forservice-oriented EAM withstandard Platforms in Heterogeneous IT Landscapes

A Comparison of SOA Methodologies Analysis & Design Phases

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note

Analyzing the SOAability of Standard Software Packages with a dedicated Architecture Maturity Framework


A Methodology for Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

A Survey of Service Oriented Development Methodologies

Chap 1. Introduction to Software Architecture

Research Topics in Software Engineering

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

Enterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing

Service Oriented Architecture and Its Advantages

Towards Visual EAM Analytics: Explorative Research Study with Master Students

MODELING OF SERVICE ORIENTED ARCHITECTURE: FROM BUSINESS PROCESS TO SERVICE REALISATION

A Process View on Architecture-Based Software Development

This is an author-deposited version published in : Eprints ID : 15447

CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE

New Pattern Language Concepts for Designing UbiComp Applications Connecting to Cloud Services

Towards an Automated Pattern Selection Procedure in Software Models

Introduction. Observation Patterns. Accounting Patterns. How to use Patterns

Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture

Encapsulating Crosscutting Concerns in System Software

Extend the value of your core business systems.

Corresponding Author

Using MDA in Web Software Architectures

Excerpts from Chapter 4, Architectural Modeling -- UML for Mere Mortals by Eric J. Naiburg and Robert A. Maksimchuk

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

Trends in Software Intensive Systems Development JACEK SZYMANSKI INFORMATION SYSTEMS CONSULTANCY

Towards a Sophisticated Understanding of Service Design for Enterprise Architecture

Component Based Development in Software Engineering

SOA Architect Certification Self-Study Kit Bundle

Pattern Oriented Software Development: Moving Seamlessly from Requirements to Architecture

The Service, The Cloud & The Method: The Connection Points

OMG SOA Workshop - Burlingame Oct 16-19, 2006 Integrating BPM and SOA Using MDA A Case Study

A Service-oriented Architecture for Business Intelligence

A methodology for secure software design

Service Component Architecture for Building Cloud Services

A Study into the Critical Success Factors when Implementing Business Process Management Systems

Patterns in a Nutshell

SOPLE-DE: An Approach to Design Service-Oriented Product Line Architectures

Six Strategies for Building High Performance SOA Applications

PATTERN-BASED BUSINESS-DRIVEN ANALYSIS AND DESIGN OF SERVICE ARCHITECTURES

SOA GOVERNANCE MODEL

Patterns in Software Engineering

Air Force SOA Enterprise Service Bus Study Using Business Process Management Workflow Orchestration for C4I Systems Integration

i-questionnaire A Software Service Tool for Data

SOA + BPM = Agile Integrated Tax Systems. Hemant Sharma CTO, State and Local Government

SOA, Cloud Computing & Semantic Web Technology: Understanding How They Can Work Together. Thomas Erl, Arcitura Education Inc. & SOA Systems Inc.

Service Oriented Architecture Professional (SOACP)

Mitigating Service-Orientation Risks with RUP

CHAPTER 4: PATTERNS AND STYLES IN SOFTWARE ARCHITECTURE

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools

Service Oriented Enterprise Architecture

Service Orientation and Modeling

Strategic Release Planning Challenges for Global Information Systems A Position Paper

Agile Usability Engineering by Thomas Memmel

SOA : To Do or Not to Do

Multi-agent System based Service Oriented Architecture for Supply Chain Management System (MAS-SOA-SCM)

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS

SOA: The missing link between Enterprise Architecture and Solution Architecture

Agile Methods and Visual Specification in Software Development A chance to ensure Universal Access

Understanding Service-Orientation Part II: The Principles

Evaluating OO-CASE tools: OO research meets practice

Flexibility in SOA Operations: The Need for a Central Service Component

Supporting Service Design Decisions

PESIT- Bangalore South Campus Hosur Road (1km Before Electronic city) Bangalore

Federal Enterprise Architecture and Service-Oriented Architecture

Roles for Maintenance and Evolution of SOA-Based Systems

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15

Bastian Koller HLRS High Performance Computing Center Stuttgart, University of Stuttgart Nobelstrasse Stuttgart

Evolving Enterprise Architectures for Digital Transformations

Cloud Computing and SOA from Enterprise Perspective. Yan Zhao, PhD ArchiTech Consulting LLC Oct.

SOA for Healthcare: Promises and Pitfalls

Foundations of Model-Driven Software Engineering

Introduction to SOA governance and service lifecycle management.

Improving Traceability of Requirements Through Qualitative Data Analysis

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

A Variability Viewpoint for Enterprise Software Systems

Architectural Templates: Engineering Scalable SaaS Applications Based on Architectural Styles

Patterns in. Lecture 2 GoF Design Patterns Creational. Sharif University of Technology. Department of Computer Engineering

A Configuration Management Model for Software Product Line

Useful Patterns for BPEL Developers

How To Understand Cloud Computing

Software Development Best Practices

IMPROVEMENT OF APPLICATIONS DEVELOPMENT USING SERVICE ORIENTED ARCHITECTURE

Document Engineering: Analyzing and Designing the Semantics of Business Service Networks

Scaling Down Large Projects to Meet the Agile Sweet Spot

Modelling, Analysing and Improving an ERP Architecture with ArchiMate

Agile Offshore Development. with SOA

From Business World to Software World: Deriving Class Diagrams from Business Process Models

Trust areas: a security paradigm for the Future Internet

Module F13 The TOGAF Certification for People Program

Service Oriented Architecture

The IT Infrastructure Library (ITIL)

V&V and QA throughout the M&S Life Cycle

TOGAF usage in outsourcing of software development

Transcription:

Maturity Assessments of Service- oriented Enterprise Architectures with Iterative Pattern Refinement Michael Falkenthal 1, Dierk Jugel 1, Alfred Zimmermann 1, René Reiners 2, Wilfried Reimann 3, Michael Pretz 3 1 Faculty of Informatics, University of Applied Sciences Reutlingen, Germany firstname.lastname@reutlingen-university.de 2 User-Centered Ubiquitous Computing, Fraunhofer FIT Sankt Augustin, Germany rene.reiners@fit.fraunhofer.de 3 Enterprise-Architecture & Innovation, Daimler AG, Germany firstname.lastname@daimler.com : @inproceedings{falkenthal12,6 66author6666=6{Michael6Falkenthal6and6Dierk6Jugel6and6Alfred6Zimmermann6and6 666 666Ren\'{e}6Reiners6and6Wilfried6Reimann6and6Michael6Pretz},6 66title66666=6{Maturity6Assessments6of6ServiceJ6oriented6Enterprise6 66 666Architectures6with6Iterative6Pattern6Refinement},6 66booktitle6=6{Proceedings6der6Fachtagung6INFORMATIK62012,6Stuttgart,66 666GIJEdition6Lecture6Notes6in6Informatics6(LNI)},6 66year666666=6{2012},6 66pages66666=6{1095JJ1101},6 66series6666=6{Lecture6Notes6in6Informatics6(LNI)},6 66volume6666=6{PJ208},6 66publisher6=6{Gesellschaft6f\"{u}r6Informatik6e.V.6(GI)}6 }6 2012 Gesellschaft für Informatik, Bonn See also LNI-Homepage: http://www.gi-ev.de/service/publikationen/lni

Maturity Assessments of Service-oriented Enterprise Architectures with Iterative Pattern Refinement Michael Falkenthal, Dierk Jugel René Reiners and Alfred Zimmermann User-Centered Ubiquitous Architecture Reference Lab of the SIL Computing Reutlingen University, Germany Fraunhofer FIT first-name.last-name@reutlingenuniversity.de Sankt Augustin, Germany rene.reiners@fit.fraunhofer.de Wilfried Reimann and Michael Pretz Enterprise-Architecture & Innovation Daimler AG, Germany first-name.last-name @daimler.com Abstract: Current practices for assessing maturity of service-oriented enterprise information architectures only provide a sparse metamodel and pattern foundation and were rarely validated. This is a real problem for practical architecture assessments in repeated (cyclic) evaluations of serviceoriented systems. In preliminary research we have developed and validated an original pattern language for supporting architecture assessments and optimization of enterprise systems, leveraging and extending base frameworks like the Capability Maturity Model Integration and The Open Group Architecture Framework. Traditionally, patterns are derived after long experience by an expert group of pattern authors. This may lead to a decelerated reuse of available design knowledge. Our approach intends to integrate available knowledge from enterprise information architecture methods, services computing and software architects directly from the beginning of the iterative pattern development and refinement process. 1 Introduction The growing complexity of Enterprise Information Architectures is a challenge for many companies. Typical IT landscapes of enterprise systems consist of more or less processintegrated standard software packages, silos of legacy applications, and different infrastructure components. Innovation oriented companies have introduced services computing systems to assist in closing the gap between business and information technology and thus enabling business opportunities for service and emerging cloud computing paradigms in the context of emerging enterprise information architecture management approaches. One main problem today is the blurred transparency of this innovation change to system architectures based on services and cloud computing. Our approach supports enterprise architects during architecture maturity assessments for service-oriented enterprise systems by extending our previous researched and validated architecture pattern language [ZLR11] by an iterative pattern formulation process [Re12]. Our pattern approach extends our previous work about architecture maturity frameworks, as in [Bu10] and [Zi11], and connects originally assessment pattern structures, like patterns of an architecture pattern language and collaborative pattern evolution process, with our maturity framework and our pattern evolution process. In this way our researched architecture patterns support enterprise information architects to investigate the ability of heterogeneous enterprise services-based systems. The base

architecture maturity framework integrates system architecture elements from convergent architecture methods, technologies and related software patterns, as in [Ga94], [Er09], and [Bu96] with evaluation methods for service-oriented enterprise systems [BKM07]. 2 Architecture Maturity Model The Open Group Architecture Framework (TOGAF) [T11] as the current standard for enterprise architecture provides the basic blueprint and structure for our enterprise software architecture domains of service-oriented enterprise systems. SOA is the computing paradigm that utilizes services as fundamental flexible and interoperable building blocks for both structuring the business and for developing applications. SOA promotes a business-oriented architecture style as promoted in [KBS04] and [Er09], based on best of breed technology of context agnostic business services that are delivered by applications in a business-focused granularity. To provide dynamic composition of services within a worldwide environment SOA uses a set of XML-based standards. A main innovation introduced by SOA is that business processes are not only modeled, but also combined services are executed from different orchestrated services. In recent work, we have transformed the Capability Maturity Model Integration into a specific framework for architecture assessments of service-oriented enterprise systems. For this reason, we have combined CMMI with current SOA frameworks and maturity models. We used TOGAF and ideas related to the business and information architecture from [E12] as a basic structure for enterprise architecture spanning all relevant levels of service-oriented enterprise systems. We have analyzed and integrated related work about service-oriented architecture maturity models from [T11], [IA07], [O12], and others. The metamodel for architecture evaluation enlarges the standardized CMMI, which is originally used to assess the quality of software processes and not the quality of software architectures. We have analyzed and systematically integrated evaluation criteria, maturity domains, architecture capabilities, and level rankings from state of the art SOA maturity and evaluation models. In addition, we have adapted architecture assessment elements from [Zi11] and [BKM07], and extended singular architecture patterns from our previous work [ZLR11] to our new architecture assessment patterns and the iterative architecture pattern refinement process (Section 3). The SOAMMI architecture maturity framework introduces original architecture areas and organizes them within extended architecture domains, which are mainly based on TOGAF. Our intention was to leave most structural parts e.g. Maturity Levels, Capability Levels, Specific Goals and Practices, Generic Goals and Practices - of the original CMMI metamodel as untouched concepts. We extend these concepts of the metamodel by reclusively connected architecture patterns, as navigable architecture quality patterns of a pattern language, and enlarge these by other architecture specific structures and contents.

We have derived the architecture domains mainly from TOGAF where they are used as specific architecture subtypes and corresponding phases of the TOGAF-ADM (Architecture Development Method). Architecture areas cover assessable architecture artifacts and are correspondent, but very different, parts of process areas from CMMI. To fit our architecture assessment scope, we have defined 22 original architecture areas of the SOAMMI framework, as in [Bu10] and [Zi11]), linked them to our architecture maturity levels and ordered them in line with our specific enterprise and software architecture domains. Each of the delimited architecture area is accurately described in a catalog including name of architecture area, short identification of architecture area and a detailed description. 3 Architecture Assessment Patterns Although design patterns are mainly used to inform the design of a system, they are also applied as test cases for assessing software. Software architecture assessment patterns are based on the seminal work of software patterns originated from the work of [Zi11]. Our pattern language for architecture assessments of service-oriented enterprise systems provides a procedural method framework for the architecture assessment processes and for questionnaire design. This method framework of our new introduced pattern language was inspired from [RAZ11], and derived from the structures of the metamodel of SOAMMI as well as from our initial pattern catalog from previous research [ZLR11]. We organize and represent our architecture assessment patterns according to the following structures: Architecture Domains, Architecture Areas, Problem Descriptions - associated with Specific Goals, Solution Elements that are connected to Specific Practices and Related Patterns, which are subsequent connections of applicable patterns within the pattern language. Connecting elements to specific practices of the SOAMMI framework indicates solutions for architecture assessments and improvements of service-oriented enterprise systems. This assessment and improvement knowledge is both verification and design knowledge, which is a procedural knowledge based on standards, best practices, and assessment experience for architecture assessments of service-oriented enterprise systems. It is therefore both concrete and specific for setting the status of serviceoriented enterprise architectures, and helps to establish an improvement path for change. Patterns of our language show what to assess. Our patterns aim to represent verification and improvement knowledge to support cooperative assessments synchronizing people in cyclic architecture assessments. Associated with our architecture assessment pattern language we have set up an assessment process to show how to assess architecture capabilities. This process is based on a questionnaire for architecture assessment workshops providing concrete questions as in [Zi11], answer types, and helping to direct and standardize the related assessment process. Additionally, we have included process methods for workshops, result evaluations, improvement path information for technology vendors and for application

organizations, as well as change support and innovation monitoring instruments. We have identified in [ZLR11] and distinguish a set of 43 patterns, as parts of a new researched and introduced pattern language in the context of 7 Architecture Domains and 22 Architecture Areas. Even though our architecture quality patterns accord to the Specific Goals, the Specific Practices and the Generic Goals from the SOAMMI framework, they extend these structures by navigable patterns as part of an architecture assessment language. Only this pattern structure enables architecture quality assessors to navigate easily in two directions to support the diagnostics and optimization process, and to provide a clear link to questionnaire and the related answer and result concepts. Pattern Example: Business Product Problem: How can we structure, design, model, and represent each business product as an origin for modeling business processes? Solution: Structure business products for product lines Design business products by defining product structures and product rules Model and represent business products Related Patterns: Business Services, Value Chain, Business Process, and Business Control Information Pattern Example: Business Service Problem: How can we structure, model, and represent each business service needed to support business products? Solution: Structure business services for product types Design business services by defining service structures and service levels Model and represent business services Related Patterns: Value Chain, Business Process, and Business Control Information Figure 1: Pattern Example for Architecture Area "Business Products & Services" Traditionally, much effort is put into the derivation and evaluation of patterns. However, we see the problem that many findings must be regarded earlier, at the state of an idea in order to be able to consider many findings in a flexible pattern set. This holds the chance to start working with patterns very early even if it is not yet fully proven. Therefore, we give up the thought to force every pattern to be evaluated before its application. Our process wants to include new ideas and concepts into the project s lifecycle as early as possible. Over time, the idea, which is directly formulated as a pattern candidate, gets refined and evaluated. As soon as a pattern candidate is published in the pattern library, every registered user can provide feedback to the pattern or its formulation. It is also possible to support or refute the pattern statement by providing more references in favor of the pattern or against it. This way, the pattern maturity changes over time. To reflect the liveliness and bottom-up approach of the patterns in the design pattern library, we introduce the notion of a pattern s state that is used to track the development of the pattern over time. Our current implementation provides the following maturity states: (i) Just created patterns were recently submitted as a non-validated idea. (ii) Patterns under consideration look promising but still need further evaluation. (iii) Pattern candidates are close to being approved. (iv) Approved patterns are finalized within the pattern review process and settled design patterns. Currently, we have not yet defined a measure for the state of a pattern s maturity but consider the number of successful applications of a pattern as used by [GB08].

4 Conclusion and Upcoming Research In this work we have developed suitable models for assessments of service-oriented enterprise systems. Our specific architecture assessment approach of the SOAMMI framework was founded on current architecture standards like TOGAF and architecture assessment criteria from related work approaches. The need for iteratively updating our assessment pattern collection motivated us to merge the efforts done for SOA assessment with a flexible and iterative pattern refinement and creation process. After talking about SOA maturity and assessment, we looked at the concept of involving many stakeholders into the pattern creation and evolution process and to adapt already available knowledge and findings from the project s domain as early as possible. Our presented first approach of iterative pattern refinement allows for continuously evaluating gathered knowledge during the project s lifetime and makes patterns as well as pattern ideas available during the whole development process. Future work additionally has to consider conceptual work on both static and dynamic architecture complexity, and in connecting architecture assessment procedures with prognostic processes on architecture maturity with simulations of enterprise and software architectures. Additional improvement ideas include patterns for visualization of architecture artifacts and architecture control information to be operable on an architecture management cockpit. We are working at extending our pattern language to a full canonical form in order to support fully standardized cyclic architecture assessments for service-oriented products and solutions. The pattern evolution process represents a new aspect to the assembly and structuring of our patterns and will be further explored in the SOA assessment domain. Finally we will also apply the approach from this paper to the more holistic topic of the Enterprise Services Architecture Reference Cube ESARC from [ZZ11] and therefore the development of whole enterprise information architectures. The idea is to use the pattern-based iterative development method described in [BZ12] to derive a pattern language to support assessments of whole enterprise information architectures. Acknowledgement This paper extends ideas from the SOA Innovation Lab www.soa-lab.de, a major research and innovation network on Enterprise Architecture Management for Services and Cloud Computing in Germany and Europe. References [BKM07] Bianco, P.; Kostermanski, R.; Merson, P.: Evaluating a Service- Oriented Architecture. In: Engineering, September, pp. 1-91, 2007. [Bu10] Buckow, H.; Groß, H.-J.; Piller, G.; Prott, K.; Willkomm, J.; Zimmermann, A.: Analyzing the SOA Ability of Standard Software Packages with a dedicated Architecture Maturity Framework. In: EMISA, 2010, pp. 131-143.

[Bu96] [BZ12] Buschmann, F.; Meunier, R.; Rohnert, H.; Sommerlad, P.; Stal, M.: Pattern-Oriented Software Architecture, Volume 1: A System of Patterns. Chichester, UK: Wiley, 1996. Brunner, T.; Zimmermann, A.: Pattern-oriented Enterprise Architecture Management. In PATTERNS 2012 - The Fourth International Conferences on Pervasive Patterns and Applications, July 22-27, Nice, France 2012. [E12] Essential Architecture Project [Online] Available: http://www.enterprisearchitecture.org. [Accessed: 3-Jun-2012]. [Er09] Erl, T: SOA Design Patterns, Prentice Hall - Pearson, 2009. [Ga94] [GB08] Gamma, E.; Helm, R.; Johnson, R. E.; Vlissides, J.: Design Patterns. Elements of Reusable Object-Oriented Software, 1st ed. Amsterdam: Addison-Wesley Longman, 1994, p. 416. Thomas Grill and Margit Blauhut. Design Patterns Applied in a User Interface Design (UID) Process for Safety Critical Environments (SCEs). In Andreas Holzinger, editor, HCI and Usability for Education and Work, volume 5298 of Lecture Notes in Computer Science, pages 459 474. Springer Berlin / Heidelberg, 2008. [IA07] Inaganti, S.; Aravamudan, S.: SOA Maturity Model, In: BP Trends, April, pp. 1-23, 2007. [KBS04] [O12] [RAZ11] [Re12] Krafzig, D.; Banke, K.; Slama, D.: Enterprise SOA: Service- Oriented Architecture Best Practices (The Coad Series). Upper Saddle River, NJ, USA: Prentice Hall PTR, 2004. ORACLE SOA Maturity Model [Online] Available: http://www.scribd.com/doc/ 2890015/oraclesoamaturitymodelcheatshe et. [Accessed: 3-Jun-2012]. Reiners, R.; Astrova, I.; Zimmermann, A.: Introducing new Pattern Language Concepts and an Extended Pattern Structure for Ubiquitous Computing Application Design Support. In: PATTERNS 2011, Third International Conferences on Pervasive Patterns and Applications, 2011, no. c, pp. 61-66. Reiners, R.: A Pattern Evolution Process From Ideas to Patterns. In (Gesellschaft für Informatik e.v. Hrsg.): Lecture Notes in Informatics - Proceedings Informatiktage 2012, Bonn, 2012, pp. 115-118. [T11] TOGAF Version 9.1. Van Haren Publishing, 2011. [Zi11] [ZLR11] [ZZ11] Zimmermann, A.; Bukow, H.; Groß, H.-J.; Nandico, O. F.; Piller, G.; Prott, K.: Capability Diagnostics of Enterprise Service Architectures Using a Dedicated Software Architecture Reference Model. In: Services Computing, IEEE International Conference on, vol. 0, pp. 592-599, 2011. Zimmermann, A.; Laux, F.; Reiners, R.: A Pattern Language for Architecture Assessments of Service-oriented Enterprise Systems. In: PATTERNS 2011, Third International Conferences on Pervasive Patterns and Applications, 2011, no. c, pp. 7-12. Zimmermann, A.; Zimmermann, G.: ESARC-Enterprise Services Architecture Reference Cube for Capability Assessments of Service-oriented Systems. In: SERVICE COMPUTATION 2011 - The Third International Conferences on Advanced Service Computing, September 25-30, Rome, Italy, 2011.