需求的实践(4)
yun_qi_img/c.gif业务建模时期(上)
林星 (iamlinx@21cn.com)
2001 年 11 月在大规模的需求调研展开之前,有一个重要的工作要做。这项工作在项目中所占的时间跨度非常的小,但是却有非常重要的意义。不同的人、不同的方法对这项工作有不同的描述,在我们的文章中,根据UP的思想,称之为"业务建模"。
所有的项目都有业务建模时期
1. 业务建模是什么
业务建模(Business Modeling),业务建模是一个复杂的过程,对其下一个准确的定义是困难的事情。在RUP的词汇表中将其解释为:
"包含您可用来对业务进行可视化建模的所有建模方法。这些是您可用于执行业务工程的方法的子集。"
从定义中可以看出,它是一种建模方法的集合,目的是对业务进行建模。这方面的工作可能包括了对业务流程建模,对业务组织建模,改进业务流程,领域建模等方面。
2. 为什么要业务建模
Brooks 大师说,三十多年来各式各样的应用系统(Application Programs AP)历经多次的修修改改,已经变得面目全非,如同一群的怪兽,难以驯服。
Rogerson大师也说,The application is a rock in the river of change.(应用(系统)成为改变之潮流中的顽石)。
对很多企业而言,有一个统合企业各部门的信息系统的心愿似乎已经成了一种奢望。企业中或多或少都会有一些应用系统在辅助企业的自动化运作,当企业信息主管希望能够对目前的信息系统进行整合,能够配合企业的发展的时候,他们失望了。大多数的应用缺乏一个统一的接口,难以进行整合。
在我们进行项目开发的银行中,我们也同样发现了这个问题,不同部门的系统之间无法进行互联,跨部门的业务流程必须经过手工的处理。
以前,应用程序的开发都是基于部门的功能的而建的。单纯只是为了解决目的而建立应用系统。所以这种方式建立的应用系统是针对特定的功能区域(Function Area)而建立的。至于如何使企业内的多个应用系统共同运作,就不在设计者的考虑之列了。随着企业的发展,就会发现企业需要变化以适应市场变化,业务发展的时候,原有的一系列应用系统却成了企业发展的拦路虎,这使得企业不得不回到手工的时代。
针对这种情况,有没有相应的解决之道呢?解决的方法就是从业务建模入手,而不是从较低层次(部门级或以下)入手。通过用例分析技术,建立企业的业务模型,进行适当的切割,选取稳定的软件架构,分析出企业的业务实体(Business Entity 企业中微小不可分的事物,抽象或具体的,如帐户,契约等,又被称为Business Object),以此为基础,组装出组件(Component),落实到相应的三层结构,建立针对特定功能区域的应用系统。
需求的实践(4)
时间: 2024-12-01 15:34:22
需求的实践(4)的相关文章
需求的实践(2)
需求的实践(2)yun_qi_img/c.gif能力和过程 林星 (iamlinx@21cn.com)2001 年 11 月本文作为这个关于需求的软件工程专栏的第二篇,作者将继续花了一些篇幅来讨论软件工程中的一些基本概念,以求大家能够从整体的角度来理解需求过程.1.煮鸡蛋的启示 有个英国人学煮鸡蛋,开始,他把鸡蛋放到开水里煮时总会炸裂.他为此想了各种方法,并找到了一个解决方案:在鸡蛋上打个孔.但在鸡蛋上打孔带来了另一个问题:孔打小了,鸡蛋还会裂:孔打大了,蛋清会在它凝固以前流出来.于是,这个英国
需求的实践(3)
需求的实践(3) yun_qi_img/c.gifCustomer Oriented,而不是Program Oriented 林星 (iamlinx@21cn.com)2001 年 10 月软件开发人员总是在困惑为什么软件分明是按照需求做出来的,可是客户为什么仍然不满意.客户总是在困惑为什么软件和自己想要的差距会那么大.这究竟是怎么回事?如何才能把开发人员和客户之间的沟壑填平?本文作为这个关于需求的软件工程专栏的第三篇,将向您介绍这个把客户和开发人员联系在一起的工具
需求的实践(5)(下)
需求的实践(5)细节需求时期(下)和业务建模时期不同的是,我不再花费笔墨讨论需求要如何做,因为做法.注意点和业务建模时期并没有什么太大的区别.而在完整的流程上,像RUP.XP之类的方法学可比我讲的要好的多.因此,我会把焦点集中在我在实际工作中的一些困惑,以及一些思考.1."和其它阶段的关系"的再思考.上一篇的末尾我们简单的讨论了细节需求阶段和其它阶段的关系.对于软件过程的各个阶段,不同之处只是注重的焦点不同而已.在业务建模阶段,我们关注于系统的整体需求:在细节需求阶段,我们更关注于需求
需求的实践(4) 下
需求的实践(4) yun_qi_img/c.gif业务建模时期(下) 林星 (iamlinx@21cn.com)2001 年 11 月和上一篇的理论不同,这一篇文章更注重于实际,举出了在业务建模简短需要注意的一些原则和实践,每一条都来自于实践之中,也都有理论的支持.其中的很多内容更是经过多次的失败才总结出来的.相信大家如果能够理解这些原则和实践的某些方面,至少能够避免重蹈覆辙.原则(Principle)1. 谁才是"上帝" <我们说客户是上帝,是因为客户的重要性,客户占有决定性的
《软件需求最佳实践:SERU过程框架原理与应用》笔记
最近看了这本书,和实际的结合比较紧密,对实际的需求有一定的指导作用,特别市对于国内的特色需求,有很好的指导. <软件需求最佳实践:SERU过程框架原理与应用> 首先从软件需求实践中出现的主要问题和困难入手,指出了改进的主要方向:然后逐一说明了需求定义.需求捕获.需求分析与建模.编写规约.需求验证等需求开发活动的任务.要点和具体手段:并提出了一个可操作性强.易于上手的SERU过程框架,能够帮助读者清晰地了解整个过程,理解各阶段的关键产物和产物之间的关系. 还对包括需求基线.变更管理.需求跟踪在内
用例驱动的需求过程实践
一.需求矛盾 根据CHAO的权威统计,虽然自"软件危机"提出以来,软件工程方法得到了长足的发展与进步,但在去年的软件项目成功率仍然不足30%,绝大多数的软件项目仍然超进度.超成本.而在这些不成功的项目中,由于需求不清晰.需求不完整等方面的因素,占到了60%左右. 根据笔者多年来从事软件需求捕获.分析工作的实践经验,认为造成这一现象的根本原因在于客户与开发人员之间的沟通存在障碍,双方都以自己的角度.自己的专业术语进行沟通,这使得大家并不能够很好地就软件需求达成共识. 由于帮助客户更好地利
需求调研中的5W+1H定律
对于软件的需求调研活动,曾经写过三篇相关的需求管理文章,出发角度是从整体的需求管理过程考虑:在引入CMM(二)需求管理KPA活动的基础上,列举了如何进行需求调研前的需求管理计划活动:在失败的项目中,找出规范和管理软件需求过程的关健点及需求关联的模型架构(这些可以参考以前写过的<CMM需求管理实践经验记录谈>.<从CMM角度考虑需求管理计划>.<如何用CRC模型来确定需求>). 一直以来,感觉自己在经过几个项目试验的基础上对于软件的需求管理应该是有一定的基础和经验了,然而
从项目需求角度,使用纯CSS方案解决垂直居中
原文:从项目需求角度,使用纯CSS方案解决垂直居中 CSS是HTML元素的剪刀手,它极度的丰富了web页面的修饰.在众多CSS常见的样式需求中,有一奇葩式的存在[垂直居中],因为不管是从逻辑实现方面还是从正常需求量来讲,这都没理由让这个需求在实践过程中,显的那么艰难.我们往往需要额外添加标签元素与充满hack味道的属性才能解决,而在涉及到不固定元素尺寸的时候,更显艰难.唉,日子还得照样过,工作还得继续干,这里就从实际需求的角度来归纳一些纯CSS方案.[特别说明,现实中的需求千变万化,请阅者根据
四层架构设计驱动模型在CKM中的实践
写在前面:本文纯属个人想法和http://www.aliyun.com/zixun/aggregation/7335.html">经验总结,如转载请注明出处,如有雷同纯属巧合 (: 1. 一般的架构设计流程 所有的软件开发方法都要解决从需求到实践的转换问题,为了提高软件的质量,前辈们提出了需求分析工程和各种建模技术,但是在需求和设计之间还是很难逾越,也就是说缺乏能够反映做决策的中间过程,于是软件架构设计应运而生. 对于架构设计人们已经提出了许多方法,分类为:工件驱动的方法:用例驱动的法:模