软件工程(张海藩)第3章课件

上传人:阳*** 文档编号:100733164 上传时间:2022-06-03 格式:PPT 页数:60 大小:1.18MB
返回 下载 相关 举报
软件工程(张海藩)第3章课件_第1页
第1页 / 共60页
软件工程(张海藩)第3章课件_第2页
第2页 / 共60页
软件工程(张海藩)第3章课件_第3页
第3页 / 共60页
点击查看更多>>
资源描述
第第3章章 需求分析需求分析3.1 需求分析的任务需求分析的任务3.2 与用户沟通获取需求的方法与用户沟通获取需求的方法3.3 分析建模与规格说明分析建模与规格说明3.4 实体实体-联系图联系图3.5 数据规范化数据规范化3.6 状态转换图状态转换图3.7 其他图形工具其他图形工具3.8 验证软件需求验证软件需求3.9 小结小结1如何准确有效地得如何准确有效地得到用户的需求到用户的需求为什么要进行需求分析为什么要进行需求分析 在需求阶段修复一个错误的费用是编码阶段在需求阶段修复一个错误的费用是编码阶段的的1/51/5到到1/101/10,是维护阶段修复费用的,是维护阶段修复费用的1/1001/100到到1/2001/200。因此,我们可以认为,设计错误的修复。因此,我们可以认为,设计错误的修复费用要远远高于编码错误的修复费用。费用要远远高于编码错误的修复费用。 通过通过“分析分析”,理解用户的各种问题,理解用户的各种问题, 通过通过“规格说明规格说明”把问题表达出来。要求大家:把问题表达出来。要求大家:(1 1)掌握掌握具体的步骤和方法具体的步骤和方法(2 2)提高提高分析问题和解决问题的能力分析问题和解决问题的能力(3 3)熟练熟练运用一些图形工具运用一些图形工具2基本概念基本概念 开发过程的两大阶段开发过程的两大阶段 (1)正确地确定问题)正确地确定问题 (2)为问题寻找合适的解答)为问题寻找合适的解答 目的目的 澄清用户的各种需求澄清用户的各种需求 基本任务基本任务 用户和软件人员双方一起来充分理解用户的要求,用户和软件人员双方一起来充分理解用户的要求,并把双方共同的理解明确地表达成一份书面文档并把双方共同的理解明确地表达成一份书面文档软件需求规格说明书。软件需求规格说明书。 3 在软件生命期的每个阶段中,分析阶在软件生命期的每个阶段中,分析阶段是面向段是面向“问题问题”的,它主要是对用户的,它主要是对用户的业务活动进行分析,明确在用户的业的业务活动进行分析,明确在用户的业务环境中,软件系统应该务环境中,软件系统应该“做什么做什么”。4需求分析的任务需求分析的任务 确定对系统的综合要求确定对系统的综合要求1.1.确定系统的功能要求确定系统的功能要求 提出系统必须完成的全部所有功能提出系统必须完成的全部所有功能2.2.确定系统的性能要求确定系统的性能要求 (1 1)系统的响应时间)系统的响应时间 (2 2)系统需要的存储容量)系统需要的存储容量 (3 3)后援存储器容量、系统重新启动)后援存储器容量、系统重新启动 (4 4)系统的安全性和可靠性)系统的安全性和可靠性3.3.确定系统的运行要求确定系统的运行要求 (1 1)支持系统运行的软件环境)支持系统运行的软件环境 (2 2)工具软件和系统软件)工具软件和系统软件 (3 3)支持系统运行的硬件环境)支持系统运行的硬件环境 (4 4)外存储器、通信接口、输入和输出)外存储器、通信接口、输入和输出4.4.确定系统的扩充要求确定系统的扩充要求5 分析系统的数据要求分析系统的数据要求 建立数据模型(层次方框图、建立数据模型(层次方框图、Warnier图)图) 导出系统的逻辑模型导出系统的逻辑模型 数据流图数据流图 实体实体 联系图联系图 状态转换图状态转换图 数据字典数据字典 主要的处理算法主要的处理算法 修正系统开发计划修正系统开发计划6需求分析的过程需求分析的过程 需求分析阶段可分为四个过程:调查研究、需求分析阶段可分为四个过程:调查研究、分析与综合、书写需求分析的文档和评审。分析与综合、书写需求分析的文档和评审。(1 1)调查研究)调查研究目的:目的:通过各种途径获取用户需求信息产生用户需求说明书 角色与职责:角色与职责:需求分析员调查、分析用户的需求,客户与最终用户提供必要需求信息7(2 2)分析与综合)分析与综合 从信息流和信息结构出发,逐步细化所有的软件功能,从信息流和信息结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的约束,分找出系统各元素之间的联系、接口特性和设计上的约束,分析它们是否满足功能要求。析它们是否满足功能要求。(3 3)书写需求分析文档)书写需求分析文档 软件需求说明书软件需求说明书 数据要求说明书数据要求说明书 初步的用户手册初步的用户手册 修改、完善与确定软件开发实施计划修改、完善与确定软件开发实施计划8(4 4)需求分析的评审)需求分析的评审 系统定义的目标是否与用户的要求一致系统定义的目标是否与用户的要求一致 系统需求分析阶段提供的文档资料是否齐全系统需求分析阶段提供的文档资料是否齐全 文档中的所有描述是否完整、清晰、准确反应用户要求文档中的所有描述是否完整、清晰、准确反应用户要求 与所有其它系统成分的重要接口是否都已经描述与所有其它系统成分的重要接口是否都已经描述9需求获取的方法需求获取的方法系统分析员建立需求的过程中所遇到的困难系统分析员建立需求的过程中所遇到的困难 分析员与领域专家交流的过程中,容易产生误解 大型系统有时会有不同的用户群体,他们往往会提出相互矛盾的要求,分析员要寻求令所有用户满意的答案很难 需求永远不会稳定。系统工程环境一旦改变,用户对软件的需求也会改变,而且这种需求往往无法预测。 10 访谈访谈 访谈有正式访谈和非正式访谈两种形式。 非正式访谈以一种较自由的形式,交换对问题的看法,主要是了解问题的性质、需要解决的方案、所需的人数和能力,关注客户的目标和收益。 正式访谈将根据一些事先准备好的议题全面展开讨论,得出结论性的意见。11 情景(场景)分析是从软件系统的一个交互情景示例中得到需求分析信息,然后将其以形式化方式表示出来。 情景分析是用户在某种程度上演示产品的应用“样本”,通过交互实例片断细节(情景)的描述,实现对某个目标产品的表述。每个情景可能包含一个或多个交互,它们能在不同的细节层次上提供不同类型的情景信息。 情景开始于一个框架,在导出过程中,细节被逐渐增加,直到产生交互的一个完整的描述。 12 场景(情景)内容场景(情景)内容 通常,一个场景(情景)可能包括:通常,一个场景(情景)可能包括: 在场在场/情景开始部分有一个系统状态描述;情景开始部分有一个系统状态描述; 一个关于标准事件流的描述;一个关于标准事件流的描述; 一个关于哪儿会出错,以及如何处理错误的描述;一个关于哪儿会出错,以及如何处理错误的描述; 有关其他可能在同一时间进行的活动的信息;有关其他可能在同一时间进行的活动的信息; 在场在场/情景完成后系统状态的描述。情景完成后系统状态的描述。13 面向数据流自顶向下求精面向数据流自顶向下求精 结构化分析方法结构化分析方法(SA)就是面向数据流自顶向就是面向数据流自顶向下逐步求精进行需求分析的方法。下逐步求精进行需求分析的方法。 “ 结构化分析结构化分析”(“ Structured Analysis”)是是一个简单实用,使用广泛的方法。一个简单实用,使用广泛的方法。 它适用于分析大型的数据处理系统,尤其是企它适用于分析大型的数据处理系统,尤其是企事业管理方面的系统,这个方法通常与设计阶段的事业管理方面的系统,这个方法通常与设计阶段的结构化设计方法结构化设计方法(SD)衔接起来。)衔接起来。 14 软件工程技术中,控制复杂性的两个基本软件工程技术中,控制复杂性的两个基本手段是手段是“分解分解”和和“抽象抽象”。 分解:分解:把大问题分割成若干个小问题,把大问题分割成若干个小问题,然后分别解决。然后分别解决。15 对于一个复杂的系统(比如银行管理系统)对于一个复杂的系统(比如银行管理系统)如何理解和表达它的功能呢?如何理解和表达它的功能呢? SASA方法使用了方法使用了“自顶向下逐层分解自顶向下逐层分解”的方法。的方法。16 “逐层分解逐层分解”体现了分解和抽象的原则,体现了分解和抽象的原则,它使我们不至于一下子陷入细节,而是有控制它使我们不至于一下子陷入细节,而是有控制地逐步地了解更多的细节,这是有助于理解问地逐步地了解更多的细节,这是有助于理解问题的。题的。 无论系统多么复杂,分析工作都可以有计无论系统多么复杂,分析工作都可以有计划有步骤、有条不紊地来进行,系统规模再大,划有步骤、有条不紊地来进行,系统规模再大,分析工作的复杂程度不会随之增大,而只是多分析工作的复杂程度不会随之增大,而只是多分解几层而已,所以分解几层而已,所以SASA方法有效地控制了复杂方法有效地控制了复杂性。性。18 描述方式描述方式 SA方法采用了介于方法采用了介于形式语言形式语言和和自然语言自然语言之间的描述方式。之间的描述方式。 用用SA方法获得的需求说明书由以下几部方法获得的需求说明书由以下几部分组成:分组成: 一套分层的数据流图一套分层的数据流图 一本数据字典一本数据字典 一组小说明一组小说明 补充材料补充材料19 “数据流图数据流图”描述系统的分解,即描述系统由哪描述系统的分解,即描述系统由哪些部分组成,每个部分之间有什么样的联系等;些部分组成,每个部分之间有什么样的联系等; “数据字典数据字典”描述系统中的每一个数据;描述系统中的每一个数据; “ “小说明小说明”详细描述系统中的每一个加工;详细描述系统中的每一个加工; “补充材料补充材料”是根据需要对系统的补充。是根据需要对系统的补充。 以上就可以以上就可以明确而完整地描述一个系统的功能明确而完整地描述一个系统的功能 20 结构化分析方法在描述上的特点:结构化分析方法在描述上的特点: 尽量采用图形表示,比较形象、直尽量采用图形表示,比较形象、直观和易于理解。观和易于理解。 21 系统的分析过程系统的分析过程理解当前的现实环境,获得当前人工系统的具理解当前的现实环境,获得当前人工系统的具体模型体模型从当前系统的具体模型抽象出当前系统的逻辑从当前系统的具体模型抽象出当前系统的逻辑模型模型分析目标系统与当前系统逻辑上的差别,建立分析目标系统与当前系统逻辑上的差别,建立目标系统的逻辑模型目标系统的逻辑模型1. 为目标系统的逻辑模型作补充为目标系统的逻辑模型作补充22 小说明小说明 SA方法的基本思想:方法的基本思想: 将一个大型复杂的系统逐层分解成许多个足够简将一个大型复杂的系统逐层分解成许多个足够简单的基本加工,然后分别理解每个基本加工,并为每单的基本加工,然后分别理解每个基本加工,并为每个基本加工详尽地写下个基本加工详尽地写下“小说明小说明”,再将所有这些,再将所有这些“小说明小说明”组织起来,就得到了整个系统的说明书组织起来,就得到了整个系统的说明书。23 小说明中应精确地描述用户要求一个加工小说明中应精确地描述用户要求一个加工“做什么做什么”,这包括加工的,这包括加工的激发条件、加工逻激发条件、加工逻辑、优先级、执行频率、出错处理辑、优先级、执行频率、出错处理等等。其中等等。其中最基本的部分是最基本的部分是加工逻辑加工逻辑。24 注意注意 对一个加工应描述的是用户要求这对一个加工应描述的是用户要求这个加工个加工“做什么做什么”,而不是用编程语言,而不是用编程语言来描述具体的加工过程。来描述具体的加工过程。25 快速原型法快速原型法 基本思想:基本思想: 在很短的时间内建立起一个只包含基本数在很短的时间内建立起一个只包含基本数据库和一些基本功能的原型给用户使用,然后据库和一些基本功能的原型给用户使用,然后根据用户意见对原型进行修改,直到满意为止。根据用户意见对原型进行修改,直到满意为止。26短时间内建立原型用户满意修改,完善原型否否是是完成原型27结构化结构化分析模型的体系结构分析模型的体系结构 实体实体- 关系关系 图图数据数据流图流图加工加工规约规约数据数据对象对象描述描述状态转换图状态转换图控制规约控制规约结构化分析模型的体系结构结构化分析模型的体系结构28实体实体-联系图联系图实体实体 “实体实体”是信息世界中描述客观事物的概念。实体可是信息世界中描述客观事物的概念。实体可以是现实世界的人、物、抽象的概念、事物之间的联系以是现实世界的人、物、抽象的概念、事物之间的联系等。如一个人,一件物品,一个部门,一种思想等都可等。如一个人,一件物品,一个部门,一种思想等都可以是实体。(实体有以是实体。(实体有总体总体和和个体个体之分)之分)2属性属性 “属性属性”是指实体具有的某种特性。属性是对实体是指实体具有的某种特性。属性是对实体的进一步描述。如学生实体可由学号、姓名、年龄、性的进一步描述。如学生实体可由学号、姓名、年龄、性别、系、年级等属性来刻画。(属性有别、系、年级等属性来刻画。(属性有属性名属性名和和属性值属性值的概念)的概念)293 3联系联系 现实世界里的事物总是存在着这样或那样的联系,这种现实世界里的事物总是存在着这样或那样的联系,这种联系必然要在信息世界中得到反映。在信息世界中,事物之联系必然要在信息世界中得到反映。在信息世界中,事物之间的联系可分为两类:一是间的联系可分为两类:一是实体内部实体内部的联系,如组成实体的的联系,如组成实体的各属性之间的关系;另一是各属性之间的关系;另一是实体之间实体之间的联系,这的联系,这里我们主要里我们主要讨论实体与实体之间的联系讨论实体与实体之间的联系30v系统建模的一个重要方面是定义系统处理的数据的逻系统建模的一个重要方面是定义系统处理的数据的逻辑结构。实体辑结构。实体关系模型描述数据实体、关联以及实体属关系模型描述数据实体、关联以及实体属性。该模型用性。该模型用实体实体-关系图关系图描述现实世界中的实体,而不描述现实世界中的实体,而不涉及实体在系统中的实现方法。涉及实体在系统中的实现方法。v实体彼此间的联系分为三类:一对一(实体彼此间的联系分为三类:一对一(1:1)联系,)联系,一对多(一对多(1:N)联系,多对多(联系,多对多(M:N)联系。联系。31 设设A A,B B为两个包含若干个体的总体,其间为两个包含若干个体的总体,其间建立了某种联系,其联系方式可分为三类:一建立了某种联系,其联系方式可分为三类:一对一联系对一联系 、一对多联系、一对多联系( (包括多对一联系包括多对一联系) )、多、多对多联系对多联系。AB32AB1: nn : mAB33一对一联系:一对一联系: 如果对于如果对于A A中的每一个实体,中的每一个实体,B B中至多有一个实体与其对中至多有一个实体与其对应;应;B B中的每一个实体也至多对应中的每一个实体也至多对应A A中的一个实体,则称中的一个实体,则称A A与与B B是是一对一的,记作一对一的,记作1:1。比如:。比如:学校校长领导11工厂厂长管理11科室主任病区负责11属性1属性n属性1属性n校名属性n属性1校址姓名职称属性1属性n属性1属性n属性1属性n属性1属性n34 一对多联系:一对多联系: 如果对于如果对于A A中的一个实体,中的一个实体,B B中有一个以上的实体与之中有一个以上的实体与之对应;对应;B B中的每一个实体至多对应中的每一个实体至多对应A A中的一个实体,则称中的一个实体,则称A A与与B B是一是一对多的,记作对多的,记作1:1:n n。比如:比如:学校班级下设1n工厂车间有1n病区医生拥有1n属性1属性n属性1属性n属性1属性n校名校址属性1属性n属性1属性n班名人数属性1属性n属性1属性n35多对多联系(多对多联系(M N) 如果如果A A中有实体对应中有实体对应B B中一个以上实体;中一个以上实体;B B中也有实体对应中也有实体对应A A中中一个以上实体,则称一个以上实体,则称A A与与B B为多对多的,记作为多对多的,记作m:nm:n。比如:比如: 学生课程选课mn项目职工参加mn医生病人诊治mn成绩属性1属性n记录学号姓名属性1属性n属性1属性n课程号课程名属性1属性n属性1属性n36 实体实体 矩形框矩形框 联系联系 菱形框菱形框 属性属性 椭圆形椭圆形 4.4.符号符号374.4.如何设计如何设计E-RE-R图图考察客观事物及其联系,抽象出实体,并一一命名考察客观事物及其联系,抽象出实体,并一一命名( (不能重名不能重名) )根据需求确定实体的属性根据需求确定实体的属性根据属性外在的联系,描述实体间的联系根据属性外在的联系,描述实体间的联系先作出局部先作出局部E-RE-R图,再综合产生总体图,再综合产生总体E-RE-R图。总体图。总体E-RE-R图不是各图不是各局部局部E-RE-R图的简单拼合,而是有可能增加了某些联系,也有图的简单拼合,而是有可能增加了某些联系,也有可能减少了某些联系可能减少了某些联系 384.4.实例实例 一个学生管理系统的实体一个学生管理系统的实体-关系图关系图【步骤】【步骤】(1)考察客观事物及其联系,抽象出实体,并一一命考察客观事物及其联系,抽象出实体,并一一命名名( (不能重名不能重名) ) 实体:教师,学生,课程实体:教师,学生,课程(2 2)根据需求确定实体的属性)根据需求确定实体的属性 教师:教工号,姓名,性别,职称,职务教师:教工号,姓名,性别,职称,职务 学生:学号,姓名,性别,系,年级学生:学号,姓名,性别,系,年级 课程:课程号,课名,学时,学分课程:课程号,课名,学时,学分39(3 3)根据属性外在的联系,描述实体间的联系)根据属性外在的联系,描述实体间的联系 教教:教师:教师教教课程课程 学学:学生:学生学学课程课程(4 4)画出)画出E-RE-R图图 40状态转换图状态转换图 状态模型是一种描述系统对内部或者外部事件响应的行为状态模型是一种描述系统对内部或者外部事件响应的行为模型。它描述系统状态和事件,以及事件引发系统在状态间的模型。它描述系统状态和事件,以及事件引发系统在状态间的转换。转换。 状态模型一般采用状态模型一般采用状态转换图状态转换图(状态图状态图)标记方法。)标记方法。 状态图提供了状态图提供了行为建模行为建模机制。机制。 状态图描述了系统中某些复杂对象的状态变化,主要有状态图描述了系统中某些复杂对象的状态变化,主要有状状态态、变迁变迁和和事件事件三种描述。三种描述。 状状 态态1状状 态态2事件事件/触发行为触发行为41(1)状态)状态 状态是任何可以被观察到的系统行为模式,一个状态代表系统的状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。一种行为模式。 状态规定了系统对事件的响应方式。状态规定了系统对事件的响应方式。 系统对事件的响应可以是做一个(或一系列)动作,也可以只是系统对事件的响应可以是做一个(或一系列)动作,也可以只是改变系统本身的状态,还可以既改变状态又做动作。改变系统本身的状态,还可以既改变状态又做动作。 状态图中定义的状态有:初态、终态和中间状态;状态图中定义的状态有:初态、终态和中间状态; 在一张状态图中只能有一个初态,而终态可以有若干个。在一张状态图中只能有一个初态,而终态可以有若干个。(2)事件)事件 事件是引起系统做动作或转换状态的控制信息事件是引起系统做动作或转换状态的控制信息42(4)实例)实例【一】【一】电话系统状态图电话系统状态图43【二】【二】CPU分配的进程状态转换图分配的进程状态转换图运行运行等待等待就绪就绪t1t2t3t444【三【三】一个复印机控制软件简化的状态图一个复印机控制软件简化的状态图读命令读命令复印复印重加载纸重加载纸诊断问题诊断问题闲置闲置与与“读命令读命令”相关相关非卡纸非卡纸与与“读命令读命令”相关相关卡纸卡纸与与“完成问题完成问题”相关相关“满满”和和“开始开始”与与“复印复印”相关相关复印复印与与“读命令读命令”相关相关满满与与“读命令读命令”相关相关缺纸缺纸45其他图形工具其他图形工具(一)层次方框图(一)层次方框图 层次方框图用树形结构的一系列多层次的矩形框描绘数层次方框图用树形结构的一系列多层次的矩形框描绘数据的层次结构。据的层次结构。 46(二)(二)Warnier图图 由法国专家由法国专家Warnier提出提出 用树形结构描绘信息用树形结构描绘信息 表明了信息的逻辑组织结构表明了信息的逻辑组织结构47(三)(三)IPO图图 描述输入数据、处理数据和输出数据描述输入数据、处理数据和输出数据 形式:形式: 左边框左边框 输入数据输入数据 中间框中间框 主要处理主要处理 右边框右边框 输出数据输出数据48验证软件需求验证软件需求 验证软件需求的正确性验证软件需求的正确性 一致性:所有的需求一致,任何一条不能和别的冲突一致性:所有的需求一致,任何一条不能和别的冲突 完整性:应考虑到用户要求的所有功能和性能完整性:应考虑到用户要求的所有功能和性能 现实性:在现有技术的基础上应能实现需求现实性:在现有技术的基础上应能实现需求 有效性:能解决用户遇到的问题有效性:能解决用户遇到的问题 验证软件需求的方法验证软件需求的方法 用于需求分析的软件工具用于需求分析的软件工具 RSL(需求陈述语言)需求陈述语言) PSL/PSA (问题陈述语言问题陈述语言/问题陈述分析程序)问题陈述分析程序)49结构化结构化分析步骤分析步骤 问题描述问题描述 画分层的数据流图画分层的数据流图 决定哪些部分需要计算机化和怎样计算机化决定哪些部分需要计算机化和怎样计算机化 数据细节描述数据细节描述 定义处理逻辑定义处理逻辑 定义物理资源定义物理资源 确定输入确定输入/输出规格说明,确定有关数值输出规格说明,确定有关数值 确定硬件需求确定硬件需求 根据结构化分析模型,建立系统规格说明文档根据结构化分析模型,建立系统规格说明文档 50用结构化分析方法分析图书馆系统用结构化分析方法分析图书馆系统 【问题描述】【问题描述】 一个图书馆藏有图书和期刊杂志两大类书籍,每种图书/杂志可以有多册。 图书馆可以维护(注册、更新和删除)图书资料。 图书馆管理员负责与借书者打交道。 借书者可以预约目前借不到的书或杂志。 所有人员都可以浏览图书馆的图书信息和各种告示。 系统能在流行的技术环境下运行,有一个良好的图形交互界面。 系统应具有良好的可扩展性。 51 【功能分析】【功能分析】 浏览功能浏览功能:所有人员都可以浏览图书馆的图书信息。 借还功能:借还功能:借书者可以借/续借、还、预约图书。图书管理功能:图书管理功能:图书管理人员可以做录入、更新和销毁等图书信息维护工作。 借书者管理:借书者管理:系统管理人员可以进行注册、更改、注销借书者信息等维护工作。 52【建立数据流图】【建立数据流图】 分析图书馆系统有哪些外部用户,即角色。图书馆系统主要有一般浏览者、借书者、一般管理员和系统管理员四类外部用户。 浏览者浏览者 浏览图书浏览图书图书馆系统的基本逻辑模型图书馆系统的基本逻辑模型图书信息图书信息浏览命令浏览命令53【借借/ /还功能数据流图还功能数据流图】 借借/还功能(第一步)还功能(第一步)DFD 借借/还功能(修改)还功能(修改)DFD借书者借书者显示显示信息信息 借书借书 还书还书 续借续借 预约预约管理员管理员借书者借书者书目号和书目号和借书证号借书证号书目号书目号书目号书目号标题号和标题号和借书证号借书证号 借书借书 还书还书 续借续借 预约预约管理员管理员借书者借书者书目号和书目号和借书证号借书证号书目号书目号书目号书目号标题号和标题号和借书证号借书证号54【维护功能数据流图】【维护功能数据流图】 维护功能(第一步)维护功能(第一步)DFD 维护功能(修改)维护功能(修改) DFD注册借书注册借书者者注销借书注销借书者者录入新书录入新书更改借者更改借者更新图书更新图书销毁图书销毁图书处理罚金处理罚金 管理员管理员 管理员管理员录入标题录入标题删除标题删除标题修改标题修改标题销毁书目销毁书目修改书目修改书目录入新书录入新书 标题信息标题信息 标题号标题号 标题号标题号 书目信息书目信息 书目号书目号 书目号书目号 管理员管理员55【借书功能细化的数据流图】【借书功能细化的数据流图】管理员管理员借书者借书者验证借书验证借书者和图书者和图书书号书号借书证号借书证号创建借创建借书记录书记录显示失败信息显示失败信息更新更新借书者借书者更新图更新图书信息书信息显示借书成功显示借书成功不允许不允许借书记录借书记录图书信息图书信息允许允许借书功能细化的数据流图借书功能细化的数据流图借书者借书者56【建立实体【建立实体-关系图】关系图】 图书馆系统有图书馆系统有“图书图书”和和 “借书者借书者”两个实体。两个实体。 在数据流图的分析中发现在数据流图的分析中发现“图书图书”实体,没有真正实体,没有真正区别借书和预约的关系。借书者是借一本具体的书,即区别借书和预约的关系。借书者是借一本具体的书,即“书目书目”,而预约图书指的是此类书,而不是指具体的某,而预约图书指的是此类书,而不是指具体的某册书目。因此,要用册书目。因此,要用“标题标题”实体区分二者,即预约的是实体区分二者,即预约的是书的书的“标题标题”,而不是,而不是“书目书目”。 外部实体除了外部实体除了“借书者借书者”,还有,还有“系统管理员系统管理员”。因。因此,必须考虑有严格授权进入的权限。此,必须考虑有严格授权进入的权限。 57【图书馆系统实体【图书馆系统实体-关系图】关系图】注册注册/更改更改/注册注册借借书目书目条码号条码号分类号分类号ISBN录入录入/更新更新/删除删除ISBN号号书名书名作者作者出版社出版社馆藏数馆藏数价格价格可借数可借数图书馆系统的实体图书馆系统的实体-关系图关系图系统管理系统管理工号工号姓名姓名性别性别权限权限密码密码标题标题借书证号借书证号条码号条码号借书日期借书日期归还日期归还日期续借次数续借次数借书记录借书记录借书证号借书证号姓名姓名性别性别地址地址身份身份借书数借书数罚金罚金借书者借书者还还包含包含续借续借借书证号借书证号ISBN预约日期预约日期图书号图书号预约预约58【建立状态转换图】【建立状态转换图】 图书可借条件:图书馆库存的该图书的可借册数图书可借条件:图书馆库存的该图书的可借册数(n)大于预约该图书的借书者数目(大于预约该图书的借书者数目(m)。)。借出借出在架在架借借还还书目实体状态图书目实体状态图可借可借不可借不可借标题实体状态图标题实体状态图还书还书 n m+1还书还书 n = m借书借书 m = n+159【建立数据字典】【建立数据字典】 图书馆系统的图书信息分为图书馆系统的图书信息分为“标题标题”和和“书目书目”。标。标题描述抽象的书的信息,书目则是具体的每一本书的信息。题描述抽象的书的信息,书目则是具体的每一本书的信息。 名称:标题名称:标题别名:抽象的图书别名:抽象的图书描述:描述一个抽象的图书的信息描述:描述一个抽象的图书的信息定义:标题定义:标题= =ISBN+书名书名+作者作者+出出版社版社+出版出版日期版次日期版次+ +价格价格+ +目录目录+ +内容简介内容简介+ +馆藏数馆藏数+ +可借数可借数+ +预约数预约数位置:图书查询位置:图书查询,借书借书,还书还书,预约预约名称:书目名称:书目别名:具体的书别名:具体的书描述:对应标题的具体的一本书描述:对应标题的具体的一本书定义:书目定义:书目= =条码号条码号+ +分类号分类号+ +ISBN位置:借书、还书、更新位置:借书、还书、更新“标题标题”和和“书目书目”的卡片描述的卡片描述60
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!