XML Facilitated Web Pattern Development at
New York State Taxation and Finance
James Lieb, Director – Common Services and Case Management NYS Department of Taxation and Finance
XML Facilitated Web Pattern Development at New York State Taxation and Finance
A I X JAVA BC BC BC BC BC Component Repository Web Applications (WebSphere ) DTF Users e-MPIRE Web Portal (e-MPIRE Framework ) TAX PREPARERS On -line Tax Center (Web Portal) (WebSphere Commerce ) 2 2 Data
Mapping EngineRules StorageData Excep-tions
Business Processes BO (FFA, WID) JAVA (RAD) (DB2 V9)XML (WPS)HTM SCA, BPEL CISS
WEB SERVICES (WebSphere Business Business Monitoring Monitor) CTG M A I N F R A M E CICS Transactions COBOL BC BC BC BC BC Component Repository
TAXPAYERS DTF Users DTF Users
eforms, Call Manager, and IVR
T R A N S A C T I O N A L
Business Modernization Overview
• JAVA Business Components • Business Processes
– Data Mapping - BO
– Data Storage - XML
– Rules Engine - Java
– Exceptions - WPS • CICS Transactions • Paper Input • Business Monitoring • Internal/External Web
• eforms, Call Manager (VOIP), and IVR
Integrated Tax Systems to Integrated Tax Services
Integrated Tax Systems to Integrated Tax Services
Integrated Tax System
Common Services
Returns Processing Accounting
Taxpayer Identification Compliance
Return Processing Taxpayer Registration Taxpayer Accounting Discovery Remmittance Processing Request Processing Fraud Detection Exception Resolution Overpayment Processing Revenue Accounting Obligation Maintenance and Licensing Audit Collections Appeals Workflow Security ExchangeData
Rules Management C om m o n D a ta b as e Leveraged Assets Content Management Management Reporting 3 Leveraged Assets Integrated Tax Services
Returns Processing Accounting
Taxpayer Identification Compliance
Return Processing Taxpayer Registration Taxpayer Accounting Discovery Remmittance Processing Request Processing Fraud Detection Exception Resolution Overpayment Processing Revenue Accounting Obligation Maintenance and Licensing Audit Collections Appeals Workflow Security Data Exchange Rules Management C o m m o n D a ta b as e Content Management Management Reporting Service R epository eForms
For our Modernization we started with COTS solutions as a starting point but ..
Instead evolved into an SOA solution that leveraged existing assets and was more open to
integrating industry standard products for common services.
XML Facilitated Web Pattern Development at New York State Taxation and Finance
Returns Processing Summary
Returns Processing Summary
Operational XML
Operational XML
Next Generation DB Design
Next Generation DB Design
<filing><form formid = ‘IT201’> <wages>134</wages> <date>11/23/05</date> </form>
<form formid = ‘W2’> <wages>278</wages> <jointTP>Yes</jointTP> </form>
</filing>
col1 col2 col3 col4 col5 … col1000
134 NULL 11/23/05 NULL NULL … NULL
NULL 276 NULL NULL Yes … NULL
12 NULL NULL 99.99 NULL … NULL
NULL NULL NULL 123.23 NULL … No
It-201 W2 It-150
Relational Table by Form • 3600 tables required
• Difficult to get filing context • Made Rules engine, display difficult • Much IO
Generalized Relational Table • Needed DB to translate fields • Sparsely populated • Performance issues • Rules engine limitations
XML Solution • Business object based (the audit folder) • Keeps business context
• Robust rules processing • Can leverage XML tooling
XML’s Transformation
Technological Convergence changes view of XML
Traditional
Strategic
Usage Patterns
• Data sharing• Data transfer
• Transactions • Execution format • Persistence protocol
Technologies
• Parsers (SAX, DOM) • Web Services (WSDL)• XQuery, XPath • DOM/SDO
• XML/Relational DBMS • eForms
• AJAX, REST, RIA, Atom
Business Issue Resolved
• Simplified Collaboration • Expanded channels • Enabled partners • Customer empowerment • Faster solution delivery5
XML Facilitated Web Pattern Development at New York State Taxation and Finance
Layers of Transactional XML Domain Model
• Exceptions
– Quality or Condition of Data – Auto Routing
– Customer Service
• History
– What, Why and Who of all Changes
– Auditability
– Exception Resolution
• All relevant data in one place
– Less I/O – Data Integrity
Transactional XML: Computations
7 Correcting Information during processing
• Math errors • Credit claims • Fraud
Attribute based solution
<Wages Captured=“xxx”, Computed=“xxx”, ComputedReason=“xxxx” />
Tag based solution
<Wages “xxx”/>
<WagesComputed “xxx”/> <WagesComputedReason “xxxx” />
Attribute based advantages • Reduce tags
• More efficient processing map • Reduced DB storage
• Easier integration with Rules Engine
XML Facilitated Web Pattern Development at New York State Taxation and Finance
Transactional XML: Exceptions
Describing a document that has some processing issues • Critical processing issues
• Informational issues
• Mechanism for getting work stopped/reviewed/corrected
Exception Segments <filing> <taxpayer> </taxpayer> <forms> <w2 id=“512”> </w2> </forms> <exceptionsSeg>
<exception issue=“xxx”, severity=1/> <exception issue=“yyy”, severity=0/> </exceptionSeg>
</filing>
Exception Segment advantages • State persisted with business object • Facilitates exception handling
• UI
• Process routing
Transactional XML: History
9 History Segments <filing> <taxpayer> </taxpayer> <forms > <w2 id=“512”, efctvDate=“2009-06-29”> </w2> <w2 id=“512, efctvDate=“2009-01-16”> </w2> </forms> </filing>History Segment advantages • All changes within the business object
• Maps to the Audit Folder • Facilitates return adjustments • Works with rules engine
• Easy to compare forms and filings by date • Facilitates off line use
XML Facilitated Web Pattern Development at New York State Taxation and Finance
OR Tools/Frameworks
Mapping Info
Processing Model –Object Classes Relational DB
XML Execution Model - Traditional
XML
Processing Model - DOM/SDO Object-Relational XML DB
XML Execution Model - Strategic
XML Mapping
11Model Benefits
• Easy to process • Easy to persist • Easy to query • Easy to shareXML Facilitated Web Pattern Development at New York State Taxation and Finance
Facilitating Business Alignment
Sharing the same Business defined business object (XML)
Eliminates Technical Abstraction. All processes, functions and reports “configured” in user’s
terms. The same core Business Object Is leveraged by all of the system
Development Enablement
Establishing Patterns
External Channels Processing
13
XML Facilitated Web Pattern Development at New York State Taxation and Finance
Web Development challenges
•
Develop quicker
•
Reuse “segments” of web apps
•
Consistent features (print, return to application)
•
Consistently defined navigation patterns
A series of form based UI objects that create a
transaction for processing.
<transaction> <form formid = “a’> <field1>134</field1> <field2>abc</field21> </form> <exceptions> <context>a</context> <errNbr>17</errNbr> </exception> </transaction>
Then each of these “forms” can be designed exactly the same
way….
A Form has a UI object has a object enforcing form
rules
has an XML segment in the transaction XML
In this way pages can be coded separately and following
the same pattern and integrated into a web application.
What is a Web Application?
15
XML Facilitated Web Pattern Development at New York State Taxation and Finance
Web Navigation Pattern
Web Navigation highlights
• All pages coded exactly the same • Single XML table allows restart
• Navigation patterns enforced (Wizard, conditional, etc.) • Process server allows for externalization of navigation • Common error handling
17
XML Facilitated Web Pattern Development at New York State Taxation and Finance
Web Service Pattern
Web Service Process highlights
• Same pattern serves all web services • Leverages same rules as web
Paper Process Pattern
Paper Process highlights
• Same pattern serves all paper processes • Leverages the same form Interfaces • Leverages same XML database • Leverages same rules as web
• Has built in capabilities to have different acceptance rules for paper
19
XML Facilitated Web Pattern Development at New York State Taxation and Finance
<USAddress> – <Address>
<AddressLine1>PO BOX 228</AddressLine1> <City>SCHENECTADY</City>
<State>NY</State> <ZIPCode>123080000</ZIPCode> </USAddress> – </Address> </USAddress> </StateOfIncorporation> <HdrCode> – <FederalReturnFiledOther>String</FederalReturnFiledOther> <FilerClassificationCode>AA3</FilerClassificationCode> <FormType>CT5</FormType> <ReturnTypeCode>CT5</ReturnTypeCode> <SoftwareDeveloper> <DeveloperName>
<BusinessNameLine1>Sunrise Investments Inc</BusinessNameLine1> <BusinessNameLine2>A A</BusinessNameLine2>
XML within CM
XML within CM
Receive XML from the IRS and show the document in the form (integrated with our EDMS)
• user view is independent of channel! • all data received is stored in one table • form can be used as input and for correction • PureXML solution uses advanced indexing
XML Indexing
XML indexing highlights
• Allows for a many to one indexing scheme • Index fields can be added on fly • Supports optional index
21
XML Facilitated Web Pattern Development at New York State Taxation and Finance
e-MPIRE R3 Returns Processing
e-MPIRE R3 Returns Processing
So u rce File (s ) M a p p in g Pre -Pro ce sso r
DEM M a p p in g
DEM Ta rg e t
Da ta File Co m b in e d File rsSo rt / Sp lit Da ta File sTa rg e t Cre a te /Up d a te L PTI Va lid a te
Exce p tio n s So rt Ta rg e t Da ta
File (s ) Da ta File sTa rg e t L o a d Re tu rn s to TERETURN Re trie ve Fo rm Da ta ( For RP a nd TA ) Re tu rn Va lid a tio n & Co m p u ta tio n TA Exce p tio n s P ro c e ss D a ta R e c o ve ry So u rce File (s )
File- level edits; Br eak file into ‘pieces’ (par ent / child) ; Som e custom developm ent
Pro ce ss Se rve r Co n tro l M a p p in g
WID To o l
DEM DEM
Tm p
JAVA / AIX JAVA / AIX
Tra n sla tio n XM L OR Exce p tio n s Bu sin e ss Co m p o n e n ts (fro m a n y o f th e se p ro ce sse s ) If n e e d e d 4 0 0 B Re ve n u e Acco u n tin g Bu sin e ss Co m p o n e n t( s)
TI Drive r L ia b ility Pe rio d Bu sin e ss Co m p o n e n ts
Oth e r Bu sin e ss Co m p o n e n ts
XM L OR
M u ltip le In sta n ce s o f Th e se Pro ce sse s Wo u ld Be Utilize d To En h a n ce Pe rfo rm a n ce M u ltip le In sta n ce s o f Th e se Pro ce sse s Wo u ld Be Utilize d To En h a n ce Pe rfo rm a n ce 4 1 0 B JAVA Ru le s En g in e JAVA / AIX Exce p tio n s Bu sin e ss Co m p o n e n ts (fro m a n y o f th e se p ro ce sse s ) If needed Filin g Va lid ity Bu sin e ss Co m p o n e n ts TI Drive r C r e a te T A Q u e u e TERETURN (M a in fra m e ) XM L / VIPER (AIX ) Sto re d a ta o n o r o ff p la tfo rm ? OR OR Leverages source – target mapping in one
COBOL step
Common taxpayer validation routine which reconciles taxpayers and output common DB structure
Third batch program which processes form rules Flat File Adapter
and WID WebSphere MQ to back-end systems SCA async invoke (uses SIBUS) Microflow Transaction boundary, two-phase commit
WebSphere Process Server Microflow
DB2 V9 pureXML Persist CICS Invoke CICS Tx 1 Invoke CICS Tx 2 CICS
Transaction1 Transaction2CICS
CICS TransactionX
Invoke CICS Tx X
JCA Connector (AIX) CICS Transaction Gateway 6.1
23
XML Facilitated Web Pattern Development at New York State Taxation and Finance
NY State Tax SOA Processing
• PIT (Personal Income Tax)– 11M returns processed – Peak in April: 390,000+ per day
– Up to 14,500 different data elements for the filings (60% Electronic) – 6M Refunds ($4.9 B), direct deposit up 13.1%, checks down 6% – Electronic extensions up 160% (439,000)
• Corporate Tax
– IRS ELF Program – 2007 - 32,317, 2008 -193,977 – Peak month: 100,000 returns in April 2009 – Peak day: 20,000 returns
• Sales Tax
– 1Q2009 : 60,000 on the Web – 1Q2009 : 400,000 from partners
• Withholdings Tax
– 50,000 web filings of XML
• STAR Property Tax Rebate Application
(Tax Refund)
What
What
’
’
s next?
s next?
•
Convert other Subsystems (Domains) to XML
–
Simplify conversion
–
Map data structures closer to the business
–
Leverage the rules engine
•
Expand the use of web navigation with integration
into operational XML
•
Incorporate more XML enabled tools to speed
delivery and improve product
•
Leverage the XML data in new ways (AJAX, REST,
RIA)
25
XML Facilitated Web Pattern Development at New York State Taxation and Finance