Accenture Life Insurance Platform Technical Presentation

wispxylopolistInternet και Εφαρμογές Web

7 Αυγ 2012 (πριν από 5 χρόνια και 2 μήνες)

705 εμφανίσεις

Copyright ©
2010
Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture.

Accenture Software

ALIP Technical Presentation

Technology/Architecture

Primary Features/Design Principles

2

Copyright © 2010 Accenture All Rights Reserved.


Customizable


Business Experts can innovate without
the delay and high costs of traditional
programming


Modular


Thin presentation supports multiple
channels


Abstract componentized design resists
obsolescence


Based on Standards


Standard development
tools/languages


Standard infrastructure/administration


Standard communication/formats


Platform Neutral


Avoids third
-
party lock
-
in


Includes small footprint
environments


Open


Published API and Database


Simplifies integration


Simplifies upgrades


Simple


Strong “Keep it Simple”
approach


Careful use of J2EE


Let the platform handle the
hard work

Technology/Architecture

Logical Layers of Applications

3

Copyright © 2010 Accenture All Rights Reserved.


Foundation of pre
-
built Life
Insurance components


Common infrastructure and
services


User driven assembly of
business processes


Achieve many benefits of a
full SOA now while
positioning for the future

Physical Tiers

Logical Layers of Application

4

Copyright © 2010 Accenture All Rights Reserved.


Presentation


Thin


Application/Model


Ease UI development


Encapsulate session
state


Cache API requests


Process/API


Orchestration


Declarative Transactions


Declarative Exposure


Component


Business Logic/Engines


Decoupled and
Replaecable


Data Access


Isolate Data from Logic

ALIP Architecture


Logical

5

Copyright ©
2010
Accenture All Rights Reserved.

ALIP Front End

New Business

Underwriting

Customer
Servicing

Policy servicing

Workflow and
business process
management

Service Layer

3
rd

Party

Policy

Administration

Engine

ALIP Back End

Product Factory

Individual policy management

Common Calculation

Engine

Products
Rules

User defined
Functions

Tables

Other
Common
Functions

Optional usage of ALIP calculation
engine by 3
rd

party system

Group policy management

Batch treatments

Claims processing

Third party management

Collection/Disbursement

Accounting

Commissioning

Printing

Reporting

Authorization

Reinsurance

Interfaces

Organization

ALIP Architecture


Physical

6

Copyright © 2010 Accenture All Rights Reserved.

Web Server

J2EE Application Server

Static Content/Images/HTML

Web Application (WAR)

EJB Application (EJB
-
JAR)

Other Components
(JAR)

Product Component (JAR)

Product Interface

Product Calc Engine

Database Server

Product Rules

Calculation Engine

Other Components
(JAR)

Presentation

Business,
Product,

and

Data Flow

Data Access


Development Tools & Languages

7

Copyright © 2010 Accenture All Rights Reserved.


Presentation Layer


JSP


JavaScript


Application Logic


Java


Back End Components


Java


Cobol 2


Database


SQL



Version Control


Subversion


ClearCase



IDEs

/ Debugging


Eclipse, RAD


NetExpress

IDE


Build


Maven, Ant


TCL


Quality


Purify, JProbe,
Junit
, ACQT


HP Quality
Center


FindBugs, PMD


Data
Modeling


DataArchitect
,
ERWin

Development Tools

Languages

Supported Platforms

8

Copyright © 2010 Accenture All Rights Reserved.






Web Server


IBM HTTP Server (bundled with WebSphere)

Apache 2.0

IIS 5.0+

Application Server

WebSphere 6.1

WebLogic 10.x

Tomcat 6 (For laptop deployments of the front
-
end)

Java

JDK 1.5+

(the JDK bundled with the application Server.)

Database

Oracle 10g

Oracle 11g

DB2 9.x Enterprise Edition

Derby (open source database for front
-
end on laptops)

Messaging Middleware


IBM MQ Series

JCICS Cobol / Cobol Enterprise

Integrated JMS server with application server.

Apache
ActiveMQ

V4.1+ (For laptop deployments)

Operating System

AIX 5.3/6

