Software Engineering and Technology Trends



Similar documents
Business-Driven Software Engineering Lecture 3 Foundations of Processes

A Software Development Platform for SOA

Government's Adoption of SOA and SOA Examples

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

SOMA, RUP and RMC: the right combination for Service Oriented Architecture

IBM Information Management

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

Industry models for insurance. The IBM Insurance Application Architecture: A blueprint for success

Extend the value of your core business systems.

Developing SOA solutions using IBM SOA Foundation

Federal Enterprise Architecture and Service-Oriented Architecture

Service Oriented Architecture (SOA) An Introduction

How service-oriented architecture (SOA) impacts your IT infrastructure

SOA Governance and the Service Lifecycle

Five best practices for deploying a successful service-oriented architecture

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

SOA Myth or Reality??

Aspect-Oriented Programming

Establishing a business performance management ecosystem.

Designing an Enterprise Application Framework for Service-Oriented Architecture 1

Industry models for financial markets. The IBM Financial Markets Industry Models: Greater insight for greater value

SOA 기반 Business Process Management (BPM) Accenture, SI&T Technology Architecture Jeong-Wook, Lee

Service Oriented Architecture 1 COMPILED BY BJ

Using an Aspect Oriented Layer in SOA for Enterprise Application Integration

SOA for Healthcare: Promises and Pitfalls

Service-oriented architecture in e-commerce applications

IBM Customer Experience Suite and Electronic Forms

CMMI and IBM Rational Unified Process

Chapter 15. Web services development lifecycle

Model Driven and Service Oriented Enterprise Integration---The Method, Framework and Platform

FREQUENTLY ASKED QUESTIONS. Oracle Applications Strategy

Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies

Building Out BPM/SOA Centers of Excellence Business Driven Process Improvement

CBM SOMA - SCA. Techniques and Standards to Increase Business and IT Flexibility. Jouko Poutanen Senior IT Architect, IBM Software Group

Unifying IT Vision Through Enterprise Architecture

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

A Comparison of SOA Methodologies Analysis & Design Phases

Introduction to SOA governance and service lifecycle management.

L Impatto della SOA sulle competenze e l organizzazione ICT di Fornitori e Clienti

Independent Insight for Service Oriented Practice. An SOA Roadmap. John C. Butler Chief Architect. A CBDI Partner Company.

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

A Guide Through the BPM Maze

Web Services - Consultant s View. From IT Stategy to IT Architecture. Agenda. Introduction

WHITE PAPER: STRATEGIC IMPACT PILLARS FOR EFFICIENT MIGRATION TO CLOUD COMPUTING IN GOVERNMENT

FUJITSU Software Interstage Business Operations Platform: A Foundation for Smart Process Applications

Analysis and Design Techniques for Service-Oriented Development and Integration

The Way to SOA Concept, Architectural Components and Organization

Guiding Principles for Modeling and Designing Reusable Services

SOA: The missing link between Enterprise Architecture and Solution Architecture

SOA and BPO SOA orchestration with flow. Jason Huggins Subject Matter Expert - Uniface

IBM WebSphere application integration software: A faster way to respond to new business-driven opportunities.

Accenture Public Service Platform Taking SOA from the Whiteboard to the Data Center and Beyond

A standards-based approach to application integration

2 (18) - SOFTWARE ARCHITECTURE Service Oriented Architecture - Sven Arne Andreasson - Computer Science and Engineering.

Applying SOA to OSS. for Telecommunications. IBM Software Group

Life insurance policy administration: Operate efficiently and capitalize on emerging opportunities.

Data Management Roadmap

SOA Fundamentals For Java Developers. Alexander Ulanov, System Architect Odessa, 30 September 2008

Connectivity and integration Executive brief. Optimize the potential of ERP systems through IBM SMART SOA integration strategies.

Enterprise IT Architectures SOA Part 2

What You Need to Know About Transitioning to SOA

WebSphere Business Modeler

Aspect-Oriented Software Development

A Service-Oriented approach dedicated to Internet based Business Process Networks: Building a MDA based collaborative platform with opensource

What SOA can do for Software Dependability. Karl M. Göschka Vienna University of Technology

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

A discussion of information integration solutions November Deploying a Center of Excellence for data integration.

Service-Oriented Architectures

Asset Based Development

The OMG BPM Standards

Foundations of Model-Driven Software Engineering

Agile Modeling and Design of Service-Oriented Component Architecture

Model Driven Development for Composing Business Applications. Jean-Loup Comeliau (W4)

Strategy for Application Modernization A Summa White Paper

IRMAC SAS INFORMATION MANAGEMENT, TRANSFORMING AN ANALYTICS CULTURE. Copyright 2012, SAS Institute Inc. All rights reserved.

Impact of Service Oriented Architecture on ERP Implementations in Technical Education

Service Oriented Architecture

Methods and tools for data and software integration Enterprise Service Bus

Enterprise Application Designs In Relation to ERP and SOA

IBM Rational Asset Manager

Component-Oriented Engineering

Business Process Management Enabled by SOA

