数据库课程设计-能源收费管理系统.doc

上传人:椰子壳 文档编号:5023047 上传时间:2020-01-29 格式:DOC 页数:24 大小:680KB
返回 下载 相关 举报
数据库课程设计-能源收费管理系统.doc_第1页
第1页 / 共24页
数据库课程设计-能源收费管理系统.doc_第2页
第2页 / 共24页
数据库课程设计-能源收费管理系统.doc_第3页
第3页 / 共24页
数据库课程设计-能源收费管理系统.doc_第4页
第4页 / 共24页
数据库课程设计-能源收费管理系统.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《数据库课程设计-能源收费管理系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-能源收费管理系统.doc(24页珍藏版)》请在三一文库上搜索。

1、1 * 实践教学实践教学 * 兰州理工大学兰州理工大学 计算机与通信学院 2011 年春季学期 数据库数据库课程设计课程设计 题 目: 能源收费管理系统 专业班级:计算机科学与技术 2 班 姓 名: 学 号 指导教师: 成 绩: 2 前前 言言 数据库是从 60 年代初发展起来的计算机技术。经过四十多年的发展,数据 库技术己经趋于成熟。就数据库应用而言呈现出多样化的空间,如数字图书馆、 电子出版物、电子商务、远程教育系统、电子收费系统等的出现,给数据库技术 提出了更多、更高的要求。 该系统基本满足了用户在能源收费管理方面的需求,用户界面友好。系统对 用户数据有效地实现了信息电子化处理,从而降低

2、了人工劳动并增加的信息的准 确性。 本次课程设计要用到数据库的相关知识。数据库是数据管理的最新技术,也 是计算机科学的重要分支。十余年来,数据库管理系统已从专用的应用程序包发 展为通用的系统软件。由于数据库具有数据结构化,最低冗余度,较高的程序与 数据独立性,易于扩充,易于编制程序等优点,较大的信息系统都是建立在数据 库设计之上的。 本系统采用 PowerBuilder 与 SQL Server 2000 作为开发工具,通过数据库 的连接,让 PowerBuilder 运行在服务器端,每当用户进入系统,可以查询每月 的能源用量,收费情况等。 3 目目 录录 摘 要.3 正 文.4 1. 问题描

3、述.4 2. 需求分析.4 2.1 数据流图4 2.2 数据字典.5 3. 系统总体设计.7 3.1 E-R 图.7 3.2 数据库逻辑结构设计.8 4.详细设计.10 5. 系统测试.11 5.1 测试方法.11 5.5 测试用例.12 6.软件使用说明16 总 结.19 参考文献.20 致 谢.21 附件 部分原程序代码22 4 摘摘 要要 能源管理收费系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维 护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安 全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析,我们使用 Po

4、werBuilder 开发工具,利用其提供的各种面向对象的开发工具,尤 其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原 型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。 关键词:数据库;PowerBuilder;管理收费系统。 5 正正 文文 1. 问题描述问题描述 本课题任务是开发一个小型通用的能源收费管理系统,并撰写符合规范的课程设计 说明书以体现设计过程和设计结果 一个小型通用的能源收费管理系统主要目的是方便供电公司进行能源收费工作。 该系统的应用能使能源公司从繁重的手工劳动中解脱出来。通过录入用户的基本信 息和用户所消

5、耗的能源数据建立起原始数据,并能够提供对能源价格进行管理,实现收 费工作的信息化,智能化。 2. 需求分析需求分析 2.1 数据流图 2.1.1 能源价格管理流程 调整能源的价格,首先需要将能源价格信息查询出来,然后由工号输入新的能源价 格信息,然后保存信息。 管理员 输入能源价格 保存信息用户交费 图 2.1.1 能源价格调整流程图 2.1.2 用户交费流程 收费人员在进行能源收费时,需要显示用户交费情况,以便查看。所以,首先应该 输入用户名称,由管理员调出用户交费信息,然后核算出用户应缴费用,将用户交费信 息,用能源信息保存到数据库中。用户交费业务流程如下图: 6 输入用户姓名 显示用户能

6、源缴费信息 核算用户缴费金额 保存信息 图 2.1.2 用户缴费流程图 2.2 数据字典 名称:userinfor 别名:用户信息 描述:纪录每一个用户的详细资料 定义:用户信息=用户编号+用户姓名用户电话+ 用户地址+所在公司+用 户 部门 位置:输入到本机 名称:energyinfor 别名:能源信息 描述:纪录每种能源的信息 定义:能源信息=能源编号+能源名称+能源价格 位置:输入到本机 7 名称:use 别名:能源使用信息 描述:纪录每个用户的每种能源的使用量 定义:能源使用信息=用户编号+能源编号+用户用量 位置:输入到本机 8 3. 系统总体设计系统总体设计 3.1 E-R 图 用

