﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-josson.jin-随笔分类-软件设计</title><link>http://www.blogjava.net/josson/category/38414.html</link><description>天地生人,有一人应有一人之业;人生在世,生一日当尽一日之勤!</description><language>zh-cn</language><lastBuildDate>Thu, 19 Mar 2009 15:52:43 GMT</lastBuildDate><pubDate>Thu, 19 Mar 2009 15:52:43 GMT</pubDate><ttl>60</ttl><item><title>UML 学习一</title><link>http://www.blogjava.net/josson/archive/2009/03/19/257066.html</link><dc:creator>josson</dc:creator><author>josson</author><pubDate>Thu, 19 Mar 2009 14:21:00 GMT</pubDate><guid>http://www.blogjava.net/josson/archive/2009/03/19/257066.html</guid><wfw:comment>http://www.blogjava.net/josson/comments/257066.html</wfw:comment><comments>http://www.blogjava.net/josson/archive/2009/03/19/257066.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/josson/comments/commentRss/257066.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/josson/services/trackbacks/257066.html</trackback:ping><description><![CDATA[<p>UML(<span style="font-family: 宋体">统一建模语言</span> Unified Modeling Language)<span style="font-family: 宋体">是一种标准的图形化建模语言，是面向对象分析与设计的一种标准表示。<br />
</p>
<p class="MsoNormal"><span lang="EN-US">UML</span><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">体系统比较复杂，内容较多，我们可以根据实际情况选择性的学习，部份内容可日后再做深入学习。首先了解一下</span><span lang="EN-US">UMl</span><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">中相关的一些概念：</span></p>
</span>
<p><strong>UML<span style="font-family: 宋体">视图</span></strong></p>
<p><span style="font-family: 宋体">视图只是表达系统某一方面特征的</span>U M L<span style="font-family: 宋体">建模组件的子集。按结构划分，描述系统中的结构成员及其相互关系，包括静态视图、用例视图和实现视图。按动态行为划分，描述系统随时间变化的行为，包括状态机视图、活动视图和交互视图。模型管理，说明了模型的分层组织结构，包括模型管理视图。</span></p>
<table style="border-right: medium none; border-top: medium none; border-left: medium none; border-bottom: medium none; border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
    <tbody>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: #4f81bd 1pt solid; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="92">
            <p><strong><span style="color: #365f91; font-family: 宋体">主要的域</span></strong></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: #4f81bd 1pt solid; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="113">
            <p><strong><span style="color: #365f91; font-family: 宋体">视图</span></strong></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: #4f81bd 1pt solid; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="85">
            <p><strong><span style="color: #365f91; font-family: 宋体">图</span></strong></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: #4f81bd 1pt solid; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="277">
            <p><strong><span style="color: #365f91; font-family: 宋体">主要概念</span></strong></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92">
            <p><span style="font-family: 宋体">结构</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">静态视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">类图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">类、关联、泛化、依赖关系、实现、接口</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">用例视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">用例图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">用例、角色、关联、扩展、包括、用例泛化</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">实现视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">构件图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">构件、接口、依赖关系、实现</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">部署视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">部署图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">节点、构件、依赖关系、位置</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92">
            <p><span style="font-family: 宋体">状态</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">状态机视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">状态图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">状态、事件、转换、动作</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">活动视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">活动图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">状态、活动、完成转换、分叉、结合</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">交互视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">顺序图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">交互、对象、消息、激活</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113"></td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">协作图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">协作、交互、协作角色、消息</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="92">
            <p><span style="font-family: 宋体">模型管理</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: medium none" valign="top" width="113">
            <p><span style="font-family: 宋体">模型管理视图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="85">
            <p><span style="font-family: 宋体">类图</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #d3dfee; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: medium none" valign="top" width="277">
            <p><span style="font-family: 宋体">包、子系统、模型</span></p>
            </td>
        </tr>
        <tr>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 69.2pt; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="92">
            <p><span style="font-family: 宋体">可扩展性</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 3cm; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="113">
            <p><span style="font-family: 宋体">所有</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 63.8pt; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="85">
            <p><span style="font-family: 宋体">所有</span></p>
            </td>
            <td style="border-right: medium none; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; padding-bottom: 0cm; border-left: medium none; width: 208.05pt; padding-top: 0cm; border-bottom: #4f81bd 1pt solid" valign="top" width="277">
            <p><span style="font-family: 宋体">约束、构造型、标记值</span></p>
            </td>
        </tr>
    </tbody>
