<?xml version="1.0" encoding="gb2312"?>
<rss version="2.0">
<channel>
<title><![CDATA[俞非的技术Blog]]></title>
        <image>
        <title>http://hi.baidu.com</title>
        <link>http://hi.baidu.com</link>
        <url>http://img.baidu.com/img/logo-hi.gif</url>
        </image>
<description><![CDATA[Flash、Flex、Webgame、PHP、Linux、Mysql、Project Manage……]]></description>
<link>http://hi.baidu.com/165edu</link>
<language>zh-cn</language>
<generator>www.baidu.com</generator>
<ttl>5</ttl>


<item>
        <title><![CDATA[【转】MRD介绍]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/61c1b3b742a6a3f231add12a.html]]></link>
        <description><![CDATA[
		
		<p><strong>【摘要】</strong>联盟里有个朋友找MRD的模板，我正好手头有一份，就回了个帖子，结果没想到，要这个模板的朋友还挺多，后来我想了想，模板这种东西其实就是个工具，本身没有什么价值，只不过是产品管理者想法的文字体现而已，与其只发给大家模板，不如介绍一下这个工具怎么来用，就算是好人做到底吧，呵呵！</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  说到MRD，就不得不说一下PRD，也有朋友提到了这个问题，MRD和PRD有什么区别呢？如果大家看过联盟的第一期和第二期杂志，那么就应该知道MRD和PRD的区别和关系了，在这两期杂志的&ldquo;PM词典&rdquo;栏目中，就对这两个工具进行了介绍，先来分别看一下。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  做个表格来说明一下两者之间的关系：</p>
<p><img style="width: 445px; height: 861px" src="http://photo1.bababian.com/upload13/20080916/2C12BF4605921DD9400506E609EE48B1.jpg"></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  从这个表中可以看出，MRD本身并没有什么特殊之处，按照产品管理者的工作内容来说，是必备的东西，但是，我们知道，现实的情况是，许多技术型的公司实际上对产品管理者的定位过于狭隘，非要生生地把产品管理者分为&ldquo;技术型&rdquo;、&ldquo;市场型&rdquo;，本来一个完整的产品管理过程和管理内容，就这样支离破碎了。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  关于这个问题抽时间，咱们再一块讨论，还是重点讲MRD。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  正是因为这个原因，许多技术型企业的产品管理者很少或者几乎没有接触过MRD，并不是说大家没有这个意识，其实，作为产品管理者，这些市场端的东西多少都会有了解的，但是，企业并没有把这个任务交给产品管理者来做，因此，就显的有些陌生了。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在表格中，已经提到了，MRD起着一种&ldquo;承上启下&rdquo;的作用，&ldquo;向上&rdquo;是对不断积累的市场数据的一种整合和记录，&ldquo;向下&rdquo;是对后续工作的方向说明和工作指导。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这个很容易理解的，那么，具体到这个文档中，都包括什么内容以及如何来完成好这些内容呢？<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  接下来，我就自己的一些经验说说个人的想法，对不对的，大家见谅。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  刚才说到了，MRD就是对产品所在市场数据的整合，说白了，就是对市场分析后的结论体现，那么，在这个文档中，需要体现哪些内容呢？<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在我看来，需要体现的主要内容包括：<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  1、市场的问题和机会；<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  2、市场特征；<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  3、用户特征；<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  4、使用者特征<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;   5、市场的需求。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分别解释一下：<br>
<strong>1、市场的问题和机会。</strong><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在这个主题中，主要是要求产品管理者说明自己负责的产品现在所处的市场都有什么问题和机会、面对这个现实的市场，产品有什么问题和机会，以及产品所需技术面临的问题和机会。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  其实就是要求从市场层面、产品层面、技术层面来阐述问题和机会。<br>
<strong>2、市场特征。<br>
</strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在这个主题中，主要是要求产品管理者说明目标市场的现状和趋势。应该包括的信息有：<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  目标市场特征；目标市场趋势；目标市场细分；目标市场时间约束。<br>
<strong>3、用户特征。</strong><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这里的用户是个广义的概念，它其实包括两个方面的信息：1、客户（customer）；2；购买者（buyer）。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在这个主题中，主要是要说明这产品的目标用户的特征、细分、动机、影响因素以及用户期望（目标）。<br>
<strong>4、使用者（user）特征。</strong><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  之所以把这个主题独立出来，就是因为，无论什么产品，最终是要由具体的人来介入的，这类人才是产品的最终享受者，具体到产品上，其实我们日常分析的产品需求和功能都是基于他们考虑的。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在这个主题中，要说明这类用户的特征、现实需要和相关联系。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这里插一句话，我看到国外的一些公司是采用了原型塑造法来完成这个主题的，关于这个方法，抽时间再说，呵呵。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  备注：关于客户（customer）、购买者（buyer）、使用者（user）的区别和关系，如果有朋友还有不解的地方，可以一块来讨论，嘿嘿。<br>
<strong>5、市场的需求。</strong><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这个就比较简单了，就是把市场需求按类别描述出来即可，具体的标准，大家应该很清楚的，就是&ldquo;描述性的语言来说明用户的期望&rdquo;，主要包括的内容有：<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  功能分类；开发环境说明；兼容性说明；性能说明；国际性说明；文档说明；外观说明；发布说明；支持和培训说明；其它说明；方案概述；技术概述。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  当然了，我是把可能出现的内容都列举出来了，在实际的情况中，肯定会根据行业和产品的不同有所删减，这个仅供参考哈。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在这个主题的最后，我建议大家加一个表格，就是&ldquo;需求概要表&rdquo;，这个表格的作用就是用列举的形式来把所有市场需求记录下来，毕竟上面的内容都是描述性的，这个表格有助于快速浏览。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这个表格应该包括的内容有但不仅限于：<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  实现目标；约束条件；需求联系；原型；类型；优先级。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  简单介绍了一下MRD中主要体现的主题，大家看一下，其实内容很简单的，但是，我在看了一些MRD后，才感觉到，写好一份MRD，那是相当的不易呀。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  首先，在MRD中必须有许多的数据来支持你每个主题的结论描述，其次，在MRD中，涉及到了一些具体的方法，例如刚才说到的原型法，三，MRD是整个产品项目过程中非常重要的一份文档，或者说，这份文档奠定了接下来的一些列工作基础，MRD做好了，其它的工作都没有问题，这个作不好，其它的都不可能让人满意的。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  因此，要写好MRD，是不能脱离产品项目流程和思想的，这个说起来，就太大了，有时间咱们慢慢聊。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  大家在现实的工作中，偏重于PRD的居多，大家可以想想，是不是通常把主要精力放在了产品功能上了，而忽视了对产品所在市场的关注和分析，尤其是在一些软件和互联网公司，非常明显，有多少朋友做到了MRD中要求的呢？</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  说到最后，还是我始终坚持的一个观点，产品管理文档，本身没有任何价值，网上到处都可以找到，但是，如果不懂产品管理的思想，不明白产品管理到底是什么，不知道产品管理者到底应该做什么，即使给你非常好的文档模板，又有几个人能真正理解这份文档的作用，并把它写好呢？</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  对了，最后提一点，有些公司，是把MRD和PRD合并来做的，或者说，即使可以舍弃PRD，也不能舍弃MRD，因为PRD是由MRD延展而来的，MRD是根，PRD正是枝叶而已。</p>
<p><strong>附一个MRD目录吧，仅供参考，千万别照搬。<br>
</strong>1、文档介绍<br>
1.1 文档目的<br>
1.2 内容概要<br>
2、市场问题和机会<br>
2.1 本章摘要<br>
2.2 市场问题<br>
2.3 市场机会<br>
2.4 产品问题和机会<br>
2.5 技术问题和机会<br>
3、市场概述<br>
3.1 本章摘要<br>
3.2 目标市场描述<br>
3.2.1 目标市场特征<br>
3.2.2 目标市场趋势<br>
3.2.3 目标市场细分<br>
3.2.4 目标市场时间约束<br>
4、客户和购买者<br>
4.1 本章摘要<br>
4.2 目标客户描述<br>
4.2.1 目标客户细分<br>
4.2.2 客户动机<br>
4.2.3 影响因素<br>
4.2.4 客户目标<br>
4.3 目标购买者描述<br>
4.3.1 业务决策购买者<br>
4.3.2 技术决策购买者<br>
5、使用者和用户原型<br>
5.1 本章摘要<br>
5.2 原型特征<br>
5.3 现实需要<br>
5.4 原型联系<br>
6、市场需求<br>
6.1 本章摘要<br>
6.2 功能分类<br>
6.3开发环境说明<br>
6.4兼容性说明<br>
6.5性能说明<br>
6.6国际性说明<br>
6.7文档说明<br>
6.8外观说明<br>
6.9发布说明<br>
6.10支持和培训说明<br>
6.11其它说明<br>
6.12 方案概述<br>
6.13 技术概述<br>
6.14 市场需求概要表<br>
7、支持信息<br>
7.1 本章摘要<br>
7.2 文档假设<br>
7.3 参考资料<br>
7.4 产品体系</p>
<p>链接：<a href="http://blog.chinapm.com.cn/u/tangyuan/91.html">http://blog.chinapm.com.cn/u/tangyuan/91.html</a></p> <a href="http://hi.baidu.com/165edu/blog/item/61c1b3b742a6a3f231add12a.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%CF%EE%C4%BF%B9%DC%C0%ED">项目管理</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/61c1b3b742a6a3f231add12a.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-22  10:41</pubDate>
        <category><![CDATA[项目管理]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/61c1b3b742a6a3f231add12a.html</guid>
</item>

<item>
        <title><![CDATA[【转】Use Case（用例）详解]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/d113342a4d8cb63e5243c17e.html]]></link>
        <description><![CDATA[
		
		Use Case（用例）是一个UML中非常重要的概念，在使用UML的整个软件开发过程中，Use Case处于一个中心地位。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  那么，到底什么是Use Case呢？在UML的文档中，Use Case的定义是：在不展现一个系统或子系统内部结构的情况下，对系统或子系统的某个连贯的功能单元的定义和描述。有点拗口，对吧？其实Use Case就是对系统功能的描述而已，不过一个Use Case描述的是整个系统功能的一部分，这一部分一定要是在逻辑上相对完整的功能流程。（唔？Use Case也没什么特别的嘛！怎么这玩意儿会在开发中处于一个中心地位呢？）在使用UML的开发过程中，需求是用Use Case来表达的，界面是在Use Case的辅助下设计的，很多类是根据Use Case来发现的，测试实例是根据Use Case来生成的，包括整个开发的管理和任务分配，也是依据Use Case来组织的。啊，Use Case，简直太重要了！好了，Use Case就吹到这儿，具体的使用还要在实践中去体会，&ldquo;运用之妙，存乎一心&rdquo; 也！&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  对于每个Actor来说，他都要使用系统的某项功能，所以我们识别和分析Use Case是，要 对于每个Actor来逐个进行。对于ToDo User，我们可以轻易的识别出两个Use Case：Add Task 和 Remove Task。ToDo User主动使用这两个Use Case所描述的系统功能，所以在我们的Use Case图上，ToDo User和这两个Use Case的关系是用从ToDo User发出的箭来表示的。对于FileSystem，我们识别出的也是同样的两个Use Case，不过这次箭头从Use Case指向FileSystem，表示FileSystem是被动的。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Use Case可以用很多方式来描述，我们可以用自然语言（英语，汉语，随您的便），可以用形式化语言（哇！太酷了吧！），也可以用各种图示。在UML中，通常用两种图来描述Use Case，它们就是顺序图（Sequence Diagram）和协作图（Collaboration Diagram）&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Use Case 由以下元素组成：<br>
　　　　名称<br>
　　　　简单描述<br>
　　　　事件流<br>
　　　　关系<br>
　　　　活动图和状态图<br>
　　　　Use Case 图<br>
　　　　特殊需求<br>
　　　　前条件<br>
　　　　后条件</p>
<p><strong>一、谈谈对use case有关术语翻译的看法。</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  笔者认为&ldquo;用例&rdquo;是目前较好的译法，这个词可能来源于大家熟知的&ldquo;测试用例&rdquo;。有人认为把use case翻译成&ldquo;用例&rdquo;是错误的，理由是：&ldquo;&lsquo;例&rsquo;是被列举出来以说明某种情况的个别事物，use case是对一项系统功能使用情况的普遍适应的描述，而不是对个别actor或者在个别条件下使用这项功能才适应，它也不是通过举例的方式来描述的&rdquo;，所以不能叫作&ldquo;用例&rdquo;。此种说法不尽全面,而且有些牵强（先不管它正确与否），其实use case到底是个别的，还是群体的（普遍适应），取决于我们的视点。虽然对于单个的scenario来说，use case是多个情节的叠加，是一个整体的复合概念，但是我们知道，一个系统的功能必定是可数的、有限的，而每一个功能都可以表示为一个use case，所以在观察系统提供的所有功能需求的集合这个层面上，use case又是一个一个可数的个体（&ldquo;椭圆&rdquo;），每一个都代表了不同的用户目标，适用于个别的actor和个别特定的前置条件。同一个事物既是个体的又是整体的，这种现象并不足怪，例如在UML对象-类-类元关系中，通常对象是类的实例，而类又是类元的实例，对类元来说，类、接口、子系统、use case等等就是一个个个体的概念，类既是其对象实例的集合又是其类元集合的个别元素。可见，把use case的&ldquo;case&rdquo;译成&ldquo;例&rdquo;并没有错。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  有的地方把use case翻译成&ldquo;用况&rdquo;，即&ldquo;使用的情况&rdquo;之意，意思的确不错（use case的另一种说法是&ldquo;使用的方式&rdquo;）！可我总感觉这个词比较突兀、拗口，类似的还有&ldquo;用案&rdquo;，把scenario叫作&ldquo;案况&rdquo;，大概这些词读起来不太符合大家的习惯（类似地，既然可以叫&ldquo;用况&rdquo;，为什么不能叫&ldquo;用情&rdquo;呢？），所以现在&ldquo;用例&rdquo;的叫法还是越来越多了。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  其实&ldquo;用例&rdquo;这个译法还有个附带的好处，通过它我们很容易把原本就存在紧密联系的use case和test case（test case来自于对scenario的分析，而scenario是用例的一次执行）从中文名称上也方便地统一起来。不过，这里我们需要做一个小小的改进。中文的&ldquo;测试用例&rdquo;到底是指test case（带定语的名词词组）呢，还是指对用例进行测试（testing the use cases，动宾词组）呢？显然这两者不易分辨，而且若&ldquo;用例&rdquo;和&ldquo;测试用例&rdquo;两个词同时出现在一啰个句子或一段话中，常常会让人感觉嗦和便扭。为了消除歧义，干脆以后把test case都叫做&ldquo;测例&rdquo;，这样不但比以前的叫法更加简洁明了，而且无论字面上还是语义上都很贴切。当然，用例和测例是不同层面的&ldquo;例&rdquo;。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  现在市面上Actor也有多种译法，常见的包括&ldquo;参与者、执行者、主角&rdquo;等等。&ldquo;参与者、执行者&rdquo;的问题主要是不准确。首先，&ldquo;参与者&rdquo; 通常让大家马上想到的词是participant，而且请注意，一个用例的真正参与者决不是只有外部的Actor，它们必然还包括系统本身及其内部的各种元素。&ldquo;执行者&rdquo;的问题与此类似：一个用例的真正执行者应该是系统本身！因此严格地讲这样译是错误的，兴许叫作&ldquo;外部参与者&rdquo;、&ldquo;外部执行者&rdquo;才更为恰当。&ldquo;主角&rdquo;的译法同样存在着矛盾。如果把Actor叫作&ldquo;主角&rdquo;，那么Primary Actor就应该叫作&ldquo;主主角&rdquo;了。看来Actor的译法中是不能含有&ldquo;主&rdquo;的，那么就剩下&ldquo;角&rdquo;了，而UML已经有了一个专门术语role（角色），我们又不能把Actor直接叫作&ldquo;角色&rdquo;。<br>
目前看来，把Actor意译成&ldquo;使用者&rdquo;是比较妥当的。在大多数情况下Actor的的确确就是用户（确切地说是系统用户所扮演的一种角色），所以我们可以用&ldquo;使用者&rdquo;这个词从字面上与&ldquo;用户&rdquo;（user）进行区分，但同时又保持两者语义上的联系。我们还可以把为系统服务的Supporting/Secondary Actor（见下文）叫做&ldquo;被使用者&rdquo;（为了简化可以省略&ldquo;被&rdquo;字）或&ldquo;辅使用者&rdquo;。除了指系统的用户之外，&ldquo;使用者&rdquo;还有另一层含义，即Actor是use case的使用者（或被使用者），这种关系在UML用例图上应该可视化地表示为它们之间的连线（关联）。这样解释不但说的通，而且更便于不熟悉软件技术的业务人员理解。<br>
当然，我们也不排除将来会找到&ldquo;use case&rdquo;、&ldquo;actor&rdquo;等术语更好的译法。</p>
<p><strong>二、USE CASE的来历</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Ivar Jacobson在1967年定义爱立信AXE系统的够架时开始书写使用场境usage scenarios。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  二十世纪八十年代中期Jacobson花了很多精力来思考过去十多年的工作方法。他造了一个术语anvendningsfall，大意是&ldquo;使用情况&rdquo;（situation of usage）或用况（usage case）。但当用英文出版的时候，他发现&ldquo;useage case&rdquo;在英语里说不通，所以写作用例&ldquo;use case&rdquo;</p>
<p><strong>三、创建USE CASE的原则</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例是短文<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例可以是一个场景，包括动作和互交。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例可以是一组场景，描述不同场景下的行为。这种书写格式可以在任何时候描述有变体的行为，例如黑盒需求，业务流程，系统设计说明。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例里不要有系统设计<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例里不要有界面设计<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例里不要有特性列表<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例里不要有测试<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例应该描述行为需求<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例的主场景不要超过九步。可以在适当的层次上得到子目标和移除设计说明。<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  用例的最大价值不在于主场景，而是在于备选行为。主场景可能只占用例长度的四分之一到十分之一。</p>
<p><strong>四、Use Case 事件流</strong></p>
<p>　　Use Case具有一个基本事件流（可称为&quot;理想路径&quot;）、多个例外流，包括：<br>
　　　　基本变化<br>
　　　　特殊情况<br>
　　　　处理错误情况的异常事件流</p>
<p><strong>五、Use Case 说明书</strong></p>
<p>　　Use Case 说明书应包括以下内容：<br>
　　　　功能描述<br>
　　　　可用性<br>
　　　　可靠性<br>
　　　　性能<br>
　　　　可支持性<br>
　　　　设计约束</p>
<p><strong>六、Use Cases将做成多大？</strong></p>
<p>　　试图决定Use Case的大小是一个很有趣的话题，处理这件事的一个方法是将Use Case的大小跟它的意图和范围关联起来，对于一个真正大的范围来说，一个Use Case并不要在一个系统中处理那么多，但这些系统都用于同一商业领域，称为Business Use Case，它把整个公司看作一个黑盒和Actor关于公司目标的说明。这些Business Use Case的场景不允许假定任何公司内部的结构，一个客户将向公司下一个定单而不是客户服务部门。</p>
<p>　　对于系统发展而言，Use Case的范围限制一个单一的系统，这是Use Cases最通常的形式，我们称之为System Use Case，它把整个系统看作是一个黑盒，它不指定任何内部结构并且仅受限于问题域的语言描述。</p>
<p>　　Use Cases的另一范围是设计子系统和系统内部组件的，称为Implementation Use Cases，它把组件看作一个黑盒，并且这些Actors是区分它的成员。例如：可能会用Implementation Use Cases去说明应用系统中email组件的需求。</p>
<p>　　给出了这些分类，关于Use Case的大小话题变得容易了，设计这些项的范围来调整整个大小。帮助系统设计者，每个Use Case只描述没有大的分支的行为的单个线索。违背这个规定，Use Case看起来通常是不准确的或含糊的，作为测试说明的资源和参考，它也是很难使用的。</p>
<p><strong>七、Use Cases的说明</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Use Cases的好处是一些情节能用不同程度的正规化的文字说明。每个情节涉及Use Cases中单一的途径，细节是条件组。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  不正规的文本描述也能使用，不过当条件较多和可能失败的情况下它们很难跟随下去。开始试图理解需求时，不正规的叙述风格也是非常有用的，然而随着Use Cases的进展，使用更加正规的机制去说明Use Cases才是有用的。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  下面是客户对Use Case&ldquo;下定单&rdquo;的粗略概略：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &ldquo;确定客户，找出需要的并且仓库里还有的物品并检查客户信用额是否够用&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  结构化叙述的格式已经被证明是非常有效的。这个格式所做的事是描述每一个情节的行为者：目标语句对顺序的叙述。在这个顺序中，每一个行为者：目标的语句对都假设前一个的目标是成功的，右面是一个简单的范例：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Use Cases认为我们正在设计的系统是一个单一的黑盒，根本没有任何内部结构被记录下来，并且它被认为是一个情节产生的目的及对应单一的行为者（Actor）。这些Use Cases没有表示任何关于系统内部的东东，只是表示系统将达到什么样的目标及由什么（人或其它系统）操作和负责。</p>
<p><img src="http://www.itisedu.com/manage/Upload/image/2006327181715343.gif"></p>
<p><br>
<strong>八、Use Cases使需求有利于回顾</strong></p>
<p>　　Use Cases已经得到越来越广泛的应用，它与其它需求捕获技术相比，它成功的原因在于：<br>
　　　　1 　Use Cases把系统当作一个黑盒 <br>
　　　　2 　Use Case 使在需求中看到实现的决定变得更加容易</p>
<p>　　最后一点源于第一点的补充，一个Use Case没有指定任何这些需求相关的系统的内部结构，所以说，如果这个Use Case中陈述了&quot;提交改变到定单数据库&quot;、&quot;显示结果到Web页面&quot;等的话，那么内部结构是显而易见的，并造成对设计的潜在约束。</p>
<p>　　为什么这些需求不指定内部结构的原因是，说明的内部结构给设计者带来了额外的约束，没有这些约束设计者们能更自由地建立一个正确实现客观可见行为的系统，并存在出现突破方案的可能性。</p>
<p><strong>九、Use Cases的图形符号</strong></p>
<p>　　这里是Use Cases的图形符号描述，UML中一个单一的&quot;Stick-Man&quot;符号标示角色（Actor），用椭圆标示Use Cases，如</p>
<p>（图一）所示。这些图对于你想看到Use Cases之间如何关联的&quot;大图&quot;和获得系统上下文的大体描述来说是非常重要的。</p>
<img src="http://www.itisedu.com/manage/Upload/image/2006327181727515.gif">
<p><br>
　　Use Cases图没有显示不同的场景，它们的意图是显示角色和Use Cases之间的关系。所以Use Cases图需求用结构化叙述文本来补充。UML提供一些可供选择的图来显示不同的场景，这些常规的图形有交互图、活动图、顺序图、状态图等（本文暂不讨论这些图）。使用这些图的主要缺点是它们不象文本一样是紧密的，但它们能用于给出Use Case的整体感觉。</p>
<p><strong><strong>十、</strong>Use Case 的评价标准</strong></p>
<p>　　是否每个Use Case 都包括至少一个actor？<br>
　　是否每个Use Case 都独立于其他Use Case？<br>
　　是否每个Use Case 都有一个简单的行为或事件流？<br>
　　是否每个Use Case 都有一个唯一的、直观的、可扩展的名称，使它不至于在后期被混淆。<br>
　　用户是否容易理解Use Case 的名称和描述。</p>
<p><strong><strong>十一、</strong>Use Case 模型的评价标准</strong></p>
<p>　　Use Case模型显示系统中的Use Case与Actor 及其相互关系。其评价标准有：<br>
　　　　Use Case 模型是可理解的吗？<br>
　　　　通过对Use Case 模型的研究是否能对系统功能有一个清晰的概念。<br>
　　　　所有的actor都定义了吗？所有的功能需求都满足了吗？<br>
　　　　Use Case 模型是否存在多余的行为。<br>
　　　　从模型到Use Case包的划分是否是恰当的。</p>
<p><strong><strong>十二、</strong>使用Use Case 的误区</strong></p>
<p>　　由于具有简单的图形符号、易理解的自然语言说明书，Use Case在文档系统和软件需求领域成为一 项越来越受欢迎的技术。Use Case对开发小组极具吸引力，即使小组成员对正式的需求文档没有经验，但这些简单性却具有欺骗性，即使项目小组在开始使用Use Case 时没有任何麻烦，当他们将其应用于大项目时常常会遇到许多同样的问题。</p>
<p>&nbsp;&nbsp;&nbsp;<strong>  1 使用 use case 十大误区</strong></p>
<p>　　1． 系统的boundary 没有定义或经常改变；<br>
　　2． 从系统观点而不是actor观点来定义Use Case；<br>
　　3． Actor的名称不一致；<br>
　　4． Use Case 定义过多；<br>
　　5． Use Case 和actor之间的关系象蜘蛛网一样错综复杂；<br>
　　6． Use Case的说明太长；<br>
　　7． Use Case的说明不清楚；<br>
　　8． Use Case没有正确的描述功能需求；<br>
　　9． 用户无法理解Use Case；<br>
　　10． Use Case 无法正常结束。</p>
<p><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  2 如何避免以上问题</strong></p>
<p><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  清楚的确定系统的boundary.</strong><br>
　　简单来说，系统的boundary就像一个加了标签的盒子，actor在盒子外，而Use Case在盒子内。我们称之为系统的这个盒子究竟是什么呢？一个计算机系统？一个应用系统？或一个完整的企业？…Use Case 可以用来合理地描述任意系统。但一次只能用来描述一个系统，在一个系统中恰当定义的actor和Use Case用于另一个不同的系统中就会出现错误。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <strong>使用标准模板书写Use Case 说明书</strong><br>
　　Use Case 图形符号已经被标准化并作为对象管理小组UML的一部分，但自然语言的Use Case 说明书还没有被标准化。为了成功书写Use Case 说明书，我们需要一个标准模板来保证Use Case 的一致性。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <strong>关注actor的真正目的，从actor的观点而不是系统观点来命名Use Case</strong> <br>
　　面向Use Case 的需求与传统的功能性系统需求之间最显著的区别在于actor ，以面向Use Case的观点，系统存在是由于actors 要通过该系统实现某些目标，actor与系统进行交互来实现其目标，我们将这些交互行为定义为Use Case 。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong> 不要将Use Case 说明书与用户接口设计相混淆</strong><br>
　　现在有一种很流行的观点：由于Use Case 是actors 与系统之间的交互，所以将所有的用户接口设计图放在Use Case说明书中是一个好办法。初看时，这的确很有用，因为它将在说明书中描述的actor/系统之间的交互行为以图的形式表示出来，非常直观。但是这样做的负面影响却远远大于其好处，用户接口设计可能会随着时间而改变，我们不应该让系统需求依赖于用户接口设计，相反地，用户接口设计应该满足Use Case 需求。如果我们将用户接口设计置于Use Case 说明书中，当需求需要被认可和定为基线时，很自然地，这些设计元素可能仍然在改变，这就使得用户接口设计成为不完整的、不正确的和/或不一致的。</p>
<p>　　将用户接口设计置于Use Case 说明书还会出现另一个问题，为了在Use Case 之间和接口之间建立一对一的通信，我们会选择反映用户接口的Use Case块而不是反映用户目标的Use Case 块，这样，为了表达一个完整的用户目标，我们使用交互Use Case 关系，将不同的、基于用户接口的Use Case 联接起来，结果在Use Case 模型中，我们得到了一幅类似蜘蛛网的关系图。实际上，这副图是用户接口说明图，虽然它在系统文档中是很重要的一部分，但他属于用户接口设计文档，而不是Use Case 需求文档。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <strong>实现用户接口和Use Case 交互之间的松散耦合</strong><br>
　　松散耦合是比较合适的，低逼真度的用户接口图有助于理解Use Case ，但要注意不要过度的将基本交互与用户界面机制相连，用户界面很有可能会改变。在功能说明书中，要注意actor做些什么（如&quot;提交请求&quot;）而不是交互是怎样完成的(如&quot;双击提交按钮&quot;)。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  <strong>不要在Use Case 和用户接口之间建立通信</strong><br>
　　试图在Use Case 和用户接口之间建立通信可能会存在潜在的、不正确的功能操作。Use Case 不仅与只能访问某个接口的actor相联，而且与那些能够更新该接口的actors相连（这可能是例外流），结果就造成了不正确的功能操作。我们应该在基于实际用户目标和功能操作的基础上拆分Use Case ，而不是在基于用户接口的基础上组合Use Case ，只有这样才能得到正确的Use Case 模型。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong> 回顾Use Case 模型和Use Case 说明书，如果你不能防止所有的误区，你应该尽早认识问题并确定问题</strong><br>
　　这个观点并不是什么新东西，有关代码检查的经典算法已有大约25年历史了，但怎样将其应用于Use Case 呢？ 首先，回顾Use Case 模型，回顾一下Use Case 的简单说明（Use Case 名称、目标、简单描述）。这项工作应在绘制草图时尽早执行，并在写详细的Use Case 说明书之前完成。接着是回顾Use Case 草图，保证图是正确的，并且详细的Use Case说明书是完整的。最后是正式回顾最终的Use Case 图和Use Case 说明书。</p>
<p>　　我们发现这种三阶段式回顾比单一的&quot;宇宙大爆炸&quot;式回顾有效，在我们花大量的时间写说明书之前，Use Case图中存在的许多实质性问题可以被发现，这种方法减少了当需求改变时需要做的重复工作。</p>
<p><strong><strong>十三、</strong>Use Cases应用当中的复杂性和危险</strong></p>
<p><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  主要行为者（Actor）和Use Case之间没有连结</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  一些情况下，从Use Case中取值的行为者（Actor）和积极参与这个Use Case的行为者（Actor）之间没有清晰的连结。如：财务主管能成为&ldquo;发票确认&rdquo;的行为者（Actor），但他未必是创建发票的人。这不是什么问题，这个Use Case仍然是正确的，它正说明行为者取值和设计的系统的范围外的Use Case发生的初始化之间的关系。主要行为者是有用的，因为这个人扮演的角色是当你说明Use Case时需要跟他说的人。</p>
<p> <strong>&nbsp;&nbsp;&nbsp;&nbsp;  情节步骤不需要连续</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  情节中步骤顺序的情况是没问题的，这里有一些机制去突出可能的并行步骤。在UML中活动图是首选的机制，通过非正式地看Use Case的情节你可以注意到可能的平行步骤；可以看Use Case内一些邻近的步骤；也可以有相同的行为者（Actor）对步骤负责。之前我们举过的例子里，确认数量和确认信用额可能是平行的。有时候在Use Case的说明文档中标记这些可能的平行步骤是有用的。</p>
<p><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Use Cases的大小</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  当开始做Use Cases的时候有个很显然的危险就是它要么有很多步骤要么就很少步骤。如果在Use Case中有超过15个步骤，它可能包含一些实现明细。如果它只有非常少的步骤则检查它的目标是否是达到一个没有很多分支的活动的单一线索。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong> 较少的人类行为者（Actor）</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  如果Use Case有较少的人类行为者，而大多数行为者是其它系统，通常的做法是修改这个Use Case。寻找系统必须做出反映或公认的事件胜过会见这些行为者。</p>
<p>&nbsp;&nbsp;&nbsp;<strong>&nbsp;&nbsp;  需求捕获和系统复杂性</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  总而言之，这些情节捕获到系统复杂度的同时行为者：目标语句对容许大的系统以相对压缩的格式说明。Use Case的格式的作用是用户和开发者能标志出行为者，然后确认这些行为者工作职责对应（或不对应）的目标，代替一个大的很难读的功能规格说明书。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  仅仅这样，用户和开发者就有足够的兴趣进而研究那些情节的细节。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;<strong>  系统不仅仅有应得的功能性需求</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  一些Use Cases并没有捕获所有的客观需求，仅仅是捕获了系统怎么用的那些功能性需求。然而还有许多方面的需求需要去捕获的。其中有的非功能性需求使用关联以至于也能隶属于个别的Use Case，如性能需求和系统容量的需求。另外的一些不是关联的而是要单独地去捕获，它们是以下的需求：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 系统范围 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 系统用户的目标 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 用户界面原型 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 一般规则 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 约束 <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 算法</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong> 运行时期和建立时期的需求比较 </strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  一个重要的因数要记住，就是系统的赞助者是大过用户团体的。系统中有许多的风险承担者，Use Cases仅仅捕获其中一些风险承担者的需要，具体说，Use Cases仅仅捕获系统运行时期的需求而忽略做为系统开发组织的风险承担者的需求，开发组织最有兴趣的是对建立时期需求的描述。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  运行时期需求包括：系统范围、用户组织对产品的期望和目标、Use Cases、其它非功能性需求。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  建立时期需求包括：减少开发成本、较少的变更处理、现存组件的重用。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  建立时期的需求可以部分的由Use Cases把握。但许多方面是需要由开发组织的处理的。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 项目范围和目标：项目必须提交什么。（和系统范围的区别是它提交的是所有项目的东西）</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 增长性和变更请求：这些可以在捕获为常规Use Cases格式中的&ldquo;Change Cases&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  · 开发负责人的约束：包括标准、习惯、工具、品质度量标准、品质保证原则、及品质保证的习惯。</p>
<p><strong><strong>十四、</strong>Use Cases的适用性</strong></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  Use Cases首先用于需要响应客观事件的系统。它们能用于提供了一个有很容易理解的目标的清楚的行为者的环境。当结果不可定义或不清晰时不能用Use Cases。意思是如果目标成功或目标失败不能有一个明确的定义，那么Use Cases不能用来捕获需求。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  然而说到这，现在大部分对象方法都使用Use Cases。因为Use Cases被证明是捕获需求的非常有效的机制。</p>
<p><strong>十五、小结</strong></p>
<p>　　Use Case 是系统提供的功能块，换句话来说Use Case演示了人们如何使用系统。通过Use Case观察系统，能够将系统实现与系统目标分开，有助于了解最重要的部分――满足用户要求和期望，而不会沉浸于实现细节。通过Use Case 用户可以看到系统提供的功能，先确定系统范围再深入开展项目工作。</p> <a href="http://hi.baidu.com/165edu/blog/item/d113342a4d8cb63e5243c17e.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%B2%DF%BB%AE">策划</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/d113342a4d8cb63e5243c17e.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-18  16:32</pubDate>
        <category><![CDATA[策划]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/d113342a4d8cb63e5243c17e.html</guid>
</item>

<item>
        <title><![CDATA[【转】杀死团队的七种武器]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/a166bd318a89a2ae5fdf0e57.html]]></link>
        <description><![CDATA[
		
		<p>　　不管你是一个团队的成员还是带头人，如果你对它已经厌倦了，恨不得大家早点儿散伙，不妨赶紧捡起来下面这七种武器。好吧，也许你是一片好心， 希望改变团队目前垂垂危矣的状况，病急乱投医，随便捡起一把枪，却没搞懂枪口冲着哪个方向，再加上擦枪走火，自行了断，也不是不可能。有的武器介绍之后， 还有使用它的进阶技巧。让其成为项目管理、共同协作、职场发展必备之最佳利器。</p>
<p>　　如果当初猪八戒扔掉钉耙，而是拿起来这些的话，也许他早就回高老庄，跟高翠兰一起，从此过上快乐、幸福的生活了。</p>
<h3><font face="黑体">武器一：贸然加入陌生人</font></h3>
<p>　　团队来了新人，不要介绍他给大家认识，不要让大家知道他的技能和长处。人们会根据他的一些细微行为做出自己的判断，而不是先去深入了解他。 要是新人的兴趣癖好跟大家完全相反，那就再好不过了。</p>
<br>
<strong><em>进阶技巧：</em></strong> <br>
<p>　　把两个死对头加入到一个团队中，而且告诉大家他们的技能对于团队来说很重要。这样一来，他们之间的摩擦就会成为加速团队分裂的催化剂。</p>
<h3><font face="黑体">武器二：限制沟通</font></h3>
<p>　　别让大家谈天，这样会增进他们的感情。不断提醒他们&ldquo;你们还有活要干！&rdquo;要是能在办公室里面贴上一个&ldquo;静&rdquo;，就再好不过。实际上，如果团队分布 在不同的地方， 甚至彼此之间的文化背景都不同，效果就更好了。不到迫不得已，绝不要把一个团队的人安排在一起。不要公布通讯录。让人们的惰性发挥效果，如果想找一个人很 麻烦，他就不会找了。</p>
<br>
<em><strong>进阶技巧：</strong></em>
<p>　　告诉团队时间紧迫，发邮件也是浪费时间。这样人们就不会发送不必要的信息了。</p>
<h3><font face="黑体">武器三：分清长幼尊卑</font></h3>
<p>　　最佳的装备给最棒的人。最快的电脑、最好的办公室、额外的假期等等等等，只给这些精英人物。当人们看到有人可以享受特权时，嫉妒暗自滋生。基督教的七宗罪，&ldquo;嫉妒&rdquo;跻身其中。更美妙的是，一旦这种致命武器在团队中出现，不用人浇灌，敌意就会不断蔓延。</p>
<h3><font face="黑体">武器四：打人要打脸</font></h3>
<p>　　每个人都有自己的弱点，找到它！把人们的弱点公开出来，并且使其个人化。要指名道姓！在表达方式上也要无所不用其极：羞辱，责怪等等，不一而 足。传播方式，可以通过备忘录、邮件、会议上的发言。用红色的大字体可以加强效果。更棒的是，你还可以散布流言。要想让人信服，不妨在流言中加入一些真 相，这就更有效啦。。。</p>
<br>
<strong><em>进阶技巧</em></strong> <br>
<p>　　曾经有一个公司的总裁，向全公司发送了一个备忘录，其中责备了软件团队新产品的种种不足。这种做法太牛掰了！这个总裁也就成了公司的杀手，不久之后，公司成功散伙了。</p>
<h3><font face="黑体">武器五：限制信息的访问</font></h3>
<p>　　如果已经有了项目需求，可以做这样两件事：一是把它藏起来，因为程序员们习惯不看需求了；二是把其中几页拿掉，因为程序员们习惯看模糊不清的需 求了。在审核别人工作的时候，要埋下疑问的种子。比如：&ldquo;上个月这个功能很重要，不过现在客户可能不需要了。&rdquo;或者就用简简单单三个字：&ldquo;你错了。&rdquo;言简 意赅，多好。</p>
<br>
<em><strong>进阶技巧</strong></em> <br>
<p>　　让团队使用全新的、只存在于口头上的流程，而且要用新的技术。也别给他们上课和学习的机会。跟他们说没时间，而且要夸他们聪明。这样的迷魂汤可以给他们以压力，团队士气的崩溃，指日可待啊。</p>
<h3><font face="黑体">武器六：一山之内放二虎</font></h3>
<p>　　同时要切分项目范围，把相关工作分成两部分，给不同的小组。制定竞争性的目标，告诉他们：&ldquo;我想看看你们谁是更好的程序员。&rdquo;这种特别的技术可 以消除信息的共享。可能有人不喜欢这种状况，并会因此而离职。那也没关系，别忘了第一种武器。可以中途加入新的陌生人嘛。所以要想在团队甚至是小组之内保 持稳定就基本上是不可能的了。</p>
<br>
<strong><em>进阶技巧</em></strong> <br>
<p>　　给竞争的小组之间分配职责的时候，可以让他们的责任有所重复。这可以确保减少协作的发生。想想政府职能机构的安排设置。相信你一定露出了心领神会的微笑。。</p>
<h3><font face="黑体">武器七：强制要求加班</font></h3>
<p>　　人们会因此而远离他们的朋友、家庭，压力也不断上升。要想让一个人失去工作热情，施加过度的压力是不二之选！当每个人都感觉压力倍增的时候，办 公室中就会怒气满盈、怨气冲天。告诉他们这个项目很重要，告诉他们质量也很重要。他们就会觉得自己必须付出更多的努力和更长的时间来保证项目成功。取消所 有的假期。也许有人会因此而离职，这不是正合你意么？最棒的是，压力会影响质量，作为头目的你就可以找到各种问题，把他们的小辫子攥在自己手里了；你还可 以加入专长于QA的陌生人，或是将团队分成竞争的小组，也就是使用第六种武器。</p>
<p>＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝</p>
<p>　　上面这七种武器，单独使用就可以发挥很大作用了。如果你要是掌握两种甚至两种以上，wow，恭喜你，你已经成为名副其实的&ldquo;破坏之王&rdquo;！</p>
<p>　　说明:本文主要部分译自《<a href="http://www.amazon.com/Amplifying-Your-Effectiveness-Collected-Essays/dp/0932633471" asin="0932633471" bluelink="yes">Amplifyin g Your Effectiveness</a><img align="top" class="blue-icon-launcher" src="http://s3.amazonaws.com/blueorganizer/images/shared/icons/bookmark_12.gif" blueimage="http://s3.amazonaws.com/blueorganizer/images/shared/icons/bookmark_12.gif" blueimageover="http://s3.amazonaws.com/blueorganizer/images/shared/icons/icon_14.gif" link="http://www.amazon.com/Amplifying-Your-Effectiveness-Collected-Essays/dp/0932633471"><img align="top" src="http://s3.amazonaws.com/blueorganizer/images/shared/icons/bookmark_12.gif">》中《Maneuvers to Di sable a Team》一文。</p> <a href="http://hi.baidu.com/165edu/blog/item/a166bd318a89a2ae5fdf0e57.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%CF%EE%C4%BF%B9%DC%C0%ED">项目管理</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/a166bd318a89a2ae5fdf0e57.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-11  11:09</pubDate>
        <category><![CDATA[项目管理]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/a166bd318a89a2ae5fdf0e57.html</guid>
</item>

<item>
        <title><![CDATA[读毛主席的书，听毛主席的话！]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/43b70bd1026f64d5562c8464.html]]></link>
        <description><![CDATA[
		
		周末跑到文庙书市逛逛，见到一群真正喜爱看书的年轻人、中年人、老人。。。。但也不乏我这样的。（冒牌的，呵呵）<br>
<br>
里面的那种氛围很不错，但人不多。在互联网娱乐发达得让宅男宅女们恨不得把电脑贴在身上的今天，也就可以理解为什么人不多了。<br>
<br>
我逛了一圈，发现有的看不懂，有的不愿看，有的压根就瞧不起。<br>
<br>
看到孔先生的塑像就在边上看着我呢，总不能空手回去吧，得表示表示，买了本毛选（红宝书）。里面摘取的文章都是主席在解放前写的，很不错。大政治家、大文学家啊。。。。 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%C4%AC%C8%CF%B7%D6%C0%E0">默认分类</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/43b70bd1026f64d5562c8464.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-11  09:19</pubDate>
        <category><![CDATA[默认分类]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/43b70bd1026f64d5562c8464.html</guid>
</item>

<item>
        <title><![CDATA[hi.baidu.com的编辑器居然不支持chrome]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/0ceb5fdf6add4315495403d2.html]]></link>
        <description><![CDATA[
		
		还有一种说法是chrome不支持hi.baidu.com的编辑器。。。。。。。。。。。 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%C4%AC%C8%CF%B7%D6%C0%E0">默认分类</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/0ceb5fdf6add4315495403d2.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-04  15:00</pubDate>
        <category><![CDATA[默认分类]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/0ceb5fdf6add4315495403d2.html</guid>
</item>

<item>
        <title><![CDATA[产品原型设计软件Axure相关介绍]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/b55300e9febfa739b90e2d6c.html]]></link>
        <description><![CDATA[
		
		<span style="border-collapse: separate; color: rgb(132, 126, 132);  font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 23px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;" class="Apple-style-span">
<p style="color: rgb(89, 89, 89); line-height: 180%;"><strong style="font-weight: bold; line-height: 180%;">产品原型设计软件Axure</strong>，我把发现的一些好资料分享给大家！</p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;  先说说这款产品，Axure RP Pro是一套整合6大功能的网站策划软件-<strong style="font-weight: bold; line-height: 180%;">架构图/线框图/流程图/</strong>互动设计/原型设计/规格文件，比PowerPoint或Visio更适合策划工作。&nbsp;&nbsp;&nbsp;&nbsp;<br style="line-height: 180%;">
<br style="line-height: 180%;">
&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://wowtree.com/tree.php?aid=220">http://wowtree.com/tree.php?aid=220</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/blog/archives/246">http://userxper.com/blog/archives/246</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://groups.google.com.tw/group/axure-rp-groups">http://groups.google.com.tw/group/axure-rp-groups</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/axure/download/download-form1#usermessagea">http://userxper.com/axure/download/download-form1#usermessagea</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/blog/archives/36">http://userxper.com/blog/archives/36</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/axure_tutorial">http://userxper.com/axure_tutorial</a>&nbsp;&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.axure.com/expert.aspx">http://www.axure.com/expert.aspx</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><span style="line-height: 180%;">Axure RP</span>能够快速提高网站企划的效率，除了个人在单一网站项目上应用<span style="line-height: 180%;">Master</span>的功能，来大量减低重复编辑的工作之外，还可以利用<span style="line-height: 180%;">Master</span>的<span style="line-height: 180%;">Custom Widget</span>自订对象的功能，来建立网站接口元素的接口库<span style="line-height: 180%;">(UI Design Pattern Library)</span>。这里有一篇大陆<span style="line-height: 180%;">Axure RP</span>应用于网站界面库的实际案例<span style="line-height: 180%;"><span class="Apple-converted-space"> </span>-<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/blog/archives/197"><span style="line-height: 180%;"><span style="line-height: 180%;">利用Axure</span></span><span style="line-height: 180%;"><span style="line-height: 180%;">封装视觉标准</span></span></a></span>，非常值得学习。</p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><strong style="font-weight: bold; line-height: 180%;">Prototype範例</strong><br style="line-height: 180%;">
&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/axure/sample_prototype">http://userxper.com/axure/sample_prototype</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://userxper.com/blog/page/5">http://userxper.com/blog/page/5</a>  4 3 2 1</p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><strong style="font-weight: bold; line-height: 180%;">Axure的富交互应用实例</strong><br style="line-height: 180%;">
&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://lovelyrosa.blogbus.com/logs/23839905.html">http://lovelyrosa.blogbus.com/logs/23839905.html</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://blog.csdn.net/hu_zhenghui/category/418803.aspx">http://blog.csdn.net/hu_zhenghui/category/418803.aspx</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.bubbling-library.com/eng/examples">http://www.bubbling-library.com/eng/examples</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><strong style="font-weight: bold; line-height: 180%;">Shared Projects</strong></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.google.cn/search?hl=zh-CN&amp;q=axure+share+project&amp;meta=&amp;aq=f">http://www.google.cn/search?hl=zh-CN&amp;q=axure+share+project&amp;meta=&amp;aq=f</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.axure.com/p401_1.aspx">http://www.axure.com/p401_1.aspx</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.zhuaxia.com/pre_channel/4922477/?logId=181">http://www.zhuaxia.com/pre_channel/4922477/?logId=181</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;  AXURE&mdash;3秒钟后自动隐藏提示层</p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;  http://y2816.blog.163.com/blog/static/86768325200862892514967/</p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://groups.google.com/group/axure">http://groups.google.com/group/axure</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><strong style="font-weight: bold; line-height: 180%;"><font color="#ff0000" style="line-height: 180%;">一本不错的设计杂志</font></strong></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.newwebpick.com/">http://www.newwebpick.com/</a></p>
<p style="color: rgb(89, 89, 89); line-height: 180%;">&nbsp;&nbsp;&nbsp;<span class="Apple-converted-space"> </span><a style=" font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; font-size-adjust: none; font-stretch: normal; text-decoration: underline; line-height: 180%; color: rgb(241, 158, 0);" href="http://www.newwebpick.com/shop/index.php">http://www.newwebpick.com/shop/index.php</a></p>
</span> <a href="http://hi.baidu.com/165edu/blog/item/b55300e9febfa739b90e2d6c.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%B2%DF%BB%AE">策划</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/b55300e9febfa739b90e2d6c.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-03  17:19</pubDate>
        <category><![CDATA[策划]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/b55300e9febfa739b90e2d6c.html</guid>
</item>

<item>
        <title><![CDATA[Google浏览器Chrome发布]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/f17e71cf30c2193bf8dc612a.html]]></link>
        <description><![CDATA[
		
		不用介绍了，直接看官方网站
http://www.google.com/chrome
 

 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%C4%AC%C8%CF%B7%D6%C0%E0">默认分类</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/f17e71cf30c2193bf8dc612a.html#comment">查看评论</a>]]></description>
        <pubDate>2008-09-03  11:10</pubDate>
        <category><![CDATA[默认分类]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/f17e71cf30c2193bf8dc612a.html</guid>
</item>

<item>
        <title><![CDATA[web迅雷启动会自动关闭apache，强！]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/219bbd3ebdfd40fc838b1375.html]]></link>
        <description><![CDATA[
		
		这几天感觉apache老不正常，总是要手动启动，经过检查，发现是web迅雷搞的事，端口冲突，自动结束apache的服务。<img src="http://img.baidu.com/hi/jd/j_0009.gif"> 
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%BC%BC%CA%F5">技术</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/219bbd3ebdfd40fc838b1375.html#comment">查看评论</a>]]></description>
        <pubDate>2008-08-27  09:02</pubDate>
        <category><![CDATA[技术]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/219bbd3ebdfd40fc838b1375.html</guid>
</item>

<item>
        <title><![CDATA[社会化网络SNS社区的分类剖析]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/0e39dbb4259f5f758bd4b2d8.html]]></link>
        <description><![CDATA[
		
		<div class="t_msgfont" >SNS(Social Network Sofwaret)，即社会性网络软件，是依据六度理论，以认识朋友的朋友为基础，扩展人脉的一种网络软件。而SNS网站则指基于相同原理建立的网站，最 早于2003年在美国出现，极短时间内风靡北美。国内SNS已从初期的单纯模仿、定位相似而进入服务细分，开始会出现针对特定人群的SNS网络。 <br>
<br>
目前国内主要的SNS应用网站有以下几种类型：<br>
<br>
平台类：<br>
腾讯QQ.com：以即时通讯为基础的SNS平台<br>
百度baidu.com：以搜索为基础的SNS平台<br>
阿里巴巴alibaba.com：以商务应用为基础的SNS平台<br>
一起网yiqi.com：以开放式社会化网络结构为基础的SNS平台(待实践证明)<br>
<br>
商务类：<br>
诺邻Wealink：工具化SNS<br>
天际Tianji：特色不明显<br>
联络家Linkist：工具化SNS<br>
海内hainei： SNS社区<br>
5G SNS：IT专业人士<br>
<br>
文化类：<br>
蜂巢网（artcomb.com）：中国唯一一家专为华人视觉艺术家服务的SNS网站。<br>
友宝网（u.fozhihui.com）：目前网络最新的SNS应用群体，在友宝这里面，友宝主张网友共同协助、共同学习。<br>
生日网(shengri.com)：以生日为主题的社区交友网络。提供实用的生日提醒，祝福定制服务！<br>
<br>
工具类：<br>
广告人精锐人脉（zhicity.com/sns）：为专业广告人提供团队合作服务的工具性质网站。<br>
<br>
情感类：<br>
天生一对 (perpair.com)：恋人空间和情感管理工具。<br>
<br>
社群类：<br>
宅啦网（Zhai.La）：面向时下最流行的宅人族的SNS交流平台，现已更名为宅内（ZhaiNei.com），与其他SNS不同的是宅内网是一个宅人族的聚居地<br>
驴友录（u.8264.com）：面向驴友、自助游爱好者的SNS社区，目前已有3万余名驴友入住，并以日增300的速度高速发展，采用UC Home程序。<br>
落伍者站长社区(im286.net)：聚积了国内大量站长、程序员，是国内最大的站长交流社区。<br>
<br>
地方类：<br>
安徽E家(<a target="_blank" href="http://www.e.ah.cn/">www.e.ah.cn</a>)：我们E家，我们的家，安徽人的网上家园，专为安徽人提供个人空间，是安徽最大的SNS社区。<br>
<br>
校园与娱乐类：<br>
Xiaonei，占座，51.com，爱情公寓：ipart.cn，天丰网：skyfa.com<br>
<br>
目前国内主流的SNS产品供应商：<br>
UCS：优势社区软件，快速构建Web2.0社区和社会化网络平台<br>
Ucenter Home：是Comsenz公司推出的论坛SNS产品，针对论坛用户提供SNS的平台。<br>
Thinksns：ThinkSNS基于许多优秀的开源软件开发，提供全方位的社交网络解决方案。<br>
......<br>
用户的需求是一个不断进化的过程，当用户初级需求被满足的情况下，绝大多数用户就会更进一步要求得到更深层次需求的满足。在SNS里面，交友是用户加入 SNS后的初级需求，在交友欲望得到满足之后，用户会对SNS提出更多的服务需求。在这个时候，SNS就会从初期的单纯模仿、定位相似而进入服务细分，开 始会出现针对特定人群的SNS网络，垂直SNS社区是今后的主要社区应用。<br>
<br>
最后，引用中国互联网界SNS专家谢文对于SNS的展望：<br>
中国与全球互联网再经过在三到五年的发展，会真正的深入到人民的日常生活当中，发挥更大价值，同时也会给SNS的平台带来巨大的回报效应。</div> <a href="http://hi.baidu.com/165edu/blog/item/0e39dbb4259f5f758bd4b2d8.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%C4%AC%C8%CF%B7%D6%C0%E0">默认分类</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/0e39dbb4259f5f758bd4b2d8.html#comment">查看评论</a>]]></description>
        <pubDate>2008-08-26  12:05</pubDate>
        <category><![CDATA[默认分类]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/0e39dbb4259f5f758bd4b2d8.html</guid>
</item>

<item>
        <title><![CDATA[由谢亚龙的“叉腰肌”看产品经理的工作策略]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/8812f919ea72477cdab4bdd0.html]]></link>
        <description><![CDATA[
		
		<div class="t_msgfont" >　谢亚龙的&ldquo;叉腰肌&rdquo;理论，引起互联网一片哗然。看到本文标题的人，一定会说：标题党、SEOer，莫非是软文？呵呵，我此刻直接用的是草根网的编辑器，用草根的视角，用命若草根的中国足球审视草根的互联网----- <br>
有人说，产品经理跟谢亚龙什么联系？牵强附会！非也，从产品经理职责来看，国家队教练其实是体育界最大的产品经理：传说中的高级复合型人才，熟知业务、精通项目管理、会将人财物资源整合、协调各种关系、为管理层提供前瞻性的策略建议······ <br>
谢亚龙呢？谢亚龙这样的角色是行政管理者。谢亚龙的错误在于不懂还要瞎指挥，&ldquo;叉腰肌&rdquo;这个词汇暴露出技术层与管理层之间的巨大矛盾。这种矛盾其实不仅仅存在于体育界，我负责任地说，在互联网领域这个现象也绝对存在！尤其是官本位思想比较严重的官网或者企业。 <br>
言归正传，身为一伙产品经理的&ldquo;头&rdquo;，我关心的重点自然不是中国足球，即使平日看球也是看意甲、西甲、欧洲杯，当然看世界杯的时候我例行公事一般会睡着。 我在&ldquo;叉腰肌&rdquo;事件中关注的是国家队教练与谢亚龙之间的职责、策略与分工问题。我们需要分析几个案例：足球界的米卢、乒乓界的蔡振华。巴尔扎克有一句名 言，大致是说成功的模式只有一种，而谬误千奇百怪。既然拿苦难的中国足球说事，我不想分析太多的悲剧，所以选取了一个悲喜剧。 <br>
案例1：米卢 <br>
米卢时代，是近20年来中国足球短暂的戏剧时代。米卢做了什么？ <br>
1、告诉阎世铎：&ldquo;专业的事情我来负责，钱的事情你去解决&rdquo;。 <br>
2、策略性地阻断管理层对于战略战术的过多干预，保证人员、策略的把控权。 <br>
3、明星式的媒体表现：宣传自己、宣传中国足球、宣传中国足协。 <br>
令人难以忘怀的镜头是：米卢在公众注视下，滑稽地向阎世铎敬礼！ <br>
那个时代，阎世铎绝对没有闹&ldquo;叉腰肌&rdquo;这样的笑话。这是米卢的成绩之一。 <br>
<br>
案例2：蔡振华 <br>
任何一位产品经理都应该将滔滔不绝的仰慕投向蔡大师。在权力、利益、荣誉的漩涡中，蔡指导游刃有余。他精通技术，能抓住重点，能明察秋毫，能欲知危机。能对付上面，能搞定下属。几年间，这位草根出身的教头功成名就。仔细想想，他怎么做的。 <br>
<br>
回到悲剧的中国足球，审视可怜的谢亚龙。在足球这样的领域，人治的成份还是那样重。谢亚龙的悲剧，在于他没法找到一位合格的教头，没法组织中国足协这样庞大机构。&ldquo;叉腰肌&rdquo;暴露的并非是技术无知，而是管理上的无知。 <br>
<br>
OK，来谈产品经理从中学什么： <br>
A、你能不能不让自己的老板出&ldquo;叉腰肌&rdquo;这样的洋相？ <br>
B、你能不能主导业务，排除不懂行的管理层的干扰？ <br>
C、责任、义务是商业契约的核心条款，你尽到自己的责任了吗？ <br>
遗憾的是，上述的工作似乎都是&ldquo;明星&rdquo;完成的。难道，做中国队教练，首先应当造星？伟大的明星郎平，她怕烦，远走美国了。所以，我又悟到一条： <br>
D、你有没有坚持到底抵抗压力的决心？ <br>
转载请注明梦里秦淮（<a target="_blank" href="http://blog.sina.com.cn/mlqh365">http://blog.sina.com.cn/mlqh365</a>）</div> <a href="http://hi.baidu.com/165edu/blog/item/8812f919ea72477cdab4bdd0.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%CF%EE%C4%BF%B9%DC%C0%ED">项目管理</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/8812f919ea72477cdab4bdd0.html#comment">查看评论</a>]]></description>
        <pubDate>2008-08-26  11:52</pubDate>
        <category><![CDATA[项目管理]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/8812f919ea72477cdab4bdd0.html</guid>
</item>

<item>
        <title><![CDATA[游戏完成平衡性的技巧]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/2d8d37d31099d0063af3cf8e.html]]></link>
        <description><![CDATA[
		
		转自： 胸怀天地-Online<br>
<br>
概要：关于游戏平衡性技巧的资料并不普及。这篇文章有意通过描述游戏平衡和不平衡的性质，以及如何达到游戏平衡的过方法这两个方面来填补这个信息空白。这个方法非常依赖于现有的系统工程技能以及公认的游戏设计理论。大量的案例学习及小故事被采用来帮助将方法和具体的设计结合起来。 <br>
<br>
一个伟大的设计和一个杰出的游戏之间往往只有一个缺乏游戏平衡性的区别。多数游戏策划要通过反复试验才学会游戏平衡的基本原理。如果他们幸运的话，也许可以得到同事传授的一两个小窍门。精通游戏平衡的人往往警惕地保守着自己的秘密，或者无心与人分享。结果是虽然有关游戏平衡性的信息确实存在，但是可得到的却很少。这篇文章试图阐述一个获得游戏平衡性的方法。 <br>
<br>
<br>
<br>
<br>
什么是游戏平衡？ <br>
<br>
Sid Meier 曾经说过：&ldquo;一个游戏是很多有趣的选择的集合。&rdquo;因此得出的是如果游戏失去平衡，就会减少这些选择而影响游戏性。一个理想的游戏应该经过一系列的选择，最后以胜利或其它完成的条件结束。有时一些选择明显成为唯一的选择，或明显是无效的。如果在某一阶段，游戏出现仅有唯一的选择，而游戏却没有结束，就说明游戏的平衡性有了问题。 <br>
<br>
几乎所有通常所谓的不平衡都来自选择权的减少。例如，在一个策略游戏里，如果某一种部队的作用和费用相比过于划算，就会造成其它的部队几乎或完全没有作用。这种情况不仅只留给玩家一个选择（无从选择），而且使玩家受到很多不相关的干扰。这些干扰实际上让游戏变得比较迷乱，减损了游戏性，而且让玩家感到灰心。 <br>
<br>
游戏大富翁(Monopoly)中就有很好的游戏不平衡性的例子。在游戏的后期，玩家们总是尽量拖长呆在监狱里的时间。显然地，玩家在游戏后期的最好的策略就是进监狱而且不付钱出来，希望别人进入自己的领土而破产。在玩大富翁的最后阶段，无需再作选择，游戏基本结束了。没有人再选择是否购买财产，也很少有机会再根据游戏规则建设新的财产（因为房子已经被用完），而且因为资产已经被几个人集中，所以也不再有交易可做。一旦产生这种情形，游戏就变成每个玩家有一定的机率获胜而基本上结束了。此时玩家可以做的很少，除非靠运气得胜。这情景与游戏前期及中期大相径庭，那时玩家往往忙于大施战术、巧妙夺取利益、陷害对手或谨慎购买&ldquo;重量级&rdquo;黄色、绿色或深蓝色的地产。 <br>
<br>
这只是一个不平衡性的举例说明。在游戏中存在许多不同种类的不平衡性。所有的不平衡性都与没有选择性或缺乏选择性有关。 <br>
<br>
● 太昂贵却用处不大和便宜而且有效：游戏选择通常与游戏代价相联系，不管是牺牲其它的选择、游戏金钱或其它的商品。当一个选择太昂贵以致用处不大，或者太便宜而成为明显的选择时，游戏的不平衡性就出现了，因为有一些游戏选择无效了。虽然此类不平衡性最为普遍，但是通常经过简单地调整这些选择的价格或者是效果就可以纠正过来。 <br>
<br>
● 玩家时间的不平衡：大多数游戏平衡性对比的基础是以玩家为一个选择而必须放弃其它的各种不同选择的代价来衡量。我们很容易忽视玩家必须消耗时间执行每一个选择。在一个即时游戏里，玩家在游戏里没有无限的时间，所以时间不仅是一个资源，而且是一个有限的资源。在一个非即时游戏里，游戏时间不受限制，但是玩家的时间是受限制的。这种不平衡性基本上是另一种太昂贵或太廉价不平衡性的表现，只是这里这些游戏的代价不是有形的。游戏星际争霸(Starcraft)里的虫族(Zerg)就是一个很好的这种不平衡的例子。虽然虫族从价格上与其它族类是平衡的，但是就玩家的时间而言他们很容易被制造及使用。主要由于这个特点，虫族在游戏星际争霸发行之后大约长达6个月中，在联赛与竞赛中一直是最受欢迎的种族。 <br>
<br>
● 技术水平的不平衡性：随着玩家的游戏技能不断提高，不同的游戏选择的相对有效性也会改变。如果一种选择容易操作，而另一种极难操作，则结论是一个资深玩家和一个新玩家的对这两种选择的相对有效性的判断是完全不同的。这是游戏开发者的一个常见的陷阱，因为他们一般比较接近&ldquo;高级玩家&rdquo;的水平，所以经常看不见新玩家所要面对的问题。但是从另一方面看，随着操作水平的提高，而游戏性也同时&ldquo;进化&rdquo;，通常被认为是一件好事。所以注意到这种平衡性很重要，但是也要认识到上面说的现象也很普遍。 <br>
<br>
● 强制的劣势或优势：在一个对战的游戏里，一些操作的组合使得某一方更具有优越性。这样不仅是典型的不平衡性（因为有一个选择明显最好），这种状况还是不公平的。在一个多人游戏中，最好避免不公平的情况出现，这也是保证游戏平衡的重要一招。 <br>
<br>
所有的不平衡性最终归结为没有选择性。只要记住这个原则，就容易区分可校正的不平衡性及根本的不平衡性。 <br>
<br>
<br>
如何达到可平衡性 <br>
<br>
游戏平衡性通常被认为是alpha或beta测试的事情，但事实上就像任何工程，好的准备工作是实现良好游戏平衡的关键。优秀的游戏设计具有极大的可平衡性，也就是指游戏系统可以较容易地调整到平衡的状态。如果系统没有可平衡性，费尽周折也不可能将游戏调整到平衡。 <br>
<br>
一个游戏是一个系统，在设计初期应用良好的系统设计方式将带来较好的可平衡性。好的系统设计方式可以分成三个重要步骤：游戏要素的模块性，连贯的设计宗旨及对复杂性的控制与调节。在设计的早期就采用这些方法将为设计师在游戏测试的alpha和beta阶段节省大量的时间。 <br>
<br>
<br>
游戏要素的模块性 <br>
<br>
游戏要素的模块性归结于每个游戏要素只为了一个特别目的存在，如果可能的话，尽量做到只有一个单一的目的。只要贯彻这个原则，调整一个游戏要素只会改变游戏的某个方面而不是许多方面。 <br>
<br>
有一个很好的例子，说明游戏要素缺乏模块性会造成游戏开发人不必要的麻烦。在星际争霸的beta测试中，暴雪（Blizzard，星际争霸的开发人）有一套相当清晰的伤害系统，其中每一兵种各有三种伤害方式：爆炸性的，标准型的或冲击性的。每种伤害方式都有一个根据外型大小而不同的伤害系数&mdash;&mdash;爆炸性伤害对大型目标最有效，冲击性伤害对小型目标最有效，而标准型伤害可用于任何目标。其中一个兵种&mdash;&mdash;飞龙（Mutalisk），不断给平衡性带来问题，因为就功能性上看，不可以被分为大、中或小型中的一种。如果将飞龙设为中型兵种，则它对于爆炸性武器类型的兵种来说抵抗力太强；如将其设为大型，则使其相对爆炸性武器类型的兵种（这种兵种一般是飞龙的天敌）又过于脆弱。暴雪（Blizzard）不能仅仅修改爆炸性相对于大型兵种或爆炸性相对于中型兵种的伤害系数，因为这样做的话就会影响一大批其它兵种的设置。也无法修改爆炸性武器兵种的攻击值，因为这样会影响其它的很多的设置。 <br>
<br>
更让人困惑的是飞龙有两个重要角色&mdash;&mdash;防空军与防步兵（陆战兵种没有空中攻击能力），并具有相同的基本伤害力，而其他类似的兵团（侦察机－Scout、幽灵战机－Wraith）却有不同的武器系统，可以根据具体角色进行调整。 <br>
<br>
因为在伤害系统和飞龙的设计上缺乏模块性的原因，暴雪直到游戏上市后五个月才使飞龙兵种达到平衡。这并不是因为修正是不可能做到，而是因为缺乏系统模块性而使修正非常困难。飞龙在星际争霸里具有一定独特的用途，如果暴雪将它的平衡参数与其它不相关的兵种分开设计，平衡将大为容易。最简单的方法就是为飞龙（及其它类似兵团）添加一个独立的类型，并给予它一个针对各种伤害的自己的防御系数。如果设计师将飞龙的空军与地面攻击划分开来，调节平衡也会变得简单。 <br>
<br>
当然，星际争霸的多数设计都有相当程度的模块性。施法者（Spellcaster）兵种具有清晰的用途和相对特殊的角色就是一个很好的例子。事实上许多魔法（Spells），包括寄生虫（Broodling）和EMP振荡波（EMP Blast），具有非常特殊的作用，使调整这些兵种的平衡性就容易得多。 <br>
<br>
良好的系统模块性不仅是游戏平衡性的前提，它还是朝着解决的方向走近一步。有一个良好的模块性可以使设计师针对各种特殊问题轻松进行调整，而不会影响到其它系统。 <br>
<br>
<br>
连贯的设计宗旨 <br>
<br>
连贯的设计宗旨可能是在初始设计阶段要遵守的最重要的原则，但是往往容易因为政策问题、疏忽大意或缺乏良好沟通而被忽视。连贯设计宗旨的定义是如果游戏要素没有根据游戏的大局进行同步设计，最好的结果是它会使玩家偏移主要的游戏感觉，最坏的可能性是它会损害主要的游戏感觉。这种情况存在于缺乏中心控制或开发时间很长的游戏中。 <br>
<br>
较有名的多用户网络游戏（MUD）Duris：Land of Bloodlust（是Everquest&mdash;&ldquo;无尽的任务&rdquo;的原型Sojourn的姐妹版）就因此带来太多问题。其中一个例子是，某个程序设计人自行编入一个他自己感兴趣的角色类型。虽然这个角色类型本身很有意思，但是它使其它几个类型变得无用或大失威力。这个角色类型拥有了其它种族专有的技能，而正是这些技能的专有性才使得这些种族实用而且好玩。这个程序员还带来很多类似的游戏平衡性问题。他的主要目的是创造一个他感兴趣的类型。这与多用户网络游戏开发人想要创造有趣、独创的角色并与整个系统相吻合的愿望相冲突。他的类型非但不独特（因为是从其它各类型中各取一小部分特点），还与游戏的其它部分格格不入。 <br>
<br>
<br>
复杂性控制 <br>
<br>
复杂性控制应概括为：&ldquo;保持简单、易懂&rdquo;。过于复杂的游戏系统让人费解，因此，也更难做到平衡。一个过于复杂的系统通常是因为最初的设计太糟糕和无休止的添加补丁（理论上这些补丁是合理，但实际上是不连贯的一团糟），或者是太常见的&ldquo;太多厨师呆在一个厨房里&rdquo;的现象，这通常也说明缺乏设计宗旨一致性的问题。复杂性控制的另外一个优点就是它避免了一些潜在的游戏性的问题。尤其是，正如复杂的游戏系统让人费解也因此不好平衡，也更难让玩家理解，甚至从某一程度开始玩家很难再享受游戏。一个很常见的设计错误是为了游戏复杂化而牺牲游戏深度，那将对游戏平衡调整造成极大的困难，并造成对游戏性的困惑和费解。 <br>
<br>
<br>
基本游戏平衡过程 <br>
<br>
除了基本的规则和技巧之外，过程是非常重要的。游戏的平衡过程有几个步骤，每个步骤都有各种各样的技巧。 <br>
<br>
首先要考虑的是让游戏进入一个有趣及可玩的境界，这就需要宏观调控，或者说让游戏中的大部分要素至少达到基本上平衡，而且不存在任何要素过分地不平衡。只要达到这个状态，就可以继续细调游戏要素的具体部分，如RTS游戏里的种族或派系。 <br>
<br>
当然在游戏alpha测试阶段之前通常应已进行了宏观调整，所以可能随着新功能的增加要重新进行调整。家园（Homeworld）的主策划Erin Daly提出，应将相关的功能在同一时间加入，然后做一个宏观调控，基本上这是在整个开发过程中保持游戏可玩性的最有效的方法。 <br>
<br>
一旦实现最后的宏观调整，最好在alpha测试阶段的后期，就可以对游戏进行微观调控1使游戏平衡达到完美的程度。 <br>
<br>
<br>
宏观调控 <br>
<br>
提供一个可平衡的游戏系统显然只是达到游戏平衡的第一个步骤。即便是最完美的设计也需要变成现实，而在实施的过程中错误就会出现，在初期设计中就经常会出现小错误。许多游戏价值在整个游戏实现之后才能被清楚认识到。在这些情况下，设计者必须在alpha测试阶段之前及测试期间运用宏观调控技巧校正平衡值。 <br>
<br>
宏观调控应在微观调开始之前结束；如果游戏的基础还在不断改变时，较小的平衡性的改变将变得没有效果而无用。在进行宏观调时，目的是&ldquo;找到&rdquo;在设计案中描述的游戏性目标。当然，在你还不清楚如何表明核心游戏性时是不可能进行游戏细节的调整。 <br>
<br>
为了瞄准核心游戏性，明确地说明核心游戏性及其如何体现是很重要的。只要做到这一步，就可以建立一定的基线，也就是Ensemble Studios1所谓的&ldquo;定锚&rdquo;。举例说明，你也许设立游戏速度的基线为&ldquo;大约10分钟长的游戏&rdquo;，或者设立角色韧性的基线为&ldquo;被一个危险怪兽攻击3次是致命的&rdquo;。一旦你为每个游戏因素（一个地图、一个角色类型，一段对话等等）都找到满意的基线，就可以利用这些游戏要素基线为根据扩展游戏。 <br>
<br>
<br>
平衡性数学 <br>
<br>
一旦完成某一特定要素的宏观调控，在有些情况下可应用平衡性数学将结果复制到类似的要素中去。虽然用平衡性数学改善系统的功效还不确定，原因是很难计算一些微妙的细节，但是它对确定不同游戏要素中的基线还是有效的。公认的、几乎对每一个游戏都有帮助的一个公式是成本效率方程式。 <br>
<br>
成本效率公式说明，针对一个成分来说， <br>
游戏威力×耐久力=效力 <br>
<br>
而且： <br>
平方根（游戏威力×耐力÷成本的平方）=成本效力 <br>
<br>
游戏威力有可能是火力（伤害性×发射速度）或点数。耐力可以是使用次数或被击点数。成本代表游戏资源，通常是金子、钱币或回合（如棋赛中走一步的真正成本就是一个回合）。另一个有用的方程式主要适用于策略游戏和其它&ldquo;战斗&rdquo;场景的是分解式方程式。&ldquo;分解式&rdquo;反应了战斗场景中众多小群体总的有效性虽然与几个大群体的战斗力相等，但效力却不相同的特点。众多小群体通常效力小，当然这是假设不存在其它微妙的因素（如大团体攻击小兵种时，杀伤力太大而造成浪费）。这是因为群体在小个体逐渐死去之后就逐渐丧失威力，而一个大兵种可以支撑较长时间，所以不会因逐渐损失而失去效力。据此，相对有效性的公式被定为： <br>
有效性的减损（相对于较小的个体）= <br>
0.5+0.5×[较大个体的数量÷较小个体的数量（相同的价格）] <br>
<br>
所得到数字的倒数则是较大个体有效性的增加。 <br>
<br>
这些公式和其它&ldquo;平衡性数学&rdquo;对于初步的平衡性特别有用。最好避免从数学上实现完美的平衡性，除非是相当简单的游戏系统。比如说，因为游戏规则简单，平衡游戏Risk并不是特别困难，且玩家的选择可以作到相当的量化。平衡游戏大富翁（Monopoly）是可能的，但是会比游戏Risk困难，因为随机因素（如滚骰子）相对于Risk来说可造成更普遍的影响，而且也因为大富翁有更多数量的特别游戏因素（运气牌、抵押规则，监狱等等）。譬如在一个现代的RTS中，能够在这样更多复杂性的情况下得到完美的数学平衡性，就相当于完成了博士论文。 <br>
<br>
平衡性数学用于匀称型游戏时特具效力，如游戏魔兽争霸（Warcraft 2）或家园（Homeworld），其中对立双方在游戏功能上基本旗鼓相当。游戏要素越为相近，平衡性数学就越能够胜任，因为变数不多。 <br>
<br>
<br>
微观调控 <br>
<br>
一旦游戏已受宏观调控，游戏的平衡必须要进入细节调校。如果游戏至少达到有点乐趣可言，且不存在明显的问题，则已基本上完成宏观调控并可开始转向微小细节。微观调控是游戏策划为了进一步完美平衡性而实施的小手术。一个小手术一般被定义为：变化值相对于一个&ldquo;全球&rdquo;数值（影响许多其它的游戏要素）要少于 10%，相对于一个&ldquo;地方性&rdquo;数值（一个单一游戏要素）则应少于30-40%。 <br>
<br>
微观调控最大的挑战是找到问题。一旦找到问题，就可以开始稍微调整数值，但要注意不要因此再产生出新的问题。良好的要素模块和预先计划在这一阶段很有效果&mdash;&mdash;没有它们，就可能做不到在一个合理时间范围内完成游戏的平衡。 <br>
<br>
<br>
辨识较小的不平衡性 <br>
<br>
策划有几个技巧可辨识较小的不平衡性。其中最明显的做法是大量地测试游戏，寻找一贯受惠或占优势的方法，或寻找从不被使用的方法。另一个常用方法是与一个试验人或另一个策划讨论假设的情景或与其对战，找到一个一致认为会产生的结果，然后在游戏中测试是否会发生同样的结果。 <br>
<br>
如果策划用第一种方法，只是寻找占优势（或从不被使用）的方法，确定这种情况产生的实际原因是很重要的，并确认事情是否应该这样发展。对不平衡性进行分类，并尝试将其归类到典型的不平衡性中，有助于理解问题。基本上越是了解不平衡性的类型及特征就越能够调整它。 <br>
<br>
近年来，愈加流行的方法是秘密记录（不告诉玩家）游戏成果及统计数据。游戏世纪帝国（Age of Empires），雪乐山（Sierra）发表的几款游戏及斗争阴影（Strifeshadow）都受益于这个技巧。有时这些统计数据具开导性，有时也极具误导性。 <br>
<br>
对所有的数据都应有所保留。有时一个不成熟的测试人群会带来很不正确的结果，只因为他们不熟悉游戏，而且没有机会全面尝试（或只是尝试最容易的部分）。同样的，一个过于成熟的测试人群也有可能忽视其它策略的潜力，或被困在一个很高级却较模糊的不平衡点，而这些不平衡与其它更明显的不平衡点相比显得不那么紧迫。Ethermoon娱乐公司在游戏斗争阴影里应用的一个极为有效的技巧就是夸大在beta阶段的补丁中的游戏平衡性变化，来怂恿玩家尝试新的战略，而不再继续&ldquo;抵抗&rdquo;新的变化。 <br>
<br>
发现不平衡性的第二个方法有时被称为&ldquo;追逐不平衡性&rdquo;，也就是一个假定的情景被定义后，而由此产生的各种可能的行动及结果都应是符合设计的。例如，一个坦克部队的冲锋应该被认为打败一个轻型车队的进攻，但同时也应该受到轻度伤害，而面对防坦克步兵团的反攻则应受到重创。如果在实际的游戏中，一个坦克部队的冲锋可完全歼灭一个轻型车队并可以与防坦克步兵团不分胜负，此时坦克部队的过于强大就造成了不平衡性。追逐不平衡性是十分重要的，如果严格地执行，很容易就可以发现75%以上的较小不平衡性问题。游戏往往不按照策划所愿望的某种特别方式发展，特别是在一个对抗型的多人游戏中，一个&ldquo;地区性&rdquo;平衡价值的微小变化就可以造成游戏的平衡与不平衡。 <br>
<br>
要紧记的一条是无论何时进行不平衡性的搜索，在游戏早期所设置的游戏要素，往往比后期的游戏要素要敏感得多。仅仅因为一个早期游戏要素的不平衡性会影响在它之后设置的所有东西，而后期游戏要素能够制造麻烦的时间有限。正如有必要在做微观调控之前先做好游戏的宏观调控，也有必要先平衡早期的游戏因素。 <br>
<br>
<br>
修整较小的不平衡性 <br>
<br>
一旦辨识并证明了不平衡性，是否容易进行修正呢？是的，如果游戏已被设计为容易调整！ 一个非常可调的游戏具备的素质能让设计师在不间接影响其它游戏因素的情况下，专门对付某一不平衡性。 <br>
<br>
校正的重要一点是保持细调的水准（往小的方面想），尤其是升级游戏的时候。一个过于强大的游戏要素容易使其它要素失去效力，而一个过于无力的游戏要素则会被忽略而毫无效果。 <br>
游戏完成平衡性的技巧<br>
<br>
还很重要的一点是细调时不要影响到其它的游戏数值，譬如，在角色扮演游戏里考虑一个叫做&ldquo;火球&rdquo;的符咒，它是火系符咒的一种。如果火球威力过大，策划可做的就是全面降低火系魔法的威力，或将火球降级。很明显你应该做的是选择&ldquo;地方性&rdquo;的解决方法，在细调全面火系魔法之前将火球降级。这是一个很简单的例子，在大多情况下，游戏要素之间都存在一定程度的互相依赖。谨慎地考虑一个改变将会带来的冲击力，尝试使用专门解决问题而不影响其它游戏要素的方法。 <br>
<br>
最后，避免&ldquo;过度解决&rdquo;不平衡性。当策划在同一时间运用多重不同的细调方法来解决一个特定问题时就会产生&ldquo;过度解决&rdquo;的情形。这样就很难决定变化所带来的效果，因为你应用了多重独立的可变性来影响一个不独立的可变性。&ldquo;过度解决&rdquo;也有可能因意外地影响其他游戏要素而带来麻烦。 <br>
<br>
<br>
总结 <br>
<br>
开发游戏过程当中，在面对许多细节所带来的庞大冲击时很容易偶尔忽视最终目标。保持真实地对待所想得到的游戏性，从根本上贯彻游戏平衡的原则是很辛苦的，但只有这样才可以保证高质量的游戏平衡，并且避免beta测试拖得太久。多人游戏日渐受到青睐，游戏平衡应尽可能地做到最好。太多充满希望的多人游戏都因为平庸的游戏平衡而黯然失色 <a href="http://hi.baidu.com/165edu/blog/item/2d8d37d31099d0063af3cf8e.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/Webgame">Webgame</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/2d8d37d31099d0063af3cf8e.html#comment">查看评论</a>]]></description>
        <pubDate>2008-08-22  10:44</pubDate>
        <category><![CDATA[Webgame]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/2d8d37d31099d0063af3cf8e.html</guid>
</item>

<item>
        <title><![CDATA[需求分析20条法则]]></title>
        <link><![CDATA[http://hi.baidu.com/165edu/blog/item/897632fa0341a61ea9d31169.html]]></link>
        <description><![CDATA[
		
		<p><strong>【摘要】</strong>对商业用户来说，他们后面是成百上千个供货商，前面是成千上万个消费顾客。怎样利用软件管理错综复杂的供货商和消费顾客，如何做好精细到一个小小调料包的进、销、调、存的商品流通工作，这些都是商业企业需要信息管理系统的理由。软件开发的意义也就在于此。而弄清商业用户如此复杂需求的真面目，正是软件开发成功的关键所在。</p>
<p> </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  经理：&ldquo;我们要建立一套完整的商业管理软件系统，包括商品的进、销、调、存管理，是总部-门店的连锁经营模式。通过通信手段门店自动订货，供货商自动结算，卖场通过扫条形码实现销售，管理人员能够随时查询门店商品销售和库存情况。另外，我们也得为政府部门提供关于商品营运的报告。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析员：&ldquo;我已经明白这个项目的大体结构框架，这非常重要，但在制定计划之前，我们必须收集一些需求。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  经理觉得奇怪：&ldquo;我不是刚告诉你我的需求了吗？&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析员：&ldquo;实际上，您只说明了整个项目的概念和目标。这些高层次的业务需求不足以提供开发的内容和时间。我需要与实际将要使用系统的业务人员进行讨论，然后才能真正明白达到业务目标所需功能和用户要求，了解清楚后，才可以发现哪些是现有组件即可实现的，哪些是需要开发的，这样可节省很多时间。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  经理：&ldquo;业务人员都在招商。他们非常忙，没有时间与你们详细讨论各种细节。你能不能说明一下你们现有的系统？&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析员尽量解释从用户处收集需求的合理性：&ldquo;如果我们只是凭空猜想用户的要求，结果不会令人满意。我们只是软件开发人员，而不是采购专家、营运专家或是财务专家，我们并不真正明白您这个企业内部运营需要做些什么。我曾经尝试过，未真正明白这些问题就开始编码，结果没有人对产品满意。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  经理坚持道：&ldquo;行了，行了，我们没有那么多的时间。让我来告诉您我们的需求。实际上我也很忙。请马上开始开发，并随时将你们的进展情况告诉我。&rdquo;</p>
<p>风险躲在需求的迷雾之后</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  以上我们看到的是某客户项目经理与系统开发小组的分析人员讨论业务需求。在项目开发中，所有的项目风险承担者都对需求分析阶段备感兴趣。这里所指的风险承担者包括客户方面的项目负责人和用户，开发方面的需求分析人员和项目管理者。这部分工作做得到位，能开发出很优秀的软件产品，同时也会令客户满意。若处理不好，则会导致误解、挫折、障碍以及潜在的质量和业务价值上的威胁。因此可见&mdash;&mdash;需求分析奠定了软件工程和项目管理的基础。</p>
<p>拨开需求分析的迷雾</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  像这样的对话经常出现在软件开发的过程中。客户项目经理的需求对分析人员来讲，像&ldquo;雾里看花&rdquo;般模糊并令开发者感到困惑。那么，我们就拨开雾影，分析一下需求的具体内容：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;  ·业务需求&mdash;&mdash;反映了组织机构或客户对系统、产品高层次的目标要求，通常在项目定义与范围文档中予以说明。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;  ·用户需求&mdash;&mdash;描述了用户使用产品必须要完成的任务，这在使用实例或方案脚本中予以说明。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;  ·功能需求&mdash;&mdash;定义了开发人员必须实现的软件功能，使用户利用系统能够完成他们的任务，从而满足了业务需求。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;  ·非功能性的需求&mdash;&mdash;描述了系统展现给用户的行为和执行的操作等，它包括产品必须遵从的标准、规范和约束，操作接口的具体细节和构造上的限制。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;  ·需求分析报告&mdash;&mdash;报告所说明的功能需求充分描述了软件系统所应具有的外部行为。&ldquo;需求分析报告&rdquo;在开发、测试、质量保证、项目管理以及相关项目功能中起着重要作用。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  前面提到的客户项目经理通常阐明产品的高层次概念和主要业务内容，为后继工作建立了一个指导性的框架。其它任何说明都应遵循&ldquo;业务需求&rdquo;的规定，然而&ldquo;业务需求&rdquo;并不能为开发人员提供开发所需的许多细节说明。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  下一层次需求&mdash;&mdash;用户需求，必须从使用产品的用户处收集。因此，这些用户构成了另一种软件客户，他们清楚要使用该产品完成什么任务和一些非功能性的特性需求。例如：程序的易用性、健壮性和可靠性，而这些特性将会使用户很好地接受具有该特点的软件产品。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  经理层有时试图代替实际用户说话，但通常他们无法准确说明&ldquo;用户需求&rdquo;。用户需求来自产品的真正使用者，必须让实际用户参与到收集需求的过程中。如果不这样做，产品很可能会因缺乏足够的信息而遗留不少隐患。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在实际需求分析过程中，以上两种客户可能都觉得没有时间与需求分析人员讨论，有时客户还希望分析人员无须讨论和编写需求说明就能说出用户的需求。除非遇到的需求极为简单；否则不能这样做。如果您的组织希望软件成功，那么必须要花上数天时间来消除需求中模糊不清的地方和一些使开发者感到困惑的方面。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  优秀的软件产品建立在优秀的需求基础之上，而优秀的需求源于客户与开发人员之间有效的交流和合作。只有双方参与者都明白自己需要什么、成功的合作需要什么时，才能建立起一种良好的合作关系。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  由于项目的压力与日俱增，所有项目风险承担者有着一个共同目标，那就是大家都想开发出一个既能实现商业价值又能满足用户要求，还能使开发者感到满足的优秀软件产品。</p>
<p>客户的需求观</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  客户与开发人员交流需要好的方法。下面建议20条法则，客户和开发人员可以通过评审以下内容并达成共识。如果遇到分歧，将通过协商达成对各自义务的相互理解，以便减少以后的磨擦（如一方要求而另一方不愿意或不能够满足要求）。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  1、 分析人员要使用符合客户语言习惯的表达</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  需求讨论集中于业务需求和任务，因此要使用术语。客户应将有关术语（例如：采价、印花商品等采购术语）教给分析人员，而客户不一定要懂得计算机行业的术语。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  2、分析人员要了解客户的业务及目标</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  只有分析人员更好地了解客户的业务，才能使产品更好地满足需要。这将有助于开发人员设计出真正满足客户需要并达到期望的优秀软件。为帮助开发和分析人员，客户可以考虑邀请他们观察自己的工作流程。如果是切换新系统，那么开发和分析人员应使用一下目前的旧系统，有利于他们明白目前系统是怎样工作的，其流程情况以及可供改进之处。`</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  3、 分析人员必须编写软件需求报告</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析人员应将从客户那里获得的所有信息进行整理，以区分业务需求及规范、功能需求、质量目标、解决方法和其它信息。通过这些分析，客户就能得到一份&ldquo;需求分析报告&rdquo;，此份报告使开发人员和客户之间针对要开发的产品内容达成协议。报告应以一种客户认为易于翻阅和理解的方式组织编写。客户要评审此报告，以确保报告内容准确完整地表达其需求。一份高质量的&ldquo;需求分析报告&rdquo;有助于开发人员开发出真正需要的产品。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  4、 要求得到需求工作结果的解释说明</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析人员可能采用了多种图表作为文字性&ldquo;需求分析报告&rdquo;的补充说明，因为工作图表能很清晰地描述出系统行为的某些方面，所以报告中各种图表有着极高的价值；虽然它们不太难于理解，但是客户可能对此并不熟悉，因此客户可以要求分析人员解释说明每个图表的作用、符号的意义和需求开发工作的结果，以及怎样检查图表有无错误及不一致等。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  5、 开发人员要尊重客户的意见</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  如果用户与开发人员之间不能相互理解，那关于需求的讨论将会有障碍。共同合作能使大家&ldquo;兼听则明&rdquo;。参与需求开发过程的客户有权要求开发人员尊重他们并珍惜他们为项目成功所付出的时间，同样，客户也应对开发人员为项目成功这一共同目标所做出的努力表示尊重。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  6、 开发人员要对需求及产品实施提出建议和解决方案</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  通常客户所说的&ldquo;需求&rdquo;已经是一种实际可行的实施方案，分析人员应尽力从这些解决方法中了解真正的业务需求，同时还应找出已有系统与当前业务不符之处，以确保产品不会无效或低效；在彻底弄清业务领域内的事情后，分析人员就能提出相当好的改进方法，有经验且有创造力的分析人员还能提出增加一些用户没有发现的很有价值的系统特性。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  7、 描述产品使用特性</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  客户可以要求分析人员在实现功能需求的同时还注意软件的易用性，因为这些易用特性或质量属性能使客户更准确、高效地完成任务。例如：客户有时要求产品要&ldquo; 接口友好&rdquo;或&ldquo;健壮&rdquo;或&ldquo;高效率&rdquo;，但对于开发人员来讲，太主观了并无实用价值。正确的做法是，分析人员通过询问和调查了解客户所要的&ldquo;友好、健壮、高效所包含的具体特性，具体分析哪些特性对哪些特性有负面影响，在性能代价和所提出解决方案的预期利益之间做出权衡，以确保做出合理的取舍。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  8、 允许重用已有的软件组件</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  需求通常有一定灵活性，分析人员可能发现已有的某个软件组件与客户描述的需求很相符，在这种情况下，分析人员应提供一些修改需求的选择以便开发人员能够降低新系统的开发成本和节省时间，而不必严格按原有的需求说明开发。所以说，如果想在产品中使用一些已有的商业常用组件，而它们并不完全适合您所需的特性，这时一定程度上的需求灵活性就显得极为重要了。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  9、 要求对变更的代价提供真实可靠的评估</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  有时，人们面临更好、也更昂贵的方案时，会做出不同的选择。而这时，对需求变更的影响进行评估从而对业务决策提供帮助，是十分必要的。所以，客户有权利要求开发人员通过分析给出一个真实可信的评估，包括影响、成本和得失等。开发人员不能由于不想实施变更而随意夸大评估成本。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  10、 获得满足客户功能和质量要求的系统</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  每个人都希望项目成功，但这不仅要求客户要清晰地告知开发人员关于系统&ldquo;做什么&rdquo;所需的所有信息，而且还要求开发人员能通过交流了解清楚取舍与限制，一定要明确说明您的假设和潜在的期望，否则，开发人员开发出的产品很可能无法让您满意。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  11、 给分析人员讲解您的业务</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析人员要依靠客户讲解业务概念及术语，但客户不能指望分析人员会成为该领域的专家，而只能让他们明白您的问题和目标；不要期望分析人员能把握客户业务的细微潜在之处，他们可能不知道那些对于客户来说理所当然的&ldquo;常识&rdquo;。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  12、 抽出时间清楚地说明并完善需求</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  客户很忙，但无论如何客户有必要抽出时间参与&ldquo;头脑高峰会议&rdquo;的讨论，接受采访或其它获取需求的活动。有些分析人员可能先明白了您的观点，而过后发现还需要您的讲解，这时请耐心对待一些需求和需求的精化工作过程中的反复，因为它是人们交流中很自然的现象，何况这对软件产品的成功极为重要。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  13、 准确而详细地说明需求</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  编写一份清晰、准确的需求文档是很困难的。由于处理细节问题不但烦人而且耗时，因此很容易留下模糊不清的需求。但是在开发过程中，必须解决这种模糊性和不准确性，而客户恰恰是为解决这些问题作出决定的最佳人选，否则，就只好靠开发人员去正确猜测了。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在需求分析中暂时加上&ldquo;待定&rdquo;标志是个方法。用该标志可指明哪些是需要进一步讨论、分析或增加信息的地方，有时也可能因为某个特殊需求难以解决或没有人愿意处理它而标注上&ldquo;待定&rdquo;。客户要尽量将每项需求的内容都阐述清楚，以便分析人员能准确地将它们写进&ldquo;软件需求报告&rdquo;中去。如果客户一时不能准确表达，通常就要求用原型技术，通过原型开发，客户可以同开发人员一起反复修改，不断完善需求定义。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  14、 及时作出决定</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  分析人员会要求客户作出一些选择和决定，这些决定包括来自多个用户提出的处理方法或在质量特性冲突和信息准确度中选择折衷方案等。有权作出决定的客户必须积极地对待这一切，尽快做处理，做决定，因为开发人员通常只有等客户做出决定才能行动，而这种等待会延误项目的进展。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  15、 尊重开发人员的需求可行性及成本评估</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  所有的软件功能都有其成本。客户所希望的某些产品特性可能在技术上行不通，或者实现它要付出极高的代价，而某些需求试图达到在操作环境中不可能达到的性能，或试图得到一些根本得不到的资料。开发人员会对此作出负面的评价，客户应该尊重他们的意见。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  16、 划分需求的优先级</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  绝大多数项目没有足够的时间或资源实现功能性的每个细节。决定哪些特性是必要的，哪些是重要的，是需求开发的主要部分，这只能由客户负责设定需求优先级，因为开发者不可能按照客户的观点决定需求优先级；开发人员将为您确定优先级提供有关每个需求的花费和风险的信息。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在时间和资源限制下，关于所需特性能否完成或完成多少应尊重开发人员的意见。尽管没有人愿意看到自己所希望的需求在项目中未被实现，但毕竟是要面对现实，业务决策有时不得不依据优先级来缩小项目范围或延长工期，或增加资源，或在质量上寻找折衷。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  17、 评审需求文档和原型</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  客户评审需求文档，是给分析人员带来反馈信息的一个机会。如果客户认为编写的&ldquo;需求分析报告&rdquo;不够准确，就有必要尽早告知分析人员并为改进提供建议。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  更好的办法是先为产品开发一个原型。这样客户就能提供更有价值的反馈信息给开发人员，使他们更好地理解您的需求；原型并非是一个实际应用产品，但开发人员能将其转化、扩充成功能齐全的系统。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  18、 需求变更要立即联系</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  不断的需求变更，会给在预定计划内完成的质量产品带来严重的不利影响。变更是不可避免的，但在开发周期中，变更越在晚期出现，其影响越大；变更不仅会导致代价极高的返工，而且工期将被延误，特别是在大体结构已完成后又需要增加新特性时。所以，一旦客户发现需要变更需求时，请立即通知分析人员。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  19、 遵照开发小组处理需求变更的过程</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  为将变更带来的负面影响减少到最低限度，所有参与者必须遵照项目变更控制过程。这要求不放弃所有提出的变更，对每项要求的变更进行分析、综合考虑，最后做出合适的决策，以确定应将哪些变更引入项目中。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  20、 尊重开发人员采用的需求分析过程</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  软件开发中最具挑战性的莫过于收集需求并确定其正确性，分析人员采用的方法有其合理性。也许客户认为收集需求的过程不太划算，但请相信花在需求开发上的时间是非常有价值的；如果您理解并支持分析人员为收集、编写需求文档和确保其质量所采用的技术，那么整个过程将会更为顺利。</p>
<p>&ldquo;需求确认&rdquo;意味着什么</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  在&ldquo;需求分析报告&rdquo;上签字确认，通常被认为是客户同意需求分析的标志行为，然而实际操作中，客户往往把&ldquo;签字&rdquo;看作是毫无意义的事情。&ldquo;他们要我在需求文档的最后一行下面签名，于是我就签了，否则这些开发人员不开始编码。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这种态度将带来麻烦，譬如客户想更改需求或对产品不满时就会说：&ldquo;不错，我是在需求分析报告上签了字，但我并没有时间去读完所有的内容，我是相信你们的，是你们非让我签字的。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  同样问题也会发生在仅把&ldquo;签字确认&rdquo;看作是完成任务的分析人员身上，一旦有需求变更出现，他便指着&ldquo;需求分析报告&rdquo;说：&ldquo;您已经在需求上签字了，所以这些就是我们所开发的，如果您想要别的什么，您应早些告诉我们。&rdquo;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  这两种态度都是不对的。因为不可能在项目的早期就了解所有的需求，而且毫无疑问地需求将会出现变更，在&ldquo;需求分析报告&rdquo;上签字确认是终止需求分析过程的正确方法，所以我们必须明白签字意味着什么。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  对&ldquo;需求分析报告&rdquo;的签名是建立在一个需求协议的基线上，因此我们对签名应该这样理解：&ldquo;我同意这份需求文档表述了我们对项目软件需求的了解，进一步的变更可在此基线上通过项目定义的变更过程来进行。我知道变更可能会使我们重新协商成本、资源和项目阶段任务等事宜。&rdquo;对需求分析达成一定的共识会使双方易于忍受将来的摩擦，这些摩擦来源于项目的改进和需求的误差或市场和业务的新要求等。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  需求确认将迷雾拨散，显现需求的真面目，给初步的需求开发工作画上了双方都明确的句号，并有助于形成一个持续良好的客户与开发人员的关系，为项目的成功奠定了坚实的基础。</p> <a href="http://hi.baidu.com/165edu/blog/item/897632fa0341a61ea9d31169.html">阅读全文</a>
		
		<br/><b>类别：</b><a href="http://hi.baidu.com/165edu/blog/category/%CF%EE%C4%BF%B9%DC%C0%ED">项目管理</a>&nbsp;<a href="http://hi.baidu.com/165edu/blog/item/897632fa0341a61ea9d31169.html#comment">查看评论</a>]]></description>
        <pubDate>2006-07-13  20:17</pubDate>
        <category><![CDATA[项目管理]]></category>
        <author><![CDATA[165edu]]></author>
		<guid>http://hi.baidu.com/165edu/blog/item/897632fa0341a61ea9d31169.html</guid>
</item>


</channel>
</rss>