




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第15章图书管理系统 目录 15 1软件需求分析 15 2图书馆管理系统的需求分析 15 3系统中的类 15 4系统的配置与实现 小结 第15章图书管理系统 本章以图书管理系统的需求 分析 设计为主线 通过各个阶段的建模来说明UML模型元素的使用方法和建模过程 15 1软件需求分析 软件需求包括功能需求 非功能需求和设计约束三个方面的内容 需求分为三个层次 业务需求 用户需求和系统需求 图15 1描述了这三个需求的关系 图15 1三个层次的需求 15 1软件需求分析 1 业务需求反映组织机构或客户对系统 产品高层次的目标要求 该层次需求是对业务目标的总体抽象和看法 该需求经常由公司总经理提出 2 用户需求为了实现业务目标 要由多个用户或客户相互协作完成 每个用户或客户要完成的任务不同 目标也不同 他们的目标和利益经常是冲突的 因此 描述用户或客户需求非常重要 用户需求就是描述用户必须要完成什么任务 怎么完成 通常是在问题定义的基础上进用户访谈 调查 对用户使用的场景进行整理 从而建立从用户角度的需求 3 系统需求系统需求就是从计算机系统的角度来说明软件的需求 它包括了用特性说明的功能需求 质量属性以及其它非功能需求 还有设计约束 15 1软件需求分析 15 1 1需求捕获在软件开发活动中 需求捕获工作往往效果不佳 而真正有效的需求捕获过程应该是更系统化 更有针对性的有序活动 具体来说 应该包含 明确业务目标 理解业务流程 明确用户需求 三个主要的步骤 1 明确业务目标业务目标就是从高层次看待整个系统 也就是 业务系统的目标 它是整个需求过程乃至整个开发过程中最本质 最重要的问题 通常来说 业务需求是构建在 项目发起人 的脑子里的 也就是谁提出项目 谁就拥有对 业务目标 的最清晰的理解 通常来说 业务目标 可以分为 产品 项目目标 和 子目标描述 两个方面的内容 产品 项目目标 是最有宏观层面的描述 而 子目标描述 就是为了完成 产品 项目目标 的更详细的步骤 对于一个产品 项目的目标而言 主要包括三个方面 要做什么 提供什么业务优势和如何衡量这些优势 另外要注意 业务需求必须合理 可行 可实现 2 理解业务流程 15 1软件需求分析 业务流程就是为了实现业务目标要完成的活动 这个部分的工作如何进行取决于项目的规模 团队的特点等诸多方面的因素 但综合而言 可以遵从以下指导思想 1 如果项目较大或者业务较陌生 应该进行业务建模 2 如果业务较陌生 应该聘请领域专家 并对项目组队进行领域培训 3 如果术语较多 易于混淆 应该构建业务术语表 也就是在需求捕获的过程中 将遇到的业务术语收集下来 使用数据词典方法构建一个共享的名词解释库 以帮助项目团队达成共识 4 无论如何 都应该建立跨部门职能流程图 15 1软件需求分析 3 明确用户需求当我们知道了项目目标 了解了业务流程之后 接下来的工作就是要进行更细化 深入的需求调查了 要做好需求调查 必须清楚地了解三个问题 1 What 收集什么信息 分析和研究现有业务流程图 看看是否已经对每个环节 步骤都清楚地理解了 我们应该根据自己的理解首先对每个流程的工作进行定义 写出事件流 并且标识出疑问点 这些都将使我们明白 应该收集什么信息 2 Where 从哪里收集 通常情况下 我们需要的信息都会藏于客户 原有系统 原有系统用户 新系统的潜在用户 原有产品 竞争对手的产品领域专家 技术法规与标准里 具体应该从哪里收集 应该从流程图上找到相应的岗位或部门 从这些岗位或部门收集信息 3 How 如何收集 应该根据不同的需要 采用不同的需求捕获技术 表15 1就对各种主要的需求捕获技术的优缺点做了一个总结 15 1软件需求分析 表15 1需求捕获技术比较 15 1软件需求分析 15 1 2软件需求工程获取需求后 必须对需求进行开发和管理 需求的管理也就是对整个需求工程进行有效的计划 控制的过程 因此要想有效地进行管理 就必须知道需求工程包括哪些内容 简单地说 需求工程就是包括创建和维护系统需求文档所必需的一切活动的过程 也就是通常有需求开发和需求管理两大工作 这两方面是相辅相成的 需求开发是主线 是目标 需求管理是支持 是保障 换句话说 需求开发是更清晰 明确地获取用户和客户对系统的需求 而需求管理则是对需求的变化进行管理的过程 15 1软件需求分析 1 需求开发在需求开发中 主要包括需求捕获 需求分析 编写规格说明书和需求验证4项活动 它们也是一个迭代的过程 有计划地进行需求的捕获工作 然后将捕获到的零散信息进行综合的分析与研究 并利用软件建模技术构建系统蓝图 然后用合适的形式 根据项目的规模 可以是很正式的文档 也可以是比较简单的文档 可以是正式提交的文件 也可以是一个Web模型 将需求规格化 最后与客户一起进行验证 这样的循环并不是一次性完成的 而是要多次迭代地进行这些活动 但这种迭代也不应该是盲目的 整个过程应该是先建框架 再填血肉 先宏观 后细节的有序过程 换句话说 应该尽早把握最为本质的需求 如何判断需求是不是最为本质呢 这一切又要回到 业务目标 上来 客户希望通过系统来解决什么问题 这部分需求与解决这个问题而言 其关键性有多高 15 1软件需求分析 2 需求管理需求管理主要的活动包括需求的基线管理 需求变更管理 需求跟踪三方面的工作 这一块在实际的项目中大多显得更加薄弱 甚至是呈现 真空状态 1 需求的基线管理有过开发经验的人都会知道频繁的需求变更会破坏开发的节奏 使整个项目开发的进度陷入混乱和失控的状态 而且会变成一个 救火队 式的工作 整天都在处理突发事件 而基线管理的核心思想就是 将所有现在的 将来的需求进行优先级评估 然后分解成为不同的组 每次迭代都选择其中优先级最高的部分进行开发 在迭代完成之前 开发工作不响应变更 这些需求项就是需求基线的组成部分 15 1软件需求分析 2 需求变更管理属于基线部分的需求项不响应变更 通过变更管理了解需求变更的关键意图 新产生的工作量 从而很好地进行重新计划 以便能够有效地解决其对整个开发带来的麻烦 3 需求跟踪需求跟踪是指对需求的完成情况 变更影响进行系统化的跟踪与处理 也就是解决以下问题 需求是不是已经被实现 需求的变化将导致修改哪些设计元素 会影响谁的工作 对已经完成的部分是否有影响等 15 2图书馆管理系统的需求分析 15 2 1标识参与者首先 需要标识业务参与者 参与者是在业务中扮演某个角色的人 部门或者独立的软件系统 一般来说 参与者使用系统或给系统提供服务 图书管理系统的参与者 借阅者 可以通过网络查询书籍信息和预定书籍 借阅者能够借阅书籍和还书 图书管理员 能够处理借阅者的借阅和还书请求 系统管理员 可以对系统的数据进行维护 如增加 删除和更新书目 增加 删除和更新借阅者帐户 增加和删除书籍 15 2图书馆管理系统的需求分析 15 2 2标识用例有了参与者后 下一个任务就是标识业务用例 每个用例都是业务系统的一部分 如何把业务分解为用例没有普遍的规则可遵循 一般说来 常识 逻辑和经验对此有一定的帮助 和客户一起工作 对于识别参与者有帮助 例如 在与销售层的助手谈话时 才能知道他们每天都要完成不同的任务 因为助手要与顾客打交道 他们还应能给出顾客使用业务的方式 员工和管理层培训手册 任务陈述 专用需求文档 销售册子和其他文档也可以提供灵感 可以向每个参与者提出以下问题 你完成你的业务的重要活动是什么 把所有参与者回答的问题 要完成的活动或任务整理成用例 1 借阅者请求服务的用例图借阅者请求服务时 涉及7个用例 如图15 2所示 用例图说明 图15 2借阅者请求服务的用例图 15 2图书馆管理系统的需求分析 1 SerchforBook 书籍查询用例 2 Reservethebook 书籍预订用例 3 Logonthesystem 登录系统 用户可以登录系统以便进行借阅信息查询以及预订书籍等操作 4 QueryInfo 查询借阅信息 5 Borrowthebook 借阅书籍 6 Returnthebook 归还书籍 7 ReturnWithFine 还书时交纳罚金 如果借阅者所借书籍超过借阅期限未还 还书的时候就要交纳一定的罚金 15 2图书馆管理系统的需求分析 2 图书馆管理员处理借书 还书等的用例图图书馆管理员处理借书 还书等涉及5个用例 如图15 3所示 图15 3图书馆管理员处理借书 还书等的用例图 15 2图书馆管理系统的需求分析 用例图说明 1 Getbook 书籍归还处理 2 Lendbook 书籍借阅处理 3 RemoveReservation 删除书籍预订信息 4 GetWithFine 还书时收取罚金 5 Checkusercount 检查用户借阅凭证的合法性 图书管理员在借阅者借书的时候要检查用户借阅凭证的合法性 15 2图书馆管理系统的需求分析 3 系统管理员进行系统维护的用例图系统管理员维护系统时涉及到8个用例 如图15 4所示 图15 4系统管理员进行系统维护的用例图 15 2图书馆管理系统的需求分析 用例图说明 1 QueryBorrowerInfo 查询读者信息 2 QueryBookInfo 查询书籍信息 3 AddTitle 增加书目 4 RemoveorUpdateTitle 删除或更新书目 5 AddBook 增加书籍 6 RemoveBook 删除书籍 7 AddBorrower 添加借阅者账户 8 RemoveorUpdateBorrower 删除或更新借阅者账户信息 15 2图书馆管理系统的需求分析 15 2 3实现用例的时序图1 系统管理员添加书籍的时序图 时序图说明 1 addItem 添加书籍函数 2 find String 根据书籍查找相应书目的函数 图15 5系统管理员添加书籍的时序图 15 2图书馆管理系统的需求分析 3 create integer Title 修改书籍数目的函数 添加书籍时 系统管理员首先与系统的维护窗口交互 查找有没有相应的书目信息 如果有 直接添加 如果没有 要创建新的书目 2 系统管理员添加借阅者帐户的时序图 图15 6系统管理员添加借阅者帐户的时序图 时序图说明 Create String String 添加新的借阅者账户的函数 系统管理员要添加新的借阅者账户 首先要与维护窗口交互 维护窗口负责创建一个新的借阅者账户 15 2图书馆管理系统的需求分析 3 系统管理员删除书目的时序图 时序图说明 1 find String 书目类的查找函数 图15 7系统管理员删除书目的时序图 2 find on title Title 查找此书目下书籍信息的函数 3 destroy 删除书籍信息的函数 4 destroy 删除书目信息的函数 系统管理员与系统的维护窗口交互 查找到相应的书目及书籍信息并删除掉 15 2图书馆管理系统的需求分析 4 图书管理员处理书籍借阅的时序图 时序图说明 1 find String 查找书目的函数 2 find item 查找所要书籍的函数 3 find on title Title 根据书目名从数据库中找到书目信息的函数 4 identify borrower 验证借阅者身份的函数 5 find String 根据借阅者的登录账号找到借阅者信息的函数 6 create Borrower item 修改借阅信息的函数 图15 8图书管理员处理书籍借阅的时序图 15 2图书馆管理系统的需求分析 图书管理员首先与系统的借阅窗口交互 然后借阅窗口与书目和书籍信息交互 查看要借阅的书籍是否可用 如果可用 要验证借阅者借书凭证的有效性 如果有效 则将新的借阅信息存入数据库 5 图书管理员处理书籍归还的时序图 图15 9图书管理员处理书籍归还的时序图 时序图说明 1 check 检查书籍状况的函数 2 update 更新书籍类信息的函数 3 update 更新借阅者借阅信息的函数 图书管理员处理还书时 首先从借阅者手里接过书籍 然后与还书窗口交互 还书窗口负责检查书籍状况 然后更新书籍信息和读者的借阅信息 15 2图书馆管理系统的需求分析 6 借阅者查询书籍信息的时序图 图15 10借阅者查询书籍信息的时序图 时序图说明 Fine on title 根据书目查找到相应的书籍信息 15 2图书馆管理系统的需求分析 7 借阅者预订书籍的时序图 图15 11借阅者预订书籍的时序图 时序图说明 1 Login 登录系统的函数 2 Find String 查找相应的书目的函数 3 Reserve 预订书籍的函数 借阅者首先与系统的网络模块交互 如果找到要预订的书籍 就将预订的信息添加进去 15 2图书馆管理系统的需求分析 15 2 4实现用例的协作图1 系统管理员添加书籍的协作图图15 12系统管理员添加书籍的协作图 协作图说明 1 addItem 添加书籍的函数 2 find String 根据书籍名查找相应书目的函数 3 update 修改某类书目下书籍数量的函数 15 2图书馆管理系统的需求分析 2 系统管理员删除书籍的协作图 协作图说明 1 remove item 删除书籍的函数 2 find String 根据书籍名查找相应书目的函数 2 update 修改某类书目下书籍数量的函数 图15 13系统管理员删除书籍的协作图 15 2图书馆管理系统的需求分析 3 图书管理员处理借书的协作图 图15 14图书管理员处理借书的协作图 协作图说明 identify borrower 验证借阅者身份的函数 find reservation 查找预订信息的函数 find Borrower Title 根据借阅者和借阅的书籍名找到相应预订信息的函数 borrow 处理借书的函数 update 更新某一书目下书籍数量的函数 check if max 检查借阅凭证所借书籍数目是否已经超过最大限额的函数 15 2图书馆管理系统的需求分析 4 图书管理员处理还书的协作图 图15 15图书管理员处理还书的协作图 协作图说明 find borrower 查找借阅者信息的函数 find String 根据借阅者查找借阅信息的函数 return back 处理还书的函数 update 更新书籍数目函数 15 2图书馆管理系统的需求分析 5 借阅者预订书籍的协作图 图15 16借阅者预订书籍的协作图 协作图说明 identify borrower 验证借阅者身份的函数 find String 根据书籍名称查找书目信息的函数 reserve 预订某一书目下的书籍的函数 create Title Borrower 修改预订信息的函数 15 2图书馆管理系统的需求分析 15 2 5对象的状态图1 书的状态图 状态图说明 Newbook 还未入库的新书 Delete 已经从书库里删除的书 Available 书籍处于可用状态 即可以外借的状态 Reserved 预订状态 Borrowed 借出状态 图15 17书的状态图 书籍处于可用 Available 状态时既可以预订也可以外借 外借后变为借阅 Borrower 状态 处于预订 Reserved 状态时可以外借 超出预订时间期限则从预订状态直接转为可用状态 借阅者在规定的预订时间内也可以考虑取消预订 取消预订后书籍的状态转为可用 外借书籍归还后变为可用状态 15 2图书馆管理系统的需求分析 2 借阅者帐户的状态图 状态图说明 NewBorrower 新加入的借阅者的账户 AccountAvailable 借阅账户为可用状态 即未达到所规定的书籍借阅数目上限 AccountUnavailable 借阅账户为不可用状态 即所借的书籍数已达到规定的书籍借阅数目上限 不能再借阅书籍了 DeleteAccount 个人账户被删除状态 借阅者的账户刚被管理员加入时处于新帐户 NewBorrower 状态 当管理员添加借阅权限后就变为可用 AccountAvailable 状态 当所借书籍数已达到规定的书籍借阅数目上限时 变为不可用状态 AccountUnavailable 状态 当账户被系统管理员删除后 变为删除 Delete 状态 图15 18借阅者帐户的状态图 15 2图书馆管理系统的需求分析 参与者的活动图1 借阅者的活动图 图15 19借阅者的活动图 活动图说明 1 Self helpService 打开图书馆负责自助服务的计算机 2 Searchforbooks 查询需要的书籍 3 Login 登录管理系统 4 Viewbookinformation 查看书籍信息 5 Reservethebook 预订书籍 6 ExitSystem 退出系统 7 LeaveComputer 离开自助服务的计算机 15 2图书馆管理系统的需求分析 借阅者进行自助服务时 可以首先登录系统 然后进行书目查询 书籍信息查询 书籍预订等活动 也可以先查询书目和书籍信息后登录系统预订书籍 2 图书管理员的活动图 图15 20图书管理员的活动图 15 2图书馆管理系统的需求分析 活动图说明 Loginthesystem 图书管理员登录系统 Getbook 处理还书操作 Lendbook 处理借书操作 Updateborrower sinformation 更新借阅者借阅凭证上的信息 Acceptmoney 收取罚金 图书管理员可以处理两种情况 借书操作和还书操作 当用户借书时 图书管理员要查看借阅者凭证上显示的可借书的数目是否满足要求 当用户还书时 图书管理员要查阅所借书籍是否已经超过期限 如果超期 要收取一定的罚金 系统管理员登录系统后 可以进行查阅书目信息 添加书目 删除或更新书目等活动 15 2图书馆管理系统的需求分析 3 系统管理员的活动图系统管理员维护借阅者帐户的活动图系统管理员进行书目信息维护的活动图系统管理员维护书籍信息的活动图系统管理员登录系统后 可以进行添加书籍 删除书籍等活动 图15 21系统管理员维护借阅者帐户的活动图 图15 22系统管理员进行书目信息维护的活动图 图15 23系统管理员维护书籍信息的活动图 15 2图书馆管理系统的需求分析 活动图说明 Loginthesystem 登录系统 Operationonborrower 对借阅者账户操作 Operationontitle 对书目进行操作 Operationonbook 对书籍进行操作 Queryborrowerinfo 查询借阅者信息 Newborrower 添加新的借阅者账户 RemoveorUpdateborrower 删除或更新借阅者账户 Querytitle 查询书目信息 Newtitle 增加新的书目 Removeorupdatetitle 删除或更新书目 Addbook 增加书籍信息 Removebook 删除书籍信息 Exitthesystem 退出系统 15 3系统中的类 15 3 1系统中主要的类1 参与者相关的类参与者相关的类 如图15 24所示 类图说明 Borrower类是借阅者的类 它的属性很多 包括借阅者的账户ID UserID 姓名 Name 地址 Address 邮编 Zip 所借书籍的书目 borrow number 等 其中主要操作有借书 borrow 和还书 return back Librarian类是图书管理员的类 包括工作帐号 WorkID 名字 Name 和地址 Address 等属性 Administrator类是系统管理员类 图15 24参与者相关的类 15 3系统中的类 图15 25系统中其它的类 15 3系统中的类 系统中用到的其他类 类图说明 Title类是记录书目信息的类 包括书籍的名字 name 作者 author ISBN 此种书籍总数量 total number 借出的数量 borrowed num
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 现代信息技术在老年保健教育中的应用研究
- 校企合作模式对车辆工程人才培养的支撑作用
- 企业社会保险缴费对融资额度的影响分析
- 财务透明度提高对风险防范的作用
- 市政供水管道施工过程中的质量控制
- 智能建筑与绿色技术的集成应用教学
- 推动数字化人才评价技术的创新与应用
- 构建完善的市场导向与人才激励机制
- 施工安全事故的统计分析与预防机制构建
- 翻转课堂与小学生数学教学相结合的最佳实践
- 汇率预测模型优化-洞察及研究
- 稳评机构各项管理制度
- 建筑安全与人工智能的深度结合
- 2026年高考政治一轮复习:选择性必修1~3共3册知识点背诵提纲汇编
- 广告标识牌采购投标方案
- 北京市2025年第一次普通高中学业水平合格性考试政治试题(原卷版)
- 公墓建设项目合同协议书
- 家政服务行业互联网+平台商业模式创新与盈利模式研究报告
- (高清版)DG∕TJ 08-59-2019 钢锭铣削型钢纤维混凝土应用技术标准
- GSP药品经营质量管理规范培训
- 网吧网管硬件技术培训手册
评论
0/150
提交评论