29
Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing Miriam Capretz Department of Electrical & Computer Engineering Faculty of Engineering Oct 18th, 2012

Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Embed Size (px)

DESCRIPTION

There is more to software life cycle than just software development. Software development happens once, then evolution takes up the bulk of the software life cycle. In this presentation, I will talk about some approaches needed to deal with legacy systems. This is to aid their update to new business and maintenance requirements in addition to their upgrade to continuous new technologies. Service oriented architecture will be presented to support software evolution in this fast, ever changing environment. Moreover, cloud computing that enables ubiquitous and on demand access to computing resources will be examined. Applied research, such as in health care and M2M domains, involving these innovative technologies will be presented to illustrate their benefits to the advancement of software engineering.

Citation preview

Page 1: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

A Dependency Based Impact Analysis Framework for Service-Oriented System Evolution

Software Evolution: From Legacy Systems,

Service Oriented Architecture

to Cloud Computing

Miriam Capretz

Department of Electrical & Computer Engineering

Faculty of Engineering

Oct 18th, 2012

Page 2: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

• Software Legacy Systems

Software Evolution

Service Oriented Architecture (SOA)

SOA Evolution Framework

Cloud Computing

Ongoing Research

Faculty of Engineering @ Western

Agenda Outline

Page 3: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Legacy Systems

Large software systems that we don’t

know how to cope with but are vital to our

organization

Page 4: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Legacy Systems

poorly designed structures poor coding

poor logic poor documentation

Page 5: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Legacy System Structure

D a t a ba s e

U s e r i nt e r fa c e

S e rvi c e s

Ide a l m o de l for di st r ib ut io n R e a l le g a c y s ys te m s

D a t a ba s e

U s e r i nt e r fa c e

S e rvi c e s

Page 6: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Software Maintenance

most expensive phase of

the software life cycle

may account for over 70% of all

efforts of a software organization

Page 7: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Software Evolution

Page 8: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Service Oriented Architecture

Page 9: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Service Oriented Architecture

• Situation today

– Fast pace of business-driven changes

– Need for increasing business agility

– Technology heterogeneity and complexity

• What SOA can offer:

– Encapsulation of complexity

– Improved integration and reuse

– Protection of the legacy investment

– Separation of business process from application

Page 10: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Service Oriented Architecture

• SOA Concepts:

• Service Consumer

• Service Provider

• Service Broker

• Service Bus

Internet

3. Bind

2. Find

Service

Provider

Service

Consumer

1. Publish

Service

Broker

Page 11: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Service Oriented Architecture

Enterprise Service Bus (ESB)

Privacy

Service (PS)

Service

Consumer

Service

Consumer

Service

Consumer

Service

Provider

Service

Provider

Service

Provider

Other

Services

Routing

Service Registry Transport

Replication

• Message Routing

• Message Monitoring

• Service Replication

• Language transformation

Page 12: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

The Lifecycle of SOA Evolution

SOA Transition

Quantitative Analysis Dependency based

Impact Analysis

Qualitative Analysis Stability Analysis

Reliability Analysis

SOA Adaptation

Stage 1: SOA Migration

Stage 2: SOA Composition

Stage 3: SOA Evaluation

Process based Service Composition Ontology based Service Composition Security based Service Composition Privacy based Service Composition

Completed Research Ongoing Research

Page 13: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

The Lifecycle of SOA Evolution

SOA Transition

Quantitative Analysis Dependency based

Impact Analysis

Qualitative Analysis Stability Analysis

Reliability Analysis

SOA Adaptation

Stage 1: SOA Migration

Stage 2: SOA Composition

Stage 3: SOA Evaluation

Process based Service Composition Ontology based Service Composition Security based Service Composition Privacy based Service Composition

The Lifecycle of SOA Evolution

Completed Research Ongoing Research

Page 14: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

The Challenges to a SOA Transition

• The achievement of a high-quality SOA is a long term project that may last several years

• The magnitude of these changes involves considerable risks

• The cost of failure may be detrimental to companies, as it directly affects their strategic decisions

Page 15: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

OSTRA (Opportunity-driven Service-oriented TRAnsition) aims to provide a

adaptive approach to managing the iterative and incremental transition to SOA.

OSTRA: An SOA Transition Framework

The goal of OSTRA:

• To balance a continuous analysis of the transition process with the development of opportunities into projects

• To enable organizations to obtain and evaluate short-term goals with its long-term vision

• To allow organizations to acquire practical experience and knowledge on SOA to further improve the ongoing analysis of the transition.

F. Tiba, S. Wang, S. Ramanujam, and M. A. M. Capretz, "OSTRA: A Process Framework for the Transition to Service-Oriented Architecture", in International Journal of Information Technology and the Systems Approach (IJITSA) vol. 2. No. 2, 2009.

Page 16: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

The Lifecycle of SOA Evolution

SOA Transition

Quantitative Analysis Dependency based

Impact Analysis

Qualitative Analysis Stability Analysis

Reliability Analysis

SOA Adaptation

Stage 1: SOA Migration

Stage 2: SOA Composition

Stage 3: SOA Evaluation

