NETE4631 SOA and Cloud Computing Service Models - PowerPoint PPT Presentation

1 / 43
About This Presentation
Title:

NETE4631 SOA and Cloud Computing Service Models

Description:

NETE4631 SOA and Cloud Computing Service Models Lecture Notes #3 * Some of the SaaS Providers Intuit Quikbooks and Quikbook online Phone and Blackberry capabilities ... – PowerPoint PPT presentation

Number of Views:627
Avg rating:3.0/5.0
Slides: 44
Provided by: SuthepVich94
Category:

less

Transcript and Presenter's Notes

Title: NETE4631 SOA and Cloud Computing Service Models


1
NETE4631SOA and Cloud Computing Service Models
  • Lecture Notes 3

2
Virtualization Technology Recap(1)
  • Virtualization is the creation of a virtual
    (rather than actual) version of something, such
    as a hardware platform, operating system (OS),
    storage device, or network resources. (Wikipedia)

3
Which technologies make up Cloud? Recap (2)
Grid Computing
Utility Computing

Virtualization Technology
Cloud
4
Web Services Recap (3)
  • Communication
  • HTTP 1.0 and 1.1 (W3C)
  • Client
  • HTML, DHTML, JavaScript, CSS
  • Message Exchanged
  • Extensible Markup Language (XML)
  • Simple Object Access Protocol (SOAP)
  • Representational state transfer (REST)
  • JavaScript Object Notation (JSON)

5
Lecture Outline
  • Service-Oriented Computing (SOC)
  • Service-Oriented Architecture (SOA)
  • Designing service-based systems and quality
    attributes
  • SOC state-of-the-art and research challenges
  • Some of the implementation technologies
  • Service and deployment models

6
Service-Oriented Computing
  • Development of rapid, low cost, interoperable
    systems that are independent of programming
    languages and operating systems
  • Help create compound solutions using legacy
    systems and enterprise information systems
    exposed as loosely coupled services residing on
    remote networks
  • Organization can programmatically offer their
    business processes over the Internet or on
    various networks

7
What is a service?
  • A service is an implementation of a well-defined
    piece of business functionality, with a published
    interface that is discoverable and can be used by
    service consumers when building different
    applications and business processes.

8
Principles of Identifying Services
  • A Service should
  • Represent a tangible business concept
  • Consist of a series of organization-wide
    analysis, where a process can decompose into
    several small set of processes
  • Reusable processes -within or outside an
    organization, identify possible inputs and
    outputs (should be generic) for these business
    processes
  • Identify dependencies among services and their
    impact on internal or external to a system

9
EAI -State-of-the-Art
  • They look for suitable services in a directory,
    e.g., UDDI
  • Analyze the specifications of the potentially
    relevant services by reading something like WSDL
  • Select the most relevant service and get it do
    something of value to the service consumer using
    something like SOAP
  • Exploit the standards (e.g., WS- standards) for
    ensuring quality attributes security and
    reliability.

10
Service-Oriented Architecture (SOA)
  • A service-oriented architecture (SOA) is an
    application framework that takes everyday
    business applications and breaks them down into
    individual business functions and processes,
    called services. An SOA lets you build, deploy,
    and integrate these services independent of
    applications and the computing platforms on which
    they run. IBM
  • Service-Oriented Architecture is an approach to
    organizing information technology in which data,
    logic, and infrastructure resources are accessed
    by routing messages between network interfaces.
    Microsoft

11
Service-Oriented Architecture (SOA) (2)
  • An SOA is a set of components which can be
    invoked, and whose interface descriptions can be
    published and discovered. W3C.
  • A paradigm for organizing and utilizing
    distributed capabilities that may be under the
    control of different ownership domains. It
    provides a uniform means to offer, discover,
    interact with and use capabilities to produce
    desired effects consistent with measurable
    preconditions and expectations. The OASIS Group

12
Architecture of a Web Retail System
Source Grady Boochs site Rozanski, N. and
Woods, E. Software Systems Architecture. Reading,
Massachusetts Addison-Wesley, 2005, p. 96.
13
Enterprise Service Bus
  • Provide location transparent routing and
    addressing for service communication service
    addressing and naming administration, support at
    least one messaging paradigm and transport
    protocol
  • Support effective service integration through
    multiple integration mechanisms, including
    connectors, web services, messaging, and adaptors

14
Enterprise Service Bus (2)
  • Provides an open service messaging and
    interfacing model in order to isolates
    implementations from routing services and
    transport protocols, and allows implementations
    to be substituted

15
Enterprise Service Bus (ESB)
SourceDodani, M., From Objects to Services A
Journey in Search of Component Reuse Nirvana,
JOT, 3(8), 2004.
16
Motivators of SOA
  • Increasing nature of distributed systems
  • Heterogeneity of systems and computing
    environments
  • Dynamics of operating environments
  • Transparency of communication infrastructure
    details
  • Process-orientation requires multiple services

17
Service Provision and Consumption
18
Common Design Principles
  • Services are reusable
  • Business functionalities exposed as services are
    designed with the intention of reuse whenever and
    where they are required
  • Services share a formal contract
  • Services interact with each other through a
    formal contract which is shared to exchange
    information and terms of usage

19
Common Design Principles (2)
  • Services are loosely coupled
  • Services are designed as loosely coupled entities
    able to interact while maintaining their state of
    loose coupling.
  • Services abstract underlying logic
  • The business logic underpinning a service is kept
    hidden from the outside world. Only the service
    description and formal contract are visible for
    the potential consumers of a service

