### 银行储蓄系统概要设计说明
#### 引言
- **编写目的**:在银行储蓄系统的需求分析阶段完成后,本阶段的目标是进行系统的概要设计。该设计主要解决的是程序模块的设计问题,包括模块划分、接口设计、数据传递、数据结构以及模块结构等方面。这份概要设计说明书不仅为后续的详细设计提供了基础,也为未来的软件测试和维护工作提供了重要参考。
#### 项目背景
- **项目委托方**:某银行
- **项目承担方**:*
- **系统构成**:银行储蓄系统由两个主要部分构成——前台客户程序和数据库服务器。前者部署在银行柜台或ATM机上,后者位于银行内部。
- **系统关系**:该系统主要通过ATM机和银行柜台与用户交互,同时与银行内部的其他系统保持必要的联系。
#### 定义与缩写
- **专用术语**:
- **SQLSERVER**:数据库管理系统(DBMS),用于存储和管理数据。
- **SQL**:结构化查询语言,用于访问和查询数据库。
- **事务流**:数据进入模块后可能经历的不同处理路径。
- **主键**:确保数据唯一性的字段。
- **外部主键**:与另一个表的主键相关联的字段。
- **ROLLBACK**:用于恢复数据库到某一状态的操作。
- **缩写**:
- **SQL**:Structured Query Language 结构化查询语言
- **ATM**:Asynchronous Transfer Mode 异步传输模式
#### 参考资料
- 在概要设计过程中参考了多项资料,包括需求规格说明书、用户操作手册、软件工程书籍等。
#### 任务概述
- **目标**:开发一个能够高效、准确地处理储蓄业务的系统,包括账户管理、存款、取款等功能。
- **运行环境**:
- **客户端**:Pentium 133级别以上的计算机,运行WinNT操作系统。
- **服务器端**:银行内部的数据服务器。
- **需求概述**:
- 系统需要支持账户管理、存款、取款等核心业务功能。
- 提供余额查询服务。
- 确保系统的安全性、可靠性和准确性。
- **条件与限制**:系统设计需考虑硬件配置、操作系统兼容性等因素。
#### 总体设计
- **处理流程**:
- **初始化**:系统启动后首先执行初始化过程。
- **联机实时处理**:包括记账处理、分户信息调整、查询等功能。
- **日末批量处理**:完成记账、报表生成、数据备份等工作。
- **总体结构和模块外部设计**:
- **系统总体模块图**:清晰展示了系统的主要组成部分。
- **实时处理模块图**:详细说明了实时处理过程中的各项功能模块。
- **功能分配**:
- **系统初始化**:对每日所需的文件和表格进行初始化处理。
- **实时处理**:包括定期存取、活期储蓄等业务处理。
- **批量处理**:执行日末的批量处理任务。
### 深入解析
#### 业务流程设计
- **定期存取子模块**:
- 开户时,系统自动生成账号,并收集储户的相关信息,计算到期利息,并打印存单。
- 到期支取时,根据账号、开户日期、金额等信息,计算利息并完成取款流程。
#### 技术架构设计
- **技术选型**:
- **前端**:考虑到用户界面的友好性和易用性,可以选择使用图形界面技术进行设计。
- **后端**:利用SQL Server作为数据库管理系统,提供稳定的数据存储和访问服务。
- **通信协议**:考虑到ATM机与银行系统之间的通信,可以采用TCP/IP协议。
- **安全设计**:
- **数据加密**:对敏感数据如账号、密码等进行加密处理。
- **权限管理**:根据操作员的角色分配不同的权限,确保数据的安全性。
#### 用户体验设计
- **界面设计**:
- 客户端界面简洁明了,易于用户操作。
- 提供明确的操作提示,帮助用户顺利完成交易。
- **反馈机制**:
- 实时反馈交易结果,提高用户体验。
- 设计异常处理机制,确保用户遇到问题时能得到及时的帮助。
### 总结
通过对《银行储蓄系统概要设计说明书》的深入解读,我们可以看出该项目旨在构建一个高效、可靠的银行储蓄系统。该系统不仅能满足日常的储蓄业务需求,还能通过先进的技术和设计提供良好的用户体验。此外,通过严格的模块划分和合理的数据管理策略,确保了系统的稳定性和安全性。这一设计思路为未来类似项目的开发提供了有价值的参考。