Programmers Quick Start Guide
(work in progress)
客户的参与对软件成功是关键的.最为一个程序员,你需要一种方法来理解你的客户的需求,因此你才能写出很好的软件.FIT为你和你的客户提供了一种方法来精确的交流和协作.
在它的核心中,FIT只是一个非常简单的工具.它是一个“为集成测试的框架“,也就是说,它是一个翻译HTML编写的文档,在你的软件上运行他们,然后以HTML格式报告结果的框架.这些是你的客户编写作为例子的测试.用来钩住这些测试到你的软件中的fixture则由你来编写.
. FIT的简单掩盖了它的实用性.尽管FIT运行测试,但是他不关于测试.它将给你的客户一种你的软件作什么的方法.以及给你一种你和你客户讨论详情的途径.
因为FIT可以读写HTML,又因为Word和类似的商业工具可以读写HTML,所以你的客户可以直接FIT文档.这是至关重要的.徐徐求文档的问题是他们通常不是由客户来编写的.甚至客户很少阅读他们.
结果,我们失去了珍贵的协作机会.这种事情不计其数...对于大项目也是如此.每个我们错误的详情就是软件中的一个Bug.我们需要一种方式让客户考虑细节,并且和我们一起讨论.
FIT是一种方法.他允许客户停工正确行为的实例,并且看软件利用这些实例可以作甚么.他允许客户拥有这些实例.这是非常重要的.鼓励他们这样去做.给他们反馈和他们将得到的控制.客户的参与对软件成功来说非常重要.FIT将帮助你得到这组些,如果你这样去做,你的软件会更好.
使用FIT和客户一起工作
使用FIT的一大部分是帮助客户参与,因此你应该从阅读IntroductionToFit 和CustomersQuickStartGuide.开始.注意FIT的生命周期,查找你能帮助客户参与的方式,从程序员的角度上,本节不会反映CustomersQuickStartGuide .
当你开始开发一个新的特性时,你应该和你的客户讨论(在这里,对于“客户“,我们是指:“从业务的角度上说,知道特性最多的人“,“有些人称他们为'主题事件专家“)通过百板收集,倾听客户的解释.然后要求他/她描述特性使用的例子.
许多客户更乐意讨论应用程序的界面,而不是底层的需求.在初期,你可能得到用户讨论的例子,而不是底层的业务规则.这些例子模糊了客户的真正的需要,并且他们非常难以编写和维护.
你应该逐步掌舵你的客户朝讨论围绕业务规则的例子的方向上去.例如,如果客户说“会计师按这个按钮,软将会得到一个时间卡,然后计算雇员的薪资“,你可以问时间卡和最后薪资的例子.
你的客户描述例子,你应该尽可能的想问题.利用这些问题得到描述问题答案的额外例子.有时候你的客户不知道,或者被这个问题缠绕住.在这种情况下,把它放在一边.
你有一些关键例子后,帮助你的客户把例子转化为表.努要试着表格现在就和FIT Fixture工作.(下面有更多的fixture),得到例子.一旦你对表感到满意,重新定义他们的格式,使你能容易的用FIT实现.在你做的时候,当心不要遗漏了客户的观点.
你实现特征时,你肯会跨过实例没有覆盖到的问题.把这些问题反馈给客户,和前面一样,使用他们帮助你指导客户产生额外的例子.
get the answer by adding a new example to a Fit document. FIT不仅是从客户得到详情的途径,也是你的客户从你的程序里得到反馈的方法.向你的客户展示如何使用FIT,描述他/她如何对FIT作出改变,返回FIT,和查看结果.这将允许你的客户试验和产生更多的例子.你想让你的客户说:“我想知道软件如何处理这种情况...?“,然后通过在FIT文档增加额外的例子来得到答案.
(------未完-----)