PaydayUSA™ 就业税务计算器和工资单管理器
Windows 8 的就业税务计算和工资单管理应用程序:
平台
该应用程序可以在任何配备 Microsoft Windows 7 或 8 的桌面电脑、笔记本电脑和平板电脑上运行。其直观的语音增强多模态用户界面适用于传统的 PC 鼠标键盘和触摸屏操作。工资记录(如示例演示截图所示)存储在本地数据库中,可以导出到 Microsoft Excel(注意:所有示例数据仅供演示之用,不代表任何真实实体)。
竞赛提交指标/状态
Intel® 应用创新大赛 2013:一等奖入围作品,晋级第二轮(状态:已提交)
- 目标平台:配备 Windows 8 桌面版的平板电脑
- 竞赛类别:金融
应用程序概述
图 D1:应用程序主窗口,示例截图(所有数据仅供参考)
拟议的PaydayUSA™ 税务计算器和工资单整理器 Windows 应用程序(以下简称“应用程序”)是一款财务生产力工具,可用于计算美国就业税和管理工资单,适用于薪资员工(发薪周期从日薪到年薪)以及按小时计费的雇员/合同工。该应用程序适用于运行 Windows 8 桌面版的平板电脑(特别是为生产试点选定的联想® ThinkPad Tablet);它也向后兼容 Windows 7/Vista,并在一定程度上兼容 Windows XP。
问题和机遇的识别
该应用程序旨在降低美国税务准备和工资记录管理相关的复杂性、劳动和文书工作。就业(工资)税计算引擎能够对应美国联邦、州(目前是纽约州)和地方(目前是纽约市和扬克斯)级别的核心税务计算。除了核心就业税计算外,它还计算净工资、雇主缴款、各种汇总值,并提供必备的税务参考数据。
拟议的丰富功能应用程序通过添加本地数据库来存储工资单和税务参考记录,数据导出功能(到 Microsoft Excel 和电子税务表格),增强的分析/图表引擎,打印支票模块以及包含企业税务参考数据的税务日历,扩展了现有在线纽约工资税计算器 2013 [1] 的功能和用户界面。应用程序可以进一步扩展在线税务支付选项,但这需要获得相关税务机关的批准。
应用程序的技术优势和更广泛的影响
通过实施与税务/工资计算和申报相关的有效电子文档处理,实现了显著的文书/劳动量减少。新颖的无边框 WPF 窗口结合语音增强的多模态用户界面(MMUI)和外部 HID,将大大改善用户体验。完全独立的离线运行模式将提高应用程序的移动性/灵活性和潜在用例。拟议的解决方案可以通过添加对应于美国其他州以及潜在地其他国家税务法律的计算模块和参考数据来进一步扩展。
预期用途和目标受众
拟议的财务应用程序主要供在美国纽约州开展业务的中小型企业使用。一句话来说,这个应用程序就是“小企业帮助其他小企业”。私人会计师事务所/注册会计师、教育和研究机构以及政府机构也可以使用它。以下表格 1/2 列出了版本/功能矩阵和预期的最常见用例(*注意:企业版是可选的;其实施取决于相应政府机构的批准)。
表 1:应用程序版本/功能矩阵
版本 特点 注意 Lite 仅屏幕显示单员工工资税、雇主缴款和净工资计算,无数据导出/保存功能 免费 标准版 与“Lite”版相同,增加了数据导出/本地存储功能 商业 Pro 多员工工资税、雇主缴款和净工资计算,带工资记录导出、本地数据存储和操作 商业 Ultimate 与“Pro”版相同,外加扩展的计算/参考数据和图表/分析引擎 商业 Enterprise 扩展了 Ultimate 版的功能,支持在多用户环境的企业内网进行数据文件共享/同步,以及安全的在线工资税支付功能(需要相应政府机构的 API/程序批准) *可选
表 2:潜在用户和最常见用例
用户 版本 用法 商用版 所有版本 进行联邦/纽约州/地方税计算/分析的企业实体 CPA Ultimate 从事联邦/纽约州/地方税务准备的注册会计师/会计师事务所 研究 Ultimate 对美国商业税务体系进行研究和分析 Edu Ultimate 实践学习美国商业税务体系 Gov Ultimate 从事商业税务问题的联邦/纽约州/地方政府机构
开发方法
- 从技术角度来看,开发方法遵循关注点分离的核心原则,即:所有布局和美学增强通过 WPF/XAML 实现;数据内容存储在通过 .NET 中的相应数据访问库操作的参考(只读)和用户(读写)数据库中;算法部分将作为托管代码实现,编译为 .NET 程序集。拟议的应用程序将利用平板电脑的新颖硬件功能(多点触控屏幕、数字笔支持、多媒体功能)以及 Windows 8 操作系统、.NET/WPF 框架和语音技术(TTS)的多模态用户界面(MMUI)能力。
- 从项目管理角度来看,开发策略将基于最大程度地重用现有计算引擎(即变更管理和集成阶段),以及完全重新设计用户界面(UI)和输入输出(I/O)操作,对应于 FLCD/TDD 项目管理方法论,以及基于内部(alpha)和社区(beta)测试的用户验收测试(UAT)方法。
- 将要使用的开发工具包括 Microsoft Visual Studio 2012 for Desktop(核心开发)和辅助工具:SQL Server Management Studio,各种 Microsoft Office 应用程序和图像/视频编辑软件。
- 拟议应用程序已彻底解决安全/隐私问题。用户工资数据可以本地存储在加密数据库中,并设有密码保护。核心操作不需要互联网连接,从而显著降低了与在线操作相关的风险。
编码语言、框架和工具
应用程序的托管代码库将使用 C# 语言和 .NET 框架/WPF 开发。基于文件的 Microsoft Access 和 Microsoft SQL Server Compact edition (SQL CE) 上的数据库操作将使用 SQL/T-SQL 编码。数据导出操作将利用 Microsoft Office 对象库和(可选)开源库。
关于作者
作者(Alexander Bell 博士)在美国拥有丰富的财务应用程序开发经验,在纽约市经营咨询业务近二十年,并为包括摩根大通、法国兴业银行、Marsh & McLennan Companies Inc、多家对冲基金和私募股权公司在内的主要金融机构提供咨询服务。他目前正在进行“降低税务复杂性”倡议,并将拟议的应用程序视为概念验证、试验场和未来开发的平台。 Bell 博士是节能环保技术的坚定支持者和推广者;他的公司已对其所有内部数据/文档处理实施了无纸化技术。Alexander 是 Win/Web 资深开发者,积极参与 Codeproject 数字生活(拥有“Legend”称号)和其他社交/专业网络。在其职业职责之外,他致力于古典音乐和艺术、数字摄影和网络电视。
竞赛指标(第一轮和第二轮)
创新和用户体验
- 独特计算引擎,适应美国联邦、州和地方三个政府层级的税务法律
- 独特的专有工资税参考数据库和分析(2005-2013 年)
- 利用平板电脑多点触控功能的新颖多模态用户界面(MMUI)
- 通过 TTS 进行 MMUI 语音增强(上下文相关语音消息)
- 新颖的无边框 WPF 窗口,带有独特的尺寸调整解决方案
- 完全自主的移动操作,使财务/税务专业人士能够更好地利用通勤时间,特别是使用公共交通且无需互联网连接
使用平板电脑的关键技术赋能向量
- 适用于平板电脑的多点触控用户界面,利用最常见的手势(点击、长按等),对应于主要操作、屏幕之间的导航和功能区域。
- 通过 TTS 提供给用户的语音反馈,实现错误、指导和通知消息
- 由多点触控屏幕和语音命令控制的美观 WPF 无边框窗口
- 利用平板电脑的高屏幕分辨率,在应用程序窗口中实现高数据密度/功能聚合
- 使用外部 HID(如可拆卸键盘/鼠标、手写笔或数字笔)改善用户体验
应用程序在金融类别中的可行性和重要性
在美国,特别是纽约州的商业税务/工资计算是一个相当复杂的操作[2...5],这给在该领域开展业务的企业带来了沉重的负担。任何旨在提高生产力/降低该业务领域复杂性的高效/可负担的解决方案,都可能产生巨大的社会经济效益。拟议的提交想法概述了工资(也称为就业)税计算器的关键概念,该计算器将作为一种高效的财务生产力工具,供纽约州广泛的当前/潜在用户使用,包括但不限于:私营企业、会计师事务所、研究机构和政府机构。基于现有网络应用程序 [1] 的受欢迎程度(自推出以来已为超过 100,000 名独立访客提供服务,在 Google 上排名 Top-3),拟议版本的应用程序具有扩展功能,适用于移动平板电脑且价格合理,有望成为 COTS 金融生产力工具的一个有价值的补充。
描述清晰度、范围和实施细节覆盖
拟议应用程序基于许多创新的想法、概念和实践经验,包括作者在其他 Win/Web 应用程序中已经实现的一些,特别是广受欢迎的在线工资税计算器 [1] 和屡获殊荣的工程计算器 Volta-814D [10] 和 Edumatter M-12 [12]。作者引入的其中一些想法和经验已在 Codeplex [13] 以及其他技术出版物 [4...8] 中讨论过。本文正文中提供了对未曾讨论过的其他提交想法的详细描述,以及潜在的程序任务/挑战/解决方案的部分列表(参见“背景”和“关注点”部分)。
市场前景
市场前景基于潜在用户群的估算、拟议应用程序的重要性及其竞争优势。
演示应用性能
本节稍后完成。
背景
现有网络应用程序
拟议应用程序由作者开发的独特专有税务计算引擎(代号“PayDay NY™”)提供支持,自 2005 年以来一直用于其咨询业务。一个简化的版本,适用于最常见的通用公司,“C”子章节 [3...5] 的税法,已实现为 Web SPA [1],并免费向公众提供(参见图 1 中的示例截图;点击图像打开网页)。目前,该网页每月产生约 3,000 次独立访问的网络流量,自推出以来已服务超过 100,000 名独立用户。
图 1:2013 年纽约工资税计算器,以 Web 应用程序(SPA)的形式实现
现有应用程序允许员工/雇主在联邦、州和地方级别进行工资税计算,包括:员工联邦医疗保险税、员工联邦社会保障税、员工联邦所得税预扣、纽约州所得税预扣、地方(纽约市或扬克斯)员工所得税预扣、雇主缴款(FICA 税)、工资单和税务摘要。图 1 中的示例快照显示了多个数据项,包括与在线 SPA 相关的用户输入、参考和计算字段。
除了上述核心计算外,该计算器还提供大量指标、汇总值和税务参考数据,对应于通常按年薪支付的薪资员工(俗称 W-2)或通常按小时支付的员工/合同工(通常是 1099 表格)。作为比较的基础,另一个现有的在线 IRS 预扣税计算器 [2] 实现为一个相当复杂的“向导式”多页 Web 应用程序,不包括州或地方工资税计算。相反,作者开发的 Web 应用程序 [1] 是一个便捷的单页解决方案(SPA),可提供所有三个级别(联邦、纽约州、地方)的工资税计算;它在商业界非常受欢迎,目前在 Google 上排名 Top3(对应搜索查询:“NY Payroll Tax Calculator 2013”)。此外,还有许多其他在线工资税计算器,但它们需要实时互联网连接,并且(通常)使用远程数据存储,这极大地限制了适用性并引发了某些隐私担忧。
拟议的平板电脑应用程序
拟议解决方案将实现为独立的 Windows 8 应用程序,能够完全自主运行。其核心操作不需要实时互联网连接,并允许用户数据存储在本地数据库中,从而妥善解决了隐私安全/担忧问题。拟议应用程序将增加扩展的计算功能和数据操作集,部分列出如下:
- 员工联邦医疗保险税
- 员工联邦社会保障税
- 员工联邦所得税预扣
- 纽约州所得税预扣
- 地方(纽约市或扬克斯)员工所得税预扣
- 雇主缴款(FICA 税)
- 净工资(工资单摘要)
- 员工税务摘要
- 雇主税务摘要
- 雇主税务日历
- 税务参考数据,包括邮寄说明/标签
- 商业支票打印软件
- 税务/工资记录数据管理模块
- 数据导出功能到 Microsoft Office 应用程序和税务表格
- 工资税分析和数据可视化模块
- (可选)在线就业税支付功能
- (可选)在线季度税务报告申报功能
图 2 显示了拟议的平板电脑应用程序的简化架构图(注意:可选的企业版可能需要互联网连接才能向联邦/州政府机构进行安全的在线税务支付)。
图 2:拟议的平板电脑版本应用程序的简化架构图
高移动性
拟议应用程序能够在平板电脑上完全自主运行的高移动性,为其基于 Web 的对应物带来了巨大的竞争优势。拟议的应用程序将允许用户更好地利用他们的通勤时间(特别是对于数百万使用公共交通的纽约人来说很重要),增加许多移动应用程序典型的“更轻松/压力更小”的用例。
新颖的用户界面
如上所述,为了改善用户体验,拟议的应用程序将实施利用平板电脑新颖功能的新颖多模态用户界面(MMUI)。MMUI 的核心设计原则如下。
- 与标准 Windows 桌面类型 GUI 操作兼容,通过鼠标/键盘操作
- 适用于平板电脑的多点触控用户界面扩展,利用最常见的手势,对应于主要操作、学习/指导模式、屏幕之间的导航和功能区域。
- 通过 TTS 提供给用户的语音反馈,实现错误、指导和通知消息
- 数字笔(可选)功能,对应于标准手势,以及数据输入功能
拟议的用户体验增强结合独特的功能集,将产生一个高效的财务生产力工具,与同类其他应用程序相比具有很强的竞争力。它具有良好的市场前景。
外部 HID 的好处
拟议的平板电脑应用程序可以极大地受益于外部输入设备,特别是:可拆卸键盘和数字笔。添加此类 HID 将大大提高这个本质上以数据为中心且进行数字运算的财务生产力工具的整体用户体验。
商业智能层
独特的专有税务计算引擎最初是用 VB/VBA 开发的,近十年前,然后迁移到 .NET 框架,并用 C# 重写。目前它已在在线版本 [1] 中实现,并计划用于平板电脑版本。
数据层
数据层由参考数据库和用户数据库组成(出于安全/隐私目的,两者都可以存储在用户 PC 本地,以加密模式包含信息)。第一个包含从 2005 年至今的税务表和其他相关税务数据。用户数据库(目前正在开发中)应包含基本的税务相关信息(如 TIN、EIN、SSN 等,通常在 IRS 表格 W-9 中反映),以及一个或多个员工的税务支付记录(取决于版本)。
税务日历和参考数据
税务日历模块将添加到拟议的应用程序中,为企业主/首席财务官/人力资源提供有价值的参考信息,了解他们的就业税务义务和时间安排,特别是关于联邦/州级别的企业税务申报,对应表格 941、NYS-45、940 等 [3, 16-19]。
进一步扩展
拟议的平板电脑应用程序的功能可以通过添加对应于美国其他州商业税法的更多参考数据来进一步扩展,并且可以轻松更新以供后续年份使用(一旦 IRS 和州/地方政府机构发布相应的税务文件 [3...5])。额外功能可能包括电子税务表格(如 941 [16] 和 NYS-45 [17])的 API,以及在线工资税支付选项。
以前在 [15] 中描述过的“道路和驾驶模式分析器”模块(可选)可以添加到应用程序中,帮助企业/税务专业人士更好地组织/利用他们的通勤时间(这需要配备 GPS 的平板电脑)。
使用代码
注意:随着项目的进展,本节将持续更新。
清单 1 中所示的代码片段用于自定义“数字”WPF 文本框,使其只能接受与内容相关的字符(在拟议应用程序的上下文中是金额)。它通过用户每次击键触发的预emptive 输入验证来工作。结合在 TextBox.LostFocus 事件(未显示)上触发的第二个验证代码块,它提供了可靠且用户友好的输入验证机制。
清单 1. WPF 数字文本框用于金额
#region Dollar Amount numeric TextBox
textBoxAmount.PreviewKeyDown += (s, e) =>
{
// intercept modifier "SHIFT" key
if (Keyboard.IsKeyDown(Key.LeftShift) ||
Keyboard.IsKeyDown(Key.RightShift))
{
e.Handled = true;
}
// cast e.Key to int
int _intKey = (int)e.Key;
// allow the following key
if (e.Key == Key.Back ||
e.Key == Key.Delete ||
e.Key == Key.Enter ||
e.Key == Key.Return ||
e.Key == Key.Tab ||
e.Key == Key.OemPeriod ||
e.Key == Key.OemComma ||
e.Key == Key.Decimal ||
e.Key == Key.Left ||
e.Key == Key.Right ||
(_intKey <= 43 && _intKey >= 34) ||
(_intKey <= 84 && _intKey >= 73)) return;
else e.Handled = true;
};
#endregion
值得注意的是,金额文本框不允许出现负号,尽管它通常可以被更通用的文本框实现用于数字输入。
关注点
编程挑战
存在几个潜在的编程挑战,对应于部分列出的任务。
- 无边框 WPF 窗口,带自定义控件框(见图 3 中的示例截图)
- 多点触控操作和语音消息
- 在具有各种用户账户控制设置的客户端平板电脑上进行可靠的输入输出(I/O)操作
- 已数字签名并配置的安装程序模块
- 产品许可证控制机制,包括通过互联网进行密钥验证和激活
- 工资支票打印模块,包含金额转文本转换器(附加弹出式无边框窗口)
- 直观有效的语音消息集(错误消息、通知/说明通过 TTS)[6,8,9]
- 高效的图表和分析模块(将在高端版本中实现)
无边框 WPF 窗口
无边框窗口,如图 3 所示,具有更好的美学吸引力并增强了整体用户界面,但它们也带来了一些编程挑战。“无边框效果”可以通过 XAML 轻松实现,但需要一些编码才能使窗口可移动/可调整大小(请注意,新颖的窗口控件框具有额外的调整大小选项)。进一步的美学增强可以通过使窗口半透明来实现(这对应于不透明度级别的设置)。平板电脑提供了通过添加多点触控和语音控制的尺寸调整功能来改善用户体验的出色机会。
图 3:通过 .NET/WPF 实现的无边框应用程序窗口(所有数据显示仅供演示之用)
PayDay NY 小型企业:早期应用程序版本
第一个版本的税务计算器以“PayDay NY Small Biz”为代号发布,封装在单个 Microsoft Access (2003) 文件中,包含大量 SQL 和 VB 6.0 [13](值得一提的是,该应用程序仍在 MS Office 2010 中运行)。
下面是“打印支票”模块的示例截图(见图 5),该模块实现为一个“工业级”自定义表单,采用当时常见的战舰灰色调色板。请注意支票导出功能,允许动态生成的内容(基于所选支票纸的模板文件)导出到并从 MS Word 文档打印。
图 4:早期应用程序中的“打印支票”模块:战舰灰色调色板(所有数据仅供演示之用)
新颖的支票打印模块:WPF 风格
拟议解决方案实现了具有与 WPF/XAML 风格的无边框窗口(见图 6)类似功能的“PrintCheck”表单。该解决方案实现了上述的用户界面语音增强:注意“播放”和“停止”TTS 控件按钮,为用户提供语音指令(拟议应用程序还实现了上下文相关的语音通知功能)。
图 5:“打印支票”模块,带语音消息,第一原型)
该模块已在应用程序中实现,并且也可以作为独立的财务生产力应用程序使用,具有其自身的价值(类似的 COTS 应用程序定价从 15 美元起)。
图 6:“打印支票”模块,带语音消息,最终演示版本
降低商业税务复杂性倡议
美国的就业税(也称为“工资税”,属于一般商业税)及其相关的计算方法,特别是在纽约州,相当复杂。例如,请参考图 1 可视化 2013 年纽约州预扣税表 [5],这只是应用程序中包含的众多表格之一。
作者花费了大量的时间和精力,通过开发一种可负担且用户友好的 IT 解决方案来解决这样一个复杂的问题,以减轻在他自己经营的纽约州的企业所承担的就业税计算和工资管理负担。如上所述,当前的在线工资税计算器 [1] 每年为成千上万的独立用户提供服务。拟议的基于平板电脑的应用程序有望成为此类财务生产力工具的一个有价值的补充。
与此同时,基于他在构建财务应用程序/信息系统方面的丰富经验,作者正在进行与他自己的州和市(即“大苹果”)相关的“降低税务复杂性”倡议,一旦成功,将显著降低在纽约州经营企业的复杂性和成本。同样的方法也适用于其他美国州。
图 1:2013 年年纽约州预扣税率表 [5]
历史
- 2002 年作者开发的并发布的多个语音控制和语音增强的工程及办公应用程序 [5...8]
- 2004 年:开发了就业税计算引擎(VB 6.0)
- 2005 年:发布了 PayDay NY 税务计算器的第一个版本:整个应用程序封装在一个 Microsoft Access 文件中
- 2006 年:添加了打印支票模块,包含自动化的金额转文本转换器(VB 6.0)
- 2007 年:为“PayDay”应用程序添加了导出到 Microsoft Excel 的输入输出(I/O)功能
- 2008 年“PayDay”应用程序已发布 [13]
- 2010 年:使用 C#/.NET 更新了就业税计算引擎
- 2011 年:发布了纽约工资税计算器 Web 应用程序的生产试点 [1]
- 2012 年:通过 HTML5/CSS3 和 jQuery 改进了页面布局和应用程序响应能力 [1]
- 2012 年:计算器 Volta-2013 [11, 12] 赢得了应用程序提交竞赛(Codeproject, 2012)
- 2013 年 5 月:发布了无边框 WPF 应用程序 Volta-814D [10]
- 2013 年 8 月 2 日:当前文章提交给竞赛(平板电脑,金融)
- 2013 年 11 月 12 日:提交了最终应用程序演示包给第二轮 AIC-2013
- 2015 年 1 月:发布了 Win 7/8 的工资管理软件 PaydayNY-2015
参考文献
- 在线就业税/工资计算器 2010-2015
- IRS 预扣税计算器
- 企业税务信息
- IRS Pub 15(E 通告),雇主税务指南
- 纽约州预扣税表和方法
- 联邦季度雇主税申报表
- 季度合并预扣、工资申报和失业保险申报表
- 联邦雇主年度失业(FUTA)税申报表
- 纽约州劳工部,失业保险
缩略语和首字母缩略词
- ALS 环境光传感器
- ASR 自动语音识别
- BI 商业智能
- CFO 首席财务官
- CPA 注册会计师
- COTS 商品化成品
- EIN 雇主识别号
- FICA 联邦保险缴款法案
- FUTA 联邦失业税法案
- FLCD 全生命周期开发
- HR 人力资源(部门)
- I/O 输入/输出操作
- IS 信息系统
- IRS 美国国家税务局
- MMUI 多模态用户界面(多点触控,语音增强)
- NYS 纽约州
- NYC 纽约市
- PE 私募股权
- PM 项目管理
- PMO 项目管理办公室
- SPA 单页应用程序
- SQL CE SQL Compact Edition
- SSN 社会安全号码
- SUTA 州失业税法案
- TIN 税号
- TDD 测试驱动开发
- TTS 文本转语音
- UAT 用户验收测试
- UI 用户界面
- UX 用户体验
- VI 虚拟仪器
- WPF Windows Presentation Foundation
- XAML 可扩展应用程序标记语言