需求的实践(5)(下)

需求的实践(5)细节需求时期(下)
和业务建模时期不同的是,我不再花费笔墨讨论需求要如何做,因为做法、注意点和业务建模时期并没有什么太大的区别。而在完整的流程上,像RUP、XP之类的方法学可比我讲的要好的多。因此,我会把焦点集中在我在实际工作中的一些困惑,以及一些思考。
1、"和其它阶段的关系"的再思考。
上一篇的末尾我们简单的讨论了细节需求阶段和其它阶段的关系。对于软件过程的各个阶段,不同之处只是注重的焦点不同而已。在业务建模阶段,我们关注于系统的整体需求;在细节需求阶段,我们更关注于需求的细节部分。其它的阶段也是一样,架构阶段,所关注的当然是如何设计出一个合适的架构;到了设计阶段,注意力就转移到了如何设计方面。
当然,焦点的不同,导致了各个阶段所需要的技能和工具也不尽相同。业务建模阶段需要你有整体的把握能力,你可以使用简单的用例图,基本的用户素材等工具。细节需求阶段则要求你能够充分的挖掘需求和进行良好的沟通。相应的,在架构、分析、设计等阶段,也会有不同的需要。
各个阶段的实质就是注重点的不同,这对于大多数的软件开发而言都是一样的。不论你采用的过程是传统的,还是迭代的。
2、架构
Martin Fowler在他的ISA中写到:
I'm using architecture to mean the important design decisions, the ones that shape most aspects of a software system. These are often the harder decisions to change later on in the project (although often not as hard as people think). As a result these are ones where it's useful to start in the right direction, and thus knowing about architecture is a valuable skill for any software developer.
架构并不神秘,无非是一个决策而已,只是这项决策对软件特别重要就是了。软件开发人员可能根本没有主动的进行架构设计,但是他的行为,已经潜移默化的进行了;而还有一些人,总在谈论着架构,但是并不了解这个词的含义。
春运就要到了,学生也要赶着回家。如何选择回家的交通工具就是一个重要的决策。路程的远近、不同交通工具的价格都是显式的,比较容易知道的。而以往的经验也告诉你,火车票比较便宜,但是比较紧张,花费时间较长,整个过程也不舒服;飞机票比较贵,但是容易买到,花费时间少,整个过程很舒服。这时候你就要做出正确的决策,为回家选择一个正确的架构。你可能考虑的因素有哪一些?以下就列出了一些可能的因素: 拥挤程度,大家都知道春运时那种情况; 购买票的难易程度,火车票需要很早就要预定了; 是否有额外的渠道,比如你能够买到飞机的学生票; 经济实力,经过了一个学期的花销之后,现在还剩多少生活费;

时间: 2024-10-27 17:26:41

需求的实践(5)(下)的相关文章

需求的实践(4) 下

需求的实践(4) yun_qi_img/c.gif业务建模时期(下) 林星 (iamlinx@21cn.com)2001 年 11 月和上一篇的理论不同,这一篇文章更注重于实际,举出了在业务建模简短需要注意的一些原则和实践,每一条都来自于实践之中,也都有理论的支持.其中的很多内容更是经过多次的失败才总结出来的.相信大家如果能够理解这些原则和实践的某些方面,至少能够避免重蹈覆辙.原则(Principle)1. 谁才是"上帝" <我们说客户是上帝,是因为客户的重要性,客户占有决定性的

需求的实践(2)

需求的实践(2)yun_qi_img/c.gif能力和过程 林星 (iamlinx@21cn.com)2001 年 11 月本文作为这个关于需求的软件工程专栏的第二篇,作者将继续花了一些篇幅来讨论软件工程中的一些基本概念,以求大家能够从整体的角度来理解需求过程.1.煮鸡蛋的启示 有个英国人学煮鸡蛋,开始,他把鸡蛋放到开水里煮时总会炸裂.他为此想了各种方法,并找到了一个解决方案:在鸡蛋上打个孔.但在鸡蛋上打孔带来了另一个问题:孔打小了,鸡蛋还会裂:孔打大了,蛋清会在它凝固以前流出来.于是,这个英国

《软件需求最佳实践:SERU过程框架原理与应用》笔记

