你能帮我找一个关于这个主题的详细教程:
我真的是个新手,我想知道使用UML图表有什么想法,有差异,以及像我这样的新手非常适合的工具(比如UMLet)。
答案 0 :(得分:28)
首先,让我讨论 UML 和用例。
UML只是描述软件系统的图形方式。 有两种类型的UML即:
接下来是UML开发过程。
然后是UML规划流程
预测性计划 - 结果在项目的整个过程中都是已知的,并且所有利益相关者都应该在同一页面上顺利运行所有内容'。 如果您可以轻松列出所有要求,并且您确信它不会更改,请使用预测性计划。
自适应规划(敏捷开发) - 此处开发人员不断与用户合作以进行可能的更改。他们充当了适配器' - 改变。它的灵活性使其成为预测性规划的更好选择。
最后使用案例图。用例图定义了程序如何解决问题或提供某些功能。
以下是一个例子:
用例图通常处理可能是人类或外部系统的Actors的交互。用例由Elipses表示,例如" Insert Card"。
从演员到用例的行称为通信行。
'包括'部分意味着两个或更多用例将尝试访问单个用例。而#'延伸'部分是用例将尝试访问可选用例。
'选择金额'用例是一般用例,其中有两个特定的用例。
之后是用例描述。基本上只是对您的用例的描述。喜欢"用户输入他们的卡并输入引脚。系统安全将检查卡是否有效和/或是否输入的Pin是否正确"等等。它将被称为系统(安全)将提供资金和收据。
需要注意的另一件事是
触发器(机器接收卡/用户输入Pin)
演员
活动图
活动图基本上只描述了为实现最终目标而采取的行动。如果您熟悉流程图,那么理解活动图背后的概念会更容易。
初始节点是活动图的起点,由阴影圆圈表示。紫色笔记简单描述了活动图的不同组成部分。
类图
类描述了程序将使用的对象类型,而类图描述了这些类及其相关性。
我将上传一些幻灯片,以加快教程的进度:
序列图
序列图模拟程序中的交互,并为您提供布局系统的逻辑方法。它们是关于显示程序各部分之间交互的顺序。
在制作序列图时,您可以描述触发哪些交互以及何时触发。他们专注于所有互动中的事件顺序。
同样,这是教程的序列图:
沟通图
通信图用于显示参与者之间的链接。他们专注于触发哪些交互以及何时触发。他们还描述了所有交互中事件的顺序。
这些想法来自视频教程of Derek Banas
以下是UML Tools的列表。有些是免费的。 :)
答案 1 :(得分:3)
首先你应该了解什么是UML,什么不是
首先阅读Craig Larman的文章What UML Is and Isn't
然后了解如何使用UML“错误”或UML不应该如何使用
阅读ALEX E. BELL撰写的文章Death by UML Fever。请关注行业专家(PHILIPPE KRUCHTEN,GRADY BOOCH)对该文章的评论。
请勿尝试了解UML表示法的所有细节
%20的UML足以满足您的%80需求。尽量不要使用“鲜为人知”的功能。 您不必使用所有UML图。使用你受益的那个。
最佳建模工具
最佳建模工具是免费的绘图场所 - 白板,活动挂图甚至纸张等表面。不是CASE工具。 找一堵墙,然后使用Whiteboard-like Cling Sheets
等工具将其转为自由绘图区域尝试敏捷建模
检查方面以获得有关Agile Modeling
的提示找到一本优秀的UML书籍
以简短的方式学习UML表示法:
UML Distilled:标准对象建模语言简介(第3版)作者:Martin Fowler
以敏捷方式应用UML和进程(RUP)
应用UML和模式:面向对象的分析和设计与迭代开发(第3版)简介作者:Craig Larman(作者)
有关指南的简短指南
UML(TM)2.0风格的元素Scott W. Ambler(作者)
如果您不喜欢书籍或不想花钱
对于类图:
检查UML basics: The class diagram
对于序列图
检查UML basics: The sequence diagram
活动图
检查UML basics: The activity diagram
用例图
小心点。 用例是文本故事,它告诉用户(actor)和系统之间的交互以实现目标。因此,没有用例案例的用例图表毫无价值。 要更多地了解用例,请阅读以下免费章节:
对于Sate Machine Diagrams
检查Sparx EA UML 2 State Machine Diagram
对于组件图
检查UML basics: The component diagram
部署图 查看Sparx EA UML 2 Deployment Diagram
PS:还有其他图表,但这些是最广泛使用的图表。
和Google吧...... 例如,我谷歌并查看http://www.uml-diagrams.org/uml-25-diagrams.html方面。 这似乎是细节的一个好方面。
答案 2 :(得分:1)
这是我开始时学习一些术语的方法。 (我还在学习,如果我错了,请随时编辑)
UML只是一种使用流程图描述系统如何工作的方法。它们具有某些符号来表示不同的含义。
用例图只是说某些东西(他们称之为演员)与系统交互! 活动图就像听起来一样,是某种行为发生的不同活动!
以下是一个示例:Activity Diagram for Banking System (UML) 还有一些我无法回答,但其他人的答案非常好。