软考中涉及扩展与包括关系的辨认,先不说考试的事,扩展与包括关系是UML中非经常见、非常基础的一种关系,然而我发现非常多同学都特别easy混淆,甚至软考真题中都存在题目和答案有待商榷的地方。此篇博客实属楼主匆忙而著,文章简明、短小,意解各位备考童鞋扩展与包括之困惑……

扩展:

《extend》

A—————>B(A扩展出B)

B作为扩展用例,A是基本用例,该表示方法表明向基本用例中的某个扩展点插入扩展用例。严格来说,扩展用例在用例模型中。通过分析业务抽象出关键的可选核心业务而形成。

包括:

《include》

A—————>B(A包括于B)

B作为基本用例,A是包括用例,该表示方法表明在运行基本用例的用例实例过程中必须运行包括用例。

与扩展用例一样。包括用例也用在用例模型中,通过分析业务抽象出关键的必选核心业务而形成。包括用例是被封装的,它代表可在各种不同基本用例中复用的行为。

扩展:

与包括关系不同,扩展关系是可选的。而没必要的,即使没有扩展用例。基本用例也是完整的;假设没有基本用例。扩展用例是不能单独存在的;假设有多个扩展用例,同一时间用例实例也仅仅会使用当中一个。

包括:

与扩展用例不同,包括用例是必需的,而不是可选的。假设没有包括用例,基本用例是不完整的。

使用扩展关系可能基于下面理由:

  • 表明用例的某一部分是可选的系统行为,这就把可选行为与必选行为分开来了。
  • 表明仅仅在特定条件下才运行。
  • 表明有些行为能够基本用例的扩展点插入,但要看详细运行基本用例时与角色进行的交互。

使用包括用例可能基于下面理由:

  • 从基本用例中分解出这种行为:基本用例依赖于运行包括用例所得的结果。
  • 包括用例是被分解出来的、多个用例共同拥有的行为。


        当然扩展和包括都来自生活中故事。通过业务分析与抽象而来,时间有限今天仅仅能先写这些,欲知故事怎样,请看下篇分解。。。


软考历程(5)——extend 与 include的更多相关文章

  1. 软考下午题详解---uml图

    在上篇博客中,小编主要简单的对软考下午题当中的数据流图设计进行了一系列总结,今天我们继续来看软考下午题当中大题部分,uml图的相关知识,在我们学习的过程中,我们也已经接触过,西安交大刘惠老师讲解过um ...

  2. 软考之PV操作(同步)

    这几天,陆续有那么三两个同学跟我讨论了一下关于软考上的PV操作的题,吾虽不才,但还是把同学们讲通了,在此,特分享一下自己的思路和想法,愿对大家有点帮助! 下面,我们就通过自己做过的试卷上两道题来分析: ...

  3. 软考类----编码、ASII码等

    淘米2014实习生笔试,今年是淘米第一年招暑期实习生,笔试好大部分考的是软考的题目啊啊啊啊(劳资后悔当年没考软考刷加权),其他是浅而泛的风格,C++,SQL语句,数据结构(哈夫曼树,二叉查找树,栈后缀 ...

  4. 备战“软考”之软件project

    说到"软件project"就有一种非常纠结的感觉!为什么呢?由于刚进入软考复习阶段,大家都把它放到了"比較"次要的地位,由于已经学过两遍,再加上它没有非常难理解 ...

  5. Data Structure(3)——软考阶段学习小结

    数据结构计算机等级考试中有,自考中有,软考中同样有,可见其内容的重要程度,今天对软考阶段视频学习内容的总结,同样是对前面学习内容的回顾,同样是对后面学习的铺垫. 中结:原本因为之前有过类似的总结,这次 ...

  6. 软考之CPU的寻址方式

    在复习软考的时候,发现CPU的内部工作原理这一部分的内容挺重要的,现对CPU的寻址方式进行了一下总结.以下就来一一介绍一下. 我们都知道一个指令分为操作码和地址码两部分.操作码确定指令的类型.地址码确 ...

  7. 软考之路--从生活着手,看PV如何操作

    PV操作,是软考当中一个很重要的考点,一听到这个名词,顿时赶脚高大上有么有,在软考的历年试题中,也不乏PV操作的身影,老师也对PV操作进行了一次讲课,那时年少,听得稀里糊涂,也不是很理解,在小编的理解 ...

  8. 软考之路--J2SE,从HelloWorld到传世代码

    "Hello World"程序指的是只在计算机屏幕上输出"Hello, World!"(意为"世界,你好!")这行字符串的计算机程序.hel ...

  9. 软考论文的六大应对策略V1.0

    软考论文的六大应对策略V1.0 短短2个小时,要写3000字的文章,对习惯了用电脑敲字.办公的IT从业人员而言,难度不小.尤其,大家会提笔忘字.笔者的应试策略,就是勤学苦练,考试前的一个星期,摸清套路 ...

随机推荐

  1. mysql 的indexof函数

    LOCATE(substr,str) 返回子串substr在字符串str第一个出现的位置,如果substr不是在str里面,返回0. mysql> select LOCATE('bar', 'f ...

  2. 多线程学习-ListenableFuture使用介绍以及示例

    Guava为Java并行编程Future提供了很多有用扩展,其主要接口为ListenableFuture,并借助于Futures静态扩展.ListenableFuture顾名思义就是可以监听的Futu ...

  3. go语言之进阶篇正则表达式

    正则表达式是一种进行模式匹配和文本操纵的复杂而又强大的工具.虽然正则表达式比纯粹的文本匹配效率低,但是它却更灵活.按照它的语法规则,随需构造出的匹配模式就能够从原始文本中筛选出几乎任何你想要得到的字符 ...

  4. go语言之进阶篇方法表达式

    1.方法表达式 示例: package main import "fmt" type Person struct { name string //名字 sex byte //性别, ...

  5. 用EntityFramework6完成增删查改和事务【转】

    http://www.cnblogs.com/wujingtao/p/5407821.html 上一节我们已经学习了如何使用EF连接数据库,并简单演示了一下如何使用EF6对数据库进行操作,这一节我来详 ...

  6. C++中JSON的使用详解【转】

    https://blog.csdn.net/admin_maxin/article/details/53175779 jsoncpp 主要包含三个class:Value.Reader.Writer.注 ...

  7. 如何移除EFI system partition?

    莫名其妙, 在我的服务器上出现了这样一种分区, 上面写着EFI system, 删也删不掉, 因为删除分区的菜单是灰掉的. 找到了这篇文章, 成功的删掉了这个烦人的分区. 整个过程记录如下:   参考 ...

  8. CSS-返回顶部代码

    现在的网站基本上都是长页面,多的有四五屏,少的话也有两三屏,页面太长有的时候为了提升用户体验,会在页面右边出现一个回到顶部的按钮,这样能快速回到顶部,以免在滑动页面出现视觉屏幕,回到顶部一般有四种方式 ...

  9. (转)C# SendMessage 参数与例子

    原文:http://hi.baidu.com/ytmeng/blog/item/25f5de5157931a888c543001.html using System;using System.IO;u ...

  10. Ubuntu14设置静态IP的地方

    sudo vim /etc/network/interfaces 修改如下部分: auto eth0iface eth0 inet staticaddress 192.168.0.117gateway ...