IDC Abordagem à Implementação de Soluções BPM

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Risk mitigation for business resilience White paper. A comprehensive, best-practices approach to business resilience and risk mitigation.

Realizing the Full Scope of PLM with Business Process Management

A COMPARISON OF AOP BASED MONITORING TOOLS

Introducing webmethods OneData for Master Data Management (MDM) Software AG

Institute of Research on Information Systems (IRIS) Course Overview

Progress Report Aspect Oriented Programming meets Design Patterns. Academic Programme MSc in Advanced Computer Science. Guillermo Antonio Toro Bayona

BEA BPM an integrated solution for business processes modelling. Frederik Frederiksen Principal PreSales Consultant BEA Systems

Transcription:

Laboratory Software Engineering and Technology Trends Christopher Giblin cgi@zurich.ibm.com

Overall Trends Internet Constant change in usage and application styles Open Source vs. Proprietary Development Legal issues associated with sw. dev. Becoming more prominent. Agile vs. Heavy Methodology Finding a balance between flexibility and process. Software will be in everything Ongoing increasing reliance on computer systems Transportation Elections, government Medical

Overall Trends, continued Inter-organizational interactions Internet is very much a business medium Increasing system complexity Virtualization of hardware, software, human organizations. Grid, Federated Identity Information explosion Structured and unstructured information Need for analytics, mining Increasing amount of regulatory compliance Sarbannes-Oxley Basel II

Overall Trends, continued Security concerns: astronomical increase in your favorite metric: CERT incidents Vulnerabilities, worms Investment in recovery and prevention of security incidents

Fundamentals of Software HW and SW purchase often represents 30% of total costs Engineering still valid 50-70% of costs are operational Optimistic estimation is still one of the most common causes for runaway projects. J. Verner, W. Evanco Quality much of downtime due to software errors, increasing operational costs Requirements gathering Rigor in development, testing reduce errors Architecture and standards Leverage know-how reliability, extensibility, adaptivity Re-use can lowers costs Models and patterns Product lines Asset-based repositories More expensive to develop re-usable code Post-mortem reviews are important for process improvement. J. Verner, W. Evanco

Eclipse is an open platform for tool integration. a state-of-the art IDE supporting extensible, multi-artifact development. an immensely successful agile, distributed, open source project. the core of IBM WebSphere Studio. an independent open eco-system around royalty-free technology.

Eclipse Plug-in Architecture Plug-in set of contributions smallest unit of Eclipse function Plug-in Big example: HTML editor Small example: Action to calculate the number of lines of a Java file. Plug-in Extension point named entity for collecting contributions Example: extension point to add additional preference pages Platform Extension - a contribution Example: specific HTML editor preference page Extension Extension point

Example of extending Eclipse: Business Process Modeling

Eclipse Board