7、户 能源价格 使用 能源 能源编号 能源名 称 所在公 司 所在部门 用户电话用户编号用户地址用户姓名 m n 图 3-1 E-R 图 9 3.2 数据库逻辑结构设计 数据库是信息系统的基础和核心,数据库设计的质量将直接关系到系开发的成败和 优劣。在信息系统中,数据库设计是指根据业务需求、信息需求处理需求,确定信息系 统中数据库结构、数据操作和数据一致性约束的过程。 数据库设计的基本过程可分为需求分析、概念设计、逻辑设计和物理设计四 个步骤,见图 3-1。在信息系统的开发中,一般不就数据库设计专门进行需求分析,而 是在系统分析的需求分析阶段一并考虑。概念设计的任务是确定数据库的结构,确定从 不

8、同用户角度看到的外模式,并把外模式集成为全局模式。逻辑设计把概念设计得到的 全局模式转换成为所选择的数据库模型, 信息需求 业务需求 处理需求 用户需求 DBMS 特性 概念设计硬件及系统特性 逻辑结构 图 3-2 数据库设计的基本过程 需求分析 概念设计 逻辑设计 计 物理设计 10 逻辑设计是将现实世界的概念数据模型设计成为适应于特定数据库管理系统的逻辑 数据模式。逻辑数据模式也被简称为逻辑模型或数据模式,关系数据库的数据模式是关 系模式。如果数据库采用关系数据库,则需要把 E-R 图或类图描述的概念数据模型转 换为等价的关系模式及其约束。 1 用户信息表: 字段名字段类型是否为主键是否为

9、空 UseridNumberYesNo UsernameCharNoNo UserphoneNumberNoYes UseraddrCharNoNo UserfrimCharNoYes UserdeptCharNoyes 2 能源信息表 3 能源用量表 字段名数据类型是否为空是否主键 EnergynumNumberNoYes EnergynameCharNoNo EnergypriceMoneyNoNo 字段名数据类型是否为空是否主键 UseridNumberNoYes EnergynumNumberNoYes UsecountNumberNoNo 11 4.详细设计详细设计 详细设计阶段的根

10、本目标是确定应该如何具体地实现所要求的系统,包括了用户界 面设计、程序过程设计等步骤。 在本次课程设计中,我们小组经过讨论和反复实践,设计了用户身份验证模块,信 息管理模块,用户查询模块等三个模块。其中包括用户信息表、用户权限表、历史信息 表和价格管理表。 信息管理模块包括用户信息管理,能源价格管理,能源用量管理和用户权限管理。 用户查询模块包括能源单价查询和能源用量查询两个基本功能。 用户身份验证模块。使每次进入该系统时会自动提示并验证用户身份,达到安全管 理的目的。 4-1 程序流程图 继续操作 登 陆 密码验证 数据操作 结 束 开 始 12 5. 系统测试系统测试 5.1 测试方法 软

11、件系统测试的步骤,具体步骤如图 5-1 所示: 图 5-3 软件测试步骤图 单元测试:所采用的是白盒测试法,检查模块控制结构的某些特殊路径,期望覆盖 尽可能多的出错点;经过单元侧试后的模块,组装为软件包,对软件包进行综合测试。 综合测试:主要测试软件结构问题,因测试建立在各功能模块的接口上,使用黑盒 测试法,以便对主要的功能路径进行测试,验收测试根据需求分析时确立的标准检验软 件是否满足功能要求、行为和性能方面的要求,这步完全采用黑盒法,整个系统确认后, 将与系统其他所有部分集成后进行系统测试检验系统的协调性及功能和性能是否达到要 求。 确认测试:根据需求分析时确定的验收标准检验软件是否满足功

12、能、行为和性能方 面的要求,这一步完全采用黑盒法。 系统测试:将子系统与其他部分(如硬件、数据库)集成进行系统测试,检查系统 的协调性及功能是否达到了用户要求。 单元测试 综合测试 确认测试 系统测试 软件包 结合其他部分 他部分 13 5.5 测试用例 5.2.1 登陆窗口 5.5 .2.2 成功登陆 14 5.2.3 登陆失败 5.2.4 登陆用户信息管理窗口 15 5.2.5 查询成功 5.2.6 查询失败 5.2.7 删除 16 5.2.8 进入能源信息窗口 5.2.9 进入能源使用信息窗口 17 6. 软件使用说明软件使用说明 6.1 登陆页面 6.2 进入系统 18 6.3 用户信

13、息管理页面 6.4 能源信息管理页面 19 6.5 能源使用信息页面 20 总总 结结 在本次课程设计中,在规定的时间内,基本上完成了课程设计的要求,开发 出了题目所要求的软件。 通过本次课程设计,使我对软件工程的理论有了更深刻的认识,认识到软件 开发的步骤是紧密联系的,包括可行性研究,需求分析,总体设计详细设计,实 现和测试,维护。每一步骤都是不可缺少的,而且前面的步骤做的越详细,后面 的工作就越好做。越是在后面发现异议,需要修改,那么花费的成本就越大,即 开发过程的返工强度就越大。 如果开始没有做好,那么急于上机实现就是盲目的实现,更不会写出优质的 软件,如果要返工就更浪费时间。 在软件开

