Write Story

2024-04-17 16:38
文章标签 write story

本文主要是介绍Write Story,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

公司正在进行CMMI四级的准备,可我们的项目采用了XP开发模式。我正在努力寻找它们的结合点(也许这个结合点不存在?也许还是可以融合?谁知道呢?只要找到一种“适合之路”就可以啦,谁会管它叫什么呢?)

今天说什么呢?说一下Story吧。

 


 

MasterStory是XP中极为关键的内容,编写是否恰当是XP项目成功的重要因素。那么,如何判定Story是否恰当呢,这里有一些原则,可以总结为“INVEST”原则。这六个字母代表评判Story质量的六个方面。 

I-Independent

N-Negotiable

V-Valuable to users or customers

E-Estimatable

S-Small

T-Testable

  1. 独立性(Independent) 

 故事之间应该相互无依赖。如果存在依赖的话,会引起优先级和计划问题。例如,一个用户选择了一个高优先级的故事,而这个故事又要在完成一个低优先级的故事以后才能做,这时就存在优先级问题。另外,依赖关系会增加Story的point评估困难。

如果故事发生了依赖性,可以通过两种方法来解决。一是将故事合并成一个大的独立的故事;二是寻找另外的方式去拆分这些依赖性的故事。如果即不能合并,又不能找到另外的方式的话,那么就要对故事同时做两个评估,一是如果先做被依赖的故事,再做依赖故事,评估是多少Point,另一个是如果先做依赖故事,后做被依赖的故事,评估是多少Point。

(未完待续)

 

这篇关于Write Story的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/912317

相关文章

Unstructured cannot write mode RGBA as JPEG 错误解决

Unstructured cannot write mode RGBA as JPEG 错误解决 0. 错误详细1. 解决方法 0. 错误详细 Image Extraction Error: Skipping the failed imageTraceback (most recent call last):File "/root/miniconda3/envs/learn-y

70-java write类应用场景

在Java中,我们可以使用java.io包中的FileWriter和BufferedWriter类来写入数据到文件。以下是一个简单的例子,展示了如何使用FileWriter和BufferedWriter来写入数据到文件: import java.io.BufferedWriter;import java.io.FileWriter;import java.io.IOException;pub

SylixOS write 0 字节问题

1 问题描述 在移植中间件过程中,在SylixOS调用write函数写入0字节的数据到文件中时,会导致对应的中间件测试用例失败,失败的原因是文件系统中的write函数在Linux系统和SylixOS有区别,两种实现的差别如下。 2 write函数的实现机制 2.1 SylixOS实现机制 在SylixOS下通过write 函数写数据到普通文件中时,第一步会判断写入的数据是否为0,如果是0直

Java 入门指南:Java 并发编程 —— Copy-On-Write 写时复制技术

文章目录 Copy-On-Write使用场景特点缺点CopyOnWrite 和 读写锁相同点之处不同之处 CopyOnWriteArrayList适用场景主要特性方法构造方法CopyOnWriteArrayList 使用示例 CopyOnWriteArraySet适用场景主要特性方法构造方法使用注意事项CopyOnWriteArraySet 使用示例 Copy-On-Writ

df.write.csv

# 将 DataFrame 写入 CSV 文件# 拆分 ArrayType 列df_exploded = df.withColumn("interests", explode("interests"))print("\nExploded DataFrame:")df_exploded.show(truncate=False)# 写入 CSV 文件df_exploded.write.csv

redis被攻击redis READONLY You can‘t write against a read only slave.

redis 日志路径 /var/log/redis 拿下来后发现有这种错误 Operation now in progress 可能是网络断开导致, 查找redis whereis redis 修改 vim /etc/redis.conf 大概在300行 下面代码yes改no slave-read-only no 重启redis sudo systemctl restart

iOS CoreAudio学习笔记(二)—— The Story of Sound

在上一章,我们初次尝试了CoreAudio API:它提供了什么以及怎样调用它的函数。现在是时候往回一步来看看一张更大的图:一开始CoreAudio访问的问题。 这一章将介绍基础的声音科学,它是什么,它怎样工作。事实证明,计算机的数字化天性使它们并不那么适合处理连续的模拟信号。这引导了对信号采样的思想,或者将平滑的声波斩为频率足够大的离散值,而人耳无法注意到差别。这一章覆盖了这些采样在数字化形态

Lua io.write(“\27[2J”)

Programming in Lua 第六章 More About Function 开头有一个例子。它在终端屏幕上输出一个用*号组成的正弦曲线: function eraseTerminal()io.write("\27[2J")end-- writes an `*' at column `x' , row `y'function mark (x,y)io.write(stri

python write和writelines的区别

python write和writelines的区别 file.write(str)的参数是一个字符串,就是你要写入文件的内容.file.writelines(sequence)的参数是序列,比如列表,它会迭代帮你写入文件。

write your own xx-starter【1】

在springboot 中,我们加入例如mybatis-spring-boot-starter,接着在application.yml配置数据库信息,就可以使用mybatis了,无需我们手动进行配置 这就是springboot威力,那么他是如何实现的呢?简单来说类似于java SPI机制, 通过在启动容器的某个阶段,加载某个路径下特殊文件中的类来实现自动配置 实际上这个文件就是位于META-IN