利用 SSADM 进行关系型设计:“比赛中断”保险政策项目分析
在软件开发领域,很多人基于自身经验所遵循的开发过程,其实与结构化系统分析与设计方法(SSADM)并无太大差异,只是没有像 SSADM 那样被正式化并归类为特定的步骤或模块。尽管 SSADM 在美洲不太流行,但因其全面性和详尽性,它能让我们很好地理解软件开发的正式流程。不过,在运用它时要确保我们主导流程,而非被流程主导。接下来,我们通过一个实际的商业场景,展示如何运用 SSADM 框架来设计一个能有效存储业务流程所产生数据的数据库解决方案。
1. 可行性研究
在非正式情况下,我们或管理层总会确保计划实施的系统在实际中可行,并且组织有能力承担费用。SSADM 则将这一过程正式化,还能帮助创建文档,记录开发的业务需求,这对未来很有帮助。当我们依靠非正式方式做决策或依赖相关人员的经验时,可能会忽略一些影响决策的方面,而 SSADM 能避免这种情况。而且,无论目标系统是基于关系型数据库管理系统(RDBMS)还是 NoSQL,进行可行性研究都很有用,该设计阶段甚至可用于基于 NoSQL 的系统。
下面我们来看一个实际的商业场景:“YourState Insurance”是一家领先的保险公司,主要向美国客户销售健康保险。该公司充满活力的营销副总裁是一位前棒球运动员,他希望为活跃的棒球运动员及其俱乐部增加一项“比赛中断”保险政策。随后,他指示研究部门、风险管理小组和 IT 架构小组确定这项新业务是否有利可图。新政策的主要特点如下:
- 政策将为活跃球员的合同提供保险。
- 不涵盖球员已知的任何慢性或既往疾病。
- 在确定保费时,会考虑球员的年龄、过往伤病和赛程安排。
- 仅为长期合同提供每两年