收藏 分享(赏)

毕业论文样文图书管理系统开发.doc

上传人:weiwoduzun 文档编号:2328363 上传时间:2018-09-10 格式:DOC 页数:39 大小:466.50KB
下载 相关 举报
毕业论文样文图书管理系统开发.doc_第1页
第1页 / 共39页
毕业论文样文图书管理系统开发.doc_第2页
第2页 / 共39页
毕业论文样文图书管理系统开发.doc_第3页
第3页 / 共39页
毕业论文样文图书管理系统开发.doc_第4页
第4页 / 共39页
毕业论文样文图书管理系统开发.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、摘 要图书管理系统开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。采用 SQL Server 2005 数据库作为后台数据库、Visual C#编程语言作为前台开发工具。通过对图书管理的调查论证,图书管理系统可以分为用户信息管理、客户信息管理、图书信息管理、出版社信息管理、客户租还书管理、综合查询功能。我在这次设计中主要完成了出版社信息管理和客户租还书管理。经过和其他组员设计模块的整合运行后,系统运行结果证明,本文所设计的图书管理系统可以满足学生和教师借阅者、图书管理员两方面的需要,达到了设计要求。关键字:图书、数据库、管理系统北京电子科技职业学院- 1 -目 录一 绪论 -

2、 4 -(一) 图书管理的现状 - 4 -(二) 系统开发目的和意义 - 4 -(三) 图书管理系统的可行性分析 - 4 -(四) 开发环境 - 5 -(五) 图书管理系统开发相关技术的介绍 - 5 -1 Visual C#的介绍 - 5 -2 SQL Server 的介绍 .- 5 -二 系统需求分析 - 6 -(一) 任务概述 - 6 -(二) 数据描述 - 6 -(三) 功能需求 - 7 -(四) 性能需求 - 7 -1 系统处理的准确性和及时性 .- 7 -2 系统的易用性和易维护性 .- 7 -3 系统的标准性 .- 7 -4 系统的响应速度 .- 7 -三 系统概要设计 - 8 -

3、(一) 系统功能描述 - 8 -(二) 功能模块划分 - 8 -(三) 系统流程分析 - 9 -四 系统详细设计 .- 10 -(一) 数据库设计 .- 10 -1 数据库需求分析 - 10 -2 数据库概念结构设计 - 10 -3 数据库逻辑结构分析 - 11 -4 连接数据库 - 13 -(二) 主控制模块设计 .- 14 -1 主控制模块功能说明 - 14 -2 主控制模块设计图 - 14 -(三) 出版社信息模块设计 .- 14 -1 出版社信息模块块功能说明 - 14 -2 出版社信息模块功能图 - 14 -3 出版社信息模块设计图 - 15 -(四) 客户租还书管理模块设计 .-

4、15 -1 客户租还书模块功能说明 - 15 -2 客户租还书模块功能图 - 15 -3 客户租还书模块设计图 - 16 -五 测试分析报告 .- 17 -(一) 测试用例 .- 17 -(二) 测试结果 .- 17 -六 结论 .- 18 -致谢 .- 18 -参考文献 .- 19 -附录 .- 20 -北京电子科技职业学院- 3 -一 绪论随着计算机技术的飞速发展,当今社会正快速向信息化社会前进,信息系统的作用也越来越大。图书馆在正常运营中总是面对大量的读者信息,书籍信息以及由两者相互作用产生的借书信息,还书信息。因此图书管理信息化是发展的必然趋势。用结构化系统分析与设计的方法,建立一套有

5、效的图书信息管理系统,可以减轻工作,将工作科学化、规范化,提高了图书馆信息管理的工作质量因此根据图书馆目前实际的管理情况开发一套图书管理系统是十分必要的。(一) 图书管理的现状图书管理是高校内每一个系部或院部都必须切实面对的工作,但一直以来人们使用传统的人工方式管理图书资料。这种方式存在着许多缺点,如效率低、保密性差且较为繁琐。另外,随着图书资料数量的增加,其工作量也将大大增加,这必将增加图书资料管理者的工作量和劳动强度,这将给图书资料信息的查找、更新和维护都带来了很多困难。经过详细的调查,目前我国各类高等学校中有相当一部分单位图书资料管理还停留在人工管理的基础上。这样的管理机制已经不能适应时