Models Model Assisted Development Modeling as analysis tool Models as documentation (Source Driven Modeling J No sync between targets and models (source and model diverge). Model Driven Development (MDD) strives to automate the generation of software artifacts through extensive use of models Skilled modelers are the exception, not the rule

How do people use models? Code only Code Viz. M RTE M Modelcentric M Model only M C What s a Model? vizualize C The code is the model synchronize C Manage code and model generate C The model is the code Let s talk models -Alan Brown

Model Driven Architecture (MDA) An example of MDD. A vision and framework defined by the OMG for generating implementations from models. Models abstract target software platform as high-level programming languages abstract target hardware platform. Successive transformations from PIM PSM The three primary goals of MDA are portability, interoperability and reusability through architectural separation of concerns.

Business Process Engineering Customization Business Process Analysis Model Simulation As-Is/To-Be comparison iterative process of assisted transformation steps separation of concerns Legacy Integration Business Process Design Model Performance Monitoring BPEL/WSDL Generation

The Cycle of Business Performance closes Modelthe loop Monitor Key Performance Indicators Establish process modeling methodology Create the As-Is Process Create the To-Be Process Add corrective actions, automatic or manual Build business measures Feed the model for as-is cycle initiation Communicate and verify business process model Manage Transform Build the implementation model Model the user interfaces Monitor the Processes Monitor Integrate Build the object models IT and Business Perspective Model partner interfaces Integrate and connect implementations

Greater flexibility is required from business models and the supporting IT architectureflexible business Transformation Business process outsourcing Mergers, acquisitions & divestitures Composable processes (CBM) Component Business Modeling Requires Flexible IT On Demand operating environment Service-Oriented Architecture (SOA) Development Infrastructure Composable services (SOA) Software development Integration Infrastructure management

A component business map is a tabular overview of a business A Business Component is a part of an enterprise that has the potential to operate autonomously, for example, as a separate company, or as part of another company. It offers services to its environment. An Operational Level characterizes the scope of decision making. The three levels used in CBM are direct, control and execute. Direct is about strategy, overall direction and policy. Control is about monitoring, managing exceptions and tactical decision making. Execute is about doing the work. Operational Levels Competency Direct Control Execute Business & Financial / Infrastructure Business Strategy Investment Strategy Investment/Capital Investment Operations Financial Reporting and Controls (GL) Columns are Business Competencies, defined as large business areas with characteristic skills and capabilities, for example, product development or supply chain. Business Acquisition & Retention Market and Promotion Planning Promotion Illustrations Sales Support New Business Processing (Application) Policy Administration & Services Operations And Planning Operations Controls Processing Policy Changes Billing Benefit Payments Claims Strategy Miscellaneous Payment Planning Claims Litigation Surrenders/ Maturities Payment Processing (Disbursements)

CBM is used successfully to manage the Line complexity of Business in business Line of Business Line of Business Sales & Distribution transformation Functions HR, IT Infrastructure, Finance, Procurement, etc. Territory Functions HR, IT Infrastructure, Finance, Procurement, etc. Territory Life Commercial Lines P&C Lines HR, IT Infrastructure, Finance, Procurement, etc. Functions Product House Policy & Claims Handling Assets & Liabilities HR, IT Infrastructure, Finance, Procurement, etc. Territory Dimension 1 Improve local shortcomings Dimension 2 Decompose the Value Chain Dimension 3 Empower lines of business Dimension 4 Consolidate horizontal functions Specific performanceimprovement projects Realise synergies along core insurance functions Realise synergies along lines of business Realise synergies along horizontal functions

Example path for change: Life & Transformational View Competency Pensions Business & CBM Operational Levels Direct Financial / Infrastructure Business Strategy Investment Strategy Manufacturing/ Product Development Product Planning Relationship Customer Relationship Strategy Business Acquisition & Retention Market and Promotion Planning Risk Reinsurance Strategy Risk, Compliance, Legal Policy Administration & Services Operations And Planning Benefit Payments Claims Strategy Miscellaneous Payment Planning Group Administration Group Strategy Control Execute Investment/Capital External Reporting Procurement/ Vendor AR / AP Investment Operations Financial Reporting and Controls (GL) Audit Human Resources Learning/ Knowledge Services Product Internal/External Product Development Internal/External Product Education Correspondence Customer Customer Information Profile Correspondence Handling Contact Servicing/ Service Centers Promotion Producer Portfolio Analysis Illustrations Sales Support New Business Processing (Application) Risk Compliance, Legal Monitoring Underwriting Underwriting Decisioning Regulatory and Compliance Reporting Operations Controls Processing Policy Changes Billing Claims Litigation Surrenders/ Maturities Payment Processing (Disbursements) Process Claim Fraud Investigation Account Enrollment & Eligibility Plan Sponsor Services Seek external provider / external utility Consolidate and/or create internal utility Integrate and redesign No action

SOMA combines business vision with modern and legacy assets Model-driven: Let the tools do the walking Top-down: Business-driven process, event and variation analysis Business services linked to business goals IT components aligned with services and orchestrated IT components implemented with best-of-breed technology Bottom-up: Leverage Legacy through understanding and transformation

Service-Oriented Architecture (SOA) A set of architectural principles that address characteristics such as modularity, encapsulation, loose coupling, separation of concerns, composable and single implementation. has several aspects An architectural style that requires a service provider, requestor and a service description. A programming model complete with standards, tools, methods and technologies such as web services. A set of business-aligned IT services that support an organization s business process goals and objectives using interface-based service descriptions that decouple the provider and consumer through open standards and protocols

A Service-Oriented Architecture is implemented using multiple tiers Presentation architecture Portlets Business process architecture Process choreography Service-oriented architecture Composite services Component-based architecture Enterprise components Integration architecture (Service Integration Bus) QoS management & monitoring CICS/COBOL Operational systems Object-oriented CRM, ERP Business intelligence

Enterprise Service Bus

Outlook Software everywhere Increasing interdependence of software and business Messaging gains in importance Business and audit events M2M Aggregation Increasing role of models Tons of data to transport, route and analyze Importance of reliability, automation "The fundamentals of software engineering never go out of style Grady Booch

Thanks!

Aspects and Separation of Concerns Separation of concerns pursuit of any engineering discipline Reduce inter-dependencies Strive to identify and preserve orthogonal relationships By abstracting concerns out and separating them, programming individual concerns becomes substantially less complex, and code can be effectively reused. -W. Hursch, C. Lopes, Separation of Concerns, 1995

Good modularity XML parsing XML parsing in org.apache.tomcat red shows relevant lines of code nicely fits in one box Copyright 1998-2002 2006 IBM Corporation PARC

Problems like logging is not modularized logging in org.apache.tomcat red shows lines of code that handle logging not in just one place not even in a small number of places Copyright 1998-2002 2006 IBM Corporation PARC

Aspect-oriented Programming Introduces the crosscutting modularity crosscutting is inherent in complex systems. capture crosscutting explicitly. an aspect is a modularized cross-cutting concern. AOP proposed by Gregor Kiczales et al, Xerox PARC, 1997 Patents filed Created AspectJ to explore ideas AOP is not tied to OOP.

AOP introduces the notion of weaving The supported technique of composing aspects with application code. Compile time weaving AspectJ Hyper/J Load-time weaving AspectWerkz Run-time weaving AspectWerkz JAC Lasagna

Extended Web Services Combine flows of services into business processes. Support cross-organizational processes. Transactional Sessions