《2022年图书管理系统面向对象设计宣贯 .pdf》由会员分享,可在线阅读,更多相关《2022年图书管理系统面向对象设计宣贯 .pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章绪论1.1 项目研究方向本课题的研究方向是力图通过对分层架构思想、软件工程、.NET 平台以及Web2.0 思想等知识的研究,寻找一种合理、简练、通用、易用、安全、具有良好的可维护性和可扩展性并且融入最新技术元素的基于.NET 平台的分层架构模式,最后通过一个完整的系统实例展现出来。1.2 图书管理系统简介图书管理系统是为在校师生借阅图书设计的一个高效和便捷的网上平台。在操作性方面, 采用图形用户界面技术, 使系统能够以尽可能多的图形窗口和丰富便利的操作界面, 通过鼠标或键盘的操作, 为用户提供最简洁的使用方法。1.3 项目研究过程本项目实现总的路线是:收集需求、提出方案、设计实现和验证
2、效果。在分析阶段从整体到部分, 对整个分层架构体系各个需求进行收集,明确各部件的职责;然后,针对其职责, 提出几种设计方案, 并进行设计实现; 最后,从耦合度、可扩展性和可维护性等多方面对方案进行验证。第二章开发环境及主要技术简介2.1 开发工具的介绍2.1.1 Visual Studio概述Visual Studio 是微软公司推出的开发环境,是当前最流行的Windows平台应用程序开发环境。目前已经开发到9.0 版本,也就是Visual Studio 2008。Visual Studio 可以用来创建 Windows平台下的 Windows应用程序和网络应用程序,也可以用来创建网络服务、智
3、能设备应用程序和Office插件。本项目采用的 Visual Studio版本为 Visual Studio 2008 SP3,并安装了ASP.NET 2.0 AJAX Extensions 这个扩展用于 .NET Framework 3.5 应用程序的设计。2.1.2 .NET平台介绍.NET 这个名称涵盖了微软的主要开发平台。这个主题十分广泛,包含了许名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 18 页 - - - - - - - - - 多规范,如编程语言、标准
4、类库和工具等。它主要包括一下内容。.NET Framework 包括: Common Language Runtime (CLR ,通用语言运行环境) ,这是用于运行和加载应用程序的软件组件;基础类库是用于实现基本的输入输出,对基础数据结构的支持, 对线程管理的支持等。 中间层类库是用户可以使用这些类库完成数据库操作、XML 文件操作和网络通信等通用任务。.NET开发工具包括: Visual Studio 用来开发和测试应用程序;Expression Studio 用来设计各种应用的展现层。ASP.NET 用来创建动态的 Web内容和 Web 服务器应用程序, 这些都将采用诸如 HTML 、X
5、ML和 SOAP 等 Internet协议和数据格式。 .NET Framework 的组成如图 2.1 所示。图 2.1 .NET Framework结构图2.1.3 ASP.NET 简介ASP.NET 是统一的 Web应用程序平台, 它提供了为建立和部署企业级Web应用程序所必需的服务。 ASP.NET 为面向任何浏览器或设备的安全的、强大的、可升级的和稳定的应用程序提供了新的编程模型和基础结构。ASP.NET 是 Microsoft.NET Framework的一部分,是一种可以在高度分布的Internet环境中简化应用程序开发的计算环境。.NET Framework 包含公共语言运行库
6、,它提供了各种核心服务,如内存管理、线程管理和代码安全。另一个重要组成部分 .NET Framework 类库为开发人员创建面向对象应用程序提供了强大名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 18 页 - - - - - - - - - 了基础结构支持。ASP.NET 提供了下面的优点:可管理性、安全、易于部署、增强的性能、灵活的输出、移动设备支持、扩展性和可用性、跟踪和调试、与.NET Framework集成以及与现有 ASP应用程序的兼容性。2.1.4 AJAX
7、 简介AJAX (Asynchronous JavaScript and XML)技术是近几年的热门技术,可以说是对传统 Web技术的革命, AJAX是使用客户端脚本与Web服务器交换数据的 Web应用开发方法。这样, Web 页面不用打断交互流程进行重新加裁,就可以动态地更新。AJAX的核心是对象 XML HTTPRequest 。该对象在 Internet Explorer 5 中首次引入,它是一种支持异步请求的技术。简而言之,XML HTTPRequest使您可以使用向服务器提出请求并处理响应,而不阻塞用户。AJAX应用程序所用到的基本技术及其功能是: HTML 用于建立 Web表单并确
8、定应用程序其他部分使用的字段;代码是运行 AJAX应用程序的核心代码, 帮助改进与服务器应用程序的通信。ASP.NET AJAX是对传统ASP.NET框架的一个扩展。作为扩展保留了原有ASP.NET 应用程序特点。传统 ASP.NET 是一个支持同步访问模型为主的Web 框架,虽然其也原生支持异步访问特性,但其并不能给展现层带来一个脱胎换骨的变化。ASP.NET AJAX正是为解决这一问题出现的解决方案,其从服务器端与客户端两个方面扩展了ASP.NET 创建异步展现层的能力。 使用服务器端编程与客户端编程各有优劣,后文有详细介绍,及本项目采用的方案的选择的说明。ASP.NET AJAX 主要的
9、设计目标有两点:第一,对现有的 ASP.NET 服务器端模型进行扩展, 让其可以生成实现富客户端的 JavaScript代码。第二, 为 ASP.NET 增加客户端编程模型, 让纯粹的客户端编程变得更加简单。这样, ASP.NET AJAX 的特性就可以相应地分为服务器端和客户端两个部分。2.2 IIS环境配置IIS(Internet Information Server)是 Internet信息服务的简称,它是一种 Windows Web服务,可以使用它非常轻松地在Internet上发布信息。本系统使用 IIS 7.0版本。名师资料总结 - - -精品资料欢迎下载 - - - - - - -
10、 - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 18 页 - - - - - - - - - 安装步骤:(1) 将 IIS 安装软件放在桌面上, 单击“开始” ,单击“控制面板”,双击“添加或删除程序”启动“添加或删除程序”应用程序。(2) 在“添加或删除程序”对话框左侧的列中,单击“添加/ 删除 Windows组件” 。出现“ Windows组件向导”后,单击“下一步” 。(3) 在“Windows组件”列表中选中“ Internet信息服务”,单击“下一步”,按照提示完成安装。打开 Internet信息服务管理器:(1) 从“开始菜单
11、”,选择“设置”,然后选择“控制面板” 。(2) 打开“管理工具”。(3) 打开“ Internet服务管理器”。2.3 UML 的介绍UML (Unified Modeling Language,统一建模语言)的定义包括UML 语义和UML 表示法两个部分。(1)UML语义,即描述基于UML的精确元模型定义。元模型为UML 的所有元素在语法和语义上提供了简单、 一致和通用的定义性说明, 使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。(2)UML 表示法,即定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达
12、的是应用级的模型,在语义上它是UML 元模型的实例。 UML 正是通过各种不同的图以及这些图之间的联系来更好地描述了软件系统开发的过程。标准建模语言 UML 由九种图组成,如图2.2 所示:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 18 页 - - - - - - - - - 图 2.2 UML 九种模型图及其联系这九种模型图可以分为下列五类:第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者。第二类是静态图, 包括类图、 对象图和包图。 其中类图描述系统
13、中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖和聚合等,也包括类的内部结构(类的属性和操作) 。类图描述的是一种静态关系,在系统的整个生命周期都是有效的。 包图由包或类组成, 表示包与包之间的关系。 包图用于描述系统的分层结构。第三类是行为图, 描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。 在实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图。而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。第四类是交互图,
14、 描述对象间的交互关系。 其中顺序图显示对象之间的动态合作关系, 它强调对象之间消息发送的顺序,同时显示对象之间的交互; 合作图描述对象间的协作关系, 合作图跟顺序图相似, 显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择合作图。这两种图合称为交互图。第五类是实现图。其中构件图描述代码部件的物理结构及各部件之间的依赖关系。一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的有关信息。 构件图有助于分析和理解部件之间的相互影名师资料总结 - - -精品资料欢迎下载 - -
15、 - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 18 页 - - - - - - - - - 响程度。第三章基于 UML 的需求分析基于 UML 的需求分析大致分为以下步骤:第一步:利用用例及用例图表示需求。 从业务需求描述出发获取系统用户的工作流程;确定系统用户与用例、用例与用例图之间的关系,生成用例图。第二步:利用包图及类图表示目标软件系统的总体框架结构。3.1 系统分析3.1.1 可行性分析1. 经济可行性由于这个系统是一个小的操作软件,在利用计算机和操作人员是可以进行的,所以花费的资金不是太多,一般的小型企业是
16、完全可以承受的2. 技术可行性利用现有的 Visual Studio 和 MicrosoftSQLSEVER的数据库是可以进行代码书写和软件的编辑,技术的难度不是很大,自己是完全可以进行的。3. 运行可行性在现有的 WINDOWS操作系统是完全可以运行的, 不需要对计算机进行另外的升级不过最好的是使用最新的WINDOWS操作系统,这样可以最好的发挥该系统的操作性。4. 法律可行性由于该系统是自己开发的一个学习的绿色软件,不存在于涉及到其他问题的事情的发生。综上所述,此系统开发目标已明确, 在技术和经济等方面都可行。 因此系统的开发是完全可行的。3.2 图书管理系统功能分析图书管理系统涉及读者信
17、息管理、借阅信息管理、 图书信息管理等多方面的信息管理,系统的使用对象为图书管理员和读者。他们在使用系统时,各拥有不同的权限,以完成各自需要的工作。下面对图书管理系统中主要的业务流程进行简要分析:在图书管理系统中,图书管理员要为每个读者建立借阅账户,记录读者的个人信息和图书借阅信息。 读者个人账户建立成功后,给读者发借阅卡,可以通过图书管理员借阅、归还图书,也可以通过相应的终端查询个人的借阅信息,检索图书。读者借阅图书时,先输入借阅证卡号、密码,验证借阅证的有效性及是否可续借,无效则向读者提示原因,如“卡号不对”、 “密码不对” 、 “已借满,不能再借”等;有效则显示读者的基本信息,例如读者的
18、个人资料、已经借阅的图书信息等;读者通过图书管理员向系名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 18 页 - - - - - - - - - 统提出借阅请求,管理员操作管理终端,登记读者新借阅图书的相关信息。相应地,读者归还图书时,也需验证借阅卡号、密码等信息,验证借阅证的有效性,若不对,系统给出相关的提示;通过系统验证后,显示读者基本信息及图书借阅信息;读者向图书管理员递交归还的图书,管理员验证无误后,删除读者该书的借阅信息;若读者超期归还,则先向管理员递交图书滞
19、纳费用,归还图书;另外,图书馆图书资料变更,如新购进图书或图书被损毁不能再使用时,图书管理员要相应的将图书信息入库或注销;同理, 若有新增读者帐号或需要注销读者帐号的,图书管理员应通过系统管理终端进行记录。综上所述,一个典型的图书管理系统应包含图书信息管理、借阅信息管理、读者信息管理三部分数据管理,其中图书管理员可实现如下操作:(1) 增加、删除图书;(2) 增加、删除读者;(3) 借出、归还图书记录;(4) 查询读者信息、图书信息;普通读者可以实现如下操作:(1) 修改个人信息 ( 如登陆密码,或其他个人信息等) (2) 查询个人借阅信息和检索图书;如下图 1 示,简要的表达了上述图书管理系
20、统的基本功能。图 1 图书管理系统整体功能图示图书管理系统图书借阅管理读者信息管理书籍信 息管理借出超期丢失增加读者删除读者新书入 库注销图书正常归还名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 18 页 - - - - - - - - - 第四章图书管理系统重要用例的实现Use Case 图即用例图,是从外部用户的角度来描述系统功能的一种需求表达方式。一个系统常常包含了众多的用例,每个用例表达了用户对系统的一项需求或描述了人们使用系统某项功能的途径。使用系统的不同功能
21、,其操作的场景不同。而使用相同的功能,其场景则相似。 将同一用例的场景用文字描述出来就得到了系统用例描述。完整的描述用例,通常包括用例名称、参与执行者、前置条件、事件流、后置条件等。若用UML图形机制表达,便是系统的用例图。通常,我们将二者相结合,能清晰的表达出系统的用例。下面将对图书管理中常见的借书、还书、新增入库书、注销图书、新增读者、删除读者等典型的用例进行详细描述,并给出用例图。4.1 借阅图书用例4.1.1 借阅图书用例描述从图书馆借阅图书,是图书馆提供的一项基本服务。在图书馆里系统的建模过程中,将这一行为抽象为一个用例。在不考虑软件的具体实现细节基础上,给出如下的用例描述。Use
22、Case 名称借书执行者读者前置条件读者通过系统验证后,成功登陆借阅系统事件流A输入读者的借阅证号;若输入不正确,则提示“您输入的借阅证号码有误,请重新输入!”输入正确,则提示“请您输入您的密码! ”B输入借阅证密码;若输入不正确,则提示“您输入的密码有误,请重新输入!”成功登陆系统后, 显示读者已借阅图书信息,提示超期未归还的图书;C输入要借阅图书的编号;若读者已借满,提示“您已借满,请先归还部分图书再来借,谢谢!”若读者可以正常借阅,提示“您确定要借阅这本书吗?是,请点确定!”D. 读者点击“确定” ,借阅证号增加一条借阅信息记录;读者点击“放弃” ,回到步骤C.重新选择图书;名师资料总结
23、 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 18 页 - - - - - - - - - E. 借阅完成,点击“退出”,退出系统。后置条件读者成功借阅图书,图书管理系统保存借阅记录并修改库存图书数量,读者借出数量。4.1.2 借阅图书用例图根据 4.1.1的用例描述,画出借阅图书用例图,见图2。图 2 借阅图书用例图4.2 归还图书用例4.2.1 归还图书用例描述如同借阅图书一样,归还图书同样是图书馆的一项业务,将其抽象为一个用例,并对此用例的外部实现过程进行描述。Use Cas
24、e 名称还书执行者读者前置条件读者通过系统验证后,成功登陆借阅系统名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 18 页 - - - - - - - - - 事件流A输入读者的借阅证号;若输入不正确,则提示“您输入的借阅证号码有误,请重新输入!”输入正确,则提示“请您输入您的密码! ”B输入借阅证密码;若输入不正确,则提示“您输入的密码有误,请重新输入!”成功登陆系统后, 显示读者已借阅图书信息,提示超期未归还的图书;有超期未还的图书,调用“计算超期罚款金额”丢失图书,
25、调用“计算丢失罚款金额”C输入要还的图书编号;若输入错误,提示“您未借阅该图书!”若输入正确,提示“您确定要归还这本书吗?”D读者点击“确定” ,读者借阅的图书信息记录消失;读者点击“放弃” ,返回到步骤C. E完成还书,点击“退出”,退出系统;后置条件若读者成功完成还书,在图书管理系统中删除借阅记录,并修改图书库库存图书数量和读者借出数量。4.2.2 归还图书用例图基于 4.2.1的用例描述,画出其用例图,见图3 示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 1
26、8 页 - - - - - - - - - 图 3 归还图书用例图4.3 新增入库图书用例4.3.1 新增入库图书用例描述图书馆里的图书根据馆藏需求进行更新是一项日常业务,因此在设计图书管理系统时,也要为此设计用例。Use Case 名称新增图书入库执行者管理员前置条件管理员成功登陆图书管理系统的书籍信息管理子系统事件流A.点击“新增” ;B.登记图书的信息,作者,出版社;C.给图书进行编号,并记录条形编码信息;D.张贴“条形码” ;E.检查图书编号是否入库;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
27、- - - - - 第 11 页,共 18 页 - - - - - - - - - F. 完成,退出系统。后置条件新增图书入库成功,图书管理系统可以查询到图书信息。4.3.2 新增入库图书用例图基于 4.3.1的用例描述,画出用例图,见图4 示。图 4 新增入库图书用例图4.4 注销库存图书用例4.4.1 注销库存图书用例描述当图书馆里藏书,由于受到毁损或其他意外的破坏而无法再使用的情况下,需要对馆藏图书进行注销。下面给出其用例描述。Use Case 名称注销库存图书执行者管理员前置条件管理员成功登陆图书管理系统的书籍信息管理子系统名师资料总结 - - -精品资料欢迎下载 - - - - -
28、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 18 页 - - - - - - - - - 事件流A.点击“注销图书”B.查询要注销的图书借阅信息;若该书借阅出库,则暂时不能注销,提示“该书借阅中,不能注销”;若该书未被借阅,提示“确定要注销此书吗?”C.点击“确定”注销图书;若不能肯定是否该注销, 点击“放弃”,返回上级界面;后置条件成功注销图书后,图书管理系统中不能查询到图书信息。4.4.2 注销库存图书用例图基于 4.4.1的用例描述,画出用例图,见图5 示。图 5 图书注销用例图4.5 新增读者用例4.5.1 新增读者用
29、例描述读者第一次来办理图书借阅业务,应当办理图书借阅卡,图书管理员将其读者信息登记入读者数据库,便于对读者借阅信息进行统一管理,其用例描述如下。Use Case 名称新增读者执行者管理员名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 18 页 - - - - - - - - - 前置条件管理员成功登陆图书管理系统读者信息管理子系统事件流A.点击“创建读者” ;B.将读者姓名,年龄,单位,联系电话等基本信息记录;C.将以上信息存入读者信息库,并发放借阅卡,卡上记录读者个人
30、信息;D.创建完成,退出系统;后置条件成功创建读者,读者信息可以被管理员查询到,读者可以正常借阅图书。4.5.2 新增读者用例图基于 4.5.1的用例描述,画出其用例图,见图6 示。图 6 增加读者用例图4.6 删除读者用例4.6.1 删除读者用例描述当读者由于工作地点变化或其他原因,无需再使用图书馆的图书资料时,应当为其办理注销,即从读者数据库中删除其信息。对此业务抽象出用例,并给出用例描述。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 18 页 - - - - -
31、 - - - - Use Case 名称删除读者执行者管理员前置条件管理员成功登陆图书管理系统读者信息管理子系统事件流A.查询读者的借阅信息记录;读者有未归还的图书,提示“读者有借阅图书未还,暂时不能删除”B.点击“删除读者” ;提示“删除读者后,将不能借阅本馆图书,您确定吗?”C.点击“确定删除” ;若不确定,点击“放弃”,返回上层界面;D.注销读者的借阅卡;E.删除完成,退出系统;后置条件成功删除读者,读者信息从数据库中删除,不能借阅图书。4.6.2 删除读者用例图基于 4.6.1的用力描述,画出用例图,见图7 示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - -
32、- - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 18 页 - - - - - - - - - 图 7 删除读者用例图4.7 整体用例框图结合以上典型用例图及用例图之间的关系,画出如下系统的整体框图见图8。图书管理系统新增入库图书借书还书借阅情况查询包含包含包含丢失罚款读者管理借阅管理注销图书管理员超期罚款扩展扩展读者图 书 信息查询删除读者增加读者图书管理包含名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 18 页 -
33、 - - - - - - - - 图 8 图书管理系统的整体用例框图第五章系统的设计在以外部用户的角度对图书管理系统进行了初步需求分析之后,得到了系统各个业务的用例图,系统的顶层架构,初步得到了目标系统的模型。不难想象, 一个大型的软件系统,其具体的用例必然会众多而复杂,为了进一步简化分析,依据具体用例之间的关系,对用例进行分类。经过分类之后, 系统化为了各个更小的子系统。 在 UML中,采用包图的语言机制来实现这种子系统的描述。图 9 所示,即用包图描述了本文所述的图书馆里系统的基本功能。图 9“图书管理系统”包图接下来需要对各个子系统中的具体用例的实现进行更深层次的刻画,即考虑到软件的具体
34、实现。一个系统用例,对外部用户而言是系统为其提供的一项“服务”,而为了实现这个“服务”,则需要系统内部众多对象之间相互合作来共同完成。如何精确刻画这些幕后的软件行为, 顺序图便是UML描述软件行为图的一种,它可以对对象之间消息传递的先后的动态交互过程进行精确描述。选择本文所述目标系统的典型用例“借阅图书”,画出其顺序图,见图10 示。图书管理系统查询与借阅子系统借阅管理子系统信息管理子系统图 书 检索图 书 新增/注销借书还书读 者 增加/删除借 阅 情况查询名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
35、- - - - - 第 17 页,共 18 页 - - - - - - - - - 图 10“借书”顺序图由以上顺序图,能较容易的理解“借书”的过程的背后的对象之间的协作关系。在从系统的角度描述了用例实现之后,需要进一步考虑系统的技术支撑方案,并将其与用例的实现相结合。在此基础上,从人机交互的角度考虑,设计友好的用户界面。至此,已基本完成了软件的分析与设计过程。当然, 仅有这些还不够,设计出性能优良的软件系统,还必须在以上初步的分析与设计的基础上, 按照软件工程的相关指导原则,进一步精化、优化软件系统的整体架构、系统的静态模型和动态行为模型。第六章数据库设计第七章系统测试读者借阅记录图书1:获取读者信息7:获取图书信息对话框2:显示读者信息8:显示图书信息4:显示借阅记录3:查找某个读者5:判定某个读者6:提示能否继续9:添加借阅记录10: 显示借阅记录名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 18 页 - - - - - - - - -