f*****0 发帖数: 166 | 1 【 以下文字转载自 Java 讨论区 】
发信人: forty40 (fortran95), 信区: Java
标 题: 请教:软件开发流程
发信站: BBS 未名空间站 (Wed Jan 23 13:41:44 2013, 美东)
各位大牛,
最近我在自学Java 编程,读到一本书,head first software development. 里面提到
软件开发流程,包括“user stories""iteration",“documentation”,“test
drive development” 以及 "deliver"等等。
我想知道这个开发流程是不是大家都会真正在实践中采用和遵循(比方说从user
stories开始估计时间需求,整个开发分成几个iteration等等),还是,基本上自己想
怎么开始就怎么开始?还有,大家都会用test-drive development 来开发编程吗?
敬请指教。 |
c*********e 发帖数: 16335 | 2 软件开发中,永远记住,你做出来的不一定是客户想要的。所以,一定要多沟通,别想
当然。软件开发有多个cycle,第一次做完,给客户看,然后根据客户意见修改,这是第
二次,然后再给顾客看。如此反复。绝对不是一个简单的过程。
【在 f*****0 的大作中提到】 : 【 以下文字转载自 Java 讨论区 】 : 发信人: forty40 (fortran95), 信区: Java : 标 题: 请教:软件开发流程 : 发信站: BBS 未名空间站 (Wed Jan 23 13:41:44 2013, 美东) : 各位大牛, : 最近我在自学Java 编程,读到一本书,head first software development. 里面提到 : 软件开发流程,包括“user stories""iteration",“documentation”,“test : drive development” 以及 "deliver"等等。 : 我想知道这个开发流程是不是大家都会真正在实践中采用和遵循(比方说从user : stories开始估计时间需求,整个开发分成几个iteration等等),还是,基本上自己想
|
x**n 发帖数: 461 | 3 if you are just creating some fun for yourself, forget all of them. or, if
you are creating real applications, follow them as much as you can, and
always stay with tdd. |
W*******e 发帖数: 1268 | 4 这个。。不要急着一开始就编程。很多开发模式到现实项目中都需要变通。
传统的软件开发是瀑布模式,现在的迅捷开发结合了原型模式,功能开发也是原型模式
,测试开发的前提是正确的系统设计。很多政府部门还是习惯于瀑布或者多重瀑布模式
,商业公司对于成熟的软件设计有的比较喜欢迅捷模式,有的在每级都引入测试。
我觉得在DC做政府项目比较实用的是一种倒金字塔模式,根据budget情况决定是否需要
在某一级做快速原型和自动测试。
做一个新项目很重要的几点是
1)如果不能对关键的功能提供可靠的estimate,最好做个快速原型或者proof of
concept,确定客户和自己在同个页面上,而且有把握实现才可以进入编程设计阶段
2)如果是团队开发,不要追求平均分配任务量,重要的是每个人都capable在每个
check point完成分配的工作
3)开发框架和编程标准的设定是很重要的,影响代码的可维护性和质量。
4)资金不足的项目首先保证基本功能的稳定,需要时放弃其他的增加功能。如果连基
本的功能都不能保证,最好别接。
【在 c*********e 的大作中提到】 : 软件开发中,永远记住,你做出来的不一定是客户想要的。所以,一定要多沟通,别想 : 当然。软件开发有多个cycle,第一次做完,给客户看,然后根据客户意见修改,这是第 : 二次,然后再给顾客看。如此反复。绝对不是一个简单的过程。
|
c*********e 发帖数: 16335 | 5 资金不足的项目用免费软件。这样2方都高兴。
【在 W*******e 的大作中提到】 : 这个。。不要急着一开始就编程。很多开发模式到现实项目中都需要变通。 : 传统的软件开发是瀑布模式,现在的迅捷开发结合了原型模式,功能开发也是原型模式 : ,测试开发的前提是正确的系统设计。很多政府部门还是习惯于瀑布或者多重瀑布模式 : ,商业公司对于成熟的软件设计有的比较喜欢迅捷模式,有的在每级都引入测试。 : 我觉得在DC做政府项目比较实用的是一种倒金字塔模式,根据budget情况决定是否需要 : 在某一级做快速原型和自动测试。 : 做一个新项目很重要的几点是 : 1)如果不能对关键的功能提供可靠的estimate,最好做个快速原型或者proof of : concept,确定客户和自己在同个页面上,而且有把握实现才可以进入编程设计阶段 : 2)如果是团队开发,不要追求平均分配任务量,重要的是每个人都capable在每个
|