A Research Agenda for Business-Driven IT Jeff Kephart (IBM Research) Steve White (IBM Research) Edie Stern (IBM Tivoli)
Business-Driven IT <ul><li>We want a world in which businesses can respond flexibly to opportunities and threats </li></ul...
Is  this  flexible IT? No – that’s what autonomic computing is supposed to fix!
The role of autonomic computing <ul><li>Autonomic computing systems are: </li></ul><ul><ul><li>“ Computing systems that ma...
Towards Business-Driven IT Business Objectives (e.g. KPIs) Business Process Models IT system Monitored business data Polic...
Application Experts Database experts and tools Server experts Network experts and tools Mainframe experts From siloed poli...
Scenario: Managing to Performance and Availability Objectives The system can now set these parameters to their optimal val...
Performance-Availability Tradeoffs using Utility Functions with J. Strunk, B. Salmon, G. Ganger, CMU Cost Function for Tra...
Need interfaces and algorithms to support elicitation of high-level objectives  WebSphere XD uses templates to elicit aver...
WAS XD Utility Function Combination
WebSphereXD-TIO Data Center  WebSphereXD WebSphereXD FreePool
Control parameters <ul><li>Suppose we have just two control parameters </li></ul><ul><ul><li>cpu = # processors </li></ul>...
Models    (b) rpo(b) Cost(cpu) NetUtil(rt, rpo) = Util(rt,rpo) – Cost(rt,rpo)  = Util(  rt(cpu,   (b );   ) ,  rpo(b) )...
Net utility as function of  control parameters   NetUtil(cpu, b;   ) Util(rt, rpo)  cpu b U net rpo rt U rt rpo cpu b
Net utility vs. control parameters  NetUtil(cpu, b;   ) Util(rt, rpo) rpo rt  b cpu b*=0.874575 cpu*=2.49134 U*=15...
Challenges at IT level <ul><li>Elicit high-level IT objectives </li></ul><ul><li>Manage to them </li></ul><ul><li>Interact...
Towards Business-Driven IT Business Objectives (e.g. KPIs) Business Process Models IT system Monitored business data Polic...
End-To-End Model-Based & Goal-Driven Deployment “ Rainforest”  Deployment Design Tool Tivoli Provisioning Manager Rational...
Automated derivation of thresholds and goals from SLOs Payroll BusinessInt App… App Server DB2Server StorageServer Disk Co...
Implications <ul><li>Human specification of low-level platform- and resource-specific parameters and policies will be phas...
Upcoming SlideShare
Loading in …5
×

Slides