6、代的发展,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,这种传统的手工管理方法必然被以计算机为基础的信息管理方法所取代。传统图书管理的特点是一直以来,中小型书店、中小学的小型图书馆及各高校图书馆和资料室使用传统的人工方式管理图书档案、客户档案。这种管理方式存在着诸多缺点,如:手续繁琐、工作量大、效率低下、出错率高等,同时给对大量资料的查询、更新及维护都带来不少困难。(二) 系统开发目的和意义随着社会的进步,信息技术的广泛应用,数字化管理的优势日趋显著。针对云航中学图书馆管理落后的情况,设计实现一个图书信息管理系统,通过图书信息管理系统的使用对学校图书馆的各种图书信息进行管理可以给管理

7、员和用户带来以下不同的方便:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高工作效率,也是图书馆管理科学化、正规化的重要标志之一,而且计算机管理的成本不断降低。因此,开发一套图书管理软件已经很有必要,并且实现研究服务于实践的原则。(三) 图书管理系统的可行性分析本次毕业设计题目:“基于 B/S 的云航中学图书馆信息管理系统设计与开发”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是对图

8、书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。本系统的设计主要从以下几方面做起:系统业务流程分析、系统的功能设计、系统的数据库结构设计等。作这些工作需对数据库知识有足够认识,并深入的了解 Visual Basic 的使用和管理系统的相关知识。现在大多数的图书管理方式为手工处理,重复劳动多,劳动强度大,而且容易出错,新系统的使用能否可以很好的解决这些问题要看系统的可行性,可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。系统的可行性分析有以下几个方面: 技术可行性:处理速度快、准确通过权限的设置,数据的安全性好、方便查询、借阅管理等。 经济可行性

9、:系统建设不需要很大的投入、可缩减人力投入。 运行上可行性:本系统作为一个小型的图书馆信息管理系统,所耗费的资源非常的小。 从各种社会因素可行性分析:可降低工作人员工作强度,提高效率,会得到学校工作人员的一致同意的。综上所述通过可行性分析认为新系统的开发方案切实可行,可进行开发。(四) 开发环境开发环境:Windows 7开发工具:Visual C#数据库管理系统: SQL Server 2005数据库服务器: SQL Server 2005 桌面引擎(五) 图书管理系统开发相关技术的介绍1 Visual C#的介绍C#(读作 C sharp)是微软开发的一种面向对象的编程语言,是微软.NET

10、 开发环境的重要组成部分。而 Microsoft Visual C# 2005 是微软开发的 C#编程集成开发环境(同种产品还有 Borland 公司的 C# Builder) ,它是为生成在 .NET Framework 上运行的多种应用程序而设计的。C# 简单、功能强大、类型安全,而且是面向对象的。C# 凭借它的许多创新,在保持 C 样式语言的表示形式和优美的同时,实现了应用程序的快速开发。2 SQL Server 的介绍SQL(Structured Query Language),结构化查询语言。SQL 语言的主要功能就是同各种数据库建立联系,进行沟通。按照 ANSI(美国国家标准协会)

11、的规定,SQL 被作为关系型数据库管理系统的标准语言。SQL 语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。绝大多数流行的关系型数据库管理系统都采用了 SQL语言标准。虽然很多数据库都对 SQL 语句进行了再开发和扩展,但是包括 Select, Insert, Update, Delete, Create,以及 Drop 在内的标准的 SQL 命令仍然可以被用来完成几乎所有的数据库操作。北京电子科技职业学院- 5 -二 系统需求分析(一) 任务概述经过对云航中学详细调查,加深了对现行图书管理业务的深刻了解,与此同时,将整个图书管理的业务流程抽象描述如下: 新的图

