- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML补考习汇总
UML补考练习汇总
1、请根据本学期的课程,结合实际软件开发过程,归纳出使用面向对象技术进行项目开发,需要开展哪些活动,你认为最关键的活动是什么?(A卷考过)
用例模型:用例文本和用例图(1分)
领域模型分析:领域模型(1分)
用例顺序图分析:用例顺序图(1分)
类图建模:类图(1分)
最关键的活动是领域建模。(1分)
2、“老师说要迭代开发,真是有道理。我决定在我们的项目组实施迭代开发,第一迭代先做需求,第二个迭代做分析,第三个迭代做设计….”,这句话正确吗?为什么?
不对(2分),每次迭代都是一次软件开发完整的过程,不是按步骤的每次迭代完成不同的任务(3分)。
3、假设要构造一个和用户下棋的游戏系统,哪些UML图对设计该游戏有帮助?为什么?(A卷考过)
答:用例图、类图、顺序图(交互图)(2分),用例图可以归纳游戏系统需要完成的功能需求,类图分析了系统需要的类,及其承担职责,刻画了系统的静态结构。使用顺序图可以对具体场景的交互进行动态建模。理解系统的内部的交互过程。(3分)。
4、在用例模型中,除了需要绘制用例图,最重要的是为每个用例编写用例文本,用例文本当中常有:主要参与者、涉众及其关注点、前置条件、后置条件、主成功场景、扩展场景、特殊需求等部分。阿呆比较笨,老是搞不清。请你告诉他那个部分最重要,解释该部分含义,并说明重要理由。
主成功场景 场景里面有对话功能,交互过程
5、根据下列代码片断,画图说明已经创建的类的数据成员及类间的关系。(要求:如有关联需要标明关联的方向、角色名和多重性)
[代码]
public class CatalogueEntry {
private String name;
private String number;
private String cost;
···
} public class Part {
private CatalogueEntry entry;
···
}
▲6、通信图和顺序图都是交互图,阿呆不明白什么时候用通信图,什么时候用顺序图。请你为他解释顺序图和通信图的优点和缺点。
顺序图和通信图的优缺点:顺序图对工具的支持更好,并有更多有效的表示法,可以更方便地表示调用流的顺序,并且在文档化方面更胜一筹。而通信图则必须查阅顺序编号,在墙上绘制“ UML草图”时利用通信图易于修改更具空间效用,而顺序图在墙上绘制(或窄幅纸张)时不如通信图方便。
7、Monopoly游戏中,由谁来创建Square对象比较合适?阿呆发现类图中有两个类都可以承担此职责:MonopolyGame和Board。他有点迷糊不知道该选那个比较好。请你帮他选一个,并解释理由。
因为square是被包含关系,被包含于board
所以由board来创建
▲8、阿呆刚学过GRASP设计原则,觉得很不错,于是准备应用在设计的选课系统中,系统有课程类,课程类的实例包含某门课程的具体信息。阿呆就想,依据信息专家的原则,那么,该由课程对象把课程信息存入到数据库中。但是项目经理告诉他这样做不好。阿呆想不通,请你详细为阿呆解释一下,这样做有什么坏处,应该如何处理。(A卷考过)
坏处:高内聚,低耦合,冗余高;
应该虚构一个类来帮助解决
参考P213
将课程信息存入数据库的职责分配给课程类会造成课程类与数据库接口类的耦合,面向数据库的操作与实际的课程类无关,使得课程类非内聚,不利于数据库操作的复用,其它类也存在保存对象的职责。
在某些情况下,专家模式建议的方法并不好,这是由于耦合与内聚问题所产生的。专家会建议由课程对象把课程信息存入到数据库中,那么按照这个决定进行逻辑推理,每个类都应当把自身保存到数据库中。但这样会导致内聚,耦合,及冗余方面的问题,例如现在课程类必须包含于数据库处理相关的逻辑,如SQL和JDBC相关的处理逻辑。因此,课程类由于存在其他职责而降低了它的内聚,这个类必须与其他子系统的数据服务进行耦合,会使得耦合度上升。这样会导致大量持久性类中重复出现类似的数据库逻辑,有大量的冗余。
所以这样的做法违反了基本架构原则,应将应用逻辑和数据库逻辑放置不同一处,而不是在同一构件中把不同的系统关注混合起来。因此,按照专家模式,该由课程对象把课程信息存入到数据库中是合理的,但由于其他原因,会使得我们最终得出不佳的设计
9、请你详细说明一下领域模型与设计类图的相同点及不同点。
相同点 领域模型是没有方法的类图的集合
不同点 领域模型只有属性无类型无方法 类图包括类名,属性,操作
10下图是一个“涉税服务管理效能管理系统”中类模型的一个局部,请根据该图回答以下问题。在描述“税务审批服务申请”时,它主要包含哪几个方面的内容?它有几种不同的类别?(A卷考过)
1:三个指向他的“申请”
2:4个被它指向的
11 PO
文档评论(0)