Integrated Lifecycle of IT Integrated Lifecycle of IT Services in a Cloud Services in a Cloud
EnvironmentEnvironment
Karuna P JoshiEbiquity Research Group,
Computer Science and Electrical Engineering Dept, UMBC
http://ebiquity.umbc.edu/; http://mc2.umbc.edu [email protected]
Introduction: Software Delivery Introduction: Software Delivery ModelsModels In-house approach: Traditionally, software
applications development and maintenance has been done within the company with it’s own employees.
Outsourced or Off shored approach: Software applications purchased by companies. Development and maintenance is contracted to consulting/staffing companies who could be based anywhere in the world.
Services on the Cloud approach: IT services purchased from software manufacturers who could be a single entity or a mix. Also termed virtualized software to imply the software development and maintenance is transparent to the consumer.
IT ServicesIT ServicesInformation Technology (IT) increasingly
being viewed as a “Service” offered to an organizationSoftware, Customizations, Support,
Hosting and Maintenance purchased as a “Service” from providers.
The X as a Service alphabet soup ◦ Infrastructure as a Service (IaaS)◦ Platform as a Service (PaaS)◦ Database as a Service (DaaS) ◦ Software as a Service (SaaS) etc…
Services are virtualized -- shared across multiple provisioning.
Virtualized IT Services on the Virtualized IT Services on the CloudCloud Composed of one or more components
developed by one or more providers and delivered as a single service to the consumer.
Service dynamically composed◦ Service structure/components not pre-
determined◦ Based on consumer’s requirements. (On
demand composition) Delivered virtually via the Cloud / grid. Consumer specifies both functional and
non functional requirements like quality, security, compliance etc.
Key Open IssuesKey Open IssuesComposition and orchestration of services
currently requires a programmer with knowledge of◦ WSDL (Web Services Definition Language) or similar
languages to describe the services.◦ BPEL (Business Process Execution Language) to
specify the interactions between the services.◦ Users who are not tech-savvy cannot use this.
Currently there is no negotiation capability for service composition in cloud environment◦ Cannot define variable constraints or negotiate on
cost, SLAs etc.No automation of the current approach to
discover services like RFPs, etc.
Our ApproachOur Approach We propose a policy-based approach to
automate the service lifecycle on the Cloud. Use Semantic web languages/technologies like
OWL (Web Ontology Language), RDF (Resource Description Framework) and associated reasoning infrastructure such as AIR, Jess, etc.
Extend the Service Oriented Architecture (SOA) to factor in expressive policies, negotiation and rules-based reasoning to make it more suitable for Cloud Environment.
Enterprise Policies
• Business Processes• Budgetary rules• HR policies• Infrastructure / Facilities• Security• Compliance etc.
Enterprise Policies
• Business Processes• Budgetary rules• HR policies• Infrastructure / Facilities• Security• Compliance etc.
Service Policies
• Service Cost• Service Agreements• Service Obligations• Security• Compliance, Taxes etc.
Service Policies
• Service Cost• Service Agreements• Service Obligations• Security• Compliance, Taxes etc.
ServiceNegotiation• Request for Service• Constraints
ServiceNegotiation• Request for Service• Constraints
Provider Service Environment
• Service components• Dependent Services• Service Agents• Development platform• Staging platform
Provider Service Environment
• Service components• Dependent Services• Service Agents• Development platform• Staging platform
Enterprise IT Service
Environment • Services• Packaged applications• User devices (e.g. PCs, Laptops, PDAs etc.)• Servers• Network Infrastructure
Enterprise IT Service
Environment • Services• Packaged applications• User devices (e.g. PCs, Laptops, PDAs etc.)• Servers• Network Infrastructure
Policy for Services on the Policy for Services on the CloudCloud
PoliciesPolicies
SERVICE CLOUD
Service Presentatio
n• SaaS• DaaS• PaaS• IaaS
Service Presentatio
n• SaaS• DaaS• PaaS• IaaS
Request For service
serviceservice
PROVIDERCONSUMER
Service Level Agreement
Methodology for Service Methodology for Service LifecycleLifecycle
Our proposed methodology divides Service Lifecycle into Five Phases◦ Requirements◦ Discovery◦ Negotiation◦ Composition◦ Consumption
●This Methodology is applicable on private or public cloud.
●Have proposed metrics to track success of each phase.
●Have developed initial version of ontologies for the five phases.
Phases of IT Services Phases of IT Services LifecycleLifecycle
Service Requirements Service
Discovery
Service Negotiation
Service Composition
Service Consumption
SERVICE CLOUD
CONSUMER
Service delivered
Contract signed
Provider(s) identified
Service specified
New Service needed
Services Requirements Services Requirements phasephase
Policy Manager
•Policy Type•Hard constraints•Soft constraints•Dependents•Parents
Services Manager
•Name•Provider•Type•Attributes•Location•Dependencies
consumer
service
Services Procurer
•Service specs•Policies with constraints• RFS generator
Service Cloud
Provider 1
‘Request for Service’ Monitor
•Service•Requirements
‘Request for Service’ Monitor
•Service•Requirements
Provider 2
policy
‘Request for Service’ Monitor
•Service•Requirements
Provider 4
policy
specs
‘Request for Service’ Monitor
•Service•Requirements
Issue Request for Service (RFS)
Provider 3
Consumer
Service RequirementsService RequirementsRequirements for a service will include
◦ Functional specifications (tasks to be automated)
◦ Technical specifications Software applications and constraints Hardware Policy – Mobile device, PC, Server,
Multicore etc. Operating System Policy – single OS, multiple OS Language Support Policy
◦ Human Agent specifications◦ Agent experience◦ Agent skill level◦ Geographical location constraints◦ Nationality/Work permit constraints
Service Requirements Service Requirements (contd…)(contd…)
Requirements for a service will include◦Security Policy
◦ Role◦ Permissions
◦Data Quality Policy◦ Low quality data may be acceptable to consumer
if it provides cost saving◦Service Compliance Policy
Standards adhered Certifications needed Government regulations adhered.
Example of Requirements Example of Requirements PolicyPolicyData Quality policy - // allows services of low data quality to be accepted if the service
is free of cost.
// Using AIR Policy Language
@forAll :SERVICE_QUALITY, :COST.
:data_quality_policy a air:Policy;
rdfs:label "Data Quality policy";
air:rule :data-quality-rule.
:data-quality-rule a air:Belief-rule;
rdfs:label "data quality rule";
air:pattern {
:SERVICE_QUALITY quality_level :LOW.
:COST service_cost :0.
};
air:assert {:SERVICE_QUALITY air:compliant-with :data_quality_policy.};
air:alt { air:assert {:SERVICE_QUALITY air:NOTcompliant-with :data_quality_policy.}}.
Class : Request for ServiceService DomainExp_Svc_Begin_DateExp_Svc_End_DateRFS_Respond_by_dt Cost_constraint
Class: Specification
NameDescription
Class:Security policy
ClassTechnical Specs
Class :Functional SpecsTask Description
High Level Ontology for Service Requirement High Level Ontology for Service Requirement PhasePhase
Class:Hardware Details
Class:Operating System Details
Class:Compatible Application Details
Class: DomainDomainCharacteristics
Class: Human Agent Specs
ExperienceAvailabilityNationalityOther Constraints
Class:Data Quality policy
is part of is part of is part of is part of is part of
Must include
Class: ConsumerConsumer-IDDescription
is sues
is part of Is part of
is part of
Is part of
Is part of
is part of
Class:Service Compliance
is part of
Service DiscoveryService Discovery
Services search/discovery engine◦ Used to search available services that match the
specifications ◦ Identify functional gaps that exist in services
discovered
Service Certification◦ A central registry, like UDDI, will certify a service
provided. ◦ Consumers can refer to this certification when
selecting a service.
Service Discovery phaseService Discovery phase
Service Requirement
sService Discovery
Engine
List of service providers with
advertised service, service levels and
cost
Service Verification / Certification
SERVICE CLOUD
CONSUMER
ServiceNegotiation
Policy in Service Discovery Policy in Service Discovery phasephase
Policy Manager
•Policy Type•Hard constraints•Soft constraints•Dependents•Parents
Services Manager
•Name•Provider•Type•Attributes•Location•Dependencies
consumer
service
Services Procurer
•Service•Policies•Generate RFS•RFS negotiation
Service Cloud
Provider 1
Cannot provide service
RFS Responder
• Cost• Availability• Functionality• Requirements met
Provider 2
policy
RFS Responder
• Cost• Availability
Provider 4
policy
specs
Service available
Service available
Provider 3
Service Provide
r Validati
on•Service•Provider•Validation
Service Composer
• Components• Constraints• Functionality• Requirements met
Functionality, Requirements met
+
RFS Responder
• Availability
Consumer
Class: Service Certification ProviderService NameService ranking
Class:Service Search Engine
Class : Provider List
Provider Service detailsService availabilityService Cost
High Level Ontology for Service Discovery High Level Ontology for Service Discovery PhasePhase
used in
Verifies Provider
Class : Request for ServiceService DomainExp_Svc_Begin_DateExp_Svc_End_DateRFS_Respond_by_dt Cost_constraint
creates
Class: Consumer
Consumer-IDDescription
returns list to
Class: Provider
Service listDescription
adds to
Service NegotiationService NegotiationDiscussion and agreement that the
Service provider and consumer have regarding the Service.
Service Level Agreements (SLA) finalized between consumer and provider
Quality of Service (QoS) decided between primary provider and component providers.
Service Negotiation phaseService Negotiation phase
Service Discovery
Service Quality of Service (QoS) between primary service providers and
dependent services
Service Level Agreement (SLA)
between consumer and primary service
provider
SERVICE CLOUD
CONSUMER
Service Composition, Orchestration
Policy in Service Negotiation Policy in Service Negotiation phasephase
Policy Manager
•Policy Type•Hard constraints•Soft constraints•Dependents•Parents
Services Manager
•Name•Provider•Type•Attributes•Location•Dependencies
consumer
service
Services
Procurer
•Service•Policies•Generate RFS•RFS negotiation
Service Cloud
Provider 1Service Negotiator
•Cost•Availability•Service functionality•Requirements met
policy
Service Negotiator
•Cost•Availability•Service functionality•Requirements met
Provider 4
policy
specs
Provider 3
Iterative process
Iterative process
Policy Manager
•Policy Type•Hard constraints•Soft constraints•Dependents•Parents
Policy Manager
•Policy Type•Hard constraints•Soft constraints•Dependents•Parents
policy
Consumer Provider
policy
Class:Contract
Class: Service Level Agreement
SLA NameDescriptionSLA MetricsPenalty
Class:Contract Negotiation
Class :Quality of Service (QOS)QOS NameDescriptionQOS MetricsPenalty
High Level Ontology for Service Negotiation High Level Ontology for Service Negotiation PhasePhase
results in
Class :Dependent Service Sub-Contract
Class :Service Contract
subClass of
subClass of
Class: Provider Negotiation
Class: Consumer Negotiation
subClass of
subClass of
results in
is part of
Class : Provider ListProvider Service detailsService availabilityService Cost
used in
Class : Request for ServiceService DomainExp_Svc_Begin_DateExp_Svc_End_DateRFS_Respond_by_dt Cost_constraint
used in
Class: ConsumerConsumer-IDDescription
initiates
Class: ProviderService listDescription
initiates
participates
is part of
Service Composition PhaseService Composition Phase●One or more services provided by one or
more providers are combined and delivered as a single Service.
●Service orchestration determines the sequence of execution of the Service components.
●Service Coupling measure determines how dependent main service is on other services or resources for its delivery
●Service Cohesion measures the extent to which related aspects of a requirement are kept together in the same service, and unrelated aspects are kept out.
Service Composition Service Composition phasephase
Service Negotiation
Service compose
d
Dependant services
SERVICE CLOUD
CONSUMER
ServiceConsumption
Class : OWL-S – Composite Process
High Level Ontology for Service Composition High Level Ontology for Service Composition PhasePhase
Is part of
Defines metrics for
Defines metrics
for
Class: Service Level Agreement
SLA NameDescriptionSLA MetricsPenalty
Class : Quality of Service (QOS)QOS NameDescriptionQOS MetricsPenalty
Class:Dependent Service
Class: Specification
NameDescription
Determines
Class: Provider
Service listDescription
Executes
Service Consumption Service Consumption PhasePhaseComposed Service is consumed and monitored in this phase.
Key measures like Service Performance and reliability are monitored using automated tools.
Phase includes Service Delivery, Service payment.
Customer Satisfaction is tracked in this phase.
Service Consumption Service Consumption phasephase
Service Composition
Service consumed
SERVICE CLOUD
CONSUMER
ServiceRequirement
s
Service Monitored
Service delivered – one time or periodically as
needed
Service payme
nt
Class : Service Level AgreementTask Description
High Level Ontology for Service High Level Ontology for Service Consumption PhaseConsumption Phase
Class: DependentComponents
Class : OWL-S – Composite Process
Class: Provider
Service listDescription
Class: ConsumerConsumer-IDDescription
Class :Service Contract
refers to Part of
is consumed by
Class: Human Component
Class : Tier 1 agent
Class : Tier 2/ external agent
Class :Response Time
Class:AssuranceClass:
Reliability
Class: Presentation
Class :Performance
Class:Resolution Time
Class :Softwarecomponents
Class :Latency
Class :Throughput
Class:Security Policy
Provides
subClass of
subClass of
Determine quality for
Service Life cycle: Service Life cycle: detaileddetailed
Identify functional and technical specifications Determine domain, data type and it’s acceptable quality levels
“Request for Service”
SERVICE CLOUD
CONSUMER
Service Discovery Engine
List of service providers with advertised service, service levels and cost
Service Certification
Quality of Service (QoS) contracts between primary service providers and dependent services
Service Level Agreement (SLA) between consumer and primary service provider
Service composedDependant services
Service packaged, delivered – one time or periodically as needed
Service payment
Service consumed
Service Monitoring
Ongoing WorkOngoing WorkCurrently developing policies for each
phase of the service lifecycle using policy languages like AIR policy language developed by MIT.
We continue to refine the IT Service ontology. Ontology in OWL for the entire Lifecycle is available at http://www.cs.umbc.edu/~kjoshi1/IT_Service_Ontology.owl
Developing an integrated quality framework for virtualized services delivered via the cloud.
Questions ?Questions ?Relevant Publications on the
Ebiquity website (http://ebiquity.umbc.edu)