Process based Service Composition Ontology based Service Composition Security based Service Composition Privacy based Service Composition

Completed Research Ongoing Research

Page 17: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

The Lifecycle of SOA Evolution

SOA Transition

Quantitative Analysis Dependency based

Impact Analysis

Qualitative Analysis Stability Analysis

Reliability Analysis

SOA Adaptation

Stage 1: SOA Migration

Stage 2: SOA Composition

Stage 3: SOA Evaluation

Process based Service Composition Ontology based Service Composition Security based Service Composition Privacy based Service Composition

The Lifecycle of SOA Evolution

Completed Research Ongoing Research

Page 18: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Internet

USER A

USER C

USER B

Business DBs

Security DBs

SOAP

Messages

The Services at the

service provider

Authentication &

Security Service

(NSS)

Authorization Service

(AS)Service of QoSS

(SQoSS)Privacy Service

(PS)

Enterprise Service

Bus (ESB)

Auditing Service

(AdS)

Security based Service Composition

H. El Yamany, M. A. M. Capretz and D. S. Allison, “Intelligent Security and Access Control Framework for Service-Oriented Architecture”, Information and Software Technology, Vol. 52, Issue 2, Elsevier, Feb. 2010

Page 19: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

The Lifecycle of SOA Evolution

SOA Transition

Quantitative Analysis Dependency based

Impact Analysis

Qualitative Analysis Stability Analysis

Reliability Analysis

SOA Adaptation

Stage 1: SOA Migration

Stage 2: SOA Composition

Stage 3: SOA Evaluation

Process based Service Composition Ontology based Service Composition Security based Service Composition Privacy based Service Composition

The Lifecycle of SOA Evolution

Completed Research Ongoing Research

Page 20: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Privacy Service

Internet

3. Bind

2. Find

Service

Provider

Service

Consumer

1. Publish

Service

Broker

• Policies create Contract

• Who will create a contract?

• Privacy Service

• Intermediary between consumer & provider • Negotiate contract without bias

Privacy

Service (PS)

Page 21: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Contribution Privacy Contract Agreement

1. Publish

2. Find

3. Privacy Inquiry

4. Policy Comparison

Service

Broker

Service

ProviderPrivacy

Service (PS)

Service

Consumer

4. Policy

Comparison

2. Find

1. Publish3. Privacy

Inquiry

4. Policy

Comparison

3. Privacy Inquiry

D. Allison, M. A. M. Capretz, H. El Yamany, S. Wang, “Privacy Protection Framework with Defined Policies for Service-Oriented Architecture”, Journal of Software Engineering and Applications (JSEA), Vol. 5, pp. 200-215, 2012

Page 22: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

SOA Transition

SOA Transition

Quantitative Analysis Dependency based

Impact Analysis

Qualitative Analysis Stability Analysis

Reliability Analysis

SOA Adaptation

Stage 1: SOA Migration

Stage 2: SOA Composition

Stage 3: SOA Evaluation

Process based Service Composition Ontology based Service Composition Security based Service Composition Privacy based Service Composition

The Lifecycle of SOA Evolution

Completed Research Ongoing Research

Page 23: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Change Impacts on Services

Service dependency Service synchronization

• How to analyze change impacts on services?

• How to synchronize changes for a service with multiple versions?

S. Wang, M. A. M. Capretz, “Dependency and Entropy Based Impact Analysis for Service-oriented System Evolution”, Proc. of The 2011 IEEE/WIC/ACM International Conferences on Web Intelligence (IEEE/WIC/ACM WI 2011), Campus Scientifique de la Doua, Lyon, France, 22 - 27 August 2011.

S. Wang, M. A. M. Capretz, "A Service Dependency Model for Multiple Service Version Synchronization", Proc. of the 11th IEEE International Symposium on Web Systems Evolution (IEEE WSE 2009), Edmonton, Canada, September 26-27, 2009, IEEE Computer Society.

S. Wang and M. A. M. Capretz, “A Dependency Impact Analysis Model for Web Services Evolution”, Proc. of the IEEE 7th International Conference on Web Services (IEEE ICWS 2009), Los Angeles, California, pp. 359 - 365, July 6-10, 2009, IEEE Computer Society.

Page 24: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Cloud Computing

• Shared pool of configurable computing resources

• Technical aspects

– Be responsive to the solutions offered through cloud services

– Be sufficiently adaptable and scalable

Page 26: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

M2M and Cloud Architecture Project

Connect seamlessly and efficiently all the different devices Autonomic deployment and management of services on the cloud for M2M

Trust access service for M2M

ADREAM

Page 28: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

• Cloud Computing

– Architecture Evolution

– Autonomic Evolution

– Qualitative Analysis

• Cyber security (privacy, anonymity)

Ongoing Research

M. A. Hayes, M. A. M. Capretz, J. Reed, C. Forchuk, “An Iterative Association Rule Mining Framework to K-Anonymize a Dataset”,

ASE Science Journal, 2012.

Page 29: Software Evolution: From Legacy Systems, Service Oriented Architecture to Cloud Computing

Questions?

Miriam Capretz [email protected]

http://www.eng.uwo.ca/people/mcapretz/