22
SOA Trends for SOA Trends for 2008 2008 Svetlin Nakov Svetlin Nakov Director Training and Consulting Activities Director Training and Consulting Activities National Academy for Software Development National Academy for Software Development http:// academy.devbg.org ICB Software Engineering ICB Software Engineering Conference Conference Pomorie, 13 September 2008 Pomorie, 13 September 2008

SOA Trends for 2008

  • Upload
    zola

  • View
    28

  • Download
    0

Embed Size (px)

DESCRIPTION

SOA Trends for 2008. ICB Software Engineering Conference Pomorie, 13 September 2008. Svetlin Nakov. Director Training and Consulting Activities National Academy for Software Development. http:// academy.devbg.org. Agenda. What is SOA? SOA and Web 2.0 SOA in Internet SOA in Enterprises - PowerPoint PPT Presentation

Citation preview

Page 1: SOA Trends for 2008

SOA Trends for 2008SOA Trends for 2008

Svetlin NakovSvetlin NakovDirector Training and Consulting ActivitiesDirector Training and Consulting ActivitiesNational Academy for Software DevelopmentNational Academy for Software Development

http://academy.devbg.org

ICB Software Engineering ConferenceICB Software Engineering ConferencePomorie, 13 September 2008Pomorie, 13 September 2008

Page 2: SOA Trends for 2008

AgendaAgendaAgendaAgenda

1.1. What is SOA?What is SOA?

2.2. SOA and Web 2.0SOA and Web 2.0

• SOA in InternetSOA in Internet

• SOA in EnterprisesSOA in Enterprises

3.3. SOA Trends for 2008SOA Trends for 2008

1.1. What is SOA?What is SOA?

2.2. SOA and Web 2.0SOA and Web 2.0

• SOA in InternetSOA in Internet

• SOA in EnterprisesSOA in Enterprises

3.3. SOA Trends for 2008SOA Trends for 2008

Page 3: SOA Trends for 2008

About The SpeakerAbout The SpeakerAbout The SpeakerAbout The Speaker

• Svetlin NakovSvetlin Nakov

• Director training and consulting Director training and consulting activities, National Academy for activities, National Academy for Software Development (NASD)Software Development (NASD)

• Founder and Chairman of BASDFounder and Chairman of BASD

• 15 15 years of developer experienceyears of developer experience

• 8 8 year as a professional software year as a professional software engineer, trainer and consultantengineer, trainer and consultant

• Author of 4 books, 20 articles, and Author of 4 books, 20 articles, and 50 seminar lectures50 seminar lectures

• Lecturer in Sofia University and NBULecturer in Sofia University and NBU

• Svetlin NakovSvetlin Nakov

• Director training and consulting Director training and consulting activities, National Academy for activities, National Academy for Software Development (NASD)Software Development (NASD)

• Founder and Chairman of BASDFounder and Chairman of BASD

• 15 15 years of developer experienceyears of developer experience

• 8 8 year as a professional software year as a professional software engineer, trainer and consultantengineer, trainer and consultant

• Author of 4 books, 20 articles, and Author of 4 books, 20 articles, and 50 seminar lectures50 seminar lectures

• Lecturer in Sofia University and NBULecturer in Sofia University and NBU

Page 4: SOA Trends for 2008

What is SOA?What is SOA?

Page 5: SOA Trends for 2008

What is SOA?What is SOA?What is SOA?What is SOA?

• SOA is a concept for development of SOA is a concept for development of software systemssoftware systems

• Using reusable building blocks Using reusable building blocks (components) called "services"(components) called "services"

• Services in SOA are:Services in SOA are:

• AutonomousAutonomous

• Stateless business functionsStateless business functions

• Accept requests and return responsesAccept requests and return responses

• Use well-defined, standard interfaceUse well-defined, standard interface

• SOA is a concept for development of SOA is a concept for development of software systemssoftware systems

• Using reusable building blocks Using reusable building blocks (components) called "services"(components) called "services"

• Services in SOA are:Services in SOA are:

• AutonomousAutonomous

