《QUML:量化需求分析与建模》节选之三:一个量化管理项目的一生(2)

【stata基础代码大全 】 可独立完成一篇实证 用stata打开,直接替换自己需要的变量就行,小白友好❗️❗️❗️。八、八.中介效应检验:路径分析(三种方法)第二种方法即Sobel-Goodman检验。*(7)Winsor处理,剔除异常值。六、内生性问题解决方法(附具体模型)其三,工具变量:两阶段最小二乘。第三种方法即Bootstrap检验。二、Stata中数据的基本处理。*(5)生成行业、年度虚拟变量。PSM1————近邻匹配。七、调节效应检验:机制分析。*(2)剔除数据中的样本。*(4)给变量添加标签。*(3)生成新的变量。*(6)基本数据匹配。 阅读详情

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。

电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 

第一个月

从用例到用户故事,从用户故事到代码

在敏捷计划会上——是的,他们采用敏捷开发,确切说是Scrum——产品经理正在给开发人员讲解需求。

他并不是空手来的,而是带来了几张图,比如下面这张收发货子系统中的“结帐记录”的“用例-流程图”。这是他在计划会前,会同几个客服、运维以及开发骨干讨论绘制出来的。

这张图表明对于“结帐记录”这个数据实体,共有4个不同的业务操作,也大约对应4个不同的页面——至少多数时候如此。在讲解完成整个图形及单个页面的详情之后,产品经理提醒大家,从图中的业务依赖关系来看,这4个业务操作必须同时被完成,这个功能才得以上线。

开发人员们纷纷点头,在一个名为CheckRecordsController的类里边写4个方法——Pay(付款),Details(单个详情),IndexOfShop(查看所有本店铺的支付记录),IndexOfExpress(查看所有本物流公司的收款记录)——不是一个非常艰巨的工作。

简短估算

图中的圆圈,做估算的人把他们叫做拗口的EI/EO/EQ(外部输入/外部输出/外部查询),做需求的人喜欢叫用例,做前端的人喜欢叫页面,不过在习惯了敏捷开发的开发人员眼中,他们更喜欢称之为4个用户故事。这4个用户故事组成了1个必须完整交付的史诗故事——“必须完整交付的一组故事”,这是他们给史诗故事的一个新定义。

每个故事的功能点数是4.3点,上图中共有4×4.3=17.2点;不过每个史诗故事本身要额外多计算7点,来自背后要设计数据结构、进行联合测试等工作,一共是24.2点。这比之前说的平均值35点要小一些,不过只是个例。

若干这样的图形被讲解、分析、估算完成后,500个功能点中的200个被确定在这个迭代内完成开发和测试。为什么不是500/3=167?根据经验他们知道第一个迭代应该完成较多的功能,而之后的迭代则会因为功能耦合、联合测试等原因导致生产率下降,同时也可能会出现修改和删除功能的情况。

ProcessingJoy —— 最简单的实时流体模拟【JAVA】 实现基于非常非常经典的 Paper ——Jos Stam 的Real-Time Fluid Dynamics for Games 代码和注释 float visc = 0.0f; float diff = 0.0f; int N = 250; int size = (N + 2) * (N + 2); float[] u = new float[size]; // 速度, 水平/竖直 float[] v = new float[size]; float[] u_prev = new fl... 阅读详情

相关推荐

告别数据丢失焦虑:用Python手把手实现Reed-Solomon码(附完整代码)

本文详细介绍了如何使用Python实现Reed-Solomon纠错码(RS码),帮助开发者有效防止数据丢失。通过基础编解码实战、文件保护方案和高级性能优化技巧,读者可以轻松掌握这一前向纠错技术,应用于物联网、文件存储和网络传输等场景,提升数据可靠性。

weixin_42527160的博客 222

《QUML系列图书》写作计划

QUML作为UML、功能点分析FPA、敏捷开发三种管理方法的集大成者,可以被应用于不同的场景。以下的图书各自侧重于一个方面,供不同领域的读者选择。《QUML:量化需求分析与建模》本书从需求分析与建模的角度,介绍QUML的结构、规则、使用方法,是QUML的基本图书。全书通过对一个电商网站的实例分析,分层次地介绍了QUML的结构、用途、规则和最佳实践;书中还概要地对如何将UML应用于早期估算、产品版本

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

Zoom AI 技术架构研究:联合式方法与多模态集成

通过 Zoom AI 开放平台,企业可以自定义 AI 模块 (如法律合规审查、客户反馈分析),扩展应用场景。这种开放平台策略使企业能够根据自身需求定制 AI 功能,满足特定业务需求。

shao.bing的专栏 1317

《QUML:量化需求分析与建模》节选之四:一个量化管理项目的一生(3)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 第二个月从图形到Word测试经理正在审视第一个迭代的测试用例——因为历史原因,他们还没有形成真正的开发+测试的混合团队,独立的测试团队还只能在每个迭代后期单独执行

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 8374