12、书购进后,分门别类地进行归并并汇总,加以编号。 新书编号后,上到书架以备学生借阅。 如某学生需要借阅图书,则在其本人的借阅登记表上进行登记,记录相关借阅信息与借阅日期。 学生借阅图书后,应及时归还图书,并在本人的借阅登记表上注明还书日期和时间。根据以上调查分析,可以给出其现行业务流程图如图 2.1 所示。图 2.1 现行图书管理业务流程图(二) 数据描述经过详细的调查,我们已经清楚了解了现行的业务流程,接下来给出系统的逻辑模型。构造系统逻辑模型的工具是数据流图和数据字典。根据现行图书管理的业务流程,首先把数据流图中的源点和终点都选定为学生,因此可以得到图书管理系统的基本系统模型,如图 2.2

13、所示。图 2.2 图书管理系统的基本系统模型根据基本系统模型,对其逐步细化,得到描述逻辑系统细化后的数据流图,如图 2.3所示。管 理员学 生 信 息1学 生管 理D 1学 生 信 息图 书 信 息2图 书管 理D 2图 书 信 息 登 记图 书 信 息 登 记图 书 信 息学 生 借 阅图 书3借 阅 管理借 阅 信 息借 阅 登 记D 34归 还 管理学 生 信 息归 还 图 书归 还 登 记D 4学 生借 阅 结 果归 还 图 书归 还 结 果新 图 书 新 图 书新 图 书 新 图 书新 图 书分 类 、 编 号 学 生 借 阅 学 生 归还 图 书归 还 后 的 图 书图 2.3 图

14、书管理系统数据流图(三) 功能需求经过以上详细的用户调查,在现行业务流程和数据分析的基础上,基本可以确定系统设计必须达到的目标。 以下是图书管理系统必须具备的功能: 新进图书的登记功能:对于购进的新书,系统必须具备图书信息资料的录入功能。 图书的查询修改功能:当图书资料发生变化,如图书丢失或有错误信息输入时,则应能够及时对数据进行修改和补充。 借阅的登记,归还的登记功能:系统的主要功能之一,供本校学生借阅图书、归还图书,并进行登记。 学生信息的增加、删除和修改功能:系统主要功能之一,建立学生信息,并对其进行维护。(四) 性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,图书管理系统应

15、该满足以下的性能需求:1 系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学校对信息处理的需求。2 系统的易用性和易维护性图书管理系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。3 系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合

16、主流国际、国家和行业标准。4 系统的响应速度图书管理系统系统在日常处理中的响应速度为秒级,达到实时要求,以及时反馈信息。在进行统计分析时,根据所需数据量的不同而从秒级到分钟级,原则是保证操作人员不会图 书 管理 系 统图书管理员图书管理员图 书 借 阅 信 息 图 书 归 还 信 息北京电子科技职业学院- 7 -因为速度问题而影响工作效率。三 系统概要设计系统设计主要包括客户需求的总结、功能模块的划分和系统流程的分析。根据客户需求总结系统主要完成的功能,以及将来拓展需要完成的功能,然后根据设计好的功能划分出系统的功能模块,以方便程序的管理和维护,最后设计出系统的流程。接下来,就对系统设计的前期

17、准备做详细介绍。(一) 系统功能描述 一个图书借阅管理系统应该提供包括客户信息管理、图书信息管理、出版社信息管理、用户信息管理、租还书、报表显示和综合查询等功能。 客户、图书、出版社、用户信息的数据维护模块提供增加、删除、改变和查询、浏览等基本的数据维护功能。 打印报表功能模块可以用报表的形式显示数据表。 综合查询模块可以通过用户选择的数据表和相应的查询条件来查询相关内容。 客户租还书模块是图书出租管理系统的核心功能,实现客户和图书出租的交互。(二) 功能模块划分图书出租管理系统应该具有客户信息管理、图书信息管理、租还书和综合查询等功能。根据系统功能的需求分析,我们把该系统的功能划分为 7 个

