JBoss BRMS クイックスタート

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    JBoss BRMS クイックスタート - Presentation Transcript

    1. JBoss Enterprise BRMS JBoss 10.6.2009 Copyright© 2009 Red Hat K.K. All rights reserved.
    2. •  –  (PDF) : Creative Commons BY ND •  CC BY ND •  PDF SlideShare http://www.slideshare.net/yusukey/jboss-brms-quick-start –  : BSD •  •  github http://github.com/yusuke/brms-quickstart/downloads –  •  Drools : jdug http://groups.google.co.jp/group/jdug/ Copyright© 2009 Red Hat K.K. All rights reserved.
    3. Agenda •  JBoss Enterprise BRMS –  •  Rete •  •  Manager( ) •  Copyright© 2009 Red Hat K.K. All rights reserved.
    4. JBoss Enterprise BRMS Copyright© 2009 Red Hat K.K. All rights reserved.
    5. JBoss Enterprise BRMS •  •  / –  •  –  •  IT •  –  •  –  Web •  –  / •  JBoss Enterprise BRMS •  Copyright© 2009 Red Hat K.K. All rights reserved.
    6. •  –  –  •  –  Rete –  •  –  = ( ) ( ) –  : •  •  20% A •  1000 B •  1 •  –  AI( ) ( ) –  1970 –  •  •  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    7. JBoss Enterprise BRMS •  Manager –  ( JBoss Enterprise BRMS Platform ) ( ) Manager Web GUI •  Engine –  RETE Engine –  Java API JSR-94 •  –  –  RDBMS •  MySQL •  PostgreSQL Red Hat Enterprise Linux •  Microsoft SQL Server Windows, Unix, Other Linux •  Oracle Copyright© 2009 Red Hat K.K. All rights reserved.
    8. JBoss Enterprise BRMS 2001 : Drools 2005 : JBoss 2006 : JBoss Rules 3.0 2007 : JBoss Rules 4.0 Tactical JBoss Enterprise BRMS 2008 : JBoss Enterprise SOA Platform JBoss Enterprise SOA Platform 2009 : JBoss Enterprise BRMS JBoss Rules4.0 Red Hat JBoss Rules3.0 JBoss Inc. Enterprise Enterprise Developer JBoss Group Drools 2001 2005 2006 2007 2008 2009 Copyright© 2009 Red Hat K.K. All rights reserved.
    9. / Manager HTTP Engine Engine Engine JBoss EAP WebLogic JVM JVM JVM Engine Engine Engine JBoss EAP Tomcat WebSphere JVM JVM JVM Copyright© 2009 Red Hat K.K. All rights reserved.
    10. •  –  –  –  : •  –  –  –  •  –  EC –  –  •  = –  •  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    11. •  –  •  3 10 : if / switch-case –  •  •  –  •  10 –  •  •  –  •  •  != –  •  if / switch-case / for Copyright© 2009 Red Hat K.K. All rights reserved.
    12. : 15% 0.8% 5000 7000km 3000 public double getDiscountRate(Driver driver, Car car){ double discountRate = 0d; if(car.getColor() == Color.WHITE){ ... } Copyright© 2009 Red Hat K.K. All rights reserved.
    13. 15% 0.8% 5000 7000km 3000 when when then then 0.8% 5000 when when 7000km 15% then then 5000 15% Copyright© 2009 Red Hat K.K. All rights reserved.
    14. •  •  •  Forward-Chaining •  –  = = –  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    15. Rete Copyright© 2009 Red Hat K.K. All rights reserved.
    16. Rete •  Rete : –  –  –  •  –  ReteII / Rete III •  : Braze Advisor –  Rete OO •  : Drools Copyright© 2009 Red Hat K.K. All rights reserved.
    17. Rete 1.  (Rete Tree) 2.  insert 3.  (activate) 4.  2 3 5.  (fire) Rete Node rule " " when ObjectType Node Alpha Node - 24 - Alpha Node then Left Input Adapter Node 10% end Join Node Terminal Node Copyright© 2009 Red Hat K.K. All rights reserved.
    18. Rete app KnowledgeBase kb = agent.getKnowledgeBase();! Rete Node StatefulKnowledgeSession workingMemory = ObjectType Node kb.newStatefulKnowledgeSession();! app = new ();! Alpha Node workingMemory.insert(app);! driver = new ();! Alpha Node driver.set (25);! driver.set (1);! Left Input Adapter Node app workingMemory.insert(driver);! Join Node workingmemory.fireAllRules();! double = app.get ();! Terminal Node Copyright© 2009 Red Hat K.K. All rights reserved.
    19. Rete driver KnowledgeBase kb = agent.getKnowledgeBase();! Rete Node StatefulKnowledgeSession workingMemory = ObjectType Node kb.newStatefulKnowledgeSession();! app = new ();! Alpha Node workingMemory.insert(app);! driver = new ();! Alpha Node driver.set (25);! driver.set (1);! Left Input Adapter Node workingMemory.insert(driver);! driver Join Node workingmemory.fireAllRules();! double = app.get ();! Terminal Node Copyright© 2009 Red Hat K.K. All rights reserved.
    20. Rete driver KnowledgeBase kb = agent.getKnowledgeBase();! Rete Node StatefulKnowledgeSession workingMemory = ObjectType Node kb.newStatefulKnowledgeSession();! app = new ();! Alpha Node workingMemory.insert(app);! driver = new ();! Alpha Node driver.set (25);! driver.set (1);! Left Input Adapter Node app workingMemory.insert(driver);! driver Join Node workingmemory.fireAllRules();! double = app.get ();! Terminal Node Copyright© 2009 Red Hat K.K. All rights reserved.
    21. Rete KnowledgeBase kb = agent.getKnowledgeBase();! Rete Node StatefulKnowledgeSession workingMemory = ObjectType Node kb.newStatefulKnowledgeSession();! app = new ();! Alpha Node workingMemory.insert(app);! driver = new ();! Alpha Node driver.set (25);! driver.set (1);! Left Input Adapter Node workingMemory.insert(driver);! Join Node workingmemory.fireAllRules();! double = app.get ();! Terminal Node 10% Copyright© 2009 Red Hat K.K. All rights reserved.
    22. Rete •  insert –  –  for / switch case / if then •  –  for / switch case / if then –  / / Copyright© 2009 Red Hat K.K. All rights reserved.
    23. Rete Forward Chaining •  Forward-Chaining : –  –  ( ) << >> << >> Photo by bee-side(s) licensed under CC by ND http://www.flickr.com/photos/75936255@N00/294904726/ Copyright© 2009 Red Hat K.K. All rights reserved.
    24. LHS & RHS •  –  “fire” –  LHS(Left Hand Side) •  •  –  RHS(Right Hand Side) •  •  JBoss Enterprise BRMS “when/then” rule “< >” when <LHS> then <RHS> end Copyright© 2009 Red Hat K.K. All rights reserved.
    25. Copyright© 2009 Red Hat K.K. All rights reserved.
    26. Engine •  –  Drools Expert / JBoss Rules •  –  •  jar –  drools-compiler.jar –  drools-core.jar –  drools-api.jar –  drools-decisiontables.jar –  … •  Java API –  : Java Copyright© 2009 Red Hat K.K. All rights reserved.
    27. •  –  •  –  POJO Fact : POJO –  (Declarative) Fact : Manager POJO Fact Fact Manager public class Person { private String name; private Date dateOfBirth; private Address address; ... } Fact declare Person name : String dateOfBirth : Date address : Address end Copyright© 2009 Red Hat K.K. All rights reserved.
    28. •  •  DRL •  Drools •  •  DSL •  •  Decision •  / Table •  Copyright© 2009 Red Hat K.K. All rights reserved.
    29. : DRL rule “< >” •  DRL : Drools Rule Language when –  Drools Expert <LHS> –  MVEL Java then <RHS> end •  DRL rule " 1 ” when $customer: Customer(status == Customer.PLATINUM, $id : id) $order: Order(id == $id, $amount : amount) then log.debug($customer.getName() + " "); order.setTotalAmount($amount * 0.9); end Copyright© 2009 Red Hat K.K. All rights reserved.
    30. : DRL - LHS •  LHS : Left Hand Side –  –  –  and ( ) or not –  LHS RHS –  $ rule " 1 ” when $customer: Customer(status == Customer.PLATINUM, $id : id) $order: Order(id == $id, $amount : amount) then log.debug($customer.getName() + " "); order.setTotalAmount($amount * 0.9); end Copyright© 2009 Red Hat K.K. All rights reserved.
    31. : DRL - RHS •  RHS : Right Hand Side –  –  Java MVEL –  MVEL Language Guide - http://mvel.codehaus.org/Language+Guide –  LHS rule " 1 ” when $customer: Customer(status == Customer.PLATINUM, $id : id) $order: Order(id == $id, $amount : amount) then log.debug($customer.getName() + " "); order.setTotalAmount($amount * 0.9); end Copyright© 2009 Red Hat K.K. All rights reserved.
    32. : DSL •  DSL : Domain Specific Language –  –  ( ) –  when then order.dslr expander order.dsl rule “ ” when 100 then end order.dsl # DSL [when] { } = order: Order(count > { }) [then] = order.setAcceptted(true); [then] {cause} = order.setAccepted (false);order.setComment("{cause}"); Copyright© 2009 Red Hat K.K. All rights reserved.
    33. : DSL - •  LHS : –  [when] DSL =DRL/LHS •  RHS : –  [then] DSL = DRL/RHS –  { } •  –  2 order.dsl # DSL [when] { } = order: Order(count > { }) [then] = order.setAcceptted(true); [then] {cause} = order.setAccepted (false);order.setComment("{cause}"); Copyright© 2009 Red Hat K.K. All rights reserved.
    34. : Decision Table •  •  •  Expert Excel / Open Office Calc Copyright© 2009 Red Hat K.K. All rights reserved.
    35.   DSL / Decision Table DRL   DRL Java ( ) Rete Tree •  IDE(JBoss Developer Studio) Rete Tree   Drools Compiler package org.drools.examples " DSL import org.drools.examples.Customer; " import org.drools.examples.Order; " iconst_0! rule " "" iinc 0,1! when " goto -08! customer: Customer( status > 50 ) " imul! order: Order(orderPriority == 3) " imul! then " iload_0! order.setOrderDiscount(8.5); " end Copyright© 2009 Red Hat K.K. All rights reserved.
    36. •  Java : Engine Java –  –  –  Session Bean •  Manager http –  JVM –  /( ) Engine http Manager http JBoss Engine JBoss JavaEE Copyright© 2009 Red Hat K.K. All rights reserved.
    37. Engine : FireRules.java public static void main(String[] args) throws Exception {! KnowledgeAgent agent = KnowledgeAgentFactory.newKnowledgeAgent("MyAgent");! agent.applyChangeSet(ResourceFactory.newClassPathResource("./ mychangeset.xml"));! KnowledgeBase kb = agent.getKnowledgeBase();! Customer c = new Customer();! c.setName(" ");! c.setAge(21);! c.setAnnualsalary(1400);! kb. newStatelessKnowledgeSession().execute(c);! System.out.println(app.isApproved());! }! mychangeset.xml <change-set>! <add>! <resource source='http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/package/ creditcard/PRODUCTION' type='PKG'/>! </add>! </change-set>! Copyright© 2009 Red Hat K.K. All rights reserved.
    38. Eclipse •  Eclipse –  –  JBoss Tools –  JBoss Developer Studio •  –  –  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    39. Manager Copyright© 2009 Red Hat K.K. All rights reserved.
    40. Manager •  –  •  Web •  : –  : •  : •  : Excel Copyright© 2009 Red Hat K.K. All rights reserved.
    41. Manager •  Web –  war (jboss-brms.war) –  •  : –  : Drools Guvnor –  •  ( ) •  •  •  •  •  •  •  RDBMS •  Copyright© 2009 Red Hat K.K. All rights reserved.
    42. Manager - •  Manager(Guvnor) Web –  –  JBoss EAP 4.3 •  JBoss EAP –  CONFIGURATION/deploy jboss-brms.war ( drools-guvnor.war) Copyright© 2009 Red Hat K.K. All rights reserved.
    43. 1- 1.  JBoss EAP 2.  BRM 3.  JBoss EAP Copyright© 2009 Red Hat K.K. All rights reserved.
    44. Manager - •  POJO Model -- Payment.java public class Payment implements java.io.Serializable{ private String name; private int price; private static final long serialVersionUID = -1621614242103946730L; } •  Declarative Model Copyright© 2009 Red Hat K.K. All rights reserved.
    45. 2- 1.  2.  3.  Copyright© 2009 Red Hat K.K. All rights reserved.
    46. Manager - •  GUI : Guided Editor Copyright© 2009 Red Hat K.K. All rights reserved.
    47. 3 - DSL 1.  DSL 2.  Copyright© 2009 Red Hat K.K. All rights reserved.
    48. Manager- •  Fact –  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    49. Manager- •  ( 6 ) –  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    50. 4- 1.  2.  Copyright© 2009 Red Hat K.K. All rights reserved.
    51. Manager - •  •  URL –  Expert URL Copyright© 2009 Red Hat K.K. All rights reserved.
    52. Manager- •  LATEST •  –  BRM •  –  T! Engine ES / LAT my app CI Server ge/ a cka ./p /... p:/ htt Manager http://..../package/myapp/TEST! Engine JUnit Test case JBoss Engine Servlet/EJB Copyright© 2009 Red Hat K.K. All rights reserved.
    53. 5- 1.  Web 2.  Copyright© 2009 Red Hat K.K. All rights reserved.
    54. Manager-Decision Table •  Web •  Web Decision Table –  Copyright© 2009 Red Hat K.K. All rights reserved.
    55. Manager - Decision Table •  –  .xls –  WebDAV Excel –  http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/webdav/ Copyright© 2009 Red Hat K.K. All rights reserved.
    56. 6- 1.  2.  3.  4.  5.  ( ) Copyright© 2009 Red Hat K.K. All rights reserved.
    57. Manager - •  –  –  –  Copyright© 2009 Red Hat K.K. All rights reserved.
    58. Copyright© 2009 Red Hat K.K. All rights reserved.
    59. •  BRMS •  Rete •  DRL •  DSL •  Guided Editor •  •  •  Copyright© 2009 Red Hat K.K. All rights reserved.
    60. •  •  •  Rete •  JBoss Developer Studio / Eclipse •  JBoss Developer Studio / Eclipse BRM •  Enumeration •  Drools API •  Rule Flow •  BRM •  BRM •  Web •  BRMS •  - •  Copyright© 2009 Red Hat K.K. All rights reserved.
    61. •  •  Rete •  JBoss Enterprise BRMS –  –  TCO 4CPU –  –  Web •  –  JBoss Enterprise BRMS http://www.slideshare.net/yusukey/jboss-brms-quick-start http://github.com/yusuke/brms-quickstart/downloads Copyright© 2009 Red Hat K.K. All rights reserved.
    62. •  Drools http://www.jboss.org/drools/ •  Drools (examples ) http://www.jboss.org/drools/downloads.html •  JBoss Enterprise BRMS http://www.jboss.com/products/platforms/brms/ •  ( ) https://lists.jboss.org/mailman/listinfo/rules-users •  IRC irc.codehaus.org #drools. •  Google : Drools Copyright© 2009 Red Hat K.K. All rights reserved.
    63. Q&A Copyright© 2009 Red Hat K.K. All rights reserved.
    64. Copyright© 2009 Red Hat K.K. All rights reserved.
    SlideShare Zeitgeist 2009

    + yusukeyyusukey Nominate

    custom

    1119 views, 0 favs, 6 embeds more stats

    More info about this document

    CC Attribution-NoDerivs LicenseCC Attribution-NoDerivs License

    Go to text version

    • Total Views 1119
      • 931 on SlideShare
      • 188 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 26
    Most viewed embeds
    • 92 views on http://blog.athico.com
    • 65 views on http://yusuke.homeip.net
    • 26 views on http://www.jboss.org
    • 3 views on http://jboss.org
    • 1 views on http://203.208.37.132

    more

    All embeds
    • 92 views on http://blog.athico.com
    • 65 views on http://yusuke.homeip.net
    • 26 views on http://www.jboss.org
    • 3 views on http://jboss.org
    • 1 views on http://203.208.37.132
    • 1 views on http://translate.googleusercontent.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories