软件方法

核心工作流
 
  1. 业务建模(组织建模):描述组织内部各个系统如何协作,使得组织可以为其他的组织提供有价值的服务,新系统只不过是组织为了对外提供更好的服务,对自己的内部重新设计而购买的一个零件。
  2. 需求:聚焦于待开发系统的边界,消息描述系统要卖的出去必须具有的表现-功能和性能。
  3. 分析:提炼系统内需要封装到核心领域机制。
  4. 设计:将核心领域知识和非核心领域知识结合,最终实现系统。
 
寻找老大
  1. 老大是买方。
  2. 系统改善哪个组织的流程,老大就是该组织的负责人。
  3. 系统好坏的度量指标在他的大脑里吗。
  4. 如果国王之给你几分钟时间把正在做的系统卖出去,而且只有一次推销的机会,如果失败了就会被枪毙。您会向谁推销?推销的时候说什么话保住自己的性命可能性做大?这个答案就是老大和愿景。
  5. 愿景是改善组织的指标,而不是做某事,要达到这个目标,需要各个岗位分别使用XXX,XXXX等功能。
  6. 愿景不是问系统有什么功能,而是回答买了这个系统,对组织有什么好处。
  7. 愿景是老大针对系统的目标
  8. 用例使用“执行者Actor”和涉众代替了原来的用户,这是一个非常大的突破;
  9. 计算机系统不只是简单的把纸里的东西往电脑里般;
 
业务建模之业务用例图
  1. 业务建模的目的是从组织的角度来定位系统应该提供的价值,所以说“业务建模”应该更名为“组织建模”。
  2. 业务执行者:BusinessActor。首先来寻找组织的执行者,也就是业务执行者,业务执行者的定义是:在组织之外和组织交互的人群或组织。(组织:某商业银行; 业务执行者:储户(存钱)、企业(贷款)、人民银行(监督))
  3. 业务工人(Business Worker):组织内的人肉系统,业务执行者和业务工人的区别就是,一个在组织内部,一个在组织里面,一个是组织不可替换的,一个是组织可以替换的。
  4. 业务工人可能被新的业务工人替换,但更多的是可能被新的业务实体(BusinessEntity)替换,业务实体就是组织中的非人系统。
  5. 开发人员说,“我在开发一个新系统”,其实是说“我在开发一个新的业务实体”,取代现有的业务工人或业务实体的一些责任。
 
探索需求的思路就出来了:
  • 画好现状的业务序列图
  • 把待开发的系统作为一个新的业务实体空降到列图中
  • 寻找改进点,取得该业务实体的责任
  • 直接映射到待开发系统的系统用例
 
业务工人和业务实体不再业务用例图中出现,因为他们不是组织的价值,而是成本。在识别业务执行者时,不需要画业务工人和业务实体,在接下来画业务用例的实现-业务序列图的时候加上就可以。
 
  1. 业务工人和业务实体协作完成业务用例,系统类协作完成系统用例。
  2. 业务执行者是一个组织(或人群),而不是系统。因为研究对象是组织,和它对应的概念也应该是组织。
  3. 业务用例指业务执行者希望通过和组织交互达到,而且组织能提供的价值。
  4. 业务用例是为业务执行者服务,不是为业务工人服务。或者说,因为无用例表达组织的本质价值。
  5. 改进业务流程的思路:先归纳出组织对外提供什么价值,再思考如何更好地优化组织内部流程来实现这些价值。
 
总结
  1. 业务用例是组织的、而不是组织内某个系统的用例。
  2. 组织的用例不会因为某个人肉系统或者电脑系统的存在或消失而改变。所以,“这个系统的业务用例是什么”这样的说法是错误的,业务用例图,研究对象都是组织。
  3. 为什么要研究组织的用例呢?因为我们想要把系统的价值和组织的价值挂上钩,给组织一个购买系统的理由。也就是说,业务用例不是思考系统提供什么“功能”,而是思考组织购买了这个系统,对组织本来就是有哪些“功能”会带来一点点帮助。
 