最近看了这本书,和实际的结合比较紧密,对实际的需求有一定的指导作用,特别市对于国内的特色需求,有很好的指导. <软件需求最佳实践:SERU过程框架原理与应用> 首先从软件需求实践中出现的主要问题和困难入手,指出了改进的主要方向:然后逐一说明了需求定义.需求捕获.需求分析与建模.编写规约.需求验证等需求开发活动的任务.要点和具体手段:并提出了一个可操作性强.易于上手的SERU过程框架,能够帮助读者清晰地了解整个过程,理解各阶段的关键产物和产物之间的关系. 还对包括需求基线.变更管理.需求跟踪在内

需求的实践(3)

需求的实践(3) yun_qi_img/c.gifCustomer Oriented,而不是Program Oriented 林星 (iamlinx@21cn.com)2001 年 10 月软件开发人员总是在困惑为什么软件分明是按照需求做出来的,可是客户为什么仍然不满意.客户总是在困惑为什么软件和自己想要的差距会那么大.这究竟是怎么回事?如何才能把开发人员和客户之间的沟壑填平?本文作为这个关于需求的软件工程专栏的第三篇,将向您介绍这个把客户和开发人员联系在一起的工具

需求的实践(4)

需求的实践(4) yun_qi_img/c.gif业务建模时期(上) 林星 (iamlinx@21cn.com)2001 年 11 月在大规模的需求调研展开之前,有一个重要的工作要做.这项工作在项目中所占的时间跨度非常的小,但是却有非常重要的意义.不同的人.不同的方法对这项工作有不同的描述,在我们的文章中,根据UP的思想,称之为"业务建模".所有的项目都有业务建模时期1. 业务建模是什么 业务建模(Business Modeling),业务建模是一个复杂的过程,对其下一个准确的定义是困

超实用的JavaScript技巧及最佳实践(下)

摘要:JavaScript是一门非常流行的编程语言,许多开发者都会把JavaScript选为入门语言,本文向大家分享JavaScript开发的小技巧.最佳实践等非常实用的内容. 在前段时间,CSDN研发频道发表了超实用的JavaScript技巧及最佳实践(上),很多开发者都觉得里面所提到的技巧非常实用,基于此,我们再向大家推荐超实用的JavaScript技巧及最佳实践(下),希望对大家有所帮助. 文中所提供的代码片段都已经过最新版的Chrome 30测试,该浏览器使用V8 JavaScript引

用例驱动的需求过程实践

一.需求矛盾 根据CHAO的权威统计,虽然自"软件危机"提出以来,软件工程方法得到了长足的发展与进步,但在去年的软件项目成功率仍然不足30%,绝大多数的软件项目仍然超进度.超成本.而在这些不成功的项目中,由于需求不清晰.需求不完整等方面的因素,占到了60%左右. 根据笔者多年来从事软件需求捕获.分析工作的实践经验,认为造成这一现象的根本原因在于客户与开发人员之间的沟通存在障碍,双方都以自己的角度.自己的专业术语进行沟通,这使得大家并不能够很好地就软件需求达成共识. 由于帮助客户更好地利

深入解析SQL Server并行执行原理及实践(下)

谈完并行执行的原理,咱们再来谈谈优化,到底并行执行能给我们带来哪些好处,我们又应该注意什么呢,下面展开.   Amdahl's  Law    再谈并行优化前我想有必要谈谈阿姆达尔定律,可惜老爷子去年已经驾鹤先去了.     其中  P:可以并行的百分比 N:算法并行计算使用的"CPU"    这里我们举个简单的例子,我们来做一份大餐,如图1-1所示:   图1-1   土豆泥,荷兰豆,鸡排还有整体组合各需十分钟.在这里前三个食材是可以共同执行的,也就是说4个步骤中3步可并行 P=3/

ADO.NET最佳实践(下)

ado     T.与XML结合         ADO.NET在DataSet中提供对XML的广泛支持,同时在SQL Server2000或以后版本中的XML功能性扩展也能在ADO.NET中得到充分运用.你可以使用SQLXML访问在SQL Server2000和以后版本中提供的XML功能性扩展.下面是使用XML和ADO.NET的一些技巧信息.         I.DataSet和XML         DataSet和XML的完美整合,可以使你完成以下事情:             ①从XSD