20
Common Design Principles (3)
  • Services are composable
  • Services may composed of other services. Hence, a
    services logic should be represented at
    different levels of granularity and promotes
    reusability and the creation of abstraction
    layers.
  • Services are autonomous
  • A service should be independent of any other
    service

21
Common Design Principles (4)
  • Services are stateless
  • A service shouldnt be required to maintain state
    information rather it should be designed to
    maximize statelessness
  • Services are discoverable
  • A service should be discoverable through its
    description, which can be understood by humans
    and service users. A service can be discovered by
    the use of a directory provider, or,
    implementation mechanism or hard-coded address

22
Common Design Principles (5)
  • Services have a network-addressable interface
  • A service should be invoked from the same
    computer or remotely through a local interface
    or Internet
  • Services are location transparent
  • A service should be discoverable without the
    knowledge of its real location. A requestor can
    dynamically discover the location of a service
    looking up a registry
  • The core principles are autonomy, loose coupling,
    abstraction, formal contract

23
SOC State-of-the-Art and Research Challenges
  • Service Foundation
  • Dynamically reconfigurable runtime architectures,
    End-to-end security solutions, Infrastructure
    support for data and process integration,
    Semantically enhanced service discovery
  • Service Composition
  • Composability, Dynamic and adaptive process,
    QoS-aware service composition, Business-driven
    automated compositions
  • Service Management and Monitoring
  • Self-Configuration and adaptation, Self-healing,
    Self-optimization, Self-protecting
  • Service Design and Development
  • Engineering service-based systems, Gap analysis
    techniques, Service versioning and adaptivity,
    Service governance

24
Implementation Technologies
  • XML Web Services
  • Common Object Request Broker Architecture (CORBA)
  • Java Remote Method Invocation (RMI)
  • .Net Remoting
  • Message Orietned Middleware (MOM) IMBs
    MQSeries, Microsoft Message Queuing (MSMQ), or
    Java Message Service
  • TCP/IP

25
Protocol Stack for SOA
26
Service Orchestration or Choreography
27
SOA and Cloud
28
Service and Deployment Models
29
Major Categories of SaaS
  • Line of Business Services
  • Business solutions offered to companies based on
    subscription fee, e.g., CRM and Supply Chain
    Management
  • Customer-oriented Services
  • Services offered to general public, most free
  • Business models are based on advertising revenue
    (e.g., You Tube)

30
SaaS Characteristics
  • Browser based on demand availability, different
    kinds of licenses
  • Responsibilities -Vendors and Users
  • Cheaper compared with shrink-wrapped versions,
    lowering entry barriers
  • Compatibility among all users software
  • Shared data model for multiple users through
    single instance, multi-tenancy

31
Potential Advantages
  • Faster time to market and improved productivity
    with lower cost
  • Eliminate the need to install and maintain
  • Fast upgrades of new features and patches
  • Provision of application developed using very
    mature processes and practices
  • Companies can focus on core business

32
Potential Disadvantages
  • Maturity in designing multi-tenant applications
  • Required cultural and organizational changes
  • Difficult to translate business models
  • Some applications not suitable for this model
  • Need to comply with the vendors constraints
  • Migration can be problematic

33
Motivating Factors
  • Popularity
  • Both Software Vendors and Enterprizes Like it
  • Each of them has different reasons Why???
  • Plenty of SaaS Platform
  • Each big software vendor (such as Oracle and
    Microsoft) is developing several SaaS platforms
  • SaaS and SOA
  • Popularity of SOA helps migration to SaaS
  • SOA provides a design framework for low cost
    development with high quality systems
  • Economic Impact

34
Some of the SaaS Providers
  • Intuit
  • Quikbooks and Quikbook online
  • Phone and Blackberry capabilities
  • Google
  • Google Apps (Standard and Premier Edition)
  • Microsoft
  • Microsoft Office Live Small Business Office 365
  • IBM
  • Blue Cloud

35
Platform as a Service (PaaS)
  • A software environment that provides development
    and deployment environment and tools
  • A platform can be specific to a language,
    application framework, or other constructs
  • PaaS system must also support the development of
    interfaces with technologies like HTML,
    JavaScript
  • Vendor lock-in is quite considerable migrating a
    python application written for Googles API

36
PaaS Model Services
  • A set of technologies and tools
  • Collaboration Multiple people can work together
  • Data management Accessing and using data
  • Instrumentation, performance, and testing
  • Storage service with the same vendor or a third
    party
  • Transaction management services or brokerage
    services for managing transactions

37
An Integrated Lifecycle Platform
  • Virtual machine and operating system (IaaS)
  • Data design and storage
  • Development environment with relevant APIs
  • Middleware
  • Testing and optimization tools
  • Other tools and services as appropriate

38
PaaS AppBases Architecture
39
PaaS Wolf Platform Architecture
40
Infrastructure as a Service (IaaS)
  • Hardware virtualized in cloud based on demand
  • Service vendor owns equipment
  • A user creates virtual hardware for deploying
    applications or platform for developing
    application
  • Incredibly disruptive technology for utility
    computing
  • Fundamental unit of virtualized client is
    workload
  • A typical eCommerce system will have
  • Web server, Application server, File server,
    Database, Transaction engine, other types of
    servers

41
IaaS Pods, Aggregation, Failover
42
References
  • Chapter 3,4,7 and 13 of the book by Sosinsky, B.,
    2011.
  • Papazoglou, M., Traverso, P., Dustdar, S.,
    Leymann, F., 2007, Service-Oriented Computing
    State of the Art and Research Challenges, IEEE
    Computer, 40(11), pp. 38-45.

43
  • THANK YOU!!!!!
Write a Comment
User Comments (0)
About PowerShow.com