1案例分析——图书馆管理系统问题陈述学院图书馆需要一个新的图书馆管理系统(LibraryManagementSystem,LMS)跟踪和管理其资源。图书馆必须管理的最明显的资源是它的图书。图书由图书馆顾客借出、还入和预定。图书也可能处于特殊的状态,如被预留或者它们仅作为参考书。在这些情况下,图书是不能被借走的。当资源逾期两周时,催还函会寄给顾客。图书每逾期一天,顾客将被罚0.2元,每本书最多罚款50元。系统同时考虑提供电子读物服务,目前只提供电子读物的目录查询服务,不久的将来将提供电子读物全文服务。用户可通过网络方式访问读图书馆管理信息系统。图书馆还有其他可以借出的资源,包括音乐CD、软件和录像带,这些资源每次只能被借出一周。2该图书馆管理信息系统服务对象有两部分人:注册用户和一般读者。一般读者经注册后成为注册用户,注册用户可以在图书馆借阅图书,其他人员只可查阅图书目录,但不能借阅图书。顾客也有不同身份,这些身份能够影响一本书可能被借出的时间。顾客的身份也决定他/她能获得何种服务。学生借书可借出四周,老师可借阅三个月,图书馆工作人员可以把书保留整整一年。只要没有其他顾客要求借阅,任何可借出的图书馆资源都可以续借。每一学期老师和图书馆工作人员可能在一个学期中要求为他预留一本书或借人外部资源(不属于该图书馆的图书、报纸、唱片、音乐CD、杂志或磁带)并预留。3n图书馆也必须管理收集的大量周刊、月刊和季刊杂志,这些杂志不能被借出,仅作为参考资料之用。这些杂志按年装订成卷或录成微缩胶片。另外,图书馆工作人员的工作包括将书放回书架,更新杂志订阅和订购新的图书馆资源。n图书馆工作人员也提供一些其他服务来支持研究机构的活动和一般的公众。24台电脑分布在图书馆中。这些电脑提供了对各种数据库的访问,通过最新的浏览器软件进行索引和在因特网上进行馆际互借。4有指定的图书馆工作人员来帮助顾客像使用一般书目索引一样使用基于电脑的工具。图书馆也必须联网到其他的图书馆,以满足馆际互借的要求。这些相互连接的图书馆允许顾客可以直接访问它们的馆藏。n图书馆工作人员的最后职责是获取和淘汰馆藏图书。在获取新书的过程中,他们试图在满足顾客的要求和达到广泛的收集之间取得平衡。当图书的内容已经过时并且没有历史价值时,这本图书将被淘汰。理想情况下,当一本书过时后,它只有在一本内容更新的书在馆藏中代替它时才会被淘汰。5图书馆组织结构为了对系统有一个全貌性的了解,首先要对系统内部人员结构、组织及用户情况有所了解。图书馆系统的组织结构如图3-22所示。馆长办公室财务室采编室学术论文室图书借阅室电子阅览室期刊阅览室技术阅览室图3-22图书馆管理信息系统的组织结构6图书馆由馆长负责全面工作,下设办公室、财务室、采编室、学术论文室、图书借阅室、电子阅览室、期刊阅览室和技术支持室。各部门的业务职责如下。办公室:办公室协助馆长负责日常工作,了解客户需求,制定采购计划。财务室:财务室负责财务方面的工作。采编室:采编室负责图书的采购,入库和图书编目,编目后的图书粘贴标签,并送图书借阅室上架。学术论文室:负责学术论文的收集整理。图书借阅室:提供对读者的书目查询服务和图书借阅服务。电子阅览室:收集整理电子读物,准备提供电子读物的借阅服务,目前可以提供目录查询和借阅。期刊阅览室:负责情况的收集整理和借阅。技术支持室:负责对图书馆的网络和计算机系统提供技术支持。7系统业务流程分析系统的业务室系统要达到的业务目标,业务流程分析是系统分析的基础环节。图书馆管理信息系统的业务流程如图3-23所示。读者借书目录借书单注册登记读者信箱采编室电子读物表入库单采购员图书登记表借阅者登记表借阅管理员读者登记表图书馆管理员图3-23图书馆管理信息系统的业务流程8通过业务流程调查,理清图书馆管理系统的主要业务和业务的流程。图书馆管理员编制图书采购计划,由采购员负责新书的采购工作。采购图书入库后,交采编室编目,粘贴标签,产生图书目录。图书交图书借阅室上架,供读者借阅。采编后的电子读物交电子阅览室。读者分为注册读者和非注册读者,只有注册读者可以在本图书馆借书,非注册读者可查询目录但不能借书。读者填写注册登记表交图书馆的管理员审核后,记人读者登记表,成为注册读者,发给借书证。注册读者借书时,需填写借书单,连同借书证一起交给借阅室管理员,借阅管理员核对无误后,填写借阅登记表,修改图书登记表中该书的数量,取书交给读者。图书馆设读者信箱,读者需要但没有库存的图书,读者可以通过读者信箱反映。图书馆管理员定期处理读者信箱中的意见,将读者需要的图书编制成图书采购计划交采购员购买。9数据流程图n数据流程图时全面描述信息系统逻辑模型的工具,它抽象概括地把信息系统中各种业务处理过程联系起来。以下时图书馆管理信息系统地数据流程图。(1)零层数据流程图3-24所示图书馆管理员图书馆管理员图书采编信息图书借阅读者留言汇总库存图书查询借阅情况统计书目查询图书借阅预定01图书馆管理员10(2)1层数据流程图3-25所示办公室P7读者管理系统读者库P6图书维护系统图书馆管理员采编室借阅室图书馆管理员库存图书统计借阅情况统计读者管理信息(D03)P1读者管理系统图书采编信息图书库P3图书查询系统读者P2图书借阅系统图书借阅借阅库P4图书预定系统P8电子图书系统电子书库读者库留言库读者留言汇总P5读者留言系统读者留言书目查询图书预定电子图书借阅读者留言11(3)2层数据流程图n图书馆管理信息系统的2层数据流程图有:图书采编系统数据流程图、图书借阅系统数据流程图、图书查询系统数据流程图、图书预定系统数据流程图、读者留言系统数据流程图、图书维护系统数据流程图、读者管理系统数据流程图和电子读物系统数据流程图。采编人员P1_11采编管理图书表图书采编信息(D01)图书采编信息(D01)图3-26图书采编系统数据流程图12图书馆管理员P2_14图书归还处理P2_11检查读者身份P2_12检查图书是否在库P2_13填写借阅库,修改图书库还书记录(D15)图书借阅(D02)借阅库图书库有效在库填写供阅记录(D03)借阅修改在库数量(D04)读者库填写还书记录(D16)归还修改在库数量(D17)图3-27同时借阅系统数据流图13P4图书预定系统读者P3_11检索处理P5读者留言系统图书检索要求(D05)图书检索结果(D06)图书库D05D06图3-28图书查询系统数据流程图14P4_11预定信息输入读者P4_12读者身份检查P4_13预定p3图书检索预定信息(D07)借阅表填写预定信息(D08)读者表图书表D010图3-29图书预定系统数据流程图15P5_11留言处理读者读者留言(D09)p3_11检索处理读者留言P5_12留言管理图书馆管理员查阅读者留言(D11)读者留言汇总(D12)图3-30读者留言系统数据流程图16图书表读者表借阅表P6_11图书维护图书馆管理员图书维护需求(D18)库存图书统计(D19)借阅情况统计(D20)读者情况统计(D21)图3-31图书维护系统数据流程图借阅管理员P7_11读者登录检查读者表读者登录信息(D22)读者查询结果(D22)读者查询(D24)读者信息(D23)图3-32读者管理系统数据流程图17读者P8_11电子读物处理电子读物查询要求(D13)电子读物库库检索结果检索信息电子读物查询结果(D14)读者库图3-33数据流程图电子读物系统18数据定义及数据字典n为了对数据流程图中各元素进行详细的说明,我们采用了数据字典的说明方法。图书馆管理信息系统的数据字典如下:n(1)数据流描述n数据流编号:D01n数据流名称:图书采编信息n简述:图书采编信息n数据流来源:图书购买后,由图书馆采编人员编码整理后,输入计算机。n数据流去向:采编管理模块。图书采编信息将采编数据存入数据库(图书表)19n数据项组成:BookID(图书编码)+BookType(图书类别)+BookName(书名)+Auth(作者)+Publisher(出版社)+Price(单价)+PubDate(出版日期)+Quantity(购买数量)n数据流量:100本/日n高峰流量:500本/日n数据流编号:D02n数据流名称:图书借阅单n简述:图书借阅单n数据流来源:用户填写图书借阅单交图书馆管理员,图书馆管理员审核后,输入计算机。n数据流去向:P2_11检查读者身份。20n数据项组成:OrderDate(借阅日期)+BookName(书名)+RederID(读者账号)+ReaderName(读者姓名)+O_Quantity(借阅数量)n数据流量:1000部/日n高峰流量:5000部/日n数据流编号:D03n数据流名称:填写借阅记录n简述:填入借阅表的记录n数据流来源:P2_13检查合格的借阅图书信息录人到借阅库中n数据流去向:借阅库21n数据项组成:OrderID(借阅号)+OrderDate(借阅日期)BookName(书名)+BookID(图n书编码)+ReaderName(读者姓名)+ReaderID(读者账号)+ReturnDate(还书日期)+O_Quantity(借阅数量)+state(状态)n数据流量:1000人/日n高峰流量:2000人/日n数据流编号:D04n数据流名称:借阅图书数量n简述:修改图书库中图书数量n数据流来源:P2_13修改图书库中图书数量n数据流去向:图书库22n数据项组成:BookID(图书编码)+O_Quantity(借阅数量)n数据流量:1000人/日n高峰流量:2000人/日n数据流编号:D05n数据流名称:图书查询信息n简述:图书查询信息n数据流来源:读者n数据流去向:P3_11检索处理模块n数据项组成:BookID︱BookName︱Auth︱Publisher23n数据流量:2000次/日n高峰流量:4000次/日n数据流编号:D06n数据流名称:图书检索结果n简述:返回给读者的查询结果n数据流来源:P3_11检索条件处理模块,从图书库中返给读者的查询结果n数据流去向:读者n数据项组成:查无此书︱符合条件的图书数量+{图书馆藏号+图书类别+书名+作者+出版社+出版日期+在库册数}24n数据流量:2000次/日n高峰流量:4000次/日n数据流编号:D07n数据流名称:图书预定信息n简述:读者预定图书时填写的信息n数据流来源:用户填写图书预定信息,要求预定图书n数据流去向:P4_11预定信息输入n数据项组成:ReaderName+Password+BookIDn数据流量:50次/日n高峰流量:100次/日25细化需求规格说明需求规格说明是不断进化的文档。在评价中所发现问题的答案应该加入规格说明。提出问题、得到答案和更新需求规格说明的过程可能迭代直至规格说明相对完整。在实践中,要求较少的迭代,因为软件开发小组在第一次迭代或第二次迭代中将能更精确地解决问题。在许多情况下,需求规格说明的细化需要软件开发小组和领域专家之间的更多交流。我们在这里提供了图书馆管理系统需求规格说明的第一次细化。这次细化将规格说明的前一版本和前一阶段问题列表的解答结合起来。这一规格说明的格式在某种程度上不同于前一版本,因为它是由技术人员写成,而不是由图书馆工作人员写成。在这一版本中,按照前面讨论过的列表条目详细说明规格说明。26原型法作为细化工具n细化需求分析最简单的方法是在已有规格说明的基础上创建一个原型(prototype)。原型是系统的一个小版本,通常只有较少的功能。在创建原型时能够弄清楚意义不明确的内容。n因为原型开发人员不可能在意义不明确的情况下进行开发。寻求最终用户的帮助以便澄清需求陈述以及共同细化原型是一种好做法。因为用户可以与计划系统的模型交互,原型为与最终用户交流提供了一个精确载体。用户可以对模型系统的充分性和准确性提出批评,以较小的工作量得到非常重要的反馈意见。27为细化LMS规格说明所做的活动列表:n(1)允许图书馆工作人员进行一般公众不能进行的活动。这些活动包括除了检索目录外的所有活动。例如,一般公众不能改变计算机中某种资源的