BUILDING ACORD WEB
SERVICE AWARE
APPLICATIONS
ACORD Software Factory
Protective SOA Goals

  Drive       • Orchestrate service portfolio to rapidly create new, straight-
                thru business processes.
Competitive   • Enable marketing and product groups greater flexibility to
Advantage       tailor processes to a customer or product.



              • Expose existing internal system value to ourselves, our
 Solution       customers, and our partners through interoperability offered by
 Provider       open standards.
              • Enable "hook" strategies through our customers' systems.



              • Development efficiency and deployment speed.
 Excellent    • Reuse entire systems to reduce development times and costs.
 Execution    • Encapsulate existing systems easing retirement of redundant
                legacy systems and the acquisition of new legacy systems.
SOA Strategy
 Initial focus on System to System Projects
   Build consistent JBOWS
     Just a Bunch Of Web-Services
 Systems talk common language
   TXLife – lingua franca
   New services require only additional vocabulary, not a
   new language
 Long term focus composing and orchestrating the
 services
   ESB to be deployed this year
Current State
 Vendor Integration
   Exam One, Hooper Holmes, Skywire, AgencyWorks
 ECM
   Front Documentum with TXLife services
   Base64 encode docs with meta
 Ticket Biz
 1035 Exchange
 Next Looks
   Buy TXLife Services – PlanetSoft (“new” New Biz)
   Agent Management
   Annuities
High-level Architecture
What is ASF
 .NET / ACORD Accelerator for ACORD/LOMA XSD
 schemas (for both P&C and Life)
 3 general uses
   Wrap existing business logic with ACORD callable web
   services -- quickly
   Call existing ACORD web services quickly
   Or just work with ACORD standard XML quickly
 Open source community project available on
 codeplex
   http://www.codeplex.com/IVC
ASF Contains
 Comprehensive set of WCF data contract definitions
 based on ACORD P&C v1.16.0 and L&A v2.20.01
 Complete service taxonomy with 42 services, 62 interface
 definitions and over 475 operations
 Includes SDK-like class library reference documentation
    Samples and White Papers
 Plug-n-play enabled via automated functional test
 harness suite with over 475 test harnesses
ASF Value
 Eases Learning
   Many teams unfamiliar with TXLife
   Use previous projects as reference
   Avoid consultant spend
 Reuse
   Shared development and reuse across projects
   TXLife dialect consistency
Open Source Strategy
 Two-level Strategy
   Internal
     Open, shared project
     Reuse
     Implement branching and build processes 3Q
   External
     Commodity versus Competitive Advantage
     Return commodity
 Considering third-level for partners
ASF Demo
 Demo
ASF Architecture Model

   ACORD .NET Service Proxies    ACORD .NET Data Contracts

                                                                   ACORD WCF Client




    Claims     Billing    Aviation   Personal Auto   •••
                                        Service                                                Logging
    Service    Service    Service
                                                                   Insurance Services
                                                                                              Caching

                                                     ACORD Schema
                                                                                              Security



                                                     Integration Accelerator                Lookup Codes

                                                     (pluggable providers)
                                                                                           Exception Mgmt


                                                     Legacy Schema                      Architecture Services
                                                                                          (Enterprise Library)




                                                                                        Backend Applications
Data Contracts and Service Proxies
                                                                                                                 ACORD based
                                                                                                                 WCF data contracts
   ACORD .NET Service Proxies                  ACORD .NET Data Contracts                                         and service proxies
                                                                                         ACORD WCF Client


                                                                                 SOAP Web Services




     Claims       Billing Service   Aviation        Personal Auto    •••
     Service                        Service            Service                                                            Logging

                                                                                            Insurance Services
                                                                                                                          Caching

                                                                     ACORD Schema
                                                                                                                          Security



                                                                     Integration Accelerator (pluggable                Lookup Codes
                                                                     providers)
                                                                                                                      Exception Mgmt


                                                                     Backend-Specific Schema                       Architecture Services
                                                                                                                     (Enterprise Library)




                                                                                                                   Backend Applications
