前言

众所周知VisualStudio 2010在软件开发周期的各个环节上都下了很多功夫,本篇继续前文,向大家介绍使用VisualStudio 2010中对Use Case Diagram(用例图)的支持,和使用VisualStudio 2010设计系统交互的方法。

背景

前篇:使用VisualStudio 2010从分析到实施(2)——使用Activity Diagram提炼业务流程

对用例图不熟悉的兄弟请参考:http://www.ibm.com/developerworks/cn/rational/r-usecase-atm/

Visual Studio 2010开发团队在白皮书中对Use Case Diagram在软件生命周期中的作用描述如下:

1. 聚焦于系统中粒度较小的部分(子系统),从而我们可以在更加细节的环境下分析子系统中的交互

2. 在系统的设计和扩展中,能够使跨越各个系统或子系统之间的交互明显的突出。

3. 用可视化的方式帮助我们定义系统交互逻辑所必要的各个组件。

4. 突出跨越多个子系统的交互。

5. 在业务逻辑层面上总结系统中的交互逻辑

Use Case Diagram使用步骤

1. 新建解决方案

2. 新建Project(项目),类型为“Modeling Projects”

3. 在解决方案管理器中右击刚刚新建的Modeling Project,添加新item

4. 选择“Use Case Diagram”  然后OK即可, 文件扩展名为“.ucd”

5. 从左边的工具栏拖放元素到用例图中。

Visual Studio 2010提供的Activity Diagram支持:

在Visual Studio 2010 CTP中,Use Case Diagram元素如下:

1.Actor 活动者

2.Use Case 用例

3.Comment 注释

4.Subsystem 子系统,用来展示系统的一部分

5.Reference 可以让我们添加一个引用到用例图中,比如文档或代码段

6.Association 关联线

7.Dependency 依赖关系

8.Include 包含关系

9.Extend 扩展关系

10.Generalization 泛化关系

11.Comment Link 链接注释标签与相应的元素

12.Reference Link 链接引用标签与相关元素

Activity Diagram绘制步骤:

A. 定义人机交互

1. 从工具栏中拖放Subsystem元素到用例图中,并在属性中命名该子系统

2. 从工具栏中拖放若干Actor元素到用例图中(可双击实现),并命名

B. 定义用例

1. 拖放若干Use Case元素到用例图中,并命名

2. 设置用例元素的Subject属性,一般设置为该用例所在的子系统

C. 关联用户和用例

1. 从工具栏中拖放Association线条链接用户Actor和与其直接相关的用例,也可以在Actor元素上右击-->"Add"来添加

D. 用例之间的关联

1. 在用例上右击,使用“依赖”“包含”“扩展”等关系链接相关的用例

E. 注释与引用

1. 若需要添加注释,则拖放注释元素到图中,写好注释后使用Comment Link将注释和与其相关的元素链接起来

2. 若需要添加引用,则拖放引用元素到图中,并在属性中设置好引用的类型、命名、引用文件的路径等,之后使用Reference Link与相关元素链接

使用Use Case Diagram设计系统交互:

在前篇中,我们使用VisualStudio 2010 CTP中的Activity Diagram 提炼了整个系统的业务流程,这是UML需求分析的第一步,在活动图定义完成后,我们可以据此来设计若干用例图,从而更为明晰的在业务层进行系统细节设计。

关于UML中用例分析的粒度,UML1.1和2.0标准都没有给出明确的定义,我参与过大大小小的项目中,见到的用例设计也是风格迥异,在VSTS 2010的示例项目(Dinner Now)中,Use Case Diagram紧接着Activity Diagram,对活动图中提炼出的主要业务流程进行子系统划归,并分别进行用例分析。

下文预告:

使用VisualStudio 2010从分析到实施(4)——使用Sequence Diagram设计程序行为和构造

转载于:https://www.cnblogs.com/blodfox777/archive/2008/11/12/1332263.html

