欢迎大家在这里讨论设计模式,来提高我们代码质量!
谈谈××××的那些事儿
谈谈软件开发的那些事儿 之 软件开发的轮回
——对软件分析设计的一次深刻反思与探讨 前言:你干软件开发多少年了?你是否开始感到困惑了、累了、算了?你是否该找一个加州旅馆好好歇一歇脚了?这篇文章也许就是你的加州旅馆,它给你解惑,反思软件开发中出现的问题,探讨解决这些问题的办法,那就是建立模型——用例模型、领域模型、分析模型和设计模型。 谈起软件开发,我在10年前就开始了。那时天是蓝的,生活是美好的,程序设计也是轻松愉快的。如果当时有 ...
谈谈软件开发的那些事儿 之 解决之道
前面提出了软件开发的轮回:期望——破灭——崩溃——新的轮回,我们的解决之道在哪里呢? 我的反思——不在沉默中爆发,就在沉默中灭亡 反思,我在反思…… 对于来自客户的变更,我永远忘不了的是大学时老师的谆谆教导。上软件工程课的时候,老师总是一再地反复强调,一定要将需求变更消灭在需求分析阶段。按照过去的瀑布式开发理论的描述,总是要求我们在需求分析阶段了解清楚客户的所有需求,并编写成《软件需求说明书 ...
谈谈用例模型的那些事儿 之 用例图
——对用例模型及其应用的一次有益的探讨 前言:这是一次对用例模型的探讨。怎样建立用例模型,怎样编写用例说明,它与需求规格说明书有什么区别,它能替代需求规格说明书吗?也许在这里可以找到你要的答案。 进入软件业稍微久一点儿的人恐怕都不会陌生,软件开发的最初阶段都是谈需求、写需求规格说明书。需求规格说明书是与客户最终确认到纸上的,非常正式的公文。软件开发应当做什么,做成什么样子,什么东西不做,项目范 ...
谈谈用例模型的那些事儿 之 用例说明
前面我们讨论了如何绘制用例图,我们再看看如何编写用例说明: 二.用例说明 用例图可以直观地展现需求中的所有用例、参与者、系统边界,以及它们之间的关系,但这还不足以表达需求分析所要求表达的内容。用例图必须辅之以用例说明,才能完整清楚地表达。用例模型是需求分析阶段的主要成果,因此它担负的职责繁重。用例模型必须做到以下要求: 1、语言的互通。用例模型采用的语言必须达到,既能让业务人员看懂,以便给予业务 ...
谈谈用例模型的那些事儿 之 注意什么
前面我们讲了如何建立用例模型,那么建立用例模型应当注意什么呢? 建立用例模型应当注意的问题 给大家几个建立用例模型中常出现的问题和应对遵循的原则: 一.如何发现用例 经过以上的讲解,相信大家对建立用例模型有了一个整体的概念,然后开始着手练习绘制用例模型。这时候,一个非常严峻的问题出现了:如何发现用例。大师曾经给出了答案,大致意思就是:首先选择系统边界,然后确定主要参与者,定义满足用户目 ...
谈谈领域模型的那些事儿 之 从领域获取知识
——对领域驱动设计的一次有益的尝试 前言:你写过用例模型吗?也许有;你写过领域模型吗?也许还没有。在这里,我们可以尝试写写领域模型,看看它的作用、带给我们的好处。 随着RUP在中国的传播,人们开始尝试用RUP统一过程来指导软件的设计和开发,但这些尝试并不成功。比较普遍的,大家都开始使用用例模型来进行需求阶段的分析和设计了。当然,能做出第一步已经非常不错了,但这远远不够。要做好需求分析,用例模型 ...
谈谈领域模型的那些事儿 之 注意什么
前面我们讲了如何从业务领域获取知识,创建领域模型,那么建立领域模型应当注意什么呢? 建立领域模型应当注意的问题 1.领域模型不是数据模型,也不是软件对象模型 一个创建领域模型的过程中非常容易犯的错误就是,将领域模型当成了数据模型,或者软件对象模型。领域模型,又称为概念模型、领域对象模型或分析对象模型,是“专用于解释业务领域中重要的‘事物’和产品”[RUP]。领域模型专注于现实世界的对象(概念类)而 ...
谈谈分析模型的那些事儿 之 开始分析
——对分析模型的一点儿见解 当需求分析结束、需求确认完成、需求讨论告一段落的时候,我们的需求分析员拿出了厚厚的一打用例分析模型、领域设计模型,需求分析阶段结束,开始进入开发阶段。但是,这时候虽然需求分析阶段结束了,却千万不要以为需求分析就结束了,如果你还这样认为,说明你还没有摆脱瀑布式开发的思维。瀑布式开发的思维的关键点就是认为,需求分析阶段应当完成所有的需求分析和确认的工作,否认需求分 ...
谈谈分析模型的那些事儿 之 职责驱动设计
分配职责和职责驱动设计 我们在开始分析模型的时候,首先要弄清楚一个非常重要的原则,就是以职责为中心。OO分析设计的核心原则之一,就是软件系统中的所有元素都必须具有高度相关的职责,也就是说,软件系统中所有的模块、包、对象类,都应当拥有一个清晰的职责,并且与它相关的所有元素(即模块中的所有包、包中的所有对象类、对象类中的所有属性和行为)都必须与这个职责具有高度的相关性。因此,分析模型的首要设计原则就 ...
群组知识库热门文章
- 25491 Oracle中Cursor介绍
- 7782 Oracle 嵌套事务与自治事务思考
- 5345 EJB3+Jboss4.2配置开发
- 4765 谈谈用例模型的那些事儿 之 用例图
- 4370 一堂如何提高代码质量的培训课