需求之系统用例图
  1. 系统执行者的定义:在所研究系统外,与该系统发生功能性交互的其他系统。
  2. 系统用例的定义:系统能够为执行者提供的、涉众可以接受的价值。
  3. 用例之前的许多需求方法学,把需求定义为思考系统“做”什么,用例把需求提升到思考系统“卖什么”的高度。
  4. 做需求的目的不是为了安慰自己或走过场,而是让产品更加好卖。不以这个为出发点的需求工作是没有意义的。
  5. 老老实实去研究业务流程,做好业务建模,尽量从业务序列图中映射出系统用例,这样得到的系统用例是不会骗人的。新增、修改、删除、查询、管理、改变状态这样的词语是数据库里面的“鸟语”,不是领域里面的“人话”。业务流程中不会有人说,小张你等一下,我要到系统哪里去做一下发票管理,只会说,我去开一张发票,我去作废一张发票,我去开一张红字发票。。。
 

转载于:https://www.cnblogs.com/sofia/p/5009828.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256334.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

修改vim中的tab为4个空格

记录一下,避免用时还得搜........ 1、临时修改 在vi中,set tabstop4 或 set ts4  2、永久修改 vi --version 查看要修改的文件如果是vim的话,修改~/.vimrc如果是vi,修改~/.exrc加上:set tabstop4set nu //显示行号set…

Halcon例程详解(基于卡尺工具的匹配测量方法) —— measure_stamping_part.hdev

前言 1卡尺工具介绍 Halcon中的Metrology方法即为卡尺工具,可用来拟合线,圆,这种方法对于目标比背景很明显的图像尺寸测量是很方便的,不需要用blob进行边缘提取等,但缺点也很明显,需要目标的相对位置基本…

【TensorFlow】——不同shape的tensor在神经网络中的应用(scalar,vector,matrix)

目录 ​ 1、scalar——标量 1)在神经网络中存在的场景 2)one_hot编码 3)举例应用 2、vector——向量 ​ 3、matrixs——矩阵 4、dim3的tensor 5、dim4的tensor 6、dim5的tensor 本文主要的目的是让初学者对tensor的各种形式的使用场…

404页面 3秒后跳到首页 实现

---恢复内容开始--- 当我们访问一个页面不存在的时候&#xff0c;就会跳到404页面 一般网站都在在404页面中做一个处理&#xff0c; 就是当用户3秒种内还没有任何操作的话&#xff0c;就会自动跳转到其它页面 技术实现有两种方法 1. 在404页面中的header间加上 <meta http-e…

Java - I/O

File类 java.io操作文件和目录&#xff0c;与平台无关。具体的常用实例方法&#xff1a; File file new File("."); // 以当前路径创建名为 "." 的 File 对象   文件目录信息函数     -   String getName/Path/Parent()&#xff1a; 文件名/路径…

Halcon —— 边缘检测算子详解

一、算子介绍 1.1 种类 halcon内常用的边缘检测算子包括如下几种&#xff1a; 1.edges_image: 提取2D 图像边缘 2.edges_sub_pix&#xff1a;提取2D图像亚像素边缘 3.edges_object_model_3d &#xff1a;提取3D图像边缘 4.edges_color和edges_color_sub_pix&#xff1a;提取彩…

【TensorFlow】——索引与切片

目录 1、利用index进行索引 2、利用“&#xff1a;”和“...”进行索引与切片 3、tf.gather&#xff08;&#xff09;——对一个维度进行乱序索引 优势&#xff1a; 缺点&#xff1a; 例子 4、tf.gather_nd()——同时对多个维度进行索引 5、tf.boolean_mask()——通过布…

华硕(ASUS)X554LP笔记本一开机就进入aptio setup utility 问题的解决

某次因大意一直未插电&#xff0c;华硕&#xff08;ASUS&#xff09;X554LP笔记本后来没电关机。后来每次一开机就进入aptio setup utility界面&#xff0c;按F9调入默认配置&#xff0c;F10保存后退出&#xff0c;重启仍然进入aptio setup utility。 网上查了一下&#xff0c;…

redis和memcached缓存

memcached memcache开源的&#xff0c;高性能&#xff0c;高并发分布式内存缓存系统,天生支持集群 memcached下载地址&#xff1a; http://memcached.org/downloads python实现memcached缓存 pip3 install python-memcached import memcache aamemcache.Client(["10.0.0.2…

