极限建模方法

原创 2002年04月09日 09:41:00

极限建模方法

王巍

(本文转载自软件工程专家网www.21cmm.com

  极限编程(Extreme Programming,XP)简单地讲是一些相互关联的准则和惯例的集合,其中一些关注的是基本的活动,比如配置管理,但其中大多数关注的是团队成员之间以及团队与应用系统的企业团体之间的交流通信和文化方面的相关问题。XP建议采用循环迭代开发方法。

  建模是软件开发中的一个重要组成部分,一个模型描述的是软件的某个方面的完整内容。通过建模能简化软件和软件过程。往往一个图形能抵得上数十行字,甚至是数百行文字的描述。通过图形这一中介媒体,你可以迅速地得到反馈信息,并能及时地修改你的模型以满足用户的需求。极限建模(Extreme Modeling,XM)是建立在已有的且被证明是有效的建模方法之上的轻量级建模方法。XM是XP的基础。

  在开发一个面向对象软件的过程中,软件开发人员可能会应用到的基本的建模工具和建模过程见下图所示。为了简单起见,图中所示省略了项目管理方面的内容,比如测试用例等评估测试工具内容。图中的方块表示的是可能会用到的诸如基本的用例模型和活动图等之类的开发工具。图中的线条则描述的是各工具间的主要关系,比如:分析阶段的类模型所包含的信息将影响到设计阶段的类模型中的信息的开发。这些关系揭示了不同工具在迭代开发过程中的相互影响关系。比如:当你修正用例模型时,它可能会影响到顺序图的开发,接着就会影响到你的类模型。图中的那些蓝颜色方块表示这些建模工具是由对象管理集团(http://www.omg.org)开发和维护的工业标准统一建模语言(UML)中所描述的建模工具。

jmff.JPG

  尽管上图中列出了许多建模工具,但你不必在每个项目开发中都使用它们。你应该仅用那些能更好地展现你所开发的软件的建模技术。比如,基本的用户接口界面原型能使你更好地理解一个用户的界面需求,但是,如果你的用户接口界面需求是显而易见的,则该技术对你的团队来说并不一定有多大的使用价值。同样地,活动图对于洞悉那些复杂的事务逻辑流是很有用处的,但是,如果业务流是简单明了的,则它就不是很有价值了。但是需要注意的是:尽管你无需精通所有的建模工具,但是如果你所在的项目团队在项目开发中所需的建模技术中有一些是你所不熟悉的,而你没有能力在工作的过程中马上能掌握这些必要的技术,则你应自觉的要求从这个项目退出。

  上图中的那些黄色方块表明:在实际的应用开发中,仅通过应用UML来开发项目是不够的。其中有些黄色块所示的建模工具将会在以后的UML修订中被采纳。上图同时也表明软件开发过程是连续的,同时又是迭代的。说它是连续的,这是因为上图是从左向右贯穿了需求、分析、设计和实施等整个开发过程。说开发是一个迭代的过程,这是因为你可以在各建模阶段和建模工具中来回移动。在分析用户需求和满足和实现用户需求的确定过程中,是一个不断反复迭代的过程。从全局来看建模过程是一个连续的过程,而从局部上看,它是一个迭代的过程。

  极限建模的基本原则是简洁,亦即用尽可能少和精炼的图形最大可能地覆盖且能清晰有效地描述项目开发的全过程。极限建模的秘密并不在于建模技术本身,而是在于如何才能很好地把它们应用于软件项目的开发。作为一个优秀的软件专业开发人员,他必须掌握能覆盖整个开发过程的各种开发工具和技术,并且具有知晓何时使用哪种工具才是最有效率的能力。

参考文献

  1. Scott W. Ambler.Extreme Modeling.    http://www.sdmagazine.com/documents/s=738/sdm0011m/.November,2000.

  2. Scott W. Ambler.A Closer Look at Extreme Modeling. http://www.sdmagazine.com/documents/s=732/sdm0104m/.April,2000.

作者简介

  王巍(1968-).上海人.高级工程师,系统分析员.研究方向:电子商务,软件工程,企业信息系统,Petri网和Rough集理论应用研究。

极限建模方法

极限建模方法王巍(转载自51CMM)    2003年05月03日   极限编程(Extreme Programming,XP)简单地讲是一些相互关联的准则和惯例的集合,其中一些关注的是基本的活动,比...
  • silures
  • silures
  • 2004年10月30日 12:29
  • 853

极限学习机的使用方法

极限学习机的理论 转自:http://blog.csdn.net/jiyangsb/article/details/51354488 在传统的神经网络训练中,我们通常的做法是要通过梯度下降算法...
  • hhsh49
  • hhsh49
  • 2016年10月14日 15:19
  • 983

图像处理中的数学原理详解19——函数的极限

结合对图像处理的学习和实践,大致总结了一部分图像处理研究中所需的数学原理基础。主要涉及微积分、向量分析、场论、泛函、偏微分方程、复变、变分法等。总结、归纳了上面这些数学课程中,在研究图像处理最容易碰到...
  • baimafujinji
  • baimafujinji
  • 2015年12月14日 14:18
  • 6488

统计建模基本方法

数据集:所有属性独立的、均等的对最终结果做出贡献。(这是不现实的,现实的数据集属性并不同等重要,也不彼此独立。只是通过假设,引出一个简单的方案,并在实际中表现极佳。) 方法:朴素贝叶斯方法。 特点...
  • h_d_yue
  • h_d_yue
  • 2014年10月14日 18:33
  • 410

《软件方法-业务建模和需求》

利润=需求-设计 在软件开发中,需求工作致力于解决“产品好卖”的问题,设计工作致力于解决“降低成本”的问题,二者不能相互取代。 实际上,客户的需求从来没有变过,知识我们一开始就没有揣摩出来! 随着...
  • tnt87
  • tnt87
  • 2015年02月02日 23:11
  • 589

极限初学者常遇到的几个坑(二)

由于编辑仓促,第一篇中出现了这两个问题:     1.传的那个文档没有通过审核,所以我从网上找到了原址分享一下:https://arxiv.org/pdf/math/0508227.pdf     2...
  • qq_31474315
  • qq_31474315
  • 2016年11月05日 15:15
  • 662

浅谈大数据建模

前言:建模的过程和方法,不断地被开发和完善,你可能会说不同的数据类型,不同的业务场景,不同的需求,都会有不同的建模方法,我很赞同。但是我想说,不管你的数据是什么,要在大数据中建立自己的数据模型这其中的...
  • adgjlm111
  • adgjlm111
  • 2017年06月05日 18:18
  • 15324

对象建模方法与技术学习笔记(一)

面向对象为什么要面向对象面向对象的思想认为,在需求中人和物是相对稳定的,他们是事物的本质;而需求中的功能和行为是以人和物为主体的特征;人和物是相对稳定的,而功能和行为是易变的。因此,反映需求分析与软件...
  • u013745854
  • u013745854
  • 2015年08月01日 16:45
  • 1404

需求建模

 您的软件项目能否取得成功,这依赖于准确和完整的需求。要保证体系结构的正确,就要求人们能够使用相应的技术技能来捕获和细化正确的需求。发现用于需求建模的有价值的技能和工具,并且了解如何评估能力方面的进展...
  • weishaofei
  • weishaofei
  • 2009年07月22日 21:10
  • 5990

计算机图形实现建模技术的3种方法

建模技术是虚拟现实中的技术核心,也是难点之一,目前主要有三种方法实现。 虚拟现实是在虚拟的数字空间中模拟真实世界中的事物,这就需要真实世界的事物在数字空间中的表示,于是催生了虚拟现实中的建模技术。虚...
  • WANGSEN_SC
  • WANGSEN_SC
  • 2011年10月27日 22:52
  • 1000
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:极限建模方法
举报原因:
原因补充:

(最多只允许输入30个字)