Solaris 10

Windows 2003 Server, Windows XP

Linux


(Red Hat Linux Enterprise edition or SUSE)

Ibm

z/Os 1.9 or higher (for Cobol layer)

Commonly used
Server Hardware

IBM P5 series

Sun Solaris T Series (java / UltraSparc2)

Sun Solaris M series (non
-
java / Sparc64)

Intel based servers

Mainframe (for Cobol layer)

ALIP was validated on
zLinux/s390x using WebSphere
6.1, DB2 9.1 and SUSE Enterprise
10. Support is not yet available for
this platform.

Versions listed in
italic bold

are preferred

Rules Engine Architecture

9

Copyright © 2010 Accenture All Rights Reserved.


Business users design pages using the
Page Builder


Pages can invoke the Rules Engine for
validations and follow up questions


Rules Engine can invoke underlying
Business API through XML payloads


Pages can be grouped and tied together
to form a workflow


Workflow can leverage the Rules Engine
to route to the user through different
paths depending on the process or user’s
answers


The entire orchestration layer uses XML,
allowing the configurable process to front
non
-
ALIP systems, such as an ESB or
third
-
party policy administration system


Rules can be auto
-
deployed as web
service operations



Rules Management

Overview

10

Copyright © 2010 Accenture All Rights Reserved.


Product
Rules


Key IGO
enabler


Configurable coverage definition


Centralized features utilized across coverage base,


Robust calculation support and transactional events


Page
Group Rules for Data
Collection


Data collection needs to support business processes


Nuanced support for a variability
of data capture
workflows


Create
and maintain with
ease


Business Rules



Configuration to drive process innovation


Drive
workflow
and
follow up automation


Insight into business rule execution
to transform processes


Expose as web services to support ease of integration and

enablement of rules centricity

Rules Management

Product Rules

11

Copyright © 2010 Accenture All Rights Reserved.


Data driven product engine to roll products out to
market in fast/efficient manner


Key IGO enabler


Includes


Coverage definition


Centralized features


Robust calculation support


Transactional events


Product structure and composition rules


Tariffs definition


Calculations Rules


Underwriting Rules


Test and simulation environments support the
validation phase before the execution environment

Rules Management

Page Development

12

Copyright © 2010 Accenture All Rights Reserved.


The Page Management Interface supports the
creation of Pages, Questions, Answers, Conditions,
Reflexive Questions, Formatting, etc.



Pages


Specify page name and description
(description displayed at run time)


Attach rules to be run when entering or
leaving the page


Pages can be inserted between other pages
or added to end of list


Questions


Robust and flexible interface for configuring
questions


Many types of answer controls supported
(Text boxes, Drop down list boxes, Radio
buttons, as well as pre
-
defined controls)


Numerous properties to be set based on
purpose and type of question


Rules Management

Business Rules

13

Copyright © 2010 Accenture All Rights Reserved.

Customization is supported across:


Data collection needs to support business
processes


Various design templates and features to
leverage


Variability of data capture workflows to support
any nuances


Create and maintain configurable business
processes


Business rules to drive process innovation


Business edits that leverage product engine


Drive workflow automation, follow up
automation


Enable data mining of business rule to
transform decision
-
making processes


Expose as web services to support ease of
integration
and enablement
of rules
centricity

Rules Management

Workflow Development

14

Copyright © 2010 Accenture All Rights Reserved.


Workflows that control all business processes in the
system can also be configured



Defines the workflow for a given business
process. Examples include:


Application entry


Financial transactions entry


Underwriting execution


Claims management



Workflow services drive the front end flow
according product type and channel


Routing based on product and business
object state


User Authorizations to perform specific
process tasks based on profiling structure

Rules Management

Promotion, Version Control, and Migration

15

Copyright © 2010 Accenture All Rights Reserved.

Promotion tool migrates configuration between ALIP systems


Treat configuration the same as code


Uses Web Services to communicate with multiple ALIP systems


Simple directory based repository by default


Configuration artifacts stored as XML


Designed for simple integration with existing third party source control.


Rules Management

Replicating in Multiple Environments

16

