软件工程用例图 题目
2020软件工程形考三-基于UML的图书馆管理系统

基于UML的大学图书馆图书信息管理系统设计实验系统简介本系统为一个小型的图书管理系统,需完成以下工作:(1)借书、还书(2)在图书馆中增加或删除一本书(3)按照作者或者专业领域查找一批书(4)找出被某位读者借出的一批书(5)找出最近借出某本书的读者系统的用户有两类:图书管理员和普通读者。
功能(1)(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员和读者的共同功能。
本系统需满足以下限制:(1)图书馆中所有未借出的书可供读者随时借阅(2)在同一时刻,一本书不能既被借出又可供阅读(3)一个读者一次借出图书的数目不能超过预定值1、用例分析与设计从以上系统简介内容中可以看出,本系统有以下几类参与者:图书管理员Admin读者Reader读卡器CardReader服务器System在上述参与者中,图书管理员和读者与系统进行交互,通过对交互场景进行归类和抽象,本系统应具有以下用例:借书lendBook还书returnBook增加图书addBook删除图书delBook按作者、专业检索图书findBook_Author按读者检索图书findBook_Reader按书检索读者findReader_Book2.1生成用例图由以上用例分析可生成用例图,如图2.1所示图2.1 系统用例图2.2用例的顺序图为了使每个用例的操作流程更简洁明了,本系统采用UML的顺序图来对每个用例进行细化,如下所示。
1、借书图2.2 借书顺序图函数说明:InsertCard():刷卡ReadCard():读卡ifMax()判断借书数量是否达到上限ReturnReaderInfo()返回读者信息Return(true):该读者可继续借书lendBook():输入借书信息Update()更新数据库2、还书图2.3 还书顺序图函数说明:BookInfo():输入还书信息Update():更新数据库ReturnReaderInfo():返回读者信息3、增加图书图2.4 增加图书顺序图函数说明:addBook():输入增加的图书信息ifAllowsAdd():判断是否允许添加Update():更新图书信息Return(true):返回添加成功4、删除图书图2.5 删除图书顺序图函数说明:delBook():输入删除的图书信息ifAllowsDel():判断是否可以删除ifSure():是否确定删除Return(true)5:确定删除Update():更新图书信息Return(true)7:返回删除成功5、按作者检索图书图2.6 按作者或专业检索图书顺序图函数说明:findBook_Author():管理员或读者选择按作者或专业检索图书Author(String):输入作者或专业信息returnBookInfo():返回图书信息6、按读者检索图书管理员部分:图2.7 按读者检索图书顺序图图2.8 读者检索个人借阅图书顺序图函数说明:findBook_Reader():选择按读者检索图书ReaderId():输入读者编号ReaderIdandPass():输入读者编号密码returnBookInfo():返回书籍信息7、按书检索读者图2.9 按图书检索读者顺序图findReader_Book():选择按图书检索读者BookID():输入图书编号returnReaderInfo():返回读者信息2、概念模型和顶层架构设计3.1概念模型设计图3.1 系统概念模型——分析类图说明:表示控制类表示实体类表示边界类3.2顶层架构设计图3.2 系统顶层架构3、用户界面设计4.1 界面变化分析根据管理员的功能分析,与管理员相关的主要界面有以下10个:Admin Welcome:管理员主界面findReader_Book:按读者检索图书界面lendBook:借书界面returnBook:还书界面addBook:增加图书界面delBook:删除图书界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面UserInfo:显示读者信息界面BookInfo:显示图书信息界面各界面之间的转换如状态图4.1所示图4.1 管理员屏幕变化状态图根据读者的功能分析,与读者相关的主要界面有以下5个:Reader Welcome:读者主界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面InputPass:读者验证账户名密码界面BookInfo:显示图书信息界面各界面之间的转换如状态图4.2所示图4.2 读者屏幕变化状态图4.2 界面的类图表示针对每个屏幕的结构及功能,采用类图对其进行详细说明,如下所示。
软件工程作业

软件工程作业
一.一个日记和时间管理系统,希望它支持一组同事的会议时间安排。
当一个会
议包括多个人时,系统在这些人员的日记中找到共同空闲时间并将会议安排在这个时间。
如果没有共同的空闲时间可用,系统就同用户交互来安排日程一边腾出时间参加会议。
1)对所描述的系统场景进行分析,画出用例模型; 2)识别出所有的关键抽象,画出域模型;
3)为每一个用例创建设计模型(用序列图表示)。
(1
员工
(2
(3)序列图
二.银行帐户管理、储蓄业务处理系统
为方便储户,某银行拟开发计算机储蓄系统。
储户填写的存款单或取款单由业务员键入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息(若为新储户须建立帐户),并打印存款单给储户;如果是取款,系统计算利息并打印利息清单给储户(若为清户记录注销该帐户);还可向储户提供余额查询功能。
出纳员用例图
用户用例图。
UML试题(内含答案)

UML试题(内含答案)【用例图】1.用例图的节点包括(ABD)A、用例B、边界C、关联D、执行者2.用例之间的关系主要有(BCD)A、聚合B、继承C、扩展D、包含3.在采用用例模型捕获需求时,需要执行如下(ABCD)操作A、描述非功能需求B、用例建模C、识别用例D、识别参与者4.在识别用例时,以下(ABC)问题可以帮助识别用例A、当系统状态发生故障时,是否需要通知参与者B、系统是否存在外部事件,如果存在,是哪个能参与者通知系统这些个部事件C、参与者希望系统为他提供什么样的功能D、系统运行环境是什么5.在用例图中,可以用(D)来表示整个软件系统或其中一些子系统的边界,也可以用它表示软件系统的不同发布版本的功能范围A、执行者B、关联关系C、用例D、边界框6.(B)作为完成用例任务的责任承担者,协调、控制其他类共同完成用例规定的功能或行为A、数据对象B、控制类C、实体类D、边界类7.基于用例图的需求捕获的第一步就是确定系统的参与者,在寻找系统参与者时,可以根据以下(ABCD)等问题来确定A、系统同环境如何进行交互B、由谁安装系统C、系统为哪些对象提供信息、服务D、系统的使用者是谁8.如果用例B是用例A的某项子功能,并且建模者确切地知道在A所对应的动作序列中何时将调用B,则称(A)A、用例A扩展用例BB、用例A继承用例BC、用例A包括用例BD、用例A实现用例B9.如果用例A与用例B相似,但A的动作序列是通过改写B的部分或者扩展B的动作而获得的,则称(B)A、用例A实现用例BB、用例A继承用例BC、用例A扩展用例BD、用例A包括用例B10.如果用例A与用例B相似,但A的功能较B多,A的动作序列是通过在B的动作序列中的某些执行点上插入附加的动作序列而构成的,则称(C)A、用例A扩展用例BB、用例A包含用例BC、用例A继承用例BD、用例A实现用例B11.在UML中,(A)表示使用软件系统的功能,与软件系统交换信息的外部实体A、执行者B、类C、用例D、用例图12.在用例图中,执行者之间的关系只有(B)一种A、包含B、继承C、扩展D、实现【静态图】1.对于类,其属性的可见性表示对类的外部世界的可见性,它有以下(ABCD)选项A、公开(public)B、包内公开(package)C、保护(protected)D、私有(private)2.在UML中,以下(ABCD)是可以应用于包的构造型A、框架{《Framework》}B、虚包{《Facade》}C、子系统{《Subytem》}D、系统{《ytem》}3.两个类之间的关联表示他们之间存在一种不适于继承的逻辑关系。
软件工程各种图的画法(考试必备)

1.完成患者监护系统功能级的数据流图、实体联系图、软件结构图。
2.网上书店系统,其外部用户主要有游客、会员和管理员。
其中,游客进行注册后,可以成为系统的会员,会员享有订购图书及订单和书籍等信息查询的功能,管理员可对系统的各种信息进行管理和维护。
根据上述描述,请画出网上书店系统的:①基本系统模型(第0层);②功能级的数据流图(第1层);③底层的订购图书数据流图。
1.把如下统计空格程序的Jackson图改画为等价的程序流程图和盒图。
2、用Jackson图描述下述的一列火车的构成:一列火车最多有两个火车头。
只有一个火车头时则位于列车最前面,若还有第二个火车头时,则第二个火车头位于列车的最后面。
火车头既可以是内燃机车也可以是电气机车。
车厢分为硬座车厢、硬卧车厢和软卧车厢等3种。
硬座车厢在所有车厢的前面部分,软卧车厢在所有车厢的后面部分。
此外,在硬卧车厢和软卧车厢之间还有一节餐车。
1.饮用水自动销售系统的工作过程大致如下:如果投入1元硬币,则自动放水5升;如果投入5角硬币,放水2.5升;如果选择1元,投入2个伍角的硬币,也可放水5升。
如果饮用水来不及生成,系统会把硬币退出来并亮红灯。
收到的硬币由收银员定时回收。
试画出该系统的用例图。
2.某寄宿学校需要开发一个信息管理系统,通过该管理系统对学生的日常事务进行管理:校长助理:管理学生的档案,进行新增、删除、查询、修改等操作;对学生班级进行管理(新增、删除等),进行新学生的编班工作和调班工作,查询班级名册等情况。
财务人员:进行每月的收费和退费工作,每个学生的每月费用包括住宿费,伙食费220,在6-8 月收取空调费20,在11-2 月收取取暖费20,每个学期的开学初(3 月、9 月)收取书本费(不定)。
住宿费分三种情况:双职工的子女为60,单职工的子女80 元,父母均不在本单位工作为100 元。
每个班的老师在每天要申报本班学生的出勤表,由校长助理完成各班的考勤录入,考勤情况决定上月的伙食退费,以每天10 元计算。
软件工程习题(1)

3.输入三个正整数作为边长,判断该三条边构成的三角形是等边、等腰还是一般三角形。
使用流程图、PAD图4、什么是判定/条件覆盖?为以下程序流程图设计判定/条件覆盖测试用例并标明程序执行路径。
判定/条件覆盖——它是指设计足够的测试用例,即满足条件覆盖又满足判定覆盖。
测试用例:x=2,y=0,z=3(覆盖x>1,y=0,x=2,z>1,通过路径abcde);x=1,y=1,z=1(覆盖x≤1,y≠0,x≠2,z≤1,通过路径ace)。
5、根据下列条件使用等价类划分法设计测试用例。
(书P118 例)某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065(1)划分等价类并编号,如下表示:(2)为合理等价类设计测试用例,表中有两个合理等价类,设计两个例子(3)为不合理等价类测试用例,至少设计一个测试用例6、将下面给出的伪码转换为N-S 图。
(8分)void root ( float root1, float root2 ) { i = 1; j = 0; while ( i <= 10 ) {输入一元二次方程的系数a, b, c; p = b*b – 4*a*c;if ( p < 0 ) 输出“方程i 无实数根”; else if ( p > 0 ) 求出根并输出; if ( p == 0 ) {求出重根并输出; j = j + 1; }i = i +1; }输出重根的方程的个数j; }7、某航空公司规定,乘客可以免费托运重量不超过30kg 的行李。
当行李重量超过30kg 时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。
用判定树表示与上述每种条件组合相对应的计算行李费的算法。
i = 1; j = 0; while ( i <= 10 ) 输入a, b, c; 计算 p = b 2 - 4ac ; p < 0 ? 输出“方程i ”无求出根并输出 ↓p > 0 ? p == 0 ? 求出重根并输出; j = j + 1; ↓i = i + 1; 输出重根的方程个数i T T T F FF8、使用PAD图描述在数组A(1)~A(10)中找最大数的算法9、假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。
软件工程教案 (22)-用例图和类图练习

过滤用例图中的名词 通过事件列表 寻找用例中的实体
(2) 初步找到了: (接口类和控制类暂时不考虑)
员工信息 用户(管理干部、公司领导) 统计报表
7
2019/3/22
2 建立类图
(3) 确定类的关系…
员工信息
用户
1 1 1
1
* 聘任信息
* 奖惩记录
人事管理干部
公司领导
基本信息
-结束3
人事管理干部
公司领导
财务系统
2019/3/22
4
1 建立用例图
(4) 细化用例图
人事管理系统
人事信息管理 <<Include>> <<uses>> 保存信息 <<Include>>
<<Include>> <<Include>> 奖惩 人事管理干部 人事调动 人事档案库 聘任 职称评定
查询人事信息 公司领导
统计报表
2019/3/22
8
1 建立用例图
(3) 生成用例图
人事管理系统
-结束9 -结束13 * * * -结束10 人事信息管理 -结束11 -结束12 * * 保存信息 * 人事档案库 -结束14 -结束16 -结束15 * * -结束5 * 查询人事信息 * -结束7 * 生成与输出统计报表 -结束 21 -结束 * * -结束4 -结束 6 结束 8 ** *
生成与输出统计报表 财务系统
2019/3/22
5
1 建立用例图
(4) 用例图绘制步骤小结
《软件工程与UML》期末试题[整理]
![《软件工程与UML》期末试题[整理]](https://img.taocdn.com/s3/m/858fd956bf1e650e52ea551810a6f524ccbfcbf5.png)
《软件工程与UML》期末试题适用专业:考试时间 120分钟一、单项选择题(本大题共小题,每题分,共分)1. UML图不包括(D )A. 用例图B. 类图C. 状态图D. 流程图2. 下面哪一项不是包图中的关系(D )A .<<use>> B. <<access>> C. <<trace>> D. <<stub>>3. 在类图中,下面哪个符号表示继承关系(C )D.A. B. C.4. 在类图中,“#”表示的可见性是(B )A. PublicB. ProtectedC. PrivateD. Package5. 消息的组成不包括(C )A. 接口B. 活动C. 发送者D.接收者6. 下面哪个视图属于UML语言的交互图(D )A. 行为图B. 状态图C. 实现图D. 顺序图7. UML语言包含几大类图形(B )A. 3B. 5C. 7D. 98. RUP中有(C )个核心过程工作流。
A. 1B. 3C. 6D. 99. 类之间的关系不包括(D )A. 依赖关系B. 泛化关系C. 实现关系D. 分解关系10. 在UML中,协作图的组成不包括(C )A. 对象B. 消息C. 发送者D. 链11. 下面哪个符号代表包图(A )A. B. C. D.12. 下列对状态图描述不正确的是(C )A. 状态图通过建立类对象的生命周期模型来描述对象随时间变化的动态行为。
B. 状态图适用于描述状态和动作的顺序,不仅可以展现一个对象拥有的状态,还可以说明事件如何随着时间的推移来影响这些状态。
C. 状态图的主要目的是描述对象创建和撤销的过程中资源的不同状态,有利于开发人员提高开发效率。
D. 状态图描述了一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处状态对不同的事件做出反应。
13. 在UML的顺序图中,通常由左向右分层排列各个对象,正确的排列方法是(A )A. 执行者角色控制类用户接口业务层后台数据库B. 执行者角色用户接口控制类业务层后台数据库C. 执行者角色控制类用户接口后台数据库业务层D. 执行者角色用户接口业务层控制类后台数据库14. 多对象是UML哪个视图中的概念(C )A. 类图B. 状态图C. 协作图D. 组件图15. 构件图的组成不包括( C )A. 接口B. 构件C. 发送者D. 依赖关系16. 在UML 中,接口有几种表达方式( A )A. 2B. 4C. 6D. 8 17. 部署图的组成不包括( C )A. 处理器B. 设备C. 构件D. 连接18. 下面哪个UML 视图是描述一个对象的生命周期的( B )A. 类图B. 状态图C. 协作图D. 顺序19. 顺序图由对象、生命线、控制焦点和( B )组成A .关系 B. 消息 C. 用例 D. 实体20. UML 中关联的多重度是指( B )A. 一个类有多个方法被另一个类调用B. 一个类的实例能够与另一个类的多少个实例相关联C. 一个类的某个方法被另一个类调用的次数D. 两个类所具有的相同的方法和属性21. “软件危机”是指( C )A. 计算机病毒的出现B .利用计算机进行经济犯罪活动24.采用UML 进行软件建模的过程中,类图是系统的一种静态视图,用( B )可明确表示两类事物之间存在的整体/部分形式的关联关系。
软件工程各种图的画法(考试必备)【范本模板】

1.完成患者监护系统功能级的数据流图、实体联系图、软件结构图.2.网上书店系统,其外部用户主要有游客、会员和管理员。
其中,游客进行注册后,可以成为系统的会员,会员享有订购图书及订单和书籍等信息查询的功能,管理员可对系统的各种信息进行管理和维护。
根据上述描述,请画出网上书店系统的:①基本系统模型(第0层);②功能级的数据流图(第1层);③底层的订购图书数据流图。
1.把如下统计空格程序的Jackson图改画为等价的程序流程图和盒图.2、用Jackson图描述下述的一列火车的构成:一列火车最多有两个火车头。
只有一个火车头时则位于列车最前面,若还有第二个火车头时,则第二个火车头位于列车的最后面。
火车头既可以是内燃机车也可以是电气机车。
车厢分为硬座车厢、硬卧车厢和软卧车厢等3种.硬座车厢在所有车厢的前面部分,软卧车厢在所有车厢的后面部分.此外,在硬卧车厢和软卧车厢之间还有一节餐车.1.饮用水自动销售系统的工作过程大致如下:如果投入1元硬币,则自动放水5升;如果投入5角硬币,放水2.5升;如果选择1元,投入2个伍角的硬币,也可放水5升。
如果饮用水来不及生成,系统会把硬币退出来并亮红灯.收到的硬币由收银员定时回收。
试画出该系统的用例图。
2。
某寄宿学校需要开发一个信息管理系统,通过该管理系统对学生的日常事务进行管理:校长助理:管理学生的档案,进行新增、删除、查询、修改等操作;对学生班级进行管理(新增、删除等),进行新学生的编班工作和调班工作,查询班级名册等情况。
财务人员:进行每月的收费和退费工作,每个学生的每月费用包括住宿费,伙食费220,在6-8 月收取空调费20,在11—2 月收取取暖费20,每个学期的开学初(3 月、9 月)收取书本费(不定).住宿费分三种情况:双职工的子女为60,单职工的子女80 元,父母均不在本单位工作为100 元。
每个班的老师在每天要申报本班学生的出勤表,由校长助理完成各班的考勤录入,考勤情况决定上月的伙食退费,以每天10 元计算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
既然用例是系统提供服务的UML 表述, 那么服务这个过程在所有用例场景中是 必然发生的,但发生按照发生条件可分 为如下两种情况: ⒈ 无条件发生:肯定发生的; ⒉ 有条件发生:未必发生,发生 与否取决于系统状态;
因此,针对用例的三种关系结合系统状态考虑,泛化 与包含用例属于无条件发生的用例,而扩展属于有条 件发生的用例。进一步,用例的存在是为Actor 提供服 务,但用例提供服务的方式可分为间接和直接两种, 依据于此,泛化中的子用例提供的是直接服务,而包 含中的被包含用例提供的是间接服务。同样,扩展用 例提供的也是直接服务,但扩展用例的发生是有条件 的。 另外一点需要提及的是:泛化中的子用例和扩展 中的扩展用例均可以作为基本用例事件的备选择流而 存在。
包含(include)、扩展(extend)和泛 化(generalization)三种联系和区别
/blog/386832 共性: 都是从现有的用例中抽取出公共 的那部分信息,作为一ห้องสมุดไป่ตู้单独的用例, 然后通后过不同的方法来重用这个公共 的用例,以减少模型维护的工作量。
二 在线购物系统
(1) 系统整体用例图
UML 中扩展和泛化的区别
泛化表示类似于OO 术语“ 继承” 或“ 多态” 。 UML 中的Use Case 泛化过程是将不同Use Case 之间 的可合并部分抽象成独立的父Use Case ,并将不可合 并部分单独成各自的子Use Case ;包含以及扩展过程 与泛化过程类似,但三者对用例关系的优化侧重点是 不同的。如下: ● 泛化侧重表示子用例间的互斥性; ● 包含侧重表示被包含用例对Actor 提供服务的 间接性; ● 扩展侧重表示扩展用例的触发不定性;详述 如下:
2 、扩展(extend) 扩展关系:将基用例中一段相对独立并且可选的动作, 用扩展(Extension )用例加以封装,再让它从基用例 中声明的扩展点(Extension Point )上进行扩展,从 而使基用例行为更简练和目标更集中。扩展用例为基 用例添加新的行为。扩展用例可以访问基用例的属性, 因此它能根据基用例中扩展点的当前状态来判断是否 执行自己。但是扩展用例对基用例不可见。 对于一个扩展用例,可以在基用例上有几个扩展 点。
包含关系对典型的应用就是复用,也就是定义中说的 情景。但是有时当某用例的事件流过于复杂时,为了 简化用例的描述,我们也可以把某一段事件流抽象成 为一个被包含的用例;相反,用例划分太细时,也可 以抽象出一个基用例,来包含这些细颗粒的用例。这 种情况类似于在过程设计语言中,将程序的某一段算 法封装成一个子过程,然后再从主程序中调用这一子 过程。 例如:业务中,总是存在着维护某某信息的功能, 如果将它作为一个用例,那新建、编辑以及修改都要 在用例详述中描述,过于复杂;如果分成新建用例、 编辑用例和删除用例,则划分太细。这时包含关系可 以用来理清关系。
例如,系统中允许用户对查询的结果进 行导出、打印。对于查询而言,能不能 导出、打印查询都是一样的,导出、打 印是不可见的。导入、打印和查询相对 独立,而且为查询添加了新行为。因此 可以采用扩展关系来描述:
3 泛化(generalization) 泛化关系:子用例和父用例相似,但表现出更特别的 行为;子用例将继承父用例的所有结构、行为和关系。 子用例可以使用父用例的一段行为,也可以重载它。 父用例通常是抽象的。在实际应用中很少使用泛化关 系,子用例中的特殊行为都可以作为父用例中的备选 流存在。 例如,业务中可能存在许多需要部门领导审批的事情, 但是领导审批的流程是很相似的,这时可以做成泛化 关系表示:
1 、包含(include) 包含关系:使用包含(Include )用例来封装 一组跨越多个用例的相似动作(行为片断), 以便多个基(Base )用例复用。基用例控制 与包含用例的 关系,以及被包含用例的事件流 是否会插入到基用例的事件流中。基用例可以 依赖包含用例执行的结果,但是双方都不能访 问对方的属性。
用例图 练习题
一 售票系统
参与者包括售票员、监督员和公用电话 亭。公用电话亭是另一个系统,它接收 顾客的订票请求。顾客不直接与售票系 统交互。用例包括通过公用电话亭或售 票员购票,购预约票(只能通过售票员) 以及售票监督(应监督员的要求)。购 票和购预约票包括一个共同的部分,即 通过信用卡来付钱。