• 134.00 KB
  • 2022-04-22 11:43:09 发布

软件工程上机指导课后习题答案.doc

  • 14页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'《软件工程》上机指导习题集答案面向对象的需求获取(一):活动图一、1~7DBAAEAD二、1、略2、略3、(1)角色:客户、销售员、仓库管理员(2)客户活动:查看商品、查看单据、存款三、四、 五、面向对象的需求获取(二):用例图一、1~5ADDDB6~10DAADC11~12A(ABCE)二、4、在Browser中删除一个模型元素将同时删除所有的Diagram中对它的引用,该模型元素奖真正从模型文件中删除。在Diagram中删除的模型元素不一定真正在模型文件中被删除,而只是从当前的图中被删除。5、üUse-casediagramsüActivitydiagramsüUse-caseflowofeventsüSupplementalinformation补充信息三、1、A浏览客户信息B修改个人信息C登录系统D删除客户信息2、该用例图描述的是图书馆管理系统中管理员对书籍和书目的管理流程。在这个流程中,管理员这个Actor与用例删除书目、删除书籍、修改书籍信息、新增书籍之间能通过消息传递发生关联,而图书查询这个用例与删除书目、删除书籍、修改书籍信息这三个用例之间有被包含的关系,也就是说,在删除书目、删除书籍、修改书籍信息用例发生的过程前,需要进行图书查询。新增书目这个用例与新增书籍这个用例也是被包含的关系。 四、五、 六、七、 面向对象的需求获取(三):用例图文档撰写1.借阅物理书刊(BorrowBook)1.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。1.2后置条件(Post-Conditions)如果这个用例成功,在系统中建立并存储借阅记录,如果必要还要删除预订记录。否则,系统的状态没有变化。1.3扩展点(ExtensionPoints)借阅者预定了书刊。1.4事件流1.4.1基流(BasicFlow)当借阅者从图书馆借阅物理书刊时,用例启动。(1)图书管理员提供书刊书目、借阅者信息。(2)系统检索书刊书目(Title)(E-1)(3)系统确定所借阅的物理书刊是否可以获得(E-2),也即物理书刊是否都已借出。(4)系统检索借阅者(E-3)(5)图书管理员将物理书刊借给借阅者(6)记录借阅信息。(7)若该图书为预定的图书,执行用例4取消预定(CancelReservation)1.4.2替代流(AlternativeFlow)E-1该种书刊不存在,系统显示提示信息,用例终止。E-2物理书刊都已借出,系统显示提示信息,用例终止。E-3系统中不存在该借阅者,系统显示提示信息,用例终止。2.返还物理书刊(ReturnBook)2.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。2.2后置条件(Post-Conditions)在这个用例成功,系统删除借阅记录。否则,系统的状态没有变化。2.3扩展点(ExtensionPoints)没有。2.4事件流2.4.1基流(BasicFlow)当借阅者返还所借的物理书刊时,用例启动。(1)图书管理员提供所还物理书刊信息。(2)系统检索物理书刊(E-1)。(3)系统查询物理书刊的借阅记录(E-2)。(4)系统删除借阅记录。2.4.2替代流(AlternativeFlow)E-1物理书刊不存在,系统显示提示信息,用例终止。E-2若借阅记录不存在,系统显示提示信息,用例终止。 3.预定书刊(ReserveTitle)3.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。3.2后置条件(Post-Conditions)如果这个用例成功,系统建立预订记录。否则,系统的状态没有变化。3.3扩展点(ExtensionPoints)没有。3.4事件流3.4.1基流(BasicFlow)当Librarian为借阅者预订书刊时,用例启动。(1)图书管理员提供书刊书目、借阅者信息。(2)系统检索书刊书目(E-1)。(3)检索借阅者(E-2)。(4)系统接受预定,创建预定记录。(5)系统将预定记录存储在系统中。3.4.2替代流(AlternativeFlow)E-1该种书刊不存在,系统显示提示信息,用例终止。E-2系统中不存在该借阅者,系统显示提示信息,用例终止。4.取消预定(CancelReservation)4.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。4.2后置条件(Post-Conditions)如果这个用例成功,系统删除预订记录。否则,系统的状态没有变化。4.3扩展点(ExtensionPoints)没有。4.4事件流4.4.1基流(BasicFlow)(1)图书管理员提供所预定的书刊书目、借阅者信息。(2)系统检索所预定的书刊书目(E-1)。(3)系统检索借阅者(E-2)。(4)系统删除借阅者的预定信息(E-3)。4.4.2替代流(AlternativeFlow)E-1该种书刊不存在,系统显示提示信息,用例终止。E-2系统中不存在该借阅者,系统显示提示信息,用例终止。E-3预定信息不存在,系统显示提示信息,用例终止。思考与练习5.维护借阅者信息(MaintainBorrowerInfo)5.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。5.2后置条件(Post-Conditions)如果这个用例成功,系统添加、修改或删除借阅者信息。否则,系统的状态没有变化。 5.3扩展点(ExtensionPoints)没有。5.4事件流5.4.1基流(BasicFlow)当Librarian想维护借阅者信息时,用例启动。系统要求Librarian选择所想执行的活动(添加借阅者、删除借阅者或修改借阅者)如果所选的活动是“添加借阅者”,则执行分支流S-1:添加借阅者。如果所选的活动是“删除借阅者”,则执行分支流S-2:删除借阅者。如果所选的活动是“修改借阅者”,则执行分支流S-3:修改借阅者。5.4.2分支流(Subflows)S-1:添加借阅者(1)图书管理员提供借阅者的信息,如姓名、地址、邮政编码和身份证号码等。(2)系统存储借阅者信息(E-1)。S-2:删除借阅者(1)图书管理员提供借阅者的信息。(2)系统查询借阅者(E-2)。(3)系统查询借阅者的借阅记录(E-3)(4)系统删除借阅者的信息,以及借阅者的预定记录。S-3:更改借阅者(1)图书管理员提供借阅者的信息。(2)系统查询并显示借阅者的信息(E-2),修改相应的信息。(3)系统更新借阅者的信息。5.4.3替代流(AlternativeFlow)E-1若借阅者已存在,系统显示提示信息,用例终止。E-2若查询不到借阅者,系统显示提示信息,用例终止。E-3若存在借阅记录,系统显示提示信息,用例终止。6.维护书刊信息(MaintainTitleInfo)6.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。6.2后置条件(Post-Conditions)如果这个用例成功,系统添加、修改或删除书刊书目信息。否则,系统的状态没有变化。6.3扩展点(ExtensionPoints)没有。6.4事件流6.4.1基流(BasicFlow)当Librarian想维护借阅者信息时,用例启动。系统要求Librarian选择所想执行的活动(添加书种、删除书种或修改书种)。如果选择的活动是“添加书种”,则执行分支流S-1:添加书刊信息。如果选择的活动是“删除书种”,则执行分支流S-2:删除书刊信息。如果选择的活动是“修改书种”,则执行分支流S-3:修改书刊信息。6.4.2分支流(Subflows) S-1:添加书刊信息(1)图书管理员提供书刊的书名、作者、ISBN/ISSN号等信息。(2)系统添加该书刊信息。S-2:删除书刊信息(1)图书管理员提供所要删除的书刊信息。(2)系统查询所要删除的书刊(E-2)(3)系统删除该书刊的所有物理书刊的信息(E-3)(4)系统删除书刊信息,以及相关的预定信息。S-3:更改书刊信息(1)图书管理员提供所要修改的书刊信息。(2)系统查询并显示书刊信息(E-2)(3)系统修改相应的的信息(4)系统更新书刊信息。6.4.3替代流(AlternativeFlow)E-1若书刊信息已存在,系统显示提示信息,用例终止。E-2若查询不到该书刊,系统显示提示信息,用例终止。E-3若有物理书刊借出,系统显示提示信息,用例终止。7.维护物理书刊信息(MaintainBookInfo)7.1前置条件(Pre-Conditions)在这个用例开始前,Librarian必须登录到系统中。7.2后置条件(Post-Conditions)如果这个用例成功,系统添加、修改或删除物理书刊信息。否则,系统的状态没有变化。7.3扩展点(ExtensionPoints)没有。7.4事件流7.4.1基流(BasicFlow)当Librarian想维护物理书刊信息时,用例启动。系统要求Librarian选择所想执行的活动(添加书刊物理书种、删除物理书种或修改物理书刊)。如果所选的活动是“添加物理书刊”,则执行分支流S-1:添加物理书刊信息。如果选择的活动是“删除物理书刊”,则执行分支流S-2:删除物理书刊信息。如果选择的活动是“修改物理书刊”,则执行分支流S-3:修改物理书刊信息。7.4.2分支流(Subflows)S-1:添加物理书刊信息(1)图书管理员提供物理书刊的书目信息。(2)系统查询物理书刊的书目(Title),确定是否已存在该书刊书目(E-1)。(3)系统存储物理书刊信息。S-2:删除物理书刊信息(1)图书管理员提供物理书刊的书目信息。(2)系统查询物理书刊的书目(Title)(E-1)。(3)系统删除物理书刊。S-3:修改物理书信息。 (1)图书管理员提供物理书刊的书目信息。(2)系统查询物理书刊的书目(Title)(E-1)。(3)系统查询并显示该种书刊的所有物理书刊。(4)图书管理员选择物理书刊并修改其信息(5)系统更新系统中物理书刊的信息。7.4.3替代流(AlternativeFlow)E-1若系统中不存在该书刊书目,添加该书刊书目信息。8.登录(LogIn)8.1前置条件(Pre-Conditions)没有。8.2后置条件(Post-Conditions)如果用例成功,参与者可以启动系统并使用系统所提供的功能。反之,系统状态不变。8.3扩展点(ExtensionPoints)没有。8.4事件流8.4.1基流(BasicFlow)当用户希望登录到系统中时,用例启动。(1)系统提示用户输入用户名和密码。(2)用户输入用户名和密码。(3)系统验证输入的用户名和密码,若正确(E-1),则用户登录到系统中。8.4.2替代流(AlternativeFlow)E-1如果用户输入无效的用户名和/或密码,系统显示错误信息,用户可以选择返回基流的起始点,重新输入正确的用户名和/或密码:或者取消登录,用全结束。面向对象的分析与设计(一)类图&对象图一、1~5DDCCC6~10AADDD11~14ECAA15ACBED16~19DBAB二、1.Login,sName、sPass,checkUser()2.包3.类图4.提供接口、所需接口5.实现、依赖(使用)三、1.在UML中,包是分组事物的一种,它是建模时用来组织模型中的元素的,在系统运行时并不存在包的实例。包在开发大型软件系统时是一个非常重要的机制,它就象一个“容器”,可用于组织模型中的相关元素以便更容易理解。2.设计C最好。 理由:学员和教员均可以从Candidate类继承而来;抽象出Role类,使Candidate类与Role类之间形成多对多的关联关系,实现了“一个人既是教师又是某门课的学生”这个需求。3.1)书籍、书目2)书籍管理3)借书界面4)sUserName、sPass4.{or}四五、 六、UML设计方案:Java代码:publicclassFruit{publicvoidplant(){}publicvoidgrow(){}publicvoidharvest(){}}publicclassAppleextendsFruit{}publicclassGrapeextendsFruit{}publicclassFarmer{publicFruitplant(Stringmessage){if(message.equals("apple"))returnnewApple();elsereturnnewGrape();}}publicclassInquier{publicStringinquire(){return"grape"; }}publicclassBoss{publicStringcommand1(Inquierinquier){returninquier.inquire();}publicFruitcommand2(Farmerfarmer,Stringmessage){returnfarmer.plant(message);}}publicclassGarden{privateBossboss;privateFarmerfarmer;privateInquierinquier;privateFruitfruit;}面向对象的分析与设计(二):交互图(顺序图、协作图)一、1~4CEDA5CAD6~9AADB二、略三、1、 四、 面向对象实施与部署(二)状态图一、DFFD二、1、2、略3、1)三种状态:就绪、运行、阻塞2)线程的基本运行过程:首先,线程处于就绪态,当取得CPU时间片,进入运行状态;如果正常运行,则直到运行结束;如果运行中CPU时间片用完,则返回就绪态;如果运行中不满足所需资源,则进入阻塞状态,当系统满足资源时,重新进入就绪状态。三、'