C# —— 进程与线程的理解

定义 进程 进程&#xff08;Process&#xff09;是Windows系统中的一个基本概念&#xff0c;它包含着一个运行程序所需要的资源。一个正在运行的应用程序在操作系统中被视为一个进程&#xff0c;进程可以包括一个或多个线程。 程序是在特定操作系统上的可执行文件&#xff0c…

git安装和初步使用

基本参照以下链接&#xff1a; http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000 注意&#xff1a; &#xff08;1&#xff09;每台电脑对于github来说都有对应的ssh密钥&#xff0c;…

【TensorFlow】——broadcast_to(在不复制内存的情况下自动扩张tensor)

目录 作用&#xff1a; 内在的思路 优点 什么时候可以broadcast ​ tf.boradcast_to .VS tf.tile 作用&#xff1a; 在不会实际意义上复制数据的情况下进行tensor的维度和形状的扩张&#xff0c;使得两个tensor维度和形状一致 对两个维度不一致的tensor进行加减前进行br…

20145212 《信息安全系统设计基础》第2周学习总结

20145212 《信息安全系统设计基础》第2周学习总结 教材学习内容总结 Vim基本操作 1.使用vim命令进入vim界面vim后面加上你要打开的已存在的文件名或者不存在&#xff08;则作为新建文件&#xff09;的文件名。 打开Xfce终端&#xff0c;输入以下命令$ vim practice_1.txt 直接使…

Opencv—— 拟合直线

概念 最小二乘法是勒让德( A. M. Legendre)于1805年在其著作《计算慧星轨道的新方法》中提出的。 最小二乘法就是通过最小化误差的平方和&#xff0c;使得拟合对象无限接近目标对象。在图像处理中主要用于拟合线&#xff0c;通过求采样点距离误差最小的线&#xff0c;可以是直…

本地搭建Dubbo监控中心的安装步骤

Dubbo监控中心的安装步骤 参考链接&#xff1a;http://blog.csdn.net/lichunan/article/details/40349645 一、从github上下载dubbo源码进行编译&#xff1a; 1、下载地址为&#xff1a; https://github.com/alibaba/dubbo.git2、编译源码命令&#xff1a;首先进入~/dubbo&am…

(转)SQLServer实例讲解

欢迎和大家交流技术相关问题&#xff1a; 邮箱: jiangxinnju163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://github.com/jiangxincode 知乎地址: https://www.zhihu.com/people/jiangxinnju 实例就是一个在数据库中存在的&#xff0c;现实的数据…

Basler相机SDK相关问题收集与知识汇总

1.心跳时间导致报错 此心跳非彼心跳,相机心跳是指过通过设置一个时间用于监测相机和网卡的连接,如果超过这个时间,相机就会释放跟网卡的连接,进入一种允许相机被再次连接的状态。 但此方式会导致相机SDK报错,经常显示在使用中,无可用连接,如何解决? 1.干等。不可取 2.…

14-会场安排问题

会场安排问题 时间限制&#xff1a;3000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;4描述学校的小礼堂每天都会有许多活动&#xff0c;有时间这些活动的计划时间会发生冲突&#xff0c;需要选择出一些活动进行举办。小刘的工作就是安排学校小礼堂的活动&#xff0c;…

【TensorFlow】——实现minist数据集分类的前向传播(常规神经网络非卷积神经网络)

目录 一、常规神经网络模型 二、TensorFlow实现前向传播步骤 1、读取数据集 2、batch划分 3、根据神经网络每一层的神经元个数来初始化参数w,b 4、进行每一层输入输出的计算 5、对每一层的输出进行非线性relu函数变换 6、计算一个batch训练后的误差loss 7、计算每一次…

大道至简第二章

懒人造就了方法 开头说的&#xff0c;有一个人叫李冰也要移山&#xff0c;可是他却要用和愚公截然不同的方法&#xff0c;那就是用“烧”的方法来碎石&#xff0c;那么这样的好处就是省力。那么他又是怎样想到的办法的呢&#xff0c;就是生活中仔细观察他老婆做饭时水溢出是石头…