📄 10qualityassurance.html
字号:
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>Together Tutorial -- Part 10</title>
<link href="tutor.css" rel="styleSheet" type="text/css">
</head>
<body bgcolor="white" link="#003399" alink="#999999" vlink="#000066">
<div align="left">
<p class="head2">
<span style="font-size: 9pt">
<a href="mailto:%20e.w@263.net">翻译: 李颖(e.w@263.net)</a></span></p>
</div>
<div align="center">
<p class="head2"><a name="top"></a>Together 教程<br>10:
审查与统计</p>
</div>
<p>Together 提供了一些特性用于帮助用户强制执行公司标准和惯例, 获得真实的代码统计, 并改进质量.
有两个特性专门设计用于质量保证: 审查和统计. 审查(Audit)用于检查代码是否符合用户自定义的风格和标准.
统计(Metric)用于计算代码复杂度.</p>
<p>Together 对于 Java 工程长期支持审查和统计. 从 Together 5.5 开始, 对于 C++ 和 VB6
也支持统计了.</p>
<p>这一课的讨论基于 airline 工程. 作为一个更丰富的例子, 请打开 Together 附带的 Cash Sales 工程.</p>
<p><b>目录:</b></p>
<ul>
<li><a class="onPage" href="#audit">审查你的工程</a><li><a class="onPage" href="#fix">
修正审查错误</a><li><a class="onPage" href="#metric">
生成工程统计</a><li><a class="onPage" href="#tip">
技巧</a></ul>
<p></p>
<p><img height="2" width="900" src="images/generic/rainbow2.gif" alt="Divider line"></p>
<p class="head3"><a name="audit"></a>审查你的工程</p>
<p>Quality Assurance 是 Together 的可激活特性. 要激活它, 请从主菜单中选择 <b>Tools | Activate/Deactivate Features</b>;
然后将 <b>Quality Assurance</b> 选中.</p>
<p>从 airline 工程中的 <default> 包开始, 执行以下操作.</p>
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#993300" width="100%">
<tr>
<td bgcolor="#993300">
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#ffffcc" width="100%">
<tr>
<td bgcolor="#ffffcc"><b>操作步骤:</b> 对 airline
工程生成完整地审查.</td>
</tr>
</table>
</td>
</tr>
</table>
<p>当 Quality Assurance 激活后, 你可以在主菜单中选择 <b>Tools | Audits</b> 来访问它. (如果你想对包生成审查,
而不是对整个工程, 请在包的模型图中点击鼠标右键并选择 <b>Quality Assurance | Audits</b>.)</p>
<p>Together 显示一个对话框用于选择审查标准.</p>
<p>对于 airline 工程的审查, 点击 <b><nobr>Select All</nobr></b> 按钮. (你可以通过 <b><nobr>Load Set</nobr></b>
按钮载入审查项目集, 包括对于 Java 的 Sun 代码惯例.)</p>
<img src="images/airline/pro10_auditdialog.png" width="703" height="601" border="0" hspace="5" alt="QA menu" align="top">
<p>Java Audit 窗口中最右边的列允许你选中或不选中某个审查项. Java Audit 窗口的右上部分允许你将标准级别设置为低, 中,
或高. 你可以按这些级别对审查结果排序.</p>
<p>Java Audit 窗口的底部是每种审查标准的文档信息. 对于大多数审查项来说, 文档中显示了违反标准的代码例子以及符合标准的等价代码.</p>
<p>为 airline 工程生成审查是很迅速的. Together 将审查结果以表格形式显示在 Message 面板中.</p>
<ul>
<li>点击任何一列的标题, 这样将使表格按这一列中的内容排序.
<li>点击任何一项表格内容, 这样将显示它的右键菜单. 每项表格内容的右键菜单中都包含了对它的表述.<li>双击任何一行,
这样将在编辑器中显示对应的代码.</ul>
<p><img src="images/airline/pro10_auditwindowplusfile.png" width="697" height="304" border="0" hspace="10" vspace="10" alt="Audit results"></p>
<p>上图中选中的审查项指出 import 语句不够明确:</p>
<dl>
<dd><b>import java.util.*;</b>
</dl>
<p>我们在代码中插入了 import 语句, 以便 <b>Flight</b> 类可以使用 <b>Date</b> 类型的变量实例.</p>
<hr>
<p class="head3"><a name="fix"></a>修正审查错误</p>
<p>对于审查结果表中所有可修正的错误, Together 在最左列中显示一个 <b><font color="#333399">F</font></b>.
上图中的前四个审查错误是可以修正的.</p>
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#993300" width="100%">
<tr>
<td bgcolor="#993300">
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#ffffcc" width="100%">
<tr>
<td bgcolor="#ffffcc"><b>操作步骤:</b> 修正你的工程中可修正的审查错误.</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<table border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#CCCCCC">
<table border="0" cellpadding="5" cellspacing="2">
<tr>
<td valign="top" bgcolor="white">
<p>审查结果表中的行, 列, 单元格都有右键菜单. 当你对可修正的审查错误点击鼠标右键, <b>Auto Correct</b>
将出现在菜单中.</p>
<p>选择该项后显示的对话框解释了错误的原因和在代码中的位置.
你可以选择修正单个的错误或者修正多个错误.</p>
</td>
<td valign="top" bgcolor="white">
<p><img src="images/airline/pro10_autocorrectaudits.png" width="386" height="275" border="0" alt="Auto correct audits" hspace="5"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p>下图显示了审查结果窗口和代码文件中的变化. 审查结果窗口对已修正的错误显示绿色对勾. 编辑器中显示了替换代码:</p>
<p><b>import java.util.<font color="#333399">Date</font>;</b> (替换了原来的<b> import java.util.*;</b>)</p>
<p><img src="images/airline/pro10_fixedaudits.png" width="697" height="334" border="0"></p>
<p></p>
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#993300" width="100%">
<tr>
<td bgcolor="#993300">
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#ffffcc" width="100%">
<tr>
<td bgcolor="#ffffcc"><b>操作步骤:</b> 从审查结果表生成一份 HTML
文档.</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<table border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#CCCCCC">
<table border="0" cellpadding="5" cellspacing="2">
<tr>
<td valign="top" bgcolor="white">
<p>当你对审查结果表点击鼠标右键, 你可以在菜单中选择 <b>Export</b>.
对这一步, 选择 <b>Export | Entire Table</b>.</p>
<p>Together 显示一个对话框, 以便选择文件名称和类型.</p>
<p>HTML options 包含一个选项, 可以自动启动浏览器阅读产生的 HTML 文件.</p>
</td>
<td valign="top" bgcolor="white">
<p><img src="images/airline/pro10_exporttohtml.png" width="516" height="339" border="0" alt="Export table" hspace="5"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<hr>
<p class="head3"><a name="metric"></a>生成工程统计</p>
<p>你可以从 <default> 模型图开始下一步.</p>
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#993300" width="100%">
<tr>
<td bgcolor="#993300">
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#ffffcc" width="100%">
<tr>
<td bgcolor="#ffffcc"><b>操作步骤:</b> 为 airline
工程生成全部统计.</td>
</tr>
</table>
</td>
</tr>
</table>
<p>统计与审查在同一个菜单. 从主菜单中选择 <b><nobr>Tools | Metrics</nobr></b>.</p>
<p>出口类似下图. 在左上部分是可用的统计项目列表. 对于这一步, 点击 <b><nobr>Select All</nobr></b>
按钮即可. 右上部分的面板允许你选择每个统计项目的上限和下限. 间隔尺度(Granularity)可以应用到包, 类, 或操作中.</p>
<p>下部分的面板是每个统计项目的文档.</p>
<p><img src="images/airline/pro10_metricsdialog.png" width="698" height="461" border="0" hspace="5"></p>
<p>结果表显示在 Message 面板中, 与审查结果表类似, 其中行表示包和类, 列表示统计项目. 列头有提示信息, 表示统计项目的全称.</p>
<p><img src="images/airline/pro10_metricswindow.png" width="733" height="240" border="0" alt="Metric window" hspace="10" vspace="10"></p>
<p></p>
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#993300" width="100%">
<tr>
<td bgcolor="#993300">
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#ffffcc" width="100%">
<tr>
<td bgcolor="#ffffcc"><b>操作步骤:</b> 找到 Fan Out
项目的描述信息. 为 airline 工程生成一个 Fan Out 项目的条形统计图.</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<table border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#CCCCCC">
<table border="0" cellpadding="5" cellspacing="2">
<tr>
<td valign="top" bgcolor="white">
<p>统计结果表的行, 列和单元格都有右键菜单. 每列的右键菜单中包含 <b>Show Description</b>
命令, 用于显示统计项目的文档信息.</p>
<p>描述信息对话框包含两页, 一个是对统计项目自身的描述, 另一个是条形统计图.</p>
<p></p>
<p></p>
</td>
<td valign="top" bgcolor="white">
<p><img src="images/airline/pro10_fanout.png" width="483" height="461" border="0" alt="Description and bar graph" hspace="5"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#993300" width="100%">
<tr>
<td bgcolor="#993300">
<table border="0" cellpadding="0" cellspacing="2" bgcolor="#ffffcc" width="100%">
<tr>
<td bgcolor="#ffffcc"><b>操作步骤:</b> 为 airline
工程的以下统计项目重新设置上下限. <ul>
<li>CBO -- Coupling Between Objects -- (上限 = 4)
<li>NOC -- Number of Classes -- (下限 = 30, 上限 = 30).
</ul>
<p>生成统计结果. 然后为 <b>AirlinePD</b> 生成一个 Kiviat 图.</p>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<table border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#CCCCCC">
<table border="0" cellpadding="5" cellspacing="2">
<tr>
<td valign="top" bgcolor="white">
<p>你必须重头开始设置统计项目上下限.
统计项目对话框的右上部分面板中包含输入框用于输入新的上下限. 当你生成新的统计结果时,
新的结果将保存在 Message 面板的新的 Metrics 页中. </p>
<p>右图显示了我们的 Kiviat 图. 蓝色数字 (我们的图中是 NOC)是低于下限的项目.
红色数字(CBO, CC, 和 FO)是超过上限的项目.</p>
<p><img src="images/airline/pro10_distbarkiviatchoice.png" width="141" height="79" border="0" hspace="5" vspace="5" align="left">统计结果表中单元格的右键菜单中包含了统计图选项.
内部单元格(不在第一列或第一行的单元格) 包括条形图选项, 分布图选项, 和 Kiviat
图选项.</p>
<p>Kiviat 图对应于行(类和包). 条形图和分布图对应于统计项.</p>
<p>对于这一步, 将鼠标移动到统计结果表的 <b>AirlinePD</b> 行内,
然后在右键菜单中选择 Kiviat 图. Together 将生成统计图,
图中将显示统计项在包内的分布状况.</p>
</td>
<td valign="top" bgcolor="white">
<p><img src="images/airline/pro10_kiviatredblue.png" width="336" height="370" border="0" hspace="5"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p></p>
<p></p>
<hr>
<p class="head3"><a name="tip"></a>技巧</p>
<ul>
<li>使用审查和统计作为代码重构的第一步.
<li>当你希望察看某个统计项在多个类或包中的分布状况时, 使用条形图和分布图.<li>
当你希望察看多个统计项在某个类或包中的分布状况时, 使用 Kiviat 图. </ul>
<p></p>
<div align="center">
<hr>
<img height="19" width="298" src="images/generic/nvbuttons.gif" vspace="10" alt="Navigation bar" usemap="#nvbuttonsb601029d" border="0"><map name="nvbuttonsb601029d"><area href="#top" coords="101,2,146,17" shape="rect"><area href="9docgen.html" coords="0,2,96,16" shape="rect"><area href="11debugtutor.html" coords="152,1,208,17" shape="rect"><area href="index.html" coords="216,1,295,17" shape="rect"></map>
<hr>
</div>
<div align="left">
<p class="footnote">Copyright © 2002 TogetherSoft Corporation. All rights reserved.</p>
</div>
<p class="footnote"><font color="#666666">Last Revised: </font><csobj w="88" h="12" t="DateTime" format="MedDate" region="0">Fri, Mar 8, 2002</csobj>
<p class="footnote">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -