敏捷如何增强客户满意度和提升

敏捷如何增强客户满意度和提升

软件开发团队在寻找一种结构化的、重点突出的敏捷方法,可以在整个产品组织中进行扩展并产生明确的结果,可能会发现FDD是一个不错的选择。

功能驱动开发(FDD)

功能驱动开发(FDD)是一种敏捷的软件开发方法,旨在频繁而有效地交付有形的软件成果,它以客户为中心,具有迭代性和增量性。敏捷中的FDD的各个层面都鼓励状态报告,这有助于监测进展和结果。

FDD让团队经常更新项目并迅速发现错误。此外,客户可以在任何时候收到大量的结果和信息。因为它有助于减少开发行业中两个已知的道德杀手,所以FDD是开发团队中的首选方法:混乱和变通。

功能驱动开发阶段

与所有的敏捷方法论一样,收集数据是FDD的第1步。这包括清楚地了解项目的内容和背景,以及对目标受众需求的共同理解。团队应该在这段时间内尽可能多地了解他们即将开始的项目的原因、内容和对象(接下来的几个步骤将有助于明确如何进行)。这个数据收集可以被认为是零阶段,但它不能被跳过。这是研究和论文发展的步骤,所以可以把它比作写一篇研究论文。

一旦团队对他们的目标、目标受众和当前(可能还有未来)的需求有了明确的了解,就可以开始FDD的第一个命名阶段。创建一个综合模型。

开发一个整体模型

按照研究论文的比喻创建一个全面的模型,在这个阶段起草大纲。团队将以 “论题”(也称为主要目标)为指导,开发详细的领域模型。这些模型将被组合成一个单一的整体模型,作为系统的一个粗略的纲要。细节将随着发展和团队的学习而增加。

创建一个功能列表

利用在第1步中收集到的信息,创建所需的功能列表。请记住,客户价值的输出就是一个功能。创建一个可以在14天内完成的功能列表。请记住,这些功能不应该是任务,而是目的或更小的目标。

进入一个基于特征的计划

计划团队成员可以完成的任务,这些任务与每个特征的复杂性有关。所有的团队成员都应该在计划阶段参与对功能的评估,考虑每个开发阶段的观点。然后,可以利用对复杂性的评估来确定每个功能的实现顺序和分配给每个功能组的团队成员。

此外,在这个阶段应该确定类的所有者–分配给类的个人开发者。由于一个特定的开发人员负责开发功能的每个类,该开发人员也负责该类的概念性原则。如果需要对多个类进行修改,这些类的拥有者必须一起工作,将其付诸实现

此外,功能团队和类的所有者都是FDD的关键。我们鼓励不同的观点,并在特征团队中明确定义角色。这就保证了在设计时能考虑到不同的想法和观点。

按特性设计

将被设计和构建的功能将由首席程序员来选择。此外,在定义功能的优先级时,他或她将选择参与的类主和功能团队。技术设计可能是部分小组的重点,而框架可能是其他小组的重点。在继续进行之前,整个团队在设计阶段结束时已经完成了设计审查。

按功能构建

这一步将所有需要帮助设计的事情付诸行动。一个功能原型和用户界面,以及技术设计中描述的组件,都在这里构建。在该单元经过测试、查看和批准之后,完成的功能就可以加入到主构建中。每一个超过两周设计和构建的功能都会被进一步细分为特征,直到满足两周的规则。

FDD的优势

  • 使用文件进行沟通,避免了多次会议。

  • 对项目的范围和背景有更好的理解。

  • 它遵循模块化方法,在迭代版本中按模块交付工作。

  • 它是一种可扩展的方法,在长期的大型项目中运作良好。

  • 它采用以用户为中心的方法,将客户视为终端用户。

FDD的缺点

  • 即使项目开发团队使用了大量的文档,也缺乏向客户提供书面文档的能力。

  • 这对于小型项目来说并不理想。

  • 由于它强调个人代码所有权,因此缺乏团队对功能的共享所有权。

结论

总之,功能驱动开发是一种实用的敏捷策略,对于持续时间长且复杂的项目来说效果很好。对于寻找可扩展的、结构化的、简单的、能产生可预测结果的敏捷方法的开发团队来说,它是一个不错的选择。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程