18、模块。 客户信息维护模块 图书信息维护模块 出版社信息维护模块 用户信息维护模块 客户租还书管理模块 综合查询模块 报表显示模块图书出租管理系统的功能模块如图 3.1 所示。图 3.1 图书出租管理系统的功能模块图其中,客户租/还书管理模块包括以下 3 个子模块。 租借图书 归还图书图 书 信 息 管 理 系 统客户信息模块图书信息模块用户信息模块租还书管理模块综合查询模块出版社信息模块报表显示模块北京电子科技职业学院- 9 - 查询租借信息客户信息维护模块包括以下 4 个子模块 增加客户信息 删除客户信息 修改客户信息 查询客户信息该模块图如图 3.2 所示。图 3.2 客户信息维护模块图同

19、理,如图书信息管理、出版社信息管理、用户信息管理模块也被类似的分为增加、删除、修改、查询 4 个模块。从图中可以看出,该信息管理系统的角色可以划分为 3 类。 普通用户:拥有客户信息维护、图书信息管理、出版社信息管理及客户租还书信息管理、报表显示和综合查询的权限。 系统管理员:拥有客户信息维护、图书信息管理、出版社信息管理、用户信息管理以及客户租还书管理、报表显示和综合查询的权限。但其主要功能还是用户信息管理。 客户:租书和还书。(三) 系统流程分析图书出租管理系统的开发首先要设计一个登录系统,用户只有输入了正确的用户名和密码方可进入系统内部。系统流程图如图 3.3 所示。图 3.3 图书出租

20、管理系统图客 户 信 息 模 块客户信息模块图书信息模块用户信息模块出版社信息模块租还书管理模块综合查询报表显示模块图 书 信 息 管 理 系 统客户信息管理图书信息管理用户信息管理出版社信息管理登 陆用 户系 统 管 理 员四 系统详细设计(一) 数据库设计数据库结构设计的好坏直接影响的图书出租管理系统的效率和实现的效果。合理地设计数据库结构可以提高数据存储的效率,保证数据的完整和统一。数据库设计一般包括如下几个步骤。 数据库需求分析 数据库概念结构设计 数据库逻辑结构分析1 数据库需求分析图书出租管理系统的数据库功能主要体现在对各种信息的提供、保存、更新和查询操作上,包括图书信息、用户信息

21、、客户信息、租借信息和出版社信息,各个部分数据内容又有内在联系。针对该系统的数据特点,可以总结出如下的需求。 用户和客户具有不同的身份。 用户信息记录用户资料。 客户信息记录客户的详细信息。 图书信息记录图书的名称、出版社等信息。 租借信息记录客户租借图书的信息。 出版社信息由出版社名称、出版社地址等各个信息。 经过上述系统功能分析和需求总结,设计如下的数据项和数据结构。 图书信息,包括图书编号、图书名称、作者等数据项。 租书信息,包括客户编号、图书编号、租借日期等数据项。 出版社信息,包括出版社名称、出版社地址、电话等数据项。 客户信息,包括客户编号、姓名、密码等数据项。 用户信息,包括用户

22、编号、密码和分类数据项。2 数据库概念结构设计得到上面的数据项和数据结构后,就可以设计满足需要的各种实体及相互关系,再用实体关系图,为后面的逻辑结构设计打下基础。在这个系统中,所存在的实体有:图书信息实体、租书信息实体、出版社信息实体、客户信息实体和用户信息实体。 图书:图书编号名称作者出版社 租书:客户编号图书编号租借日期应归还日期 客户:客户编号名称密码租借数量 出版社:出版社名称地址电话邮件 用户:用户编号密码分类北京电子科技职业学院- 11 -3 数据库逻辑结构分析有了数据库概念结构设计,数据库的设计就简单多了。在图书出租管理系统中,首先要创建图书出租管理系统数据库,然后在数据库中创建

23、需要的表和字段。如果有需要,还可以设计视图、存储过程和触发器。下面分别讲述在图书出租管理系统中数据库的设计。创建数据库在开发环境中,启动“服务器资源管理器”窗口,在 SQL Server 服务器节点右击,在图案出的快捷菜单中选择“新建数据库”命令,将打开“创建数据库”对话框。在“心数据库名”文本框中输入 BookManagement,选择“使用 Windows 身份验证”单选按钮。创建字/字段在这个数据库管理系统中要建立 5 张数据表,分别是用户表、图书表、客户表、租借信息表和出版社表。下面说明创建表和字段的方法。在刚刚建立的 BookManagement 数据库节点下的“表”节点右击,在弹出

