储蓄管理演示系统的设计与实现

2015-05-30 09:59王新源
关键词:软件工程

王新源

摘要:银行储蓄管理是对于银行用户的开户、存款、取款、注销等操作的管理,它在现代社会中发挥着十分重要的作用。本文主要就储蓄管理演示系统的设计与实现进行了分析,以期为银行提升业务处理效率提供良好借鉴。

关键词:软件工程 储蓄管理 数据集

本次开发以一个虚拟银行为背景,在深入分析和掌握银行储蓄业务管理要求的基础上,提出了通用储蓄管理演示软件的设计构想。该演示软件基本上可模拟银行日常储蓄管理工作,同时还有望实现存取款历史管理与报表打印功能。

1 系统分析

1.1 技术可行性 本系统采用Visual Studio 2008作为开发平台,运用C#语言作为开发工具,使用SQL Server 2005作为数据库服务器。目前的计算机配置和以上的技术都已经很成熟,开发这个系统绝对没有问题。因此在技术上是可行的。

1.2 经济可行性 由于现有的PC系统的软硬件环境都能满足目标系统的运行需要,无须再投入资金购买其他设备。该系统投入使用后,能够大幅度提高银行储蓄管理的工作效率,减轻工作人员的工作量,相当于减少经济投入。因此在经济上,本系统的开发具有可行性。

1.3 运行可行性 本系统运行环境要求简单,现有的PC系统的软硬件环境都能满足目标系统的运行需要。操作方面不需要进行专门的培训。

1.4 系统功能分析 本系统拟实现以下功能:①添加、删除管理员,为每位管理员设置密码,登录时进行身份验证。②添加、删除储户,添加储户时自动生成账号。③对储户信息进行管理,可进行信息添加、删除、修改与查询。④进行存款与取款操作,自动添加相应的存取款历史,可对存取款单进行打印。⑤对存取款历史进行管理,存取款记录报表可导出。

2 详细设计及系统实现

2.1 数据库设计

2.1.1 数据库设计原则。①数据文件结构的设计应满足系统管理需求。②数据的冗余度尽量减少。③数据记录要反映各级管理的需要。④保证数据的完整性和安全性。⑤维护方便有不断扩充和更新的能力。⑥保持数据的独立性。

2.1.2 数据库的需求分析。根据系统的需求分析,可列出以下的数据项和数据结构。

储户信息表:存放储户信息,包括姓名、身份证号、性别、手机号、账号、密码等。

操作员信息表:存放操作员基本信息,包括工号、姓名、性别、密码、角色。

存款信息表:存放存款信息,包括账户名、姓名、余额。

存款历史记录表:存放存款历史记录的信息,包括账户名、存款时间、存款金额、姓名。

取款历史记录表:存放取款历史记录的信息,包括账户名、取款时间、取款金额、姓名。

2.2 关键技术点分析

2.2.1 数据库设计中使用数据集(DataSet)技术。数据集 (DataSet) 被称为是离线的数据库, 是独立于数据存储区且与之不同的数据结构。本系统在进行数据库设计时,使用数据集来缓存数据,并对数据库操作进行封装,达到了提高性能的目的,很好的解决了分页和数据库连接的问题。

2.2.2 使用水晶报表软件生成储蓄报表。Crystal Reports(水晶报表)是一个商务型智能软件,主要运用于设计及报表产生中。水晶报表具有弹性大、功能全、高效便捷等优势,逐渐成为一种流行化的报表开发与生成工具。

2.2.3 选用C/S体系结构。①与B/S结构相比,C/S结构的优点。C/S结构不仅具备浏览、查询、数据输入等一般功能,还可以极大地减轻服务器压力。同时,C/S结构面向的是固定性用户群,其安全性和稳定性较好,具有很强的控制能力。②选用C/S体系结构的原因与优势。本系统为一个银行储蓄管理系统,对系统的安全性要求很高。C/S结构对信息安全的控制能力很强,因此,本系统采用C/S结构可以很好的规避安全风险,为数据安全性和系统安全性提供保障。

2.3 代码实现

2.3.1 登录界面账号与用户名的判定。将已输入的密码字符串与该用户名下已设定字符串进行比较,如取值相等,则成功登录;如取值不相等,则显示“密码不正确”,不能成功登录。

private void buttonX1_Click(object sender, EventArgs e)

{WindowsFormsApplication1.DataSet1TableAdapters.DepositorsInfoTableAdapter adpter = new WindowsFormsApplication1.DataSet1TableAdapters.DepositorsInfoTableAdapter();

DataSet1.DepositorsInfoDataTable dt = new DataSet1.DepositorsInfoDataTable();

adpter.FillByZh(dt, textBoxX1.Text.ToString().Trim());

//textBoxX4.Text = dt.Rows[0]["密码"].ToString();

if (Convert.ToInt32(dt.Rows.Count.ToString()) != 0 && textBoxX4.Text == dt.Rows[0]["密码"].ToString().Trim())

{//MessageBox.Show("success!");

WindowsFormsApplication1.DataSet1TableAdapters.SaveCountTableAdapter adpter1 = new WindowsFormsApplication1.DataSet1TableAdapters.SaveCountTableAdapter();

DataSet1.SaveCountDataTable dt1 = new DataSet1.SaveCountDataTable();

adpter1.FillByZh(dt1, textBoxX1.Text.ToString().Trim());

dataGridView1.DataSource = dt1;

buttonX2.Enabled = true;

buttonX5.Enabled = true; }

else

{MessageBox.Show("账号不对or密码不正确!");

}

}

2.3.2 导出存款历史记录。在进行存款操作时,将相应的存款信息添加至存款历史记录表中,在需要时,存款历史记录可以以报表的形式导出。

private void buttonX2_Click(object sender, EventArgs e)

{if (MessageBox.Show("您确定要导出?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)

{

try

{

ToolClass toolCase = new ToolClass();

string title = textBoxX1.Text.ToString() + "存款历史";

int result = toolCase.ExportExcel(title, dataGridView1, "存款历史"); //this.dataGridView1:DataGridView控件

MessageBox.Show(" 导出完成!");

}

catch (Exception)

{

}

}

}

2.3.3 设置数据库连接字符串。在配置文件app.config中,设置数据库连接字符串,在需要时可以方便的进行移植。

connectionString="Data Source=localhost;Initial Catalog=BankSysData;User ID=sa;Password=sa"

providerName="System.Data.SqlClient" />

参考文献:

[1]齐治昌,谭庆平,宁洪.软件工程[M].北京:高等教育出版社.

[2]张海藩.软件工程[M].北京:人民邮电出版社.

[3]Jess Liberty著.C#程序设计[M].刘基诚译.北京:中国电力出版社,2002.4.

猜你喜欢
软件工程
基于课程群的软件工程专业三位一体教学模式探索
关于《软件工程》教学改革的研究
计算机技术在机械能源中的应用
依托工作室的软件工程实践教学研究
高职软件工程课程改革研究
软件工程应用型课程建设与实践
应用瀑布模型的MOOC制作方法
融合APTECH体系的软件产业人才培养探究
基于工程教育认证的《软件工程》课程教学质量建设研究 
关于如何创新和完善计算机软件工程管理的探讨