VisualStudio 2010从分析到实施(3)——使用Use Case Diagram设计系统交互相关推荐

  1. 文章目录:使用VisualStudio 2010从分析到实施系列【共5+3篇】

    本系列文章基于系统设计实例讲述从VisualStudio 2010 在软件开发周期的各个环节上的新功能和对UML的支持,及其早期版本的部署.另外还有其它一些关注VisualStudio 2010的帖子 ...

  2. 鱼骨图分析法实际案例_技术前沿 | 基于鱼骨图分析标准实施偏差成因的应用研究...

       引言    标准在实施过程中,难免会因为各种主客观原因导致难以落地的情况,分析标准执行偏差,开展问题成因分析,从而有针对性地制定一套有效的问题整改措施和预防措施,是一件很有价值.很有意义的创造性 ...

  3. SAP内部订单(IO)及SAP WBS财务功能主要差异对比分析及实施建议 IOWBS Comparison on Financial Functionalities

    在SAP系统内,内部订单(Internal Order)是CO模块下重要的一大工具,也是SAP中常见的成本对象之一,企业可以按照自己的核算或统计分析需求创建内部订单从而实现自身目的,所以可以看到很多S ...

  4. R语言多因素有交互方差分析(Two-Way ANOVA)实战:拟合多因素有交互方差分析模型、分析不同分组的差异TukeyHSD、多因素有交互方差分析的结果总结

    R语言多因素有交互方差分析(Two-Way ANOVA)实战:拟合多因素有交互方差分析模型.分析不同分组的差异TukeyHSD.多因素有交互方差分析的结果总结 目录

  5. 一览生信分析的各种工作环境—Linux子系统、双系统、虚拟机和Docker

    " 本文围绕计算机操作系统,概述了当下各种生信分析的工作环境." 一文掌握Conda软件安装:虚拟环境.软件通道.加速solving.跨服务器迁移 01 - Linux子系统 Wi ...

  6. 从三个角度分析,UI设计师为什么要学习产品原型设计?

    UI设计师是随着互联网的发展以及用户体验度提升而诞生的新兴职业,和平面设计师相比,UI设计更注重交互设计,所需要掌握的技能更多,从业人员薪资也更高.产品原型设计是UI设计师日常工作的重要组成部分.下面 ...

  7. 抖音SEO优化源码,搜索排名系统,技术理论分析,抖音矩阵,抖音seo系统。

    前言:抖音SEO优化源码,搜索排名系统,技术理论分析,抖音矩阵,抖音seo系统.抖音seo矩阵系统底层框架上支持了ai视频混剪,视频产出,视频AI制作,多账号多平台矩阵,视频一键内部分发,站内实现搜索 ...

  8. 信号完整性与电源完整性分析 第三版 pdf_成本与PCB设计的挑战下,电源完整性仿真工具到底有多重要...

    为PCB(印刷电路板)上的芯片提供电能不再是一种简单的工作.过去,通过细走线将IC连接到电源和地就行了,这些走线占不了多少空间.当芯片速度升高时,就要用低阻抗电源为它们供电,如用PCB上的一个电源层. ...

  9. python分析政策实施前后_用Python分析春节前后的中国A股市场行情(附源代码)

    最近中国股市也因受到海外市场波动的影响的振幅非常大,又由于马上面临春节了,股市里的钱是取出来放到货币基金里好呢,还是继续放在股市里好呢? 除了对于宏观,行业,个股的分析和把握,我们从历史市场表现的角度 ...

  10. 网络舆情事件预警与分析工作实施措施与流程详解

    按照网络舆情预警主体的划分,一般情况下可分为网络舆情事件的利益相关者.专业舆情机构和社会治理部门三类. 网络舆情预警分析工作流程可分为危机预警方案制定.实时监测关注事态发展.信息分析研判,反馈汇报. ...

最新文章

  1. linux rpm找不到命令_Linux安装软件
  2. 1小时学会:最简单的iOS直播推流(番外)运行不起AWLive的demo的同学请看这里
  3. qt linux mac,MacOS下Qt Installer Framework使用教程【个人经验】
  4. 应该知道的Linux技巧
  5. jQuery快速学习
  6. python 廖雪峰_廖雪峰的Python系列教程(20)——高级特性之生成器
  7. g5420核显驱动win7_9102年了,该怎么装Win7 ???
  8. 使用Github(基本概念实战操作)
  9. OpenStack网络模块核心OpenvSwitch的全面解读
  10. SSH整合方案二(不带hibernate.cfg.xml)
  11. MMdnn Visualizer网络可视化
  12. android build获取ext,顶级build.gradle文件中的ext属性
  13. Jenkins部署Web项目到远程tomcat(通过jenkins插件)
  14. winform窗体MaximizeBox
  15. 一个酷炫的音乐播放界面
  16. Cheatsheet: 2013 04.01 ~ 04.16
  17. ubuntu 18.04安装微信
  18. 自然语言处理常用单词
  19. 【lzy学习笔记-dive into deep learning】数学预备 2.1-2.4
  20. 记录一下iter()的用法

热门文章

  1. gitserver提交代码的总结
  2. hadoop2.2.0 core-site.xml--global properties
  3. 各种学习网站博客汇总(持续添加中。。。)
  4. MPICH2在WINDOWS下的安装配置
  5. 转 十道海量数据处理面试题与十个方法大总结
  6. % 取余运算 取模运算
  7. 第二阶段团队站立会议08
  8. spark源码阅读之network(2)
  9. String类的两种赋值
  10. C#实现不安装Oracle客户端访问远程服务器数据