S/4中的16种特殊库存类型

S/4中的16种特殊库存类型

yanzibing99的博客 1万+

Verilog除法器(32位无符号+带符号)

32位无符号除法器设计 恢复余数法: 恢复余数除法的基本思路是从“部分余数”中减去除数,如果结果为负(不够减),则恢复原来的部分余数,商0. 寄存器使用: reg_r 存放被除数a reg_b 存放除数b reg_r 存放余数(初始清零) 具体做法: 做减法时,减数是reg_b中的除数,被减数是reg_r中的余数左移一位,最低位由reg_q(被除数)的最高位补充。为了能够判断相减结果的正...

qq_38600065的博客 1万+

《QUML:量化需求分析与建模》节选之一:序言

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 序言统一建模语言UML,量化管理,功能点分析FPA,三个令人敬畏的概念。只有被强制使用的时候,人们才会使用UML进行系统分析,而且多数止步于第一步:用例图。只有所

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 9773

STC8H单片机ADC实战:从读取电位器到串口绘图,12位精度玩起来

本文详细介绍了STC8H单片机的ADC功能实战应用,从读取电位器到串口绘图,展示了12位精度的实现方法。通过硬件连接、代码配置、串口数据传输及高级优化技巧,帮助开发者快速掌握ADC模块的使用,适用于各种传感器数据采集和信号处理场景。

weixin_28278377的博客 343

QUML建模第一层:角色-业务图实现愿景(2)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 角色-业务图(RB图)下面是QUML中使用的方法,称之为“角色-业务图”(Role-Bussness Diagram,简称RB图)。通过分析角色和主要业务,表达愿

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

openEuler 欧拉 安装Oracle19c数据库RPM包安装

欧拉系统安装部署oracle 19c rpm方式

陈苏漾的IT生涯 6893

61、神经科学中的分岔与双分子反应研究

本文探讨了神经科学中的分岔现象与双分子反应建模。在神经元网络中,通过分析四细胞网络的呼吸节律振荡,揭示了分岔对振荡频率和占空比的影响,并区分了单神经元与网络层面的分岔特性。在神经群体模型中,系统参数变化引发的分岔可导致振荡、混沌等动态行为转变,文中详细介绍了局部分岔、全局分岔和高余维分岔的机制,并以Jansen-Rit模型为例展示了输入水平变化下的分岔过程。在分子层面,重点介绍了MWC模型在描述配体与多位点蛋白质结合中的应用,涵盖其构象状态、平衡常数及统计因子。研究表明,分岔理论和双分子反应建模为理解神经系

yog99的博客 80

《QUML:量化需求分析与建模》节选之二:一个量化管理项目的一生(1)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 一个量化管理项目的一生​本章通过一个例子展示本书所述的量化需求分析与建模方法在项目中实际应用的情况。注意本章所有数字均只需要两个来源:本章中的配图,业界的数据。配

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 8488

9、自动定理证明的发展历程与关键技术

本文全面介绍了自动定理证明的发展历程、关键技术及其实际应用,包括消解原理、参数化、支撑集策略等核心方法,并探讨了算法优化、数据结构优化及并行计算等提升效率的手段。同时,文章展望了未来发展方向,如深度学习在定理证明中的应用、交互式定理证明以及高阶逻辑的研究前景。

ll5678的博客 505

《QUML:量化需求分析与建模》节选之五:一个量化管理项目的一生(4)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 第三个月​结项度量第三个月月底,项目成功交付。看惯了文山会海,高层领导希望这个小项目做一个简短的总结。结果他看到了下面的表格:功能点耗时率是指完成每个功能点需要5

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 8517

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

量化需求