24、的快捷菜单中选择“新建表”命令。在弹出的“新建表”窗体中输入如图 4.1 所示的字段和属性。图 4.1 BOOK 表图书表的字段说明,其中设置 BookID 为主键和索引。表 4.1 图书表(BOOK)表 4.2 租借信息表(BORROWBOOK)表 4.3 出版社表(PUBLISHCOMPANY)表 4.4 客户表(READER)表 4.5 用户表(USER)在建立完所有的数据表后,要根据数据表之间的关系在属性页中添加关系。为 Book表和 BorrowBook 表之间添加 FK_BorrowBook_Book 关系,为 Book 表 Book 表和PulishCompany 之间添加 FK

25、_Book_PublishCompany 关系,为 Reader 表和 BorrowBook 表之间添加 FK_BorrowBook_Reader 关系。创建视图在图书出租管理系统中,为便于浏览目前客户借图书的信息,要创建一个 Borrow 视图来显示租借记录中客户和所租借图书的一些详细信息以便以后综合浏览。在BookManagement 数据库下面的“视图”节点右键,在弹出的快捷惨淡中选择“新建视图”命令,在弹出的对话框中选择 Book 表、BorrowBook 表和 Reader 表,及其各自想要显示的字段。Borrow 视图的 SQL 语法如下:SELECT dbo.Borrowbook

26、.ReaderID,dbo.BorrowBookID,dbo.BorrowBook.ReturnDate,dbo.BorrowBook.BorrowDate,dbo.Reader.ReaderID AS Expr 1,dbo.Reader.ReaderName,dbo.Reader.ReaderPhoneNo,dbo.Book.B ookID AS Expr2,dbo.Book.BookName,dbo.Book.BookRemainFROM dbo.Book INNER JOINdbo.BorrowBook ON dbo.Book. BookID=dbo.BorrowBook.BookID

27、INNER JOINdbo.Reader ON dbo.BorrowBook.ReaderID=dbo.Reader.ReaderID北京电子科技职业学院- 13 -创建存储过程为保证系统具有良好的课扩展性,有些业务规则可以以储存过程方式放在数据库服务器上。储存过程提供了数据驱动应用程序中的许多优点。利用存储过程可以,将数据库操作层状在单个命令中,为获取最佳性能二进行优化并通过附加的安全性而增强系统安全性。在图书出租管理系统中,创建实现在客户租还书时对客户表中的客户所借书目和图书表中图书库存量的改变的存储过程和客户借书之前查询客户租借图书数目和图书库存量和存储过程。在开发环境中创建存储过程可以

28、通过在“服务器资源管理器”窗口中的“存储过程”节点右击,在弹出的对话框中选择“新建存储过程”命令。可存储过程编写窗口中写入代码。在图书出租管理系统中,需要创建 6 个存储过程。下面介绍各个存储过程和功能。客户安装配套光盘上的数据库之后可以通过 SQL sever2005 的企业管理器查看这些存储过程的代码。ReaderBorrowedNumber 存储过程该存储过程负责客户已经租借的图书书目。其目的是为了在客户租借图书之前判断此客户是否达到借书书目的上限。BookNumber 存储过程此存储过程的功能是根据输入的图书编号得到该图书现在的存储数量。BorrowReader 存储过程当客户租借某种

29、图书后,该存储过程向客户表的客户目前所借图书一项添加 1。ReturnBook 存储过程当客户归还所借的图书时,该存储过程在图书表中相应的数据库现存量中减去 1。ReturnReader 存储过程当客户归还所借图书是,该存储过程在客户表中把客户所借图书数量减 1。ReturnBook 存储过程当客户归还所借的图书时,该存储过程在图书表中相应的图书现存量中增加 1。4 连接数据库图书出租管理系统使用 VC#+SQL Server 来进行开发。为了使系统正常工作,需要建立与数据库系统的连接来读取和写入数据。一般来讲,可以有两种方式连接数据库。一种是在窗体中直接添加 SqlConnection 并通

30、过直接设置其 ConnectionString 属性来连接数据库;另一种创建一个连接类 Login,其代码如程序清单所示。Public class LoginPublic static string Connectiongetreturn“data source=(local);initial catalog=BookManagement; integrated security=SSPI“该代码将返回数据库连接命令,然后可在程序中利用此连接命令生成数据库连接。本章应用的是第一种方法,因为比较直观、易操作。而第二种方法更加底层,所以可以更加详细地控制数据库连接。(二) 主控制模块设计1 主控制

31、模块功能说明系统的主控制界面是用户进入到各个功能界面的总控制界面。当系统管理员登录到主界面时可以进行任何的操作,而普通的用户会发现其中的“用户信息”一项为不可用。2 主控制模块设计图图 4.2 系统主界面设计(三) 出版社信息模块设计1 出版社信息模块块功能说明系统的出版社信息界面可以实现出版社信息的增、删、改、差。2 出版社信息模块功能图北京电子科技职业学院- 15 -图 4.3 出版社信息模块功能图3 出版社信息模块设计图图 4.4 出版社信息模块设计图(四) 客户租还书管理模块设计1 客户租还书模块功能说明租书功能是本系统的核心功能,客户租还书管理界面也是系统中最为常用的界面。界面中用户

32、可以先查询客户的租借记录,并对客户租还书进行操作。为了提示目前的操作和结果,界面左上角设一信息提示的文本框。2 客户租还书模块功能图出 版 社 信 息 管 理删除出版社信息更改出版社信息增加出版社信息查看出版社信息租 还 书 管 理租借记录 归 还 图 书租 借 图 书图 4.5 客户租还书模块功能图3 客户租还书模块设计图图 4.6 客户租还书模块设计图北京电子科技职业学院- 17 -五 测试分析报告(一) 测试用例1.出版社信息模块测试用例字段名称 描 述测试项 出版社信息模块的功能测试输入标准1.打开出版社信息模块,点击“添加” ,输入出版社信息,点击“确定” 。2.点击“修改” ,输入

33、新出版社信息,点击“确定” 。3.选择一组出版社信息,点击“删除” ,点击“确定” 。输出标准1.增加一组出版社信息栏,出版社信息写入数据库。2.可以修改出版社信息,新的出版社信息写入数据库。3.一组出版社信息从数据库中删除。表 5.1 出版社信息模块测试用例2.租还书模块测试用例字段名称 描 述测试项 综合查询模块的功能测试输入标准1.打开综合查询模块,选择“数据表” 、 “查询项” 、 “查询条件”选项,输入指定值,点击“查询” 。2.点击“重置” 。输出标准 1.系统显示出指定查询条件的信息2.可重新选择“数据表” 、 “查询项” 、 “查询条件”选项,输入指定值。表 5.2 租还书模块

34、测试用例(二) 测试结果1.出版社信模块测试结果测试结果 正常操作无任何异常处理出现与预期的偏差 无说明的问题 出版社信模块通过了功能测试表 5.3 出版社信模块测试结果2.租还书模块测试结果测试结果 正常操作无任何异常处理出现与预期的偏差 无说明的问题 租还书模块通过了功能测试表 5.4 租还书模块测试结果六 结论经过几个月的设计和开发,学校图书管理系统基本开发完毕。其功能基本符合用户需求。通过这次毕业设计真切地体会到毕业设计的目的并不止于自己单纯任务的完成,而在于学习新的知识并掌握具体的方法,如何具体使用和具体应用你所学所用的语言。从而获得一种本领:就是融会贯通各种语言。回首整个开发设计过

35、程,我学到了很多书本上学不到的东西。比如以前开发软件的时候,一般做的就是编码工作,实现比较简单的功能。但是这次毕业设计,我要负责图书管理系统的整个开发过程,包括系统可行性分析、系统需求分析、系统概要设计、系统详细设计等方面的工作。在每个设计阶段我都能学到一些新知识,对我的动手能力提高很大。在整个毕业设计过程中,我基本上完成了图书管理系统各个模块的功能,达到了毕业设计的要求。在以后的工作中,还会遇到很多类似的情况,此次毕业设计为我以后的工作积累了很多宝贵的经验。这几个月中,从接到设计课题到具体设计再到完成系统开发,是一个不断地遇到问题与解决问题的过程。其中包括:分析各种需求、完善各种功能、增加必

36、要环节、对各部分及整体进行检测与维护。当然仍存在许多问题不能解决地尽善尽美,还需不断地继续与探索。在结束设计的同时也感到了劳动的艰辛与劳动成果的来之不易,明白了毕业设计是给自己提供了一个锻炼、升华、提高、完善的机会。致谢这次软件工程课程设计,我主要采用 Studio 作为前台开发工具, Microsoft SQL Severe2005 作为后台数据库,结合软件工程设计和数据库编程的有关知识,开发了这个图书管理系统。通过这次软件工程课程设计,我对于软件工程设计的相关步骤和流程有了更深刻的理解,熟悉并掌握了 Visual C#编程语言和 Microsoft SQL Severe2005 的数据库使

37、用,另一方面,也对 SQL 语言作为嵌入式语言的功能有了更深刻的体会。同时,我也发现自己对于软件工程设计和数据库设计的知识掌握的还不够,设计和编程能力还有待于进一步提高。这次课程设计给了我一个锻炼自己,强化专业知识的机会,通过这次课程设计,我也得以一窥软件工程设计的广袤天地,我相信,只要认真学习,多借鉴别人的经验,多思考,多实践,就一定能够成为一个合格的软件设计人员,能够翱翔在软件开发的天地。同时,在这里感谢我的指导老师马楠老师的悉心指导。北京电子科技职业学院- 19 -参考文献1白梅关于网络教育中资源建设的思考J电化教育研究,2001,(12):48-512谢幼如,李克东. 网络教学的设计与

38、评价研究报告R.http:/ Stalling 著,魏迎梅译操作系统内核与设计原理M,2001:56-110.5王国荣,朱琳杰. ASP private string userSort;主控制窗体 MainForm 的构造函数如下 public MainForm(string username,string usersort)/ Windows 窗体设计器支持所必需的/InitializeComponent();this.userName=username;userSort=usersort;/ TODO: 在InitializeComponent 调用后添加任何构造函数代码/其中,Initi

39、alizeComponent()函数是系统根据对控件的所有添加、设置工作而自动产生的幕后代码。通过构造函数把用户名和用户类型两个参数传递给 MainForm 类中的变量 userName 和 userSort。为了实现把刚刚在登录系统注册过的用户名显示在主控制窗体,并根据用户类型来设置“用户信息”按钮的可用性,并添加程序清单所示的代码。private void MainForm_Load(object sender, System.EventArgs e)this.Text=“图书馆管理系统“+userName;if(this.userSort=“system“)this.btnUser.En

40、abled=true;else北京电子科技职业学院- 21 -this.btnUser.Enabled=false;上述代码通过把 userName 赋值给窗体的 Text 属性来达到在窗体标题中显示用户名的效果,并根据用户类型来设置 btnUser 按钮的 Enable 属性来达到控制用户权限的目的。主控制界面实现的最主要的功能是调用各个功能模块的界面。例如,调用图书信息维护界面,就是通过按钮 btnBook 添加一下所示的代码而实现的。private void btnBook_Click(object sender, System.EventArgs e)Form bookForm=new

41、 Book();bookForm.ShowDialog();在上端代码中通过创建一个图书信息维护窗体的实例 bookForm,并通过 ShowDialog 的方法来显示此实例。需要指出的是,在一个窗体中显示另外一个窗体有两个方法 Show()和ShowDialog()。其中 Show()方法调用称为非模式对户框,焦点可以不再新显示的窗体上,而 ShowDialog()方法显示的窗体称为模式对话框,焦点必须停留在新显示的窗体上。此系统为了每次用户只能对一个界面进行操作,所以采用 ShowDialog()来显示窗体。数据维护功能就是包括对数据库中某个数据表的增加、删除、修改和查询功能。在开始编写代