</table>
<p><strong>UML <span style="font-family: 宋体">图</span></strong></p>
<p><span style="font-family: 宋体">图是一个具体视图的组成部分，由模型元素的符号化的图片组成。</span>UML<span style="font-family: 宋体">中包含以下</span>9<span style="font-family: 宋体">种：</span></p>
<p>1<span style="font-family: 宋体">、<strong>用例图</strong>（</span>use-case diagram<span style="font-family: 宋体">），用于显示若干角色</span>(actor)<span style="font-family: 宋体">以及这些角色与系统提供的用例之间的连接关系。角色代表外部实体，如用户、硬件设备或与系统发生交互的另一个外部系统。</span></p>
<p>2<span style="font-family: 宋体">、<strong>类图</strong></span>(class diagram)<span style="font-family: 宋体">，用来表示系统中的类和类与类之间的关系，是对系统静态结构的描述。</span></p>
<p>3<span style="font-family: 宋体">、对象图，类似于类图，区别在于对象图表示类的对象实例，而不是类。</span></p>
<p>4<span style="font-family: 宋体">、状态图，描述类的所有对象可能具有的状态，以及引起状态变化的事件。</span></p>
<p>5<span style="font-family: 宋体">、<strong>序列图</strong>，反映若干个对象之间的动态协作关系，也就是随着时间的流逝，对象之间是如何交互的。</span></p>
<p>6<span style="font-family: 宋体">、协作图，其作用同序列图，除了显示消息变化外，协作图还显示对象及其之间的关系。</span></p>
<p>7<span style="font-family: 宋体">、<strong>活动图</strong></span>(activity diagram)<span style="font-family: 宋体">，描述某个操作执行时的活动状况。</span></p>
<p>8<span style="font-family: 宋体">、组件图</span>(component diagram)<span style="font-family: 宋体">，反应代码的物理结构，可为源代码、二进制文件或可执行文件组件。</span></p>
<span style="font-size: 10.5pt; font-family: 'Calibri','sans-serif'">9</span><span style="font-size: 10.5pt; font-family: 宋体">、展开图</span><span style="font-size: 10.5pt; font-family: 'Calibri','sans-serif'">(deployment diagram)</span><span style="font-size: 10.5pt; font-family: 宋体">，用来显示系统中软件和硬件的物理架构，通常在图中以结点的形式显示实际的计算机和设备，以及各个结点之间的关系。</span> <br />
<br />
UML建模工具<br />
1、StarUML http://staruml.sourceforge.net/en/<br />
小巧的建模工具，才20来M，目前版本是 5.0 。是一个韩国人用delphi写的，免费很关键。<br />
<br />
2、JUDE http://jude.change-vision.com/jude-web/download/index.html<br />
 <img src ="http://www.blogjava.net/josson/aggbug/257066.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/josson/" target="_blank">josson</a> 2009-03-19 22:21 <a href="http://www.blogjava.net/josson/archive/2009/03/19/257066.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>UML 之用例(use case)</title><link>http://www.blogjava.net/josson/archive/2009/03/19/260905.html</link><dc:creator>josson</dc:creator><author>josson</author><pubDate>Thu, 19 Mar 2009 14:21:00 GMT</pubDate><guid>http://www.blogjava.net/josson/archive/2009/03/19/260905.html</guid><wfw:comment>http://www.blogjava.net/josson/comments/260905.html</wfw:comment><comments>http://www.blogjava.net/josson/archive/2009/03/19/260905.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/josson/comments/commentRss/260905.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/josson/services/trackbacks/260905.html</trackback:ping><description><![CDATA[一、Use Case 概述 Use Case，它描述的是一个操作，而不是一个功能。传统的软件模型设计喜欢在需求分析把业务分解成功能模块，这样的弊端就是混淆了需求和设计的界限，因为功能模块的划分牵涉到系统的概要设计。在RUP里面提倡用use case来代替功能模块的划分。与功能模块不同的是，用例是站在用户的角度来分解系统，用户并不想了解系统的内部结构和设计，他们关心的是系统所能提供的服务，即系统是如何去操作的，这就是用例的基本思想。用例模型主要由以下元素组成：&nbsp; <br />