作者:基思·布雷思韦特(KeithBraithwaite) “速度快”不能算作需求,“响应灵敏”和“可扩展”也不能算需求,因为我们无法客观的判断是否满足了这样的条件。但是这些又确实是用户想要的。架构师的工作在很大程度上是平衡这些需求之间的不可避免的冲突和矛盾,同时又使系统尽可能的满足他们。如果缺乏客观的规律,架构师就只能任凭挑剔的用户和偏执的程序员摆布(“还不够快,我拒绝接受”和“还不够快,我不

Ascetic的博客 2135

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

QUML建模第一层:角色-业务图实现愿景(3)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 愿景取舍——高层优先级排序画完图后,产品经理和项目经理一起找到马总。马总:一口气画了4张?第4张好像很强大啊,我们提到的需求都涵盖了,而且还把评价分为了文字和数值

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

阿里敏捷教练如何优化优酷需求分析流程?

摘要: 如何帮助优酷迅速融合到阿里研发体系?如何优化优酷的需求分析流程?针对需求信息不明确,开发出来的功能不是产品想要的痛点如何解决?点此查看原文:http://click.aliyun.com/m/41381/导读:如何帮助优酷迅速融合到阿里研发体系?如何优化优酷的需求分析流程?针对需求信息不明确,开发出来的功能不是产品想要的痛点如何解决?本文由阿里巴巴敏捷教练张迎辉(花名问菊),详述如何通过调...

阿里云云栖号 1301

Scrum学习笔记

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33672109的博客 1446

QUML建模第一层:角色-业务图实现愿景(1)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 本章讲解如何将非常模糊的高层需求,也就是愿景,表达为一个清晰、简单、确定的模型。基于这种简单的模型进行开发,要比基于大段似是而非的文字更容易得到最终想要的结果。什

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 9818

敏捷开发免费管理工具——火星人预览之一:需求与故事树

这是火星人预览系列的第一篇(之一,之二,之三,之四,之五问答,之六,之七)。之一:需求与故事结构之二:编辑故事,产品管理,组织结构之三:迭代,计划会,分配任务之四:故事板,燃尽图,我的工作项之五:常见问题问答之六:我的空间,我的通知之七:自定义字段   本人除了做培训、写博客、编手册之外,两年来用半业余半全职的时间一点一点开发了一个敏捷开发管理工具,最近接近发布内测版本,发一些预览资料,欢迎大家关

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

火星人敏捷开发博客APP上线了

这段时间用做了一个移动APP,逐步收录本人在优快云所写的博客,方便大家在路上阅读、查看。以后的博客会在优快云首先发表,然后转移到APP上。注意里边有一个对话功能,可以与本人进行互动。以后会有一个更简短的“敏捷开发1001问”栏目,会以类似QQ聊天那种方式迅速回答一些问题,欢迎参与。整体上分了四个栏目:IT职场人生敏捷需求:这个收录了用户故事、产品管理等相关的博客。敏捷团队:这个收录了松结对编程

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

敏捷开发松结对编程系列之十四:一些重构而不影响他人的编程诀窍

本文是“松结对编程”系列的第十三篇。(松结对编程栏目目录)松结对编程包括L型代码结构的一个很大的问题,是在于由于人们复用了太多的代码,以至于所有代码牵一发而动全身。这很容易导致一个底层库改动后,很多地方编译不通过,或编译通过但运行不通过。本人曾经担任过底层库的编写者,在修改和维护底层库的过程中遇到了很多问题,也发现了一些诀窍,下面是一些编码级别的处理诀窍。这些诀窍其实都写在教科书上,学习和使用起来

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

敏捷开发用户故事系列之九:用户故事早期估算

这是敏捷开发用户故事系列的第九篇。(栏目目录)本文适合听过MPD上《敏捷开发需求管理:用户故事分类、颗粒度及组织结构》,或参加过《火星人敏捷开发培训》听过第一天下午课程的读者。若您阅读过程中感觉缺少铺垫的信息,请先阅读:敏捷开发绩效管理之六:敏捷开发生产率(中)(功能点分析,FPA,简化的功能点)敏捷开发绩效管理之七:敏捷开发生产率(下)(简化功能点分析,NESMA,两级简化)若需要更详细情况,请

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

敏捷开发用户故事系列之八:剖析用户故事描述语法(兼谈不同种类故事的语法)

这是敏捷开发用户故事系列的第八篇。(栏目目录) 本文内容来自火星人团队对火星人产品中300个用户故事编写后总结的经验和成果,欢迎致力于敏捷开发而又对用户故事感到困惑的开发者参与讨论。本篇文章尤其适合参加MPD专场“用户故事颗粒度、分类及组织结构”的学员,及参加火星人敏捷开发产品培训的学员。 用户故事中,最有名的就是三段式语法了:“作为一个……(角色),可以……(功能),以便……(客户价值)。”然而

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

敏捷开发免费管理工具——火星人预览之四:故事板,燃尽图,我的工作项

这是火星人预览系列的第四篇(之一,之二,之三,之四,之五问答,之六,之七)。之一:需求与故事结构之二:编辑故事,产品管理,组织结构之三:迭代,计划会,分配任务之四:故事板,燃尽图,我的工作项之五:常见问题问答之六:我的空间,我的通知之七:自定义字段  日常跟进截图故事板:燃尽图(具备钻取功能):跟进表:个人中心截图个人中心是3月迭代的重点,所以未来会多很多功能。我的通知:我的工作项(新建和当前负责

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

火星人网站开通,开放注册中 http://www.scrum.org.cn/

网址:http://www.scrum.org.cn/当前开放的板块包括敏捷事件日历/敏捷文摘/火星人专区(含安装使用问答等)。网站开放注册,请不要注册带有火星/火星人/martian/mars以及其他可能产生误解的用户名。 如果已经在QQ群中,或有优快云帐号,欢迎继续使用此名称,以便于识别。

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+
上一篇: 《QUML:量化需求分析与建模》节选之二:一个量化管理项目的一生(1)
下一篇: 《QUML:量化需求分析与建模》节选之四:一个量化管理项目的一生(3)
火星人陈勇
博客等级 码龄18年 4899粉丝 381原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值