Copyright © 2010 Accenture All Rights Reserved.


Stable “Trunk” version for ongoing
development


“Feature branches” used for
enhancements


Deployed and tested in isolation
before merging to trunk


Trunk state is tagged during releases


Fixes are made against release
version


If applicable, fixes are merged back to
Trunk for the next version


Both code and configuration can be
patched or promoted respectively


Change Management Process

Copyright © 2010 Accenture All Rights Reserved.

Change request, Assigned
to developer

(Specification or Defect)

Is change
request
large
enough to
require a
branch?

One Enhancement SVN Branch 1

QA tests on

branch site


& peer code

review

Developer
/
Configurator

makes
changes

Branch

from
Trunk

Once

approved,

Merge to
Trunk

One Enhancement SVN Branch 2…N

QA tests on

branch site


& peer code

review

Developer
/
Configurator

makes
changes

Branch

from
Trunk

Once

approved,

Merge to
Trunk

Enhancement Enters
Queue to be merged
back to trunk

Changes made directly on Trunk

Changes
are signed
into
trunk
as
single
changeset

Developer
/
Configurator

makes
changes

Developer

gets
latest
code

Day 1
Merge
Enhancements
Code Freeze
Day 2
Merge
Enhancements
Code Freeze
Day 3
Acceptance
Testing
Bug Fixing
Day 4
Acceptance
Testing
Bug Fixing
Day 5
Acceptance
Testing
Bug Fixing
Regression on Previous cycle
snapshot, enter bugs for correction
Day 1
Merge
Enhancements
Code Freeze
Day 2
Merge
Enhancements
Code Freeze
Day 3
Acceptance
Testing
Bug Fixing
Day 4
Acceptance
Testing
Bug Fixing
Day 5
Acceptance
Testing
Bug Fixing
Regression on Previous cycle
snapshot, enter bugs for correction
Day 6
Merge SIP
Enhancements
Code Freeze
Day 7
SIP Acceptance
Testing
Bug Fixing
Day 8
SIP Acceptance
Testing
Bug Fixing
Day 9
Acceptance
Testing
Bug Fixing
Day 10
Snapshot for
Regression Test
Code Freeze
Performance Test on Previous cycle
snapshot, enter bugs for correction
Day 6
Merge SIP
Enhancements
Code Freeze
Day 7
SIP Acceptance
Testing
Bug Fixing
Day 8
SIP Acceptance
Testing
Bug Fixing
Day 9
Acceptance
Testing
Bug Fixing
Day 10
Snapshot for
Regression Test
Code Freeze
Performance Test on Previous cycle
snapshot, enter bugs for correction

Change requests large enough to require a separate branch may take a few days or
weeks. Each enhancement has its own timeline for completion independent of trunk
development lifecycle.


All changes for an enhancement, including data configuration are signed in as a single
changeset
.


Change requests small enough not to require a separate branch are typically bug fixes or
minor enhancements. Example: change format on a data element on a page.

17

Copyright ©
2010
Accenture All Rights Reserved.

System Development
-

Two Week Lifecycle


The lifecycle above represents the main development trunk of the system. Each
enhancement has an independent lifecycle.


During any development cycle, the development manager may elect to not merge code
and skip a cycle to focus on making corrections to trunk.


The performance test is planned to be executed once every other cycle.


Merges are not scheduled during the final two week development cycle before a system
release.

18

Process Benefits


Process significantly reduces wasted labor by concurrent changes
adversely impacting each other on a daily development basis.


Enhancements large enough requiring a branch are isolated
from trunk activity, insulate both the developer and the rest of
the development team.


Process is flexible enough to allow development to be nimble, to
allow “direct change” vs. “queued change” as directed by the
development manager.


Change process using Subversion allows isolation of distinct
changesets

to be rolled back or ported to other ALIP versions.


Development cycle allows queuing of merging disruptive large
enhancements to trunk at discretion of the development manager.


Allows development manager to control trunk stability.


Regression testing before and after makes it easy to identify
defects introduced by the enhancement.


19

Copyright © 2010 Accenture All Rights Reserved.

User Experience

20

