#图书馆信息系统面向对象分析实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书馆信息系统面向对象分析实例。
总体问题的陈述:本项目的目的是创建一个用于对图书馆的图书进行管理的图书管理系统。
该项目的用户:该项目的用户是一个某大学的图书馆,它负责对其顾客提供图书借阅服务。
该项目的目标:总体上来说,项目的目标是提高图书管理的自动化水平,为图书业务过程提供更快捷的、更好的和更准确的服务。具体来讲,系统的目标包括:为借书者提供快速借书的服务;进行快速准确的图书和借书者的信息维护;图书管理和查询的自动化。
该系统的功能:系统功能是系统应该做的事情,例如系统提供的预定功能。应该识别出这些功能并把它们列入到逻辑相关联的功能组中。
注意:要验证某一个描述是否真是一个系统的功能,如下的判断语句应该成立:
系统应该做某一个描述
例如,系统应该做图书的预定。
然而,系统的属性是系统的非功能性的特性,这些非功能性特性和系统功能经常被混淆。例如,“易于使用”就是一个非功能性的特性。它是不符合我们上述的验证语句:“系统应该做易于使用”。系统属性不应该是功能规格说明书中的一部分,而应该是一个单独的系统属性规格说明文档。
对于系统的功能,我们应该对其分类,以便区分开各类功能的优先次序和识别出哪些是理所当然应该具备的系统功能。功能的分类包括:
明显的:应该履行的功能,并且用户应该知道这个功能是否已经被履行。
隐藏的:应该履行的功能,但功能的履行对用户不可见。很多使用底层技术的服务确实符合这种情况,例如,将数据保存到一个持久化存储机构中。隐藏的功能经常在采集需求的过程中被遗漏。
修饰性的:可选的,增加这些功能不会对成本和其它系统造成重要影响。
为此,我们给出该系统的借书基本功能如下:
F1.1记录借出的图书----借阅事件明显的
F1.2 查找书库中是否存在这种图书明显的
F1.3 从借书卡中读取借书者信息,并校验该信息明显的
F1.4 查找书库中这本书是否还有副本隐藏的
F1.5 当一次借阅完成后,削减该书的副本存书数量隐藏的
F1.6 管理员要使用系统,必须输入ID号和密码才行明显的
F1.7 查询显示借书信息明显的
F1.8 提供一个持久化存储机制隐藏的
F1.9 提供过程间的和系统间的通信机制隐藏的
系统属性:系统属性是系统的特性,它们并不是系统的功能,例如:易用、容错、响应时间、界面形式、平台等。系统属性具有一组可能的属性细节,这些属性细节往往是属性的一些离散的、表达模糊的符号值,例如:
响应时间=(生理上能够接受的时间段)
界面形式=(图形化的,基于表的,彩色比较平淡的)
在我们的案例中,要求借书查找时间小于1秒。
我们结合上面的图书馆管理系统的案例,来给出图书管理系统的问题域模型。我们首先看问题域中的图书、借阅、书目和借书者这四个类。
系统将通过计算机来处理图书、副本、借书者和借阅。借书者要求借书,给出要借图书的名称,出示借书证。系统查找所借的图书是否存在,若存在,同时还要查看该图书是否还有副本,如果有,再查询该借书者提供的借书证是否合法的注册用户,如果是,则办理借阅手续(登记借阅信息)。
图书是存放在图书馆中的一个书的名称,副本是一个图书的具体实例。一个图书可能有多
个副本,一个副本一定会对应一个图书。为简化起见,我们假定一次借阅(登记)只能借一本图书,同时会对应着一个借书证信息。一个借书者可以进行多次借阅。
首先找出业务对象:图书、副本、借书证。
系统需要处理的现实世界中的对象和概念:借阅、预定。
将要发生或已经发生的事件:已经预定。
下面给出其UML 表示的问题域的类图。 副本
借阅
10..1
参考
借书证1
0..n 具有预定
图书
0..n 1拥有
0..n
0..n 参考
图-2-1 图书管理系统中的问题域主要概念类图
问题域类图中的关系说明如下:
1、一个图书名称可以有多个同样图书的副本。
2、每一个副本一定要对应一个图书名称。
3、一次借阅必须记录一个图书的副本和一个借书证信息。
4、一个副本可以被借阅,也可以不被借阅。
5、一个借书证可以借多本书,也可以不借一本书。
6、一个借书证可以进行多个图书名称的预定,也可以不进行预定。
7、一次预定必须记录一个图书名称信息和一个借书证信息。
8、一个图书名称可以被多次预定,也可以不被预定。
术语表也是一个重要的内容,下面我们给出图书管理系统的术语表:
图书:图书是图书馆内最重要的对象,它是系统处理主要对象,图书是本书的信息描述,它包含了图书的名称,图书的作者以及图书的ISBN 统一出版编号等内容。
副本:副本是图书的一个实例,一个图书信息可以有多个副本,也可以没有副本。副本是借书时的真正对象。只有一个图书有可以供借阅的副本时,借书者才可以对其借阅。
借书证:业务中的借书证记录了借书者的信息,从计算机使用软件开发的角度来看,如果组织对象,应该叫“借书者信息”更确切。
借阅:借阅是图书管理中的一个最重要的业务活动,它需要进行一系列的操作才能完成一个借阅业务,包括查找图书、查找副本、核对借书证(借书者信息)等步骤。
预定:预定是图书管理中的一个业务活动,它也需要一系列的操作才能完成。
书籍:书籍是图书的一种形式。
杂志:杂志也是图书的一种形式。
图书管理员:图书馆的工作人员,直接为借书者提供服务的人,也是系统的直接使用者。 借书者:到图书馆借书的人,属于图书馆的用户(服务对象)。
借书者信息:一个记录了借书者完整信息的卡片,包括借书者的姓名、居住地址,所在城市和电话号码等内容。
有关的术语可能还有很多,这里就不再一一列出。