如何利用FDD模式实现项目的精确、快速开发
2006-04-06 11:31
881 查看
FDD模式是功能驱动开发模式的简称,其具体的内容可从http://www.huihoo.com/development/fdd.html阅读,文章对该模式的内容描述得非常的详细。
从该模式的名字就可以看出该模式以功能作为项目过程执行的基本单元,通过短周期的迭代实现对开发进程的精确及时地监控。该模式的实现仍然需要UML的支撑,完成对系统的分析和设计,而且要将测试贯穿于整个过程之中。
在FDD中存在着“主要功能集”、“功能集”和“功能”的概念,这在UML中有与之对应的名称,功能集对应系统特性;功能则是对系统特性细化分析的结果;主要功能集则是那些你准备在本迭代周期分析、设计和实现的功能集。
根据功能来组建临时的功能团队(团队的生命周期由功能的完成情况决定)是种非常有效的手段,功能团队由一到若干人组成,每一个功能团队由一名主要开发人员(该人员最好能贯穿项目的整个生命周期,不要发生人员变动)领导其他成员完成功能的开发,功能团队之间的成员是相互交错的。主要开发人员通过对过程的监控来提高该功能在实现上与设计保持一致性,项目管理人员或系统设计师通过主要开发人员定期提交的功能进展情况报告对整个项目的进度及质量进行精确实时地控制,从而加速开发进度,保证项目质量。另一方面,功能团队有利于提高对项目组成员社会心理需求的满足,活跃整个项目团队的气氛,增强凝聚力。在主要开发人员的确定上也需谨慎,宁缺勿滥的原则更加有益。
FDD将整个过程定义为五个阶段,每个阶段需完成的内容,以及各阶段中各项工作所占比重在链接文章中都有非常详细描写。
从该模式的名字就可以看出该模式以功能作为项目过程执行的基本单元,通过短周期的迭代实现对开发进程的精确及时地监控。该模式的实现仍然需要UML的支撑,完成对系统的分析和设计,而且要将测试贯穿于整个过程之中。
在FDD中存在着“主要功能集”、“功能集”和“功能”的概念,这在UML中有与之对应的名称,功能集对应系统特性;功能则是对系统特性细化分析的结果;主要功能集则是那些你准备在本迭代周期分析、设计和实现的功能集。
根据功能来组建临时的功能团队(团队的生命周期由功能的完成情况决定)是种非常有效的手段,功能团队由一到若干人组成,每一个功能团队由一名主要开发人员(该人员最好能贯穿项目的整个生命周期,不要发生人员变动)领导其他成员完成功能的开发,功能团队之间的成员是相互交错的。主要开发人员通过对过程的监控来提高该功能在实现上与设计保持一致性,项目管理人员或系统设计师通过主要开发人员定期提交的功能进展情况报告对整个项目的进度及质量进行精确实时地控制,从而加速开发进度,保证项目质量。另一方面,功能团队有利于提高对项目组成员社会心理需求的满足,活跃整个项目团队的气氛,增强凝聚力。在主要开发人员的确定上也需谨慎,宁缺勿滥的原则更加有益。
FDD将整个过程定义为五个阶段,每个阶段需完成的内容,以及各阶段中各项工作所占比重在链接文章中都有非常详细描写。
相关文章推荐
- 如何利用NB代码生成工具和NBear框架,快速开发WEB项目
- 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获
- 函数项目【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)函数项目
- 如何利用NB代码生成工具和NBear框架,快速开发WEB项目
- 如何利用NB代码生成工具和NBear框架,快速开发WEB项目
- 如何利用NB代码生成工具和NBear框架,快速开发WEB项目
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现类似于微信的悬浮显示二维码效果
- 如何利用LVS+keepalived(DR模式)实现高负载均衡
- 【COCOS2DX-LUA 脚本开发之十二】Hybrid模式-利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)
- 如何用Eclipse快速开发SSH框架项目
- .Net语言 APP开发平台——Smobiler学习日志:Poplist控件的正确打开方式以及如何快速实现
- 项目笔记:6.利用LVS实现网站流量高效快速的分发
- warensoft .NET 快速开发系列--利用C#实现对称式加密
- 利用 SPL 快速实现 观察者设计模式
- 利用 React/Redux/React-Router 4/webpack 开发大型 web 项目时如何按需加载
- .Net语言 APP开发平台——Smobiler学习日志:如何快速实现地图定位时的地点微调功能
- 【AWS+DaoCloud的应用分享】BootDev如何利用docker在AWS实现超快速自动伸缩
- 如何开发一个java开源框架-----Jvn框架之实现mvc框架模式(第一讲)
- 初创企业如何实现快速敏捷开发
- 浅析如何利用angular结合translate为项目实现国际化