根据与IRS签署的合同,Taxsoftware.com为它开发了基于计算机软件填报纳税申报单的标准和系统。该系统使用Java客户端软件,并且支持MSJVM,但是微软将无法再提供该组件的功能增强和支持。为了向纳税人提供更多的运行选择,Taxsoftware.com增加了对J# Browser Controls的支持。此基于.NET控件的运行速度要比Microsoft JVM快10倍。
虽然没有人愿意主动缴税,但是基于计算机的填报将会在最大程度上降低纳税过程和加快退税速度。 Taxsoftware.com (前身是Taxsoft)的第一个合同就是与US Internal Revenue Service签订的,为基于计算机软件填报纳税申报单制定标准,目前该公司仍然为IRS开发和维护填报系统,此外还在开发它们自己的在线纳税预备和电子填报软件。
除了为IRS设计在线财务申报表网站,Taxsoftware.com还为美国海军和商务部提供服务。
Taxsoftware.com的软件主要使用Java编写,最初使用WebGain Studio和Microsoft Visual J++。软件设计运行在Sun和Microsoft Java Virtual Machines (JVMs)平台上。到了2003年,微软公布根据与Sun Microsystems公司的法律和解协议,从2004年的1月起它将不再支持JVM。虽然此期限后来又被延长至2007年,但是微软对MSJVM将不再提供改进和支持。
Taxsoftware.com和IRS希望为纳税人提供更多的运行选择。在众多候选技术中,有一个方案脱颖而出,那就是使用Visual J# 和J# Browser Controls。
J# Browser Controls为开发者提供了一种将现有Java applet源代码迁移到Microsoft .NET Framework框架的方式。J# Browser Controls提供了对 Microsoft .NET Framework框架完全访问的能力,包括对Web服务的访问。它还为Visual J#开发者提供在一个基于Web的应用程序中扩展高级功能的能力。
Taxsoftware.com面临的挑战就是如何在低成本的条件下,将软件迁移以使用J# Browser Controls。大约有300,000句Java程序需要重新编译,还有无数的Web页和SQL语句需要修改。该程序最初使用了100位开发者,花费了40个月才完成。并且,IRS网站每个纳税年度只答应6个小时的停机时间。也就意味着要求99.999%的可用性。
有效的自动化
在微软有限的支持和帮助下,两位兼职开发者经过6个月工作,大概是3个人-月,将应用程序进行了迁移。他们的时间主要花费在创建自动化迁移的工具上。
“我们编写了一个称为jabuild.wiz的FrontPage Wizard,将修改Html和重新编译Java语句的工作自动化了,”公司副总裁Mickey Macedo解释说。 “我们使用J#编写该向导,它将会检查所有Visual SourceSafe中的Java语句、HTML和ASP Web页。然后修改哪些Web页,重新编译代码,最后根据Java和J#的要求生产新的JAR,CAB和DLL文件。它同样会增加编译版本号,创建INF,OSD,AssemblyInfo.jsl和其他所需的版本文件。”
“有了该工具,我们能够在一分钟内对一个模块完成迁移。我们绝大多数的开发时间都花在了编写jabuild.wiz向导上。我们还有超过100个的模块需要进行迁移。到目前为止,该自动化过程工作得令人十分满足,无需进行过多的人工干预。”
“J# Browser Controls实际上要比MSJVM好很多。它能够提供10倍的运行速度,而且还更加稳定。”
工作原理
对于用户而言,该过程是相当简单和安全的。为了保证纳税数据的机密性,数据保存用户的计算机上,并且通过加密的SSL通道传输。
“用户使用J# Browser Controls或者MSJVM applets录入信息,”Macedo说道。“数据保存在用户的计算机上。有的用户的纳税申请单可能只有一页,而有的用户可能会长达250,000页。 ”
“有的用户自愿使用Web网站记录,而有的用户被IRS要求必须使用Web网站。目前我们的网站支持大概268种IRS的表格。”
“applets必须能够治理本地的数据。所有的计算都是由 applets自动完成。用户可以使用由applets生成的PDF文档打印纳税申报单,或者存储在本地计算机上。”
“当用户完成纳税申报单之后,数据将通过SSL传输到中心Oracle数据库。之后,中心Oracle数据库将把数据分类,按照不同类型分别存储到IRS不同的数据库中。 IRS数据库拥有多种文件,IRS独有格式、或者XML SOAP服务等。
“部分IRS纳税表格需要纳税人亲笔签字。这些需要亲笔签字的表格或者通过U.S. Postal邮寄或者经过传真、扫描保存到数据库中,然后再通过SOAP封套传递给IRS。”
“在IRS收到纳税表格数据之后,将会产生一个确认消息。 该确认消息可能包括用户在IRS的信息。该信息将通过电子邮件,或者通过加密的网站进行访问。该信息可能包括IRS接受了纳税申报单,或者IRS要求进行某些修正。当然,用户还可以通过网站缴纳税款,也可以通过网站获得任何退税。”