WS-I Web Services Interface


   ACORD .NET Service Proxies                                       Provide true SOA
                                               ACORD .NET Data Contracts

                                                                    web-services out ACORD WCF Client
                                                                                     of
                                                                    ACORD schema
                                                                                    SOAP Web Services




     Claims       Billing Service   Aviation        Personal Auto      •••
     Service                        Service            Service                                                             Logging

                                                                                               Insurance Services
                                                                                                                           Caching

                                                                        ACORD Schema
                                                                                                                           Security



                                                                        Integration Accelerator (pluggable              Lookup Codes
                                                                        providers)
                                                                                                                       Exception Mgmt


                                                                        Backend-Specific Schema                     Architecture Services
                                                                                                                      (Enterprise Library)




                                                                                                                    Backend Applications
Enterprise Library for Shared Services

                                                                                                                 Uses Microsoft
   ACORD .NET Service Proxies                  ACORD .NET Data Contracts
                                                                                                                 Enterprise Library

                                                                                         ACORD WCF Client


                                                                                 SOAP Web Services




     Claims       Billing Service   Aviation        Personal Auto    •••
     Service                        Service            Service                                                                     Logging

                                                                                            Insurance Services
                                                                                                                                   Caching

                                                                     ACORD Schema
                                                                                                                                   Security



                                                                     Integration Accelerator (pluggable                         Lookup Codes
                                                                     providers)
                                                                                                                               Exception Mgmt


                                                                     Backend-Specific Schema                                Architecture Services
                                                                                                                              (Enterprise Library)




                                                                                                                            Backend Applications
Pluggable Service Implementation Provider

                                                     You plug in your
   ACORD .NET Service Proxies                  ACORD .NET Data Contracts
                                                     business logic here.
                                                     We help with            ACORD WCF Client
                                                     optional BizTalk
                                                     samples.           SOAP Web Services




     Claims       Billing Service   Aviation        Personal Auto    •••
     Service                        Service            Service                                                          Logging

                                                                                            Insurance Services
                                                                                                                        Caching

                                                                     ACORD Schema
                                                                                                                        Security



                                                                     Integration Accelerator (pluggable              Lookup Codes
                                                                     providers)
                                                                                                                    Exception Mgmt


                                                                     Backend-Specific Schema                     Architecture Services
                                                                                                                   (Enterprise Library)




                                                                                                                 Backend Applications
Code Generator
 Creates the XSD to .NET mapping
 Optimizes various TXLife scenarios
   Choice statements
   Union statements
   OLI_LU types
   Allow for manual codes
Choice
 <xsd:complexType name="CriteriaExpression_Type">
 <xsd:choice>
    <xsd:element ref="Criteria" />
    <xsd:sequence>
        <xsd:element ref="CriteriaOperator" />
        <xsd:choice maxOccurs="unbounded">
           <xsd:element ref="Criteria" />
           <xsd:element ref="CriteriaExpression" minOccurs="0"
                       maxOccurs="unbounded" />
        </xsd:choice>
        <xsd:element ref="ObjectTypeConstraint" minOccurs="0"
                       maxOccurs="unbounded" />
        <xsd:element ref="OLifEExtension" minOccurs="0"
                       maxOccurs="unbounded" />
    </xsd:sequence>
 </xsd:choice>
 </xsd:complexType>
Union
<xsd:simpleType name="BENEFIT_INQUIRY_TC">
          <xsd:union>
                       <xsd:simpleType>
                                  <xsd:restriction base="ACORD_TYPE_CODE">
                                              <xsd:enumeration value="0" />
                                              <xsd:enumeration value="1" />
                                              <xsd:enumeration value="2" />
                                              <xsd:enumeration value="3" />
                                              <xsd:enumeration value="2147483647" />
                                  </xsd:restriction>
                       </xsd:simpleType>
                       <xsd:simpleType>
                                  <xsd:restriction base="ACORD_PRIVATE_CODE" />
                       </xsd:simpleType>
          </xsd:union>
   </xsd:simpleType>
