Luis Derechin - AJAX and SOA - The Perfect Match.ppt
Upcoming SlideShare
Loading in...5
×
 

Luis Derechin - AJAX and SOA - The Perfect Match.ppt

on

  • 847 views

 

Statistics

Views

Total Views
847
Views on SlideShare
847
Embed Views
0

Actions

Likes
1
Downloads
7
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • ty

Luis Derechin - AJAX and SOA - The Perfect Match.ppt Luis Derechin - AJAX and SOA - The Perfect Match.ppt Presentation Transcript

  • SOA Web Services Edge Conference June 6, 2006 AJAX and SOA: The perfect match
  • Unofficial Survey – SOA and AJAX
    • Why did you attend this conference?
      • A) Learn about SOA?
      • B) Learn about AJAX ?
    • What is most important to enterprises?
      • A) SOA?
      • B) AJAX?
    • What will provide the best ROI for your company?
      • A) AJAX?
      • B) SOA?
    • Would you feel satisfied if you?
      • A) Learned about SOA at this conference?
      • B) Learned about AJAX at this conference?
  • Some questions that require answering
    • What is SOA?
    • Why is SOA important?
    • What is AJAX?
    • Why is AJAX important?
    • Why do enterprises care about SOA & AJAX?
    • How are AJAX and SOA complementary?
      • Why is this combination important to enterprises?
      • Why does the combination matter to any enterprise?
    • How best to combine AJAX and SOA?
      • Best practices
      • Mitigate risk
  • Some thoughts about “perfect matches”
    • "It was a perfect marriage. She didn't want to and he couldn't." Spike Milligan
    • What counts in making a happy marriage is not so much how compatible you are, but how you deal with incompatibility. Leo Tolstoy
    • Marriage is a wonderful institution...but who wants to live in an institution? Groucho Marx
    • "I was married by a judge. I should have asked for a jury." Groucho Marx
  • SOA – What is it? (Wikipedia) Skies of Arcadia Safe operating area School of the Americas Service-Oriented Architecture Semiconductor Optical Amplifier Society of Actuaries Society of Ancients Start of Authority State of Alert State of the art Soldiers of Allah Sarbanes-Oxley Act Stimulus Onset Asynchrony
  • SOA – What is it? (Wikipedia)
    • In computing, the term Service-Oriented Architecture (SOA) expresses a perspective of software architecture that defines the use of services to support the requirements of software users
    • Unlike traditional point-to-point architectures, SOAs comprise loosely coupled, highly interoperable services.
    • These services interoperate based on a formal definition (or contract) which is independent from the underlying platform and programming language.
    • The software components become very reusable because the interface is standards-compliant and is independent from the underlying implementation of the service logic.
  • SOA – Why is it important? (Wikipedia)
    • Enterprise architects believe that SOAs help businesses respond more quickly and cost-effectively to the changing market conditions they may face by promoting reuse and interconnection of existing IT assets rather than more time consuming and costly reinvention
    • To talk in terms of a service-oriented architecture provides a good framework from which to build the dynamic solutions required today
    • This should greatly decrease integration costs and allow for much more dynamic solutions to be deployed.
  • AJAX - What is it? (Wikipedia)
    • Ajax Amsterdam
    • Ajax (band)
    • Ajax (arcade game)
    • Ajax (horse)
    • HMS Ajax
    • Ajax cleanser
    • Ajax Duckman
    • Ajax, Ontario
    • Ajax Records (Chicago)
    • Ajax Records (Quebec)
    • Ajax Kenitra
    • Operation Ajax
    • Aspen Mountain (Colorado)
    • Ajax (Mickey Mouse)
    • Ajax (aircraft)
    • Ajax (programming)
    • Ajax (Warriors)
  • AJAX - What is it? (Wikipedia)
    • Ajax, shorthand for Asynchronous JavaScript and XML is a Web development technique for creating interactive web applications.
    • The intent is to make web pages feel more responsive by exchanging small amounts of data with the server behind the scenes, so that the entire web page does not have to be reloaded each time the user makes a change.
    • This is meant to increase the web page's interactivity, speed, and usability
    • Ajax is not a technology in itself, but a term that refers to the use of a group of technologies together.
  • AJAX – Why is it important? (Wikipedia)
    • Ajax applications are mainly executed on the user's machine, by manipulating the current page within their browser using document object model methods.
    • Ajax can be used for a multitude of tasks such as updating or deleting records; expanding web forms; returning simple search queries; or editing category trees—all without the requirement to fetch a full page of HTML each time a change is made.
    • Generally only small requests are required to be sent to the server, and relatively short responses are sent back
    • This permits the development of more interactive applications featuring more responsive user interfaces due to the use of DHTML techniques.
    • … current Ajax applications effectively fill part of the one-time niche of Java applets: extending the browser with lightweight mini-applications.
  • How are SOA and AJAX complementary?
    • SOA is the most flexible implementation for the middle and data tiers
      • Benefits are mainly realized by the enterprise and developers
      • Customers do not perceive benefits from SOA
    • AJAX is the best possible face for any enterprise Web app
      • Ease-of-use benefits are perceived by the end-users
      • The enterprise and developers actually have to go to more hassles to include and integrate AJAX into their apps
    • SOA and AJAX combined (if done well)
      • Provide benefits to: enterprise, developers and end-users
  • Why does combining SOA & AJAX matter?
    • Using SOA and AJAX combines the benefits achieved by each approach
      • Reduced maintenance and support costs
      • Faster reaction time to changing market needs
      • Improved revenue possibilities
      • Better customer experience
      • Re-use of existing assets
      • Independence from vendor lock-in
      • Standards-based technologies
      • Ajax and SOA enable SaaS delivery of enterprise applications
  • Possibilities of combining SOA & AJAX
    • Most large enterprises have already started migration to SOA
      • Seen as one of the most strategic undertakings in the enterprise
      • Recent survey by Merril Lynch: 87% of CIOs consider SOA “the next big thing”
    • AJAX appeared while enterprises invested on their SOA
      • The appearance of AJAX took most by surprise
      • Enterprises now want to include AJAX on their apps and want to combine with SOA
    • How best to include AJAX with SOA?
      • Is a “coat of AJAX paint” the answer?
      • Do I want a framework to provide the way?
    • How difficult is it?
      • Do I want easy or effective?
      • The “easiest” manner may not be right – consider which option is best for you
        • Do you care about security, scalability, trust, etc…
  • Possibilities of combining SOA & AJAX
    • Some vendors offer
      • Client only approach – AJAX, but no SOA integration
      • Server only approach – SOA, but no AJAX
    • SOA/AJAX have 2 possible approaches
      • Client GUI/Client Integration
      • Client GUI/Server Integration
    • Different approaches are correct depending on particular concerns about:
      • Security?
      • Scalability?
      • Service management?
  • Combining SOA & AJAX – Client-side integration
    • Client-side GUI engine and client-only integration solution
      • Uses client-side GUI (AJAX) and client-side integration with data
      • Server-less approach that sends the data result from the service along with the presentation and gets integrated into client
      • Pros
        • This approach seems easier because of its server-less infrastructure
        • Better suited for homogenous components
      • Cons
        • Considered not to be as scalable
        • Considered not to be as highly security-conscious
        • Some AJAX problems may exist because of services coming from different domains to the XMLHttpRequest object
        • Client-side implementation can be slow to spot issues with the application
        • More often requires “tight” relationship between middleware and AJAX solution
  • Combining SOA & AJAX – Server-side integration
    • Client-side GUI engine and Server-side integration solution
      • Uses client-side GUI (AJAX) and server-side integration
      • Server-based approach that allows coordination of service and presentation on a server-side component
      • Pros
        • Considered a much more scalable approach
        • Security can be better managed at the server rather than client
        • No cross-domain issues appear because everything is conducted by server(s) at the same domain
        • Enterprise has better control of all processes because the server-side components is under its control
        • Can detect potential issues at the server rather that wait for client to inform
        • Better suited for heterogeneous components
        • Client remains a “thinner” client than with other solutions
      • Cons
        • Generally considered more difficult to deploy
        • Inclusion of server-side components require more testing
        • Misunderstandings about interaction among server side scalability
  • “Home-made” or “Fully-tested”
    • Enterprises wishing to use a SOA/AJAX solution can:
      • Use home-made solution
        • Use any AJAX solution that allows interoperability
          • Surf the web and download AJAX libraries
          • Use a fully supported AJAX-toolkit
        • Integrate to services
          • By hand
          • Create a component that allows integration to services (client or server-side)
      • Use specialized and tested complete solution
        • Use any AJAX solution that allows interoperability
          • Surf the web and download AJAX libraries
          • Use a fully supported AJAX-toolkit
        • Integrate to services using a proven Full Solution
          • Use a solution that will allow for the easiest possible integration
          • Ensure that the solution is proven, scalable and secure
          • Use the solution that provides the best scalability, security and service management
          • Ensure no vendor lock-in
          • Ensure neutral interaction with heterogeneous components
  • How best to combine SOA and AJAX
    • SOA and AJAX requires an end-to-end framework
      • Should integrate with many types of services
        • Web services
        • RSS
        • REST
        • XML
        • HTML-based microformats
      • Framework should not create vendor lock-in
        • Work with what exists now
        • Ensure interaction into future
        • Function with heterogeneous systems
    • SOA and AJAX is too important to leave alone, this is serious stuff!
      • Aspects to be considered
        • GUI and integration should be tested and ensured
          • Based on open standards
          • Interoperability with other AJAX solution
          • Integration with other applications – not only Web Services
        • Other concerns
          • Security
          • Scalability
          • Service management
          • Infrastructure management
  • Risks involved in SOA and AJAX
    • How will you ensure scalability?
    • How will you ensure security?
    • Will your solution require tight coupling to other products?
    • Will you put up with vendor lock-in?
    • Do you trust solutions not based on open standards?
    • Can you afford solutions that do not allow integration with heterogeneous systems?
  • Rethinking thoughts about “perfect matches”
    • "It was a perfect marriage. She didn't want to and he couldn't." Spike Milligan
      • AJAX and SOA complement each other by what they are not as much as by what they are
    • What counts in making a happy marriage is not so much how compatible you are, but how you deal with incompatibility. Leo Tolstoy
      • How will our solution deal with heterogeneous systems?
    • Marriage is a wonderful institution...but who wants to live in an institution? Groucho Marx
      • Don’t get locked-in!
    • "I was married by a judge. I should have asked for a jury." Groucho Marx
      • It is important that the solution is proven by many
  • Luis Derechin – CEO JackBe 240-744-7620 [email_address] Thank you