• Stateless business functionsStateless business functions

• Accept requests and return responsesAccept requests and return responses

• Use well-defined, standard interfaceUse well-defined, standard interface

Page 6: SOA Trends for 2008

SOA ServicesSOA ServicesSOA ServicesSOA Services

• AutonomousAutonomous

• Each service operates autonomouslyEach service operates autonomously

• Without any awareness that other Without any awareness that other services existservices exist

• StatelessStateless

• Have no memory, do not remember stateHave no memory, do not remember state

• Easy to scaleEasy to scale

• Request-response modelRequest-response model

• Client asks, server returns answerClient asks, server returns answer

• AutonomousAutonomous

• Each service operates autonomouslyEach service operates autonomously

• Without any awareness that other Without any awareness that other services existservices exist

• StatelessStateless

• Have no memory, do not remember stateHave no memory, do not remember state

• Easy to scaleEasy to scale

• Request-response modelRequest-response model

• Client asks, server returns answerClient asks, server returns answer

Page 7: SOA Trends for 2008

SOA ServicesSOA ServicesSOA ServicesSOA Services

• Communication through standard Communication through standard protocolsprotocols

• XML, SOAP, JSON, RSS, ATOM, ...XML, SOAP, JSON, RSS, ATOM, ...

• HTTP, FTP, SMTP, RPC, ...HTTP, FTP, SMTP, RPC, ...

• Not dependent on OS, platforms, Not dependent on OS, platforms, programming languagesprogramming languages

• DiscoverableDiscoverable

• Service registriesService registries

• Communication through standard Communication through standard protocolsprotocols

• XML, SOAP, JSON, RSS, ATOM, ...XML, SOAP, JSON, RSS, ATOM, ...

• HTTP, FTP, SMTP, RPC, ...HTTP, FTP, SMTP, RPC, ...

• Not dependent on OS, platforms, Not dependent on OS, platforms, programming languagesprogramming languages

• DiscoverableDiscoverable

• Service registriesService registries

Page 8: SOA Trends for 2008

SOA and Business Processes SOA and Business Processes Management (BPM)Management (BPM)SOA and Business Processes SOA and Business Processes Management (BPM)Management (BPM)

• Composite applicationsComposite applications

• Assembled form a set of services Assembled form a set of services combined to support a business processcombined to support a business process

• Business agilityBusiness agility

• Allows quick reaction to changesAllows quick reaction to changes

• Business Process Management (BPM)Business Process Management (BPM)

• Composite applications supportComposite applications support

• Process orchestration, execution, Process orchestration, execution, monitoring and optimizationmonitoring and optimization

• Composite applicationsComposite applications

• Assembled form a set of services Assembled form a set of services combined to support a business processcombined to support a business process

• Business agilityBusiness agility

• Allows quick reaction to changesAllows quick reaction to changes

• Business Process Management (BPM)Business Process Management (BPM)

• Composite applications supportComposite applications support

• Process orchestration, execution, Process orchestration, execution, monitoring and optimizationmonitoring and optimization

Page 9: SOA Trends for 2008

Loose CouplingLoose CouplingLoose CouplingLoose Coupling

• Loose coupling – main concept of SOALoose coupling – main concept of SOA

• Loosely coupled components:Loosely coupled components:

• Exhibits single functionExhibits single function

• Independent of other functionsIndependent of other functions

• Through a well-defined interfaceThrough a well-defined interface

• Loose coupling programming evolves:Loose coupling programming evolves:

• Structural programmingStructural programming

• Object-oriented programmingObject-oriented programming

• Service-oriented architecture (SOA)Service-oriented architecture (SOA)

• Loose coupling – main concept of SOALoose coupling – main concept of SOA

• Loosely coupled components:Loosely coupled components:

• Exhibits single functionExhibits single function

• Independent of other functionsIndependent of other functions

• Through a well-defined interfaceThrough a well-defined interface

• Loose coupling programming evolves:Loose coupling programming evolves:

• Structural programmingStructural programming

