图书管理系统面向对象设计_第1页
图书管理系统面向对象设计_第2页
图书管理系统面向对象设计_第3页
图书管理系统面向对象设计_第4页
图书管理系统面向对象设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、. 第一章 绪论1.1 工程研究方向本课题的研究方向是力图通过对分层架构思想、软件工程、.NET平台以及Web2.0思想等知识的研究,寻找一种合理、简练、通用、易用、平安、具有良好的可维护性和可扩展性并且融入最新技术元素的基于.NET平台的分层架构模式,最后通过一个完整的系统实例展现出来。1.2 图书管理系统简介图书管理系统是为在校师生借阅图书设计的一个高效和便捷的网上平台。在操作性方面,采用图形用户界面技术,使系统能够以尽可能多的图形窗口和丰富便利的操作界面,通过鼠标或键盘的操作,为用户提供最简洁的使用方法。1.3 工程研究过程本工程实现总的路线是:收集需求、提出方案、设计实现和验证效果。在

2、分析阶段从整体到局部,对整个分层架构体系各个需求进展收集,明确各部件的职责;然后,针对其职责,提出几种设计方案,并进展设计实现;最后,从耦合度、可扩展性和可维护性等多方面对方案进展验证。第二章 开发环境及主要技术简介2.1 开发工具的介绍VisualStudio概述VisualStudio是微软公司推出的开发环境,是当前最流行的Windows平台应用程序开发环境。目前已经开发到9.0版本,也就是VisualStudio2008。VisualStudio可以用来创立Windows平台下的Windows应用程序和网络应用程序,也可以用来创立网络效劳、智能设备应用程序和Office插件。本工程采用的

3、VisualStudio版本为VisualStudio2008 SP3,并安装了这个扩展用于.NETFramework3.5应用程序的设计。.NET平台介绍.NET这个名称涵盖了微软的主要开发平台。这个主题十分广泛,包含了许多规,如编程语言、标准类库和工具等。它主要包括一下容。.NETFramework包括:monLanguageRuntimeCLR,通用语言运行环境,这是用于运行和加载应用程序的软件组件;根底类库是用于实现根本的输入输出,对根底数据构造的支持,对线程管理的支持等。中间层类库是用户可以使用这些类库完成数据库操作、*ML文件操作和网络通信等通用任务。.NET开发工具包括:Visu

4、al Studio用来开发和测试应用程序;E*pression Studio用来设计各种应用的展现层。ASP.NET用来创立动态的Web容和Web效劳器应用程序,这些都将采用诸如HTML、*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

5、.NET Framework的一局部,是一种可以在高度分布的Internet环境中简化应用程序开发的计算环境。.NET Framework包含公共语言运行库,它提供了各种核心效劳,如存管理、线程管理和代码平安。另一个重要组成局部.NET Framework类库为开发人员创立面向对象应用程序提供了强大了根底构造支持。ASP.NET提供了下面的优点:可管理性、平安、易于部署、增强的性能、灵活的输出、移动设备支持、扩展性和可用性、跟踪和调试、与.NET Framework集成以及与现有ASP应用程序的兼容性。2.1.4 AJA*简介AJA*Asynchronous JavaScript and *M

6、L技术是近几年的热门技术,可以说是对传统Web技术的革命,AJA*是使用客户端脚本与Web效劳器交换数据的Web应用开发方法。这样,Web页面不用打断交互流程进展重新加裁,就可以动态地更新。AJA*的核心是对象*ML HTTPRequest。该对象在Internet E*plorer 5中首次引入,它是一种支持异步请求的技术。简而言之,*ML HTTPRequest使您可以使用向效劳器提出请求并处理响应,而不阻塞用户。AJA*应用程序所用到的根本技术及其功能是:HTML用于建立Web表单并确定应用程序其他局部使用的字段;代码是运行AJA*应用程序的核心代码,帮助改良与效劳器应用程序的通信。AS

7、P.NET AJA*是对传统ASP.NET框架的一个扩展。作为扩展保存了原有ASP.NET应用程序特点。传统ASP.NET是一个支持同步访问模型为主的Web框架,虽然其也原生支持异步访问特性,但其并不能给展现层带来一个脱胎换骨的变化。ASP.NET AJA*正是为解决这一问题出现的解决方案,其从效劳器端与客户端两个方面扩展了ASP.NET创立异步展现层的能力。使用效劳器端编程与客户端编程各有优劣,后文有详细介绍,及本工程采用的方案的选择的说明。ASP.NET AJA*主要的设计目标有两点:第一,对现有的ASP.NET效劳器端模型进展扩展,让其可以生成实现富客户端的JavaScript代码。第二

8、,为ASP.NET增加客户端编程模型,让纯粹的客户端编程变得更加简单。这样,ASP.NET AJA*的特性就可以相应地分为效劳器端和客户端两个局部。2.2 IIS环境配置IIS(InternetInformationServer)是Internet信息效劳的简称,它是一种WindowsWeb效劳,可以使用它非常轻松地在Internet上发布信息。本系统使用IIS 7.0版本。安装步骤:(1)将IIS安装软件放在桌面上,单击“开场,单击“控制面板,双击“添加或删除程序启动“添加或删除程序应用程序。(2)在“添加或删除程序对话框左侧的列中,单击“添加/删除Windows组件。出现“Windows组

9、件向导后,单击“下一步。(3)在“Windows组件列表中选中“Internet信息效劳,单击“下一步,按照提示完成安装。翻开Internet信息效劳管理器:(1)从“开场菜单,选择“设置,然后选择“控制面板。(2)翻开“管理工具。(3)翻开“Internet效劳管理器。2.3 UML的介绍UMLUnified Modeling Language,统模语言的定义包括UML语义和UML表示法两个局部。(1)UML语义,即描述基于UML的准确元模型定义。元模型为UML的所有元素在语法和语义上提供了简单、一致和通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最正确表达方法所造成的影响。

10、(2)UML表示法,即定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在语义上它是UML元模型的实例。UML正是通过各种不同的图以及这些图之间的联系来更好地描述了软件系统开发的过程。标准建模语言UML由九种图组成,如图2.2所示:图2.2 UML九种模型图及其联系这九种模型图可以分为以下五类:第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者。第二类是静态图,包括类图、对象图和包图。其中类图描述系统中类的静态构造。不仅定义系统中的类,表示类之间的联系如关联、依赖和聚合等,也包括类的部构造类的属性和操作

11、。类图描述的是一种静态关系,在系统的整个生命周期都是有效的。包图由包或类组成,表示包与包之间的关系。包图用于描述系统的分层构造。第三类是行为图,描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变的类画状态图。而活动图描述满足用例要求所要进展的活动以及活动间的约束关系,有利于识别并行活动。第四类是交互图,描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;合作图描

12、述对象间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,合作图还显示对象以及它们之间的关系。如果强调时间和顺序,则使用顺序图;如果强调上下级关系,则选择合作图。这两种图合称为交互图。第五类是实现图。其中构件图描述代码部件的物理构造及各部件之间的依赖关系。一个部件可能是一个资源代码部件、一个二进制部件或一个可执行部件。它包含逻辑类或实现类的有关信息。构件图有助于分析和理解部件之间的相互影响程度。第三章 基于UML的需求分析基于UML的需求分析大致分为以下步骤:第一步:利用用例及用例图表示需求。从业务需求描述出发获取系统用户的工作流程;确定系统用户与用例、用例与用例图之

13、间的关系,生成用例图。第二步:利用包图及类图表示目标软件系统的总体框架构造。3.1 系统分析 可行性分析1. 经济可行性由于这个系统是一个小的操作软件,在利用计算机和操作人员是可以进展的,所以花费的资金不是太多,一般的小型企业是完全可以承受的2. 技术可行性利用现有的VisualStudio和MicrosoftSQLSEVER的数据库是可以进展代码书写和软件的编辑,技术的难度不是很大,自己是完全可以进展的。3. 运行可行性在现有的WINDOWS操作系统是完全可以运行的,不需要对计算机进展另外的升级不过最好的是使用最新的WINDOWS操作系统,这样可以最好的发挥该系统的操作性。4. 法律可行性由

14、于该系统是自己开发的一个学习的绿色软件,不存在于涉及到其他问题的事情的发生。综上所述,此系统开发目标已明确,在技术和经济等方面都可行。因此系统的开发是完全可行的。3.2 图书管理系统功能分析 图书管理系统涉及读者信息管理、借阅信息管理、图书信息管理等多方面的信息管理,系统的使用对象为图书管理员和读者。他们在使用系统时,各拥有不同的权限,以完成各自需要的工作。下面对图书管理系统中主要的业务流程进展简要分析:在图书管理系统中,图书管理员要为每个读者建立借阅账户,记录读者的个人信息和图书借阅信息。读者个人账户建立成功后,给读者发借阅卡,可以通过图书管理员借阅、归还图书,也可以通过相应的终端查询个人的

15、借阅信息,检索图书。读者借阅图书时,先输入借阅证卡号、密码,验证借阅证的有效性及是否可续借,无效则向读者提示原因,如“卡号不对、“密码不对、“已借满,不能再借等;有效则显示读者的根本信息,例如读者的个人资料、已经借阅的图书信息等;读者通过图书管理员向系统提出借阅请求,管理员操作管理终端,登记读者新借阅图书的相关信息。相应地,读者归还图书时,也需验证借阅卡号、密码等信息,验证借阅证的有效性,假设不对,系统给出相关的提示;通过系统验证后,显示读者根本信息及图书借阅信息;读者向图书管理员递交归还的图书,管理员验证无误后,删除读者该书的借阅信息;假设读者超期归还,则先向管理员递交图书滞纳费用,归还图书

16、;另外,图书馆图书资料变更,如新购进图书或图书被损毁不能再使用时,图书管理员要相应的将图书信息入库或注销;同理,假设有新增读者或需要注销读者的,图书管理员应通过系统管理终端进展记录。综上所述,一个典型的图书管理系统应包含图书信息管理、借阅信息管理、读者信息管理三局部数据管理,其中图书管理员可实现如下操作:(1)增加、删除图书;(2)增加、删除读者;(3)借出、归还图书记录;(4)查询读者信息、图书信息;普通读者可以实现如下操作:(1)修改个人信息(如登陆密码,或其他个人信息等)(2)查询个人借阅信息和检索图书;如以下图1示,简要的表达了上述图书管理系统的根本功能。图书管理系统图书借阅管理读者信

17、息管理书籍信息管理借出超期丢失增加读者删除读者新书入库注销图书正常归还图1 图书管理系统整体功能图示第四章 图书管理系统重要用例的实现Use Case图即用例图,是从外部用户的角度来描述系统功能的一种需求表达方式。一个系统常常包含了众多的用例,每个用例表达了用户对系统的一项需求或描述了人们使用系统*项功能的途径。使用系统的不同功能,其操作的场景不同。而使用一样的功能,其场景则相似。将同一用例的场景用文字描述出来就得到了系统用例描述。完整的描述用例,通常包括用例名称、参与执行者、前置条件、事件流、后置条件等。假设用UML图形机制表达,便是系统的用例图。通常,我们将二者相结合,能清晰的表达出系统的

18、用例。下面将对图书管理中常见的借书、还书、新增入库书、注销图书、新增读者、删除读者等典型的用例进展详细描述,并给出用例图。4.1借阅图书用例借阅图书用例描述从图书馆借阅图书,是图书馆提供的一项根本效劳。在图书馆里系统的建模过程中,将这一行为抽象为一个用例。在不考虑软件的具体实现细节根底上,给出如下的用例描述。Use Case 名称借书执行者读者前置条件读者通过系统验证后,成功登陆借阅系统事件流A输入读者的借阅证号; 假设输入不正确,则提示“您输入的借阅证有误,请重新输入! 输入正确,则提示“请您输入您的密码!B输入借阅证密码; 假设输入不正确,则提示“您输入的密码有误,请重新输入! 成功登陆系

19、统后,显示读者已借阅图书信息,提示超期未归还的图书;C输入要借阅图书的; 假设读者已借满,提示“您已借满,请先归还局部图书再来借,! 假设读者可以正常借阅,提示“您确定要借阅这本书吗?是,请点确定!D. 读者点击“确定,借阅证号增加一条借阅信息记录; 读者点击“放弃,回到步骤C.重新选择图书;E. 借阅完成,点击“退出,退出系统。后置条件读者成功借阅图书,图书管理系统保存借阅记录并修改库存图书数量,读者借出数量。借阅图书用例图根据4.1.1的用例描述,画出借阅图书用例图,见图2。图2 借阅图书用例图4.2归还图书用例4.2.1归还图书用例描述如同借阅图书一样,归还图书同样是图书馆的一项业务,将

20、其抽象为一个用例,并对此用例的外部实现过程进展描述。Use Case 名称还书执行者读者前置条件读者通过系统验证后,成功登陆借阅系统事件流A输入读者的借阅证号; 假设输入不正确,则提示“您输入的借阅证有误,请重新输入! 输入正确,则提示“请您输入您的密码!B输入借阅证密码; 假设输入不正确,则提示“您输入的密码有误,请重新输入! 成功登陆系统后,显示读者已借阅图书信息,提示超期未归还的图书;有超期未还的图书,调用“计算超期罚款金额 丧失图书,调用“计算丧失罚款金额C输入要还的图书; 假设输入错误,提示“您未借阅该图书! 假设输入正确,提示“您确定要归还这本书吗?D读者点击“确定,读者借阅的图书

21、信息记录消失; 读者点击“放弃,返回到步骤C.E完成还书,点击“退出,退出系统;后置条件假设读者成功完成还书,在图书管理系统中删除借阅记录,并修改图书库库存图书数量和读者借出数量。归还图书用例图基于4.2.1的用例描述,画出其用例图,见图3示。图3 归还图书用例图4.3新增入库图书用例新增入库图书用例描述图书馆里的图书根据馆藏需求进展更新是一项日常业务,因此在设计图书管理系统时,也要为此设计用例。Use Case 名称新增图书入库执行者管理员前置条件管理员成功登陆图书管理系统的书籍信息管理子系统事件流A.点击“新增;B.登记图书的信息,作者,; C.给图书进展,并记录条形编码信息;D.贴“条形

22、码;E.检查图书是否入库;F.完成,退出系统。后置条件新增图书入库成功,图书管理系统可以查询到图书信息。新增入库图书用例图基于4.3.1的用例描述,画出用例图,见图4示。 图4 新增入库图书用例图4.4注销库存图书用例注销库存图书用例描述当图书馆里藏书,由于受到毁损或其他意外的破坏而无法再使用的情况下,需要对馆藏图书进展注销。下面给出其用例描述。Use Case 名称注销库存图书执行者管理员前置条件管理员成功登陆图书管理系统的书籍信息管理子系统事件流A.点击“注销图书B.查询要注销的图书借阅信息; 假设该书借阅出库,则暂时不能注销,提示“该书借阅中,不能注销; 假设该书未被借阅,提示“确定要注

23、销此书吗?C.点击“确定注销图书; 假设不能肯定是否该注销,点击“放弃,返回上级界面;后置条件成功注销图书后,图书管理系统中不能查询到图书信息。注销库存图书用例图基于4.4.1的用例描述,画出用例图,见图5示。图5 图书注销用例图4.5 新增读者用例新增读者用例描述读者第一次来办理图书借阅业务,应当办理图书借阅卡,图书管理员将其读者信息登记入读者数据库,便于对读者借阅信息进展统一管理,其用例描述如下。Use Case 名称新增读者执行者管理员前置条件管理员成功登陆图书管理系统读者信息管理子系统事件流A.点击“创立读者;B.将读者,年龄,单位,联系等根本信息记录;C.将以上信息存入读者信息库,并

24、发放借阅卡,卡上记录读者个人信息;D.创立完成,退出系统;后置条件成功创立读者,读者信息可以被管理员查询到,读者可以正常借阅图书。新增读者用例图基于4.5.1的用例描述,画出其用例图,见图6示。 图6 增加读者用例图4.6 删除读者用例4.6.1删除读者用例描述当读者由于工作地点变化或其他原因,无需再使用图书馆的图书资料时,应当为其办理注销,即从读者数据库中删除其信息。对此业务抽象出用例,并给出用例描述。Use Case 名称删除读者执行者管理员前置条件管理员成功登陆图书管理系统读者信息管理子系统事件流A.查询读者的借阅信息记录; 读者有未归还的图书,提示“读者有借阅图书未还,暂时不能删除B.点击“删除读者; 提示“删除读者后,将不能借阅本馆图书,您确定吗?C.点击“确定删除; 假设不确定,点击“放弃,返回上层界面;D.注销读者的借阅卡;E.删除完成,退出系统;后置条件成功删除读者,读者信息从数据库中删除,不能借阅图书。删除读者用例图基于4.6.1的用力描述,画出用例图,见图7示。 图7 删除读者用例图4.7整体用例框图结合以上典型用例图及用例图之间的关系,画出如下系统的整体框图见图8。图书管理系统新增入库图书借书还书借阅情况查询“包含“包含“包含“丧失罚款读者管理借阅管理注销图书管理员超期罚款款“扩展“扩展“读者图书信息查询删除读者增加读者图书管理“包含“图8 图书管理系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论