1、参与者(Actor)：参与者是与系统发生交互的外部用户、系统或其他硬件设备，参与者可以是人、另一个计算机系统或一些可运行的进程等。<br />
2、用例(Use Case)：用例用于表示系统所提供的服务，它定义了系统是如何被参与者所使用的，它描述的是参与者为了使用系统所提供的某一完整功能而与系统之间发生的一段对话。 <br />
3、通讯关联(Communication Association) ：通讯关联用于表示参与者和用例之间的对应关系，它表示参与者使用了系统中的哪些服务（用例），或者说系统所提供的服务（用例）是被哪些参与者所使用的。 <br />
<br />
二、用例之间的关系 <br />
1、包含(include)，将若干用例中一些相同的行为，单独抽象成一个的用例，然后其他用例来包含这个用例。这样避免在多个用例里面重复设计同一个操作，也避免同一个操作在不同的用例里面的描述出现不一致。需要修改的时候，也只需要一个用例，避免修改多个用例出现的不一致和重复工作。例如：银行ATM系统，用户取款、存款时，都会打印凭证，我们将打印凭证抽象出来，取款、存款等操作时包含打印任证这个行为。 <img style="width: 700px; height: 337px" alt="" src="https://docs.google.com/File?id=dgb9vm7r_49zs32twd2_b" /> <br />
2、扩展(extend)，扩展是将事件流中一些相对独立并且可选的行为扩展为新的用例，并且在基用例上的扩展点进行扩展。与包含关系不同的是，包含的事件是必须存在的动作，并且该用例的事件流一定要插入到基础用例中；而扩展是提供一些备选动作，可根据条件来决定是否将扩展用例的事件流插入基础用例的事件流中。扩展也可以抽象为基用例的备选流，扩展出来的用例可以让基用例变得更加简练。例如：在通话业务的基础上可扩展一些增值业务，如语音信箱、呼叫转移等。 <br />
<img style="width: 480px; height: auto" alt="" src="https://docs.google.com/File?id=dgb9vm7r_42fsh4vfg4_b" />&nbsp;&nbsp;<br />
3、泛化(generalization) ，也叫继承(泛化是分析领域术语，继承是设计和实现领域术语，通常用继承来解决泛化问题)。当多个用例拥有相同的结构、行为时，我们可以把它们的共性部份抽象出来成为父用例，而其他用例作为泛化关系中的子用例。在泛化关系中，子用例是父用例的特殊形式，子用例继承了父用例所有的结构、行为以及关系。例如：订票是网上订票用例和电话订票用例的抽象。 <img style="width: 503px; height: auto" alt="" src="https://docs.google.com/File?id=dgb9vm7r_41ccdcp3ft_b" /> <br />
三、建立用例模型 <br />
1、确定参与者，可以从以下问题入手：
<li>系统开发完成之后，有哪些人会使用这个系统？
<li>系统需要从哪些人或其他系统中获得数据？
<li>系统会为哪些人或其他系统提供数据？
<li>系统会与哪些其他系统相关联？
<li>系统是由谁来维护和管理的？ &nbsp;
<p><br />
2、确定用例，寻找用例可以从以下问题入手（针对每一个参与者）： </p>
<li>参与者为什么要使用该系统？
<li>参与者是否会在系统中创建、修改、删除、访问、存储数据？如果是的话，参与者又是如何来完成这些操作的？
<li>参与者是否会将外部的某些事件通知给该系统？
<li>系统是否会将内部的某些事件通知该参与者？ </li>
 <img src ="http://www.blogjava.net/josson/aggbug/260905.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/josson/" target="_blank">josson</a> 2009-03-19 22:21 <a href="http://www.blogjava.net/josson/archive/2009/03/19/260905.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>