Copyright © 2010 Accenture All Rights Reserved.


Internationalization

21

Copyright © 2010 Accenture All Rights Reserved.


Features


Single installation supports multiple
languages


Unicode/UTF
-
8


Same web pages for all languages


Locale tied to each request


Date, Currency formats, Collation


Jurisdictions, Addresses


Tax Calculations


Maintenance by Translators (non
programming)


Batch operations by region



Scalability and Failover

22

Copyright © 2010 Accenture All Rights Reserved.


Clustering


Stateless design


Serializable web session


Supports seamless fail
-
over


Best Practices


No single point of failure


Large
-
grain interfaces


Transfer object design pattern


Always rely on pooling


Security Architecture

23

Copyright © 2010 Accenture All Rights Reserved.


Authentication


Single Sign On (SSO)


Container
-
based authentication (JAAS)


Turnkey


Custom


Authorization


Access Control Lists (ACL)


Group
-
based authorization


Security level accessible by rules


Insurance
-
aware permissions


Non
-
repudiation


Auditing


Version control for rules and questionnaires


Encryption


Transport/Wire (SSL, SFTP)


Password hashing


Data encryption

Integration

Web Services and Integration Mechanisms

24

Copyright © 2010 Accenture All Rights Reserved.


User interface integration


Mashups


Imaging systems


Message Based


Accept XML, transform and communicate


Adapters for standard formats like
ACORD


Flexible transports


Web Services Enabled API


Full API exposed as WS
-
I compliant
services


Expose User Created Rules as Services


Application/Programming Level


Swap out or extend internal components


Many technical options


Open relational database


Provided tools to simplify extracts and
reports


Integration

Open Relational Database

25

Copyright © 2010 Accenture All Rights Reserved.


20+ Logical Schemas


Map to Components


Design Conventions


Normalized


Master/Detail


Named Values for Dynamic


Sequential Keys


Isolated Customizations


Default Data


Lookup Tables


Initial Data


Initial Users/Groups


Sample Rules

Integration

Rules as Web Services

26

Copyright © 2010 Accenture All Rights Reserved.

Integration

Example: ALIP Documentation Wiki

27

Copyright © 2010 Accenture All Rights Reserved.

Integration

From the Traditional to the Modern Approach

28

Copyright © 2010 Accenture All Rights Reserved.

Traditional Approach


ALIP acts as a hub and handles data
transformation internally


Transformations are too complex to do in
configuration, requiring code


ALIP must handle multiple transport types
(SOAP, JMS, Custom)


Some transports like SOAP endpoints are
too complex to handle without generating
code so they are custom.



Modern Approach


ALIP communicates with an ESB using its
own canonical data formats


Custom code no longer needed since
transformation and communication is
externalized to the ESB


ALIP needs only a small number of generic
transports (SOAP, JMS)


ESB Tools can handle transformations
without code.


Integration

ALIP SOA / ESB Strategy

29

Copyright © 2010 Accenture All Rights Reserved.

Scenario
:


ALIP
is a
front
end to
several existing
back end systems


Leverage
process
-
driven
design to
delegate service requests


WebSphere ESB


Hosts mediation layer and
transformations leveraging ALIP
schema.


Allow the customer to manage the
integration layer


Reduce complexity and customization
within ALIP


Use third party transformation tools
(WebSphere Transformation Extender)


Customer chose ACORD as a standard
format within the ESB


ALIP/ACORD mappings maintained as
part of base


Future SOA Related Enhancements

30

Copyright © 2010 Accenture All Rights Reserved.

Continued Path


Continued direction to enable our customers to
leverage third
-
party SOA infrastructure and tools


Expose ALIP data and functionality to encourage
the creation of composite and situational
business applications outside of ALIP


Leverage dynamic rules as a flexible way to
implement services

Example


Joint demonstration with IBM using WebSphere
Process server


Leverage standard BPEL to design an “Agent
Approval” process.


Seamless mix of ALIP services in a larger
process flow.


Shared J2EE platform advantages (transactions,
Java/SCA service bindings)


Augment and embellish with other services
without modifications to ALIP (Email notification).