14、发的过程当中,合作的力量是不可忽视的。一个人的作用有限,简 单的软件开发一个人可以完成,但是对于复杂的任务那就是可望而不可即的。只 有好的分工合作,才能在最短时间内完成任务。由于软件开发需要分工合作,那 么文档的严格规范性就提上了日程,自己的文档不能只有自己能看懂,严格意义 上来说,一份文档对于所有程序员来说,开发出来的结果是一样的。 我在开发的过程当中就是因为当是的实体关系研究不够透彻,来回返工,浪 费的大量时间不算,意志也受到的极大的摧残。在加上相关知识掌握不够深入, 开发过程是相当困难的。但是我并没有放弃,每当困难的时候,就向指导老师请 教,总能有所收获。在开发过程当中还发现自己的知识有

15、限,许多任务不能出色 的完成,这就要求增强自学能力,通过查找相关资料,自学慢慢来完成。 通过本次课程设计,对于软件工程,数据库的理论知识有了更深入的理解, 培养了一定的自学能力,对于软件开发的过程有了初步的了解,掌握了软件开发 的一些基本的技巧,锻炼的团队合作的能力,增强了本身的综合素质,受益颇多。 虽然完成了课程设计的任务,但只能说是初步完成,软件中还存在着很多问 题,有待以后解决。 21 参考文献参考文献 1初小璐完全掌握 SQL Server 2000 M 机械工业出版社,2004 2Jeraod V.Post.数据库管理系统(英文版.第三版)美清华大学出版社, 2006.1 3张海藩.

16、软件工程导论M.北京:清华大学出版社,1998.1 4谢希仁.计算机网络(第二版)M.北京:电子工业出版社,2003.6 5戴志诚,赵国峰. .JSP 信息化系统建设案例M.北京:人民邮电出版社, 2006.12 6成晓静,毕靖.网页设计三剑客完全学习手册M.北京:中国电力出版社, 2004.11 7赵强.精通 JSP 编程M.北京:电子工业出版社,2006.3 8萨师煊,王珊.数据库系统概论M.北京:高等教育出版社,2002.2 22 致致 谢谢 通过与指导庞老师的交流、通过图书馆查看相关资料,我基本熟悉了整个系 统的业务流程,这对后期的开发工作至关重要,在这里感谢我的指导老师庞淑霞 老师,

17、是她教会了我整个设计过程的方法。 经过整个课程设计期间的努力,我基本上完成了我的课题,在此感谢系里给 我们提供了舒适的工作、学习环境。此外,我的同学在我这次课程设计中也给了 我很大的帮助,我非常感谢。庞老师认真负责的工作态度、严谨的治学风格以及 平易近人的为人,让我受益匪浅;开发的同时,和同学们之间的相互探讨也使我 的知识上了一个台阶。在这段时间里,我除了完成了课程设计,更重要的是学到 了兢兢业业,奋发向上的精神,这种精神是我今后人生前进道路上的一种力量。 再次感谢庞老师以及给过我帮助的同学。 23 附件附件 部分原程序代码部分原程序代码 登陆 if sle_1.text=“ then els

18、e if sle_1.text=“0624“ then if sle_2.text=“2009“ then open(w_2) else Messagebox(“提示“,“密码错误,请重新输入!“) end if else Messagebox(“警告“,“你不是合法用户!“) end if end if 退出 close(w_1) 插入 long flg_currentrow flg_currentrow=dw_1.insertrow(0) dw_1.scrolltorow(flg_currentrow) dw_1.setrow(flg_currentrow) dw_1.setfocus()

19、 删除 int flg_select flg_select=messagebox(“information“,“are you sure?“,exclamation!,yesno!) if flg_select=1 then dw_1.deleterow(0) end if 24 保存 if dw_1.update()=1 then commit; end if 查询 sle_2.text=“ sle_3.text=“ sle_4.text=“ sle_5.text=“ sle_6.text=“ select “userinfor“.“userid“, “userinfor“.“usernam

20、e“, “userinfor“.“userphone“, “userinfor“.“useraddr“, “userinfor“.“userfrim“, “userinfor“.“userdept“ into:sle_1.text, :sle_2.text, :sle_3.text, :sle_4.text, :sle_5.text, :sle_6.text from “userinfor“ where “userinfor“.“userid“=:sle_1.text ; if sle_2.text=“then messagebox(“Not Found“,“没有此用户!“) sle_1.text=“ end if sle_1.setfocus()

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1