• Object-oriented programmingObject-oriented programming

• Service-oriented architecture (SOA)Service-oriented architecture (SOA)

Page 10: SOA Trends for 2008

SOA and Web 2.0?SOA and Web 2.0?

Page 11: SOA Trends for 2008

SOA and Web 2.0SOA and Web 2.0

• Moving to a "services model" – global IT Moving to a "services model" – global IT trend for both:trend for both:• Internet businessInternet business

• Inside an enterpriseInside an enterprise

• Two main SOA scenariosTwo main SOA scenarios• SOA in InternetSOA in Internet

• Software as service, Web 2.0, RIA, ...Software as service, Web 2.0, RIA, ...

• SOA inside an enterpriseSOA inside an enterprise• Heavy SOA stacks: WS-*, BPM, BPEL, Heavy SOA stacks: WS-*, BPM, BPEL,

WCF, SCA, ESB, ...WCF, SCA, ESB, ...

Page 12: SOA Trends for 2008

SOA in Internet and Inside an SOA in Internet and Inside an EnterpriseEnterpriseSOA in Internet and Inside an SOA in Internet and Inside an EnterpriseEnterprise

• Trends for service-orientation of the IT Trends for service-orientation of the IT businessbusiness

• Trends for service-orientation of the IT Trends for service-orientation of the IT businessbusiness

Source: Dion Hinchcliffe, ZDNet blogsSource: Dion Hinchcliffe, ZDNet blogsSource: Dion Hinchcliffe, ZDNet blogsSource: Dion Hinchcliffe, ZDNet blogs

Page 13: SOA Trends for 2008

SOA in InternetSOA in InternetSOA in InternetSOA in Internet

• Internet companies implement Internet companies implement lightweight SOAlightweight SOA in Internet in Internet

• Also called WOA (Web-Oriented Also called WOA (Web-Oriented Architecture)Architecture)

• Examples: Google, Amazon, Facebook, ...Examples: Google, Amazon, Facebook, ...

• Tend to provide software as serviceTend to provide software as service

• Based on lightweight Web standards:Based on lightweight Web standards:

• AJAX and Rich Internet Applications (RIA)AJAX and Rich Internet Applications (RIA)

• REST, RSS, JSON, proprietary APIsREST, RSS, JSON, proprietary APIs

• Internet companies implement Internet companies implement lightweight SOAlightweight SOA in Internet in Internet

• Also called WOA (Web-Oriented Also called WOA (Web-Oriented Architecture)Architecture)

• Examples: Google, Amazon, Facebook, ...Examples: Google, Amazon, Facebook, ...

• Tend to provide software as serviceTend to provide software as service

• Based on lightweight Web standards:Based on lightweight Web standards:

• AJAX and Rich Internet Applications (RIA)AJAX and Rich Internet Applications (RIA)

• REST, RSS, JSON, proprietary APIsREST, RSS, JSON, proprietary APIs

Page 14: SOA Trends for 2008

SOA in EnterprisesSOA in EnterprisesSOA in EnterprisesSOA in Enterprises

• Heavyweight SOAHeavyweight SOA stacks stacks

• Driven by business processes: BPM, Driven by business processes: BPM, BPMN, BPEL, ...BPMN, BPEL, ...

• Enterprise application integration (EAI)Enterprise application integration (EAI)

• B2B integrationB2B integration

• SOA based portalsSOA based portals

• Unified Frameworks: SCA and WCFUnified Frameworks: SCA and WCF

• Enterprise Service Bus (ESB)Enterprise Service Bus (ESB)

• SOA governance (control)SOA governance (control)

• Heavyweight SOAHeavyweight SOA stacks stacks

• Driven by business processes: BPM, Driven by business processes: BPM, BPMN, BPEL, ...BPMN, BPEL, ...

• Enterprise application integration (EAI)Enterprise application integration (EAI)

• B2B integrationB2B integration

• SOA based portalsSOA based portals

• Unified Frameworks: SCA and WCFUnified Frameworks: SCA and WCF