OLI_LU types
<xsd:complexType name="OLI_LU_PARTY">
          <xsd:simpleContent>
                        <xsd:extension base="xsd:string">
                                    <xsd:attribute name="tc" use="required" type="OLI_LU_PARTY_TC" />
                        </xsd:extension>
          </xsd:simpleContent>
   </xsd:complexType>
   <xsd:simpleType name="OLI_LU_PARTY_TC">
          <xsd:union>
                        <xsd:simpleType>
                                    <xsd:restriction base="ACORD_TYPE_CODE">
                                                <xsd:enumeration value="1" />
                                                <xsd:enumeration value="2" />
                                    </xsd:restriction>
                        </xsd:simpleType>
          </xsd:union>
   </xsd:simpleType>
Next Steps
 Protective
   Common insurance objects and processes
     Beneficiary, Insureds
         Parties and relationships
     Example – AddInsured()
 Community
   ASF Working Group?

ACORD Web Services

  • 1.
    BUILDING ACORD WEB SERVICEAWARE APPLICATIONS ACORD Software Factory
  • 2.
    Protective SOA Goals Drive • Orchestrate service portfolio to rapidly create new, straight- thru business processes. Competitive • Enable marketing and product groups greater flexibility to Advantage tailor processes to a customer or product. • Expose existing internal system value to ourselves, our Solution customers, and our partners through interoperability offered by Provider open standards. • Enable "hook" strategies through our customers' systems. • Development efficiency and deployment speed. Excellent • Reuse entire systems to reduce development times and costs. Execution • Encapsulate existing systems easing retirement of redundant legacy systems and the acquisition of new legacy systems.
  • 3.
    SOA Strategy Initialfocus on System to System Projects Build consistent JBOWS Just a Bunch Of Web-Services Systems talk common language TXLife – lingua franca New services require only additional vocabulary, not a new language Long term focus composing and orchestrating the services ESB to be deployed this year
  • 4.
    Current State VendorIntegration Exam One, Hooper Holmes, Skywire, AgencyWorks ECM Front Documentum with TXLife services Base64 encode docs with meta Ticket Biz 1035 Exchange Next Looks Buy TXLife Services – PlanetSoft (“new” New Biz) Agent Management Annuities
  • 5.
  • 6.
    What is ASF .NET / ACORD Accelerator for ACORD/LOMA XSD schemas (for both P&C and Life) 3 general uses Wrap existing business logic with ACORD callable web services -- quickly Call existing ACORD web services quickly Or just work with ACORD standard XML quickly Open source community project available on codeplex http://www.codeplex.com/IVC
  • 7.
    ASF Contains Comprehensiveset of WCF data contract definitions based on ACORD P&C v1.16.0 and L&A v2.20.01 Complete service taxonomy with 42 services, 62 interface definitions and over 475 operations Includes SDK-like class library reference documentation Samples and White Papers Plug-n-play enabled via automated functional test harness suite with over 475 test harnesses
  • 8.
    ASF Value EasesLearning Many teams unfamiliar with TXLife Use previous projects as reference Avoid consultant spend Reuse Shared development and reuse across projects TXLife dialect consistency
  • 9.
    Open Source Strategy Two-level Strategy Internal Open, shared project Reuse Implement branching and build processes 3Q External Commodity versus Competitive Advantage Return commodity Considering third-level for partners
  • 10.
  • 11.
    ASF Architecture Model ACORD .NET Service Proxies ACORD .NET Data Contracts ACORD WCF Client Claims Billing Aviation Personal Auto ••• Service Logging Service Service Service Insurance Services Caching ACORD Schema Security Integration Accelerator Lookup Codes (pluggable providers) Exception Mgmt Legacy Schema Architecture Services (Enterprise Library) Backend Applications
  • 12.
    Data Contracts andService Proxies ACORD based WCF data contracts ACORD .NET Service Proxies ACORD .NET Data Contracts and service proxies ACORD WCF Client SOAP Web Services Claims Billing Service Aviation Personal Auto ••• Service Service Service Logging Insurance Services Caching ACORD Schema Security Integration Accelerator (pluggable Lookup Codes providers) Exception Mgmt Backend-Specific Schema Architecture Services (Enterprise Library) Backend Applications
  • 13.
    WS-I Web ServicesInterface ACORD .NET Service Proxies Provide true SOA ACORD .NET Data Contracts web-services out ACORD WCF Client of ACORD schema SOAP Web Services Claims Billing Service Aviation Personal Auto ••• Service Service Service Logging Insurance Services Caching ACORD Schema Security Integration Accelerator (pluggable Lookup Codes providers) Exception Mgmt Backend-Specific Schema Architecture Services (Enterprise Library) Backend Applications
  • 14.
    Enterprise Library forShared Services Uses Microsoft ACORD .NET Service Proxies ACORD .NET Data Contracts Enterprise Library ACORD WCF Client SOAP Web Services Claims Billing Service Aviation Personal Auto ••• Service Service Service Logging Insurance Services Caching ACORD Schema Security Integration Accelerator (pluggable Lookup Codes providers) Exception Mgmt Backend-Specific Schema Architecture Services (Enterprise Library) Backend Applications
  • 15.
    Pluggable Service ImplementationProvider You plug in your ACORD .NET Service Proxies ACORD .NET Data Contracts business logic here. We help with ACORD WCF Client optional BizTalk samples. SOAP Web Services Claims Billing Service Aviation Personal Auto ••• Service Service Service Logging Insurance Services Caching ACORD Schema Security Integration Accelerator (pluggable Lookup Codes providers) Exception Mgmt Backend-Specific Schema Architecture Services (Enterprise Library) Backend Applications
  • 16.
    Code Generator Createsthe XSD to .NET mapping Optimizes various TXLife scenarios Choice statements Union statements OLI_LU types Allow for manual codes
  • 17.
    Choice <xsd:complexType name="CriteriaExpression_Type"> <xsd:choice> <xsd:element ref="Criteria" /> <xsd:sequence> <xsd:element ref="CriteriaOperator" /> <xsd:choice maxOccurs="unbounded"> <xsd:element ref="Criteria" /> <xsd:element ref="CriteriaExpression" minOccurs="0" maxOccurs="unbounded" /> </xsd:choice> <xsd:element ref="ObjectTypeConstraint" minOccurs="0" maxOccurs="unbounded" /> <xsd:element ref="OLifEExtension" minOccurs="0" maxOccurs="unbounded" /> </xsd:sequence> </xsd:choice> </xsd:complexType>
  • 18.
    Union <xsd:simpleType name="BENEFIT_INQUIRY_TC"> <xsd:union> <xsd:simpleType> <xsd:restriction base="ACORD_TYPE_CODE"> <xsd:enumeration value="0" /> <xsd:enumeration value="1" /> <xsd:enumeration value="2" /> <xsd:enumeration value="3" /> <xsd:enumeration value="2147483647" /> </xsd:restriction> </xsd:simpleType> <xsd:simpleType> <xsd:restriction base="ACORD_PRIVATE_CODE" /> </xsd:simpleType> </xsd:union> </xsd:simpleType>
  • 19.
    OLI_LU types <xsd:complexType name="OLI_LU_PARTY"> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="tc" use="required" type="OLI_LU_PARTY_TC" /> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:simpleType name="OLI_LU_PARTY_TC"> <xsd:union> <xsd:simpleType> <xsd:restriction base="ACORD_TYPE_CODE"> <xsd:enumeration value="1" /> <xsd:enumeration value="2" /> </xsd:restriction> </xsd:simpleType> </xsd:union> </xsd:simpleType>
  • 20.
    Next Steps Protective Common insurance objects and processes Beneficiary, Insureds Parties and relationships Example – AddInsured() Community ASF Working Group?