
5.1 系统设计原则
为了使项目获得成功,满足现在和将来的业务需求,系统设计应当遵循一定原则和规范。一般地,系统的方案设计遵循的原则包括:先进性、高效性、可靠性、安全性、开放性、可扩展性、可用性、可缩放性、可管理性、可集成性和易用性。
1.先进性
IT技术发展非常快。如果构建系统时都不先进,那么很快系统就过时了。所以,保持技术的先进性非常重要。具体地说,系统必须建设在一个先进的技术构架之上。系统的建设是一个复杂的系统工程,其开发和实施都需要较长的周期,因此先进性不仅仅是指系统的开发实施阶段,而且在系统的实施和投入运行阶段,仍然需要保证系统的先进性,才能够满足业务增长的需要。所以,设计时就必须选择一些具有良好发展趋势的新技术。
2.高效性
当然,系统的高效性很大程度上取决于服务器性能指标,例如,系统响应速度。不过,好的系统规划、设计和算法仍然可以在一定程度上提高系统的效率。
3.可靠性
所有的系统都要求必须稳定运行,故障率低,即可靠性高。除了操作系统与硬件设备的可靠性高外,在应用层上,也就是在网络金融系统的层面上,在设计时也要多注意可靠性。可靠性的一个表现就是代码出错少。虽然代码出错不可避免,但只要在软件过程管理上多下功夫,例如系统科学地加强测试环节的工作,就可以减少错误,提高系统可靠性。当然,加强测试环节的工作,就必然增加人力资源成本。如何安排编程人员和检测人员比例,这需要有一个折中。
4.安全性
网络技术的发展,带来了很多新的计算机安全问题,已经引起人们广泛的关注。为防止网络黑客和内部人员的恶意攻击和破坏,网络安全技术和产品受到了越来越多的重视,加密技术、安全认证技术、权限技术和反病毒技术得到了迅猛的发展。
5.开放性
系统的开放性是保护投资方的投资、降低总成本的一项基本措施。一个开放的服务器,可以更好地兼容众多硬件设备,降低由于更换部件而带来的兼容性故障损失。开放的操作系统平台,也允许不同的系统软件和应用软件提供商在其平台之上进行开发,即良好的跨平台性为最终用户提供更为实际的支持。
6.可扩展性
在网络金融系统搭建初期,由于用户数量有限,因此对系统的考验还不大。但是,随着用户数量的增加,同时访问系统的用户可能会发生冲突,网络可能因此出现阻塞。举个例子说,一般时间金融系统访问量不大,而某天出现了突发事件,用户争相上网来调整自己的资产。这时,网络可能就会阻塞,满足不了用户的需求。最简单的解决办法是进行扩容,如增加或更换CPU、硬盘、内存等,具有良好扩展性的系统应当能够保证这种扩容的顺利进行而不会带来什么其他影响。
7.可用性
网络金融的系统一般都要求做到7×24小时的不间断运行。如果需要停机检测或系统升级,也必须是有计划、有步骤地进行。一般情况下,由于需要长时间不停机地运行,在程序设计上需要非常严密。例如,由于内存泄露而造成的资源占用,累积到一定程度后,引起系统的崩溃,就是需要充分考虑和预防的问题。
8.可缩放性
可缩放性更多地体现系统具有一定的灵活性。例如,当系统容量增大时可以自动分配足够的资源去应对这种变化,而又不会引起系统的过度超负荷。所以,在系统的设计和实现时,应做到能够根据用户的需求灵活地增减资源的使用和配置。
9.可管理性
可管理性是指利用特定的技术和产品来提高系统的可靠性,降低系统的购买、使用、部署和支持的费用。例如,避免系统停机等。系统的部署和支持费用常常远远超过了初次购买所花的费用。所以,系统的可管理性既是系统维护部门的迫切要求,又是对企业经营效益起着非常关键作用的因素。提高可管理性的一种方法是通过网络实现远程管理,技术支持人员在自己的计算机上解决问题,而不亲自到故障现场。当然,如果系统硬件部分出了问题,技术支持人员亲自到故障现场也是不可避免的。
10.可集成性
可集成性是指利用现有的技术和产品,提供对原有系统的支持。通过一定方式的接口调用来集成其他系统,从而实现全部系统中各个子系统间的合理连接,保证整体业务流的高效运转。
11.易用性
系统的设计要求是最终用户使用方便。所以,设计时需要充分考虑系统的可操作性和易用性,包括界面友好,系统结构和使用流程合理。