• Enterprise Service Bus (ESB)Enterprise Service Bus (ESB)

• SOA governance (control)SOA governance (control)

Page 15: SOA Trends for 2008

SOA in Internet vs. SOA in SOA in Internet vs. SOA in EnterprisesEnterprisesSOA in Internet vs. SOA in SOA in Internet vs. SOA in EnterprisesEnterprises

• SOA in InternetSOA in Internet

• Lightweight, easy-to-use, accessibleLightweight, easy-to-use, accessible

• Very fast adoption – business needs itVery fast adoption – business needs it

• SOA in EnterprisesSOA in Enterprises

• Heavyweight and complexHeavyweight and complex

• Slow adoptionSlow adoption

• MixturesMixtures

• Lightweight for Web 2.0 and heavyweight Lightweight for Web 2.0 and heavyweight for trading partnersfor trading partners

• SOA in InternetSOA in Internet

• Lightweight, easy-to-use, accessibleLightweight, easy-to-use, accessible

• Very fast adoption – business needs itVery fast adoption – business needs it

• SOA in EnterprisesSOA in Enterprises

• Heavyweight and complexHeavyweight and complex

• Slow adoptionSlow adoption

• MixturesMixtures

• Lightweight for Web 2.0 and heavyweight Lightweight for Web 2.0 and heavyweight for trading partnersfor trading partners

Page 16: SOA Trends for 2008

SOA Trends for 2008SOA Trends for 2008

Page 17: SOA Trends for 2008

SOA AdoptionSOA AdoptionSOA AdoptionSOA Adoption

• Why SOA adoption is slow?Why SOA adoption is slow?• SOA is not a better technologySOA is not a better technology

• It is a better approach to ITIt is a better approach to IT

• SOA is not a "buy" solutionSOA is not a "buy" solution• It is a "build" solutionIt is a "build" solution

• Purchasing a product will not turn your IT Purchasing a product will not turn your IT infrastructure to SOAinfrastructure to SOA

• Slow migration to SOASlow migration to SOA• New software is build with SOA in mindNew software is build with SOA in mind

• Old software is adopted to support SOAOld software is adopted to support SOA

• Why SOA adoption is slow?Why SOA adoption is slow?• SOA is not a better technologySOA is not a better technology

• It is a better approach to ITIt is a better approach to IT

• SOA is not a "buy" solutionSOA is not a "buy" solution• It is a "build" solutionIt is a "build" solution

• Purchasing a product will not turn your IT Purchasing a product will not turn your IT infrastructure to SOAinfrastructure to SOA

• Slow migration to SOASlow migration to SOA• New software is build with SOA in mindNew software is build with SOA in mind

• Old software is adopted to support SOAOld software is adopted to support SOA

Page 18: SOA Trends for 2008

Obstacles in SOA AdoptionObstacles in SOA AdoptionObstacles in SOA AdoptionObstacles in SOA Adoption

• Obstacles to SOA adoption in enterprisesObstacles to SOA adoption in enterprises

• Need of new thinking for the ITNeed of new thinking for the IT

• Resources, tasks, budgets and skills need Resources, tasks, budgets and skills need to be shared across projectsto be shared across projects

• Not dedicated solely to a single projectNot dedicated solely to a single project

• Unclear return of investments (ROI)Unclear return of investments (ROI)

• SOA in InternetSOA in Internet

• Easy-to-implement, takes less timeEasy-to-implement, takes less time

• Immediate return of investments (ROI)Immediate return of investments (ROI)

• Obstacles to SOA adoption in enterprisesObstacles to SOA adoption in enterprises

• Need of new thinking for the ITNeed of new thinking for the IT

• Resources, tasks, budgets and skills need Resources, tasks, budgets and skills need to be shared across projectsto be shared across projects

• Not dedicated solely to a single projectNot dedicated solely to a single project

• Unclear return of investments (ROI)Unclear return of investments (ROI)

• SOA in InternetSOA in Internet

• Easy-to-implement, takes less timeEasy-to-implement, takes less time

• Immediate return of investments (ROI)Immediate return of investments (ROI)