42、码之前,向 Book 窗体中添加 sqlConnection1 数据库连接组件,并设置ConnectionString 属性来连接数据库 BookManagement。添加数据适配器组件sqlDataAdapter1,并使用数据适配器配置向导对其进行配置。首先,选择刚创建的链接并选择 Book 数据表的所有列,然后用数据适配器 sqlDataAdapter1 生成数据集DataSetBook 的实例 objDataSetBook,双击打开 DataSetBook.xsd 文件可以看到设计完毕的数据库。当 Book 窗体加载的时候,执行的是 Book_Load()方法,其程序参考如下程序priv

43、ate void Book_Load(object sender, System.EventArgs e)this.LoadDataSet();this.DatasetPostionChange();this.ButtonPositonChange();this.TextEnableControl(false);this.ButtonEnableControl(false);从上述代码中可以看出,在 Book 窗体加载时执行了一系列的函数。下面就一一分析这些函数的代码及其功能。首先系统体通过 LoadDataSet()函数把数据表 Book 加载到数据集,并通过数据集绑定控件在界面上进行显示,

44、其代码参见程序清单private void LoadDataSet()DataSetBook objDataSetTemp=new DataSetBook();trythis.FillDataSet(objDataSetTemp);catch (System.Exception E) / 在此处添加错误处理代码。this.ErrorHandle(E);trythis.objDataSetBook.Clear();this.objDataSetBook.Merge(objDataSetTemp);catch(System.Exception E) / 在此处添加错误处理代码。this.Error

45、Handle(E);LoadDataSet()函数先生成一个DataSetBook的临时数据集objDataSetTemp,并通过这个临时数据集来保存FillDataSet()函数返回的记录,这个函数稍后会予以介绍。在这里使用临时数据集是因为填充现有的数据集要重新进行数据绑定。上一段程序代码出现了Try和Catch块,这两个块就是在C#中处理异常的程序块。首先程序可能在Try块中引发异常,然后在Catch块中截获异常并加以处理,以避免系统出错而导致死机。函数ErrorHandle()是错误处理函数,也将在稍后予以介绍。下面来分析FillDataSet()北京电子科技职业学院- 23 -函数的代

46、码和功能,请参见程序清单private void FillDataSet(DataSetBook dataset)dataset.EnforceConstraints=false;trythis.sqlConnection1.Open();this.sqlDataAdapter1.Fill(dataset);catch(System.Exception E)this.ErrorHandle(E);finallydataset.EnforceConstraints=true;this.sqlConnection1.Close();这个函数功能是打开数据连接,同时通过数据适配器来填充数据集。在代码

47、中要注意异常的处理。在上述的两段代码中都有一个ErrorHandle()函数,下面就来分析这个函数的代码,参见程序清单private void FillDataSet(DataSetBook dataset)dataset.EnforceConstraints=false;trythis.sqlConnection1.Open();this.sqlDataAdapter1.Fill(dataset);catch(System.Exception E)this.ErrorHandle(E);finallydataset.EnforceConstraints=true;this.sqlConnec

48、tion1.Close();这个函数功能是打开数据连接,同时通过数据适配器来填充数据集。在代码中要注意异常的处理。在上述的两段代码中都有一个ErrorHandle()函数,下面就来分析这个函数的代码,参见程序清单public void ErrorHandle(System.Exception E)MessageBox.Show(E.ToString();从程序清单中可见,这个函数通过传入的异常参数,利用MessageBox来显示异常信息。Book窗口加载时处理的第二个函数是DataPositonChange()函数。这个函数的作用是通过Label控件lblDataPosition来显示当前记录

49、在总记录中的位置,其代码实现请参加程序清单private void DatasetPostionChange()this.lblDatasetPosition.Text=(this.BindingContextthis.objDataSetBook,“Book“.Position+1)+“的“+(this.BindingContextthis.objDataSetBook,“Book“.Count);需要理解的是,BindingContextthis.objDataSetBook,”Book”.Position是次记录在总记录位置,Position从0开始,BingdingContextthis.objDataSetBook,”Book”.Count是记录的总条数。B

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

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报