.NET中计费/发票软件设计的最佳实践

5
我目前正在一项项目中工作,需要为我们公司的新项目设计/实施计费/发票系统。我们将每月生成PDF文件的发票,并向客户发送文件链接。
使用的框架将是.Net 3.5 / C#。由于我没有很多从零开始做这个的经验,所以想知道从软件角度考虑这方面的最佳实践是什么,特别是针对这种类型应用程序的实践?
我意识到这个问题可能相当主观,但我正在寻找考虑到具体细节的指南 - 特别是那些通常会被忽视或不明显的细节。
6个回答

3
保持安全!确保用户可以通过密码保护的HTTPS连接获取信息!让用户选择自己的密码。请谨慎处理计费/发票信息,因为这被认为是非常敏感的。因此,要准备好有人会尝试入侵该系统。会有人试图滥用发票系统,所以一个重要的事情是:安全性!
一些公司因为黑客入侵其系统而不得不支付赔偿金而破产!
从编写多层设计开始,其中应涉及多个物理服务器。一个数据库服务器用于存储客户发票/计费数据。一个中间业务服务器用于存储您的业务逻辑。以及一个Web服务器,只能与业务层进行通信,不能与后台数据库通信!如果可能,请将数据库保留在不同的网络中。最好是没有通向外部世界的网关的网络。

3
请勿发送金额为$0.00的发票,我很讨厌这样做。;)

1
你是在实现账单/发票系统本身,还是只实现了生成pdf并发送链接的部分?如果是前者,你需要提供具体的需求以便获得指导。如果是后者,可以考虑使用SSRS。

好的,这是前者。实际给我的要求基本上就是我写的那样,所以我在这个问题上比我喜欢的更盲目一点 - 但是我正在努力获得更好的要求 - 一旦我得到它们,我会根据需要更新我的问题。谢谢! - Streklin
此时,我更担心的是获得准确的需求,而不是具体的实现问题。一旦您有了起点需求列表,就可以评估工作范围,并决定是否更具成本效益地购买COTS产品。尝试发现角色(例如,AccountsReceivable,Customer,SysAdmin)以及您需要支持的用途。并尝试清楚地区分功能需求(例如,客户查看账单)和非功能需求(例如,应用程序编写在.NET 3.5上)。 - pfries

1

除非你的公司非常小或者你有一个非常独特/利基的业务,否则最好考虑购买第三方的计费/发票系统,并根据需要进行定制,这样会少很多麻烦。

商业产品在长期拥有成本方面可能会更低,并且他们已经考虑了所有安全问题并进行了大量的数字测试,这可以节省很多错误带来的成本。另外一个额外的好处是,它们具有行业标准接口,可以将您的计费/发票系统与您的会计系统、CRM等链接起来。如果你自己编写,你就必须自己解决所有这些问题。


0
考虑使用SSRS或其他报告工具来创建和发送PDF文件给您的客户。

0

与您的会计软件进行接口,让它完成大部分(如果不是全部)工作。在我们完成账单和发票的两个项目中,成功的那个项目投入了数年的开发工作;另一个项目虽然能够正常运行,但维护起来非常困难。

如果您仍然选择全部自主完成,单元测试(特别是回归测试)至关重要。您必须确保任何修复都不会破坏其他功能。通过这些测试,拥有一个非常庞大的测试基础是明智的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接