Page 19: SOA Trends for 2008

SOA Trends for 2008SOA Trends for 2008SOA Trends for 2008SOA Trends for 2008

• SOA adoption in 2008 will continue to SOA adoption in 2008 will continue to increaseincrease

• The IT culture will continue to changeThe IT culture will continue to change

• Build services instead of single projectsBuild services instead of single projects

• Enterprises tend to build more SOA-Enterprises tend to build more SOA-enabled projectsenabled projects

• SOA products market will continue growSOA products market will continue grow

• Open source solutions will emergeOpen source solutions will emerge

• SOA adoption in 2008 will continue to SOA adoption in 2008 will continue to increaseincrease

• The IT culture will continue to changeThe IT culture will continue to change

• Build services instead of single projectsBuild services instead of single projects

• Enterprises tend to build more SOA-Enterprises tend to build more SOA-enabled projectsenabled projects

• SOA products market will continue growSOA products market will continue grow

• Open source solutions will emergeOpen source solutions will emerge

Page 20: SOA Trends for 2008

SOA Infrastructure TrendsSOA Infrastructure TrendsSOA Infrastructure TrendsSOA Infrastructure Trends

• Virtualization will impact SOA Virtualization will impact SOA deploymentdeployment

• Computing clouds will impact SOAComputing clouds will impact SOA

• Amazon and SalesForce already have Amazon and SalesForce already have "computing clouds" solutions"computing clouds" solutions

• SOA scale-out infrastructures build on SOA scale-out infrastructures build on low-cost hardware adoptionlow-cost hardware adoption

• Google, eBay, Amazon and PayPal Google, eBay, Amazon and PayPal already have such technologyalready have such technology

• Virtualization will impact SOA Virtualization will impact SOA deploymentdeployment

• Computing clouds will impact SOAComputing clouds will impact SOA

• Amazon and SalesForce already have Amazon and SalesForce already have "computing clouds" solutions"computing clouds" solutions

• SOA scale-out infrastructures build on SOA scale-out infrastructures build on low-cost hardware adoptionlow-cost hardware adoption

• Google, eBay, Amazon and PayPal Google, eBay, Amazon and PayPal already have such technologyalready have such technology

Page 21: SOA Trends for 2008

SOA Technology TrendsSOA Technology TrendsSOA Technology TrendsSOA Technology Trends

• Adoption of SOA patterns and EAI patternsAdoption of SOA patterns and EAI patterns

• Open source SOA products will get more Open source SOA products will get more market sharemarket share

• In Java world: increase of OSGi adoptionIn Java world: increase of OSGi adoption

• In Microsoft world: WCF adoptionIn Microsoft world: WCF adoption

• Domain-specific languages for SOADomain-specific languages for SOA

• Adoption of lightweight technologies Adoption of lightweight technologies (REST, JSON, ...) will run in parallel with (REST, JSON, ...) will run in parallel with adoption of SOAP and WS-* technologiesadoption of SOAP and WS-* technologies

• Abstract APIs like WCF and SCA will emergeAbstract APIs like WCF and SCA will emerge

• Adoption of SOA patterns and EAI patternsAdoption of SOA patterns and EAI patterns

• Open source SOA products will get more Open source SOA products will get more market sharemarket share

• In Java world: increase of OSGi adoptionIn Java world: increase of OSGi adoption

• In Microsoft world: WCF adoptionIn Microsoft world: WCF adoption

• Domain-specific languages for SOADomain-specific languages for SOA

• Adoption of lightweight technologies Adoption of lightweight technologies (REST, JSON, ...) will run in parallel with (REST, JSON, ...) will run in parallel with adoption of SOAP and WS-* technologiesadoption of SOAP and WS-* technologies

• Abstract APIs like WCF and SCA will emergeAbstract APIs like WCF and SCA will emerge

Page 22: SOA Trends for 2008

SOA Trends – 2008SOA Trends – 2008SOA Trends – 2008SOA Trends – 2008

Questions?Questions?Questions?Questions?