164 views
120 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
164
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Enterprise Application Software needs to continuously evolve to adapt to changing business requirements - but the cost today can be prohibitive This diagram represents the reality of application software for a typical IBM customer. The boxes represent applications, color coded depending on platform (mainframe, UNIX, windows, external interfaces). The links are data flows and dependencies. The complexity stems from the stratification of new systems on top of legacy ones, all designed as monolithic, rather than with a componentized, loosely-coupled architecture. Now add, virtualization, optimization, SOA, software as services, identity theft, hacker attacks….
  • Too much manual labor; too many different people IT implementations are inflexible insufficiently connected with business concerns Lack of multi-objective management At business level At IT level =========== Progress is being made, but serious gaps remain Links from business to IT are mostly manual Conversion from business to IT objectives is manual, or absent Low-level IT policies are composed directly in siloed fashion not derived from higher level
  • Models capture best practices, human knowledge. Instead of just having an admin say “Do X”, we decouple what you want from how you get what you want. Get away from one-time use, one-time decision making. Similar ideas can be applied across large-scale apps, at level of entire data center
  • Too much manual labor; too many different people IT implementations are inflexible insufficiently connected with business concerns Lack of multi-objective management At business level At IT level =========== Progress is being made, but serious gaps remain Links from business to IT are mostly manual Conversion from business to IT objectives is manual, or absent Low-level IT policies are composed directly in siloed fashion not derived from higher level
  • RT: Put in something about Need for standards for KPIs, objectives, policies, to support transformations. Admins are not used to articulating their desires at this level; careful HCI design will be required. Decoupling of “Do X” into “I want to achieve A” and “Model/method for how to achieve A”. We’re making progress, but some important things are missing before we can realize On-Demand. Some pieces are there, but not very well-integrated (business to IT bridge not very good) Some pieces are missing entirely (management to multiple objectives being a major one) – at two levels (business and IT) It’s more than just algorithms – interfaces and protocols (standards) are important ************* Before the stack completes, we see value in managing to multiple objectives, and in specifying “higher” level objectives. Value from bottom up, and from top down, they meet in the middle.
  • Slides

    1. 1. A Research Agenda for Business-Driven IT Jeff Kephart (IBM Research) Steve White (IBM Research) Edie Stern (IBM Tivoli)
    2. 2. Business-Driven IT <ul><li>We want a world in which businesses can respond flexibly to opportunities and threats </li></ul><ul><li>Flexible business requires flexible IT … </li></ul>
    3. 3. Is this flexible IT? No – that’s what autonomic computing is supposed to fix!
    4. 4. The role of autonomic computing <ul><li>Autonomic computing systems are: </li></ul><ul><ul><li>“ Computing systems that manage themselves in accordance with high-level objectives from humans.” </li></ul></ul><ul><ul><ul><li>A Vision of Autonomic Computing , IEEE Computer, J. Kephart and D. Chess, Jan. 2003. </li></ul></ul></ul><ul><li>How high is “high”? </li></ul><ul><li>Business-driven IT: the high-level objectives are business objectives </li></ul>
    5. 5. Towards Business-Driven IT Business Objectives (e.g. KPIs) Business Process Models IT system Monitored business data Policies Human specification of low-level, platform-specific policies gives way to high-level discipline-specific objectives with tradeoffs Translation of models, metrics and objectives from business terms to IT terms will become increasingly automated There will be continuous feedback between IT and business levels to calibrate business-to-IT transformations Self-managing Business to IT Tools & Transforms Automated Provisioning and Deployment Automatically provision, deploy DCM Human Expertise Business Process Tools & Transforms Platform-Independent Models Business Objectives and Metrics DB policies Network policies IT Admins Storage policies Business Architects Deployers and Domain Experts High-level IT metrics, objectives Convert objectives
    6. 6. Application Experts Database experts and tools Server experts Network experts and tools Mainframe experts From siloed policies to high-level IT objectives <ul><li>Replace resource-oriented silos with horizontal process-oriented solutions </li></ul>Workstation experts Availability Objectives Security Objectives Performance Objectives Change Objectives <ul><li>Replace resource-oriented policies with objectives defined by management discipline; aggregate them </li></ul>Availability Management Security Management Change Management Service Level Management Information Lifecycle Mgmt. Server Policy Network Policy DB Policy High-level IT metrics, objectives
    7. 7. Scenario: Managing to Performance and Availability Objectives The system can now set these parameters to their optimal values, or advise a human administrator.  cpu, b On Demand Env 1 Util(RT, DT) Service-level utility Application Manager Resource-level utility Models NetUtil(cpu, b;  ) Optimizer Perf. Model RT( cpu , b;  ) Avail. Model DT( b ) Cost Model Cost(cpu) High-level IT metrics, objectives Policies eBrokerage transactions application 1 sec response time for Gold customers is OK. I don’t need faster than 0.75 sec; more than 2.0 sec is unacceptable. 50 min downtime/month is tolerable; 100 min is bad. Good DownTime is slightly more important than good RT. Objectives are defined as utility function for Response Time and Down Time, which captures tradeoffs Composing utility with models yields an optimization problem in terms of low-level params that can be posed to an appropriate optimizer. Models capture human expert knowledge about dependence of high-level IT metrics on lower level system knobs and observables like demand  . They can be refined automatically.
    8. 8. Performance-Availability Tradeoffs using Utility Functions with J. Strunk, B. Salmon, G. Ganger, CMU Cost Function for Trace Processing Application Availability Bandwidth (MB/sec) Cost ($/yr/student) $5000 $10000 $15000 $20000 $25000 $30000 Student waits for run on 27GB trace file once per day; costs $30/hr Outage renders student 50% effective + sys admin spends 100% time fixing; costs $45/hr
    9. 9. Need interfaces and algorithms to support elicitation of high-level objectives WebSphere XD uses templates to elicit average or percentile response-time objectives E-commerce preference elicitation methods that help consumers to express complex tradeoffs will be adapted to systems administration
    10. 10. WAS XD Utility Function Combination
    11. 11. WebSphereXD-TIO Data Center WebSphereXD WebSphereXD FreePool
    12. 12. Control parameters <ul><li>Suppose we have just two control parameters </li></ul><ul><ul><li>cpu = # processors </li></ul></ul><ul><ul><li>b = data backup interval (in minutes) </li></ul></ul><ul><li>We want to choose (cpu, b) to optimize Util(rt,rpo) – Cost(rt,rpo) </li></ul><ul><li>We need to transform the utility function into control parameter space </li></ul><ul><li>We can do this using models that relate (cpu,b) to (rt,rpo) </li></ul>NetUtil(rt, rpo) = Util(rt,rpo) – Cost(rt,rpo) = Util( rt(cpu, b;  ), rpo(cpu, b ;  ) ) – Cost(cpu, b) = NetUtil(cpu,b;  )
    13. 13. Models  (b) rpo(b) Cost(cpu) NetUtil(rt, rpo) = Util(rt,rpo) – Cost(rt,rpo) = Util( rt(cpu,  (b );  ) , rpo(b) ) – Cost(cpu) = NetUtil(cpu,b;  ) Models could come from: Analytics/Queuing, Simulation, Machine Learning b  (sec -1 ) cpu RT(msec)  = 10 -4  = 10 -3  = 5*10 -3 rt(cpu,  ;  )  =10
    14. 14. Net utility as function of control parameters NetUtil(cpu, b;  ) Util(rt, rpo)  cpu b U net rpo rt U rt rpo cpu b
    15. 15. Net utility vs. control parameters NetUtil(cpu, b;  ) Util(rt, rpo) rpo rt  b cpu b*=0.874575 cpu*=2.49134 U*=152.661 rt*=99.5775  b cpu b*=1.19931 cpu*=3.65144 U*=137.414 rt*=95.4449  b cpu b*=2.05265 cpu*=8.58375 U*=75.8644 rt*=88.6853
    16. 16. Challenges at IT level <ul><li>Elicit high-level IT objectives </li></ul><ul><li>Manage to them </li></ul><ul><li>Interactive effectively with administrators to build trust </li></ul>
    17. 17. Towards Business-Driven IT Business Objectives (e.g. KPIs) Business Process Models IT system Monitored business data Policies Self-managing Business to IT Tools & Transforms Automated Provisioning and Deployment Automatically provision, deploy DCM Human Expertise Business Process Tools & Transforms Platform-Independent Models Business Objectives and Metrics High-level IT metrics, objectives Convert objectives
    18. 18. End-To-End Model-Based & Goal-Driven Deployment “ Rainforest” Deployment Design Tool Tivoli Provisioning Manager Rational Software Architect <ul><li>Physical </li></ul><ul><li>Complete </li></ul><ul><li>Correct </li></ul><ul><li>Actionable </li></ul>Eilam et al. (IBM TJ Watson) Logical Application Structure Developer EAR DB JSP Deployment Topology EAR DB JSP Deployer WEB Server APP Server DB Server Logical Topology Model Automatically Combine Fine-Grained Best Practices Patterns To Transform the Logical Application Structure to a Physical Topology Model Transformations (Best practices) LdNode2 LdNode1 Firewall VLAN1 VLAN2 LdNode1 LdNode2 Connection Insert Firewall Domain Expert LdNode2 LdNode1 Firewall VLAN1 VLAN2 LdNode1 LdNode2 Connection Insert Firewall LdNode2 LdNode1 Firewall VLAN1 VLAN2 LdNode1 LdNode2 Connection Insert Firewall
    19. 19. Automated derivation of thresholds and goals from SLOs Payroll BusinessInt App… App Server DB2Server StorageServer Disk Controller Disk Controller <ul><li>Use statistical techniques to correlate SLO violations at Application Layer with monitored data in System Layer </li></ul><ul><li>Automatically set alert thresholds to desired false-positive / false-negative tradeoff </li></ul>Originally presented at ICAC ‘05 Breitgand, Henis, Shehory (IBM Haifa)
    20. 20. Implications <ul><li>Human specification of low-level platform- and resource-specific parameters and policies will be phased out. </li></ul><ul><li>Administrators will specify power, performance, availability and security objectives, and acceptable tradeoffs between them. Algorithms and interfaces for eliciting high-level IT objectives will emerge, as will standards for expressing them. </li></ul><ul><li>Models will capture human expert knowledge of how high level objectives relate to lower-level system parameters, and they will be refined automatically via feedback. </li></ul><ul><li>Resources will employ models in conjunction with optimization and planning technologies to manage to multiple objectives, both for deployment and runtime operations. </li></ul><ul><li>The entire stack of business-driven IT will be completed, as business objectives get transformed to high-level IT objectives that drive deployment and runtime operations. Standards for expressing business-level objectives will emerge. </li></ul>

    ×