首页 » 程序员必读之软件架构 » 程序员必读之软件架构全文在线阅读

《程序员必读之软件架构》非功能需求

关灯直达底部

以下是新的风险系统的非功能需求。

性能

  • 新加坡在每个业务日的当地时间上午9点开市,风险报表必须在此前生成。

可伸缩性

  • 系统必须有能力处理未来5年的交易量。
  • 交易数据系统的导出文件包括大约5000次交易,预计现在每天将有10次额外的交易。
  • 参考数据系统的交易对手导出文件包括大约2万个交易对手,增长可以忽略不计。
  • 全世界有40~50个业务用户需要访问报表。

可用性

  • 风险报表应该随时对用户可用,但少量的停机(每天不超过30分钟)是可以忍受的。

故障转移

  • 人工故障转移对所有的系统组件都足够了,能够满足可用性目标。

安全性

  • 这个系统必须遵循仅限认证和授权用户访问的银行政策。
  • 报表必须只分发给授权用户。
  • 只允许授权用户的子集修改风险计算使用的参数。
  • 尽管也不错,但没有单点登录的需求(比如,与ActiveDirectory、LDAP等的整合)。
  • 所有对系统和报表的访问都将在银行的全球网络范围内。

审计

  • 以下事件必须记录在系统审计日志中:
    • 生成报表;
    • 修改风险计算参数。
  • 用于风险计算的输入数据必须是可理解的。

容错和恢复

  • 如果可能,系统应采取适当的步骤从错误中恢复,但所有的错误都应被记录。
  • 影响完成交易对手风险计算的错误都应被记录,流程应继续。

国际化和本地化

  • 所有用户界面都将只用英语呈现。
  • 所有报表都将只用英语呈现。
  • 所有交易价格和风险指数都将只用美元呈现。

监测和管理

  • 如遇下列情况,简单网络管理协议(SNMP)陷阱应被发送至银行的中心监测服务:
    • 系统组件的致命错误;
    • 新加坡时间上午9点前未能生成报表。

数据保存和归档

  • 风险计算过程使用的输入文件必须保留1年。

互操作性

  • 现有数据系统的接口应该遵守并使用现有的数据格式。