单个开发人员应遵循多少进程?是一个正式的过程吗?


6

因为我没有写出最后一个问题做得很好,而且大部分答案都很好,但根本没有按照我打算提出的问题的方向,所以我将其删除并重新编写为这个问题。

我是个人项目的独立开发者,一般都是非常小的东西,但我有一些想法可能会变成FOSS项目。我相信文档(在不同程度上取决于具体项目和最终用户),源代码控制和项目管理(包括错误跟踪,时间管理等)。但是,我不确定我应该跟多少个formal process

也许只是在源代码控制下保留自述文件,关联的设计/需求文档和代码内注释就足够了。或者,也许有一个适合单个开发人员遵循的敏捷流程。或者,也许我应该为每个项目采用古老的瀑布模型。

如果我甚至需要一个正式的流程,什么类型的流程存在或可以采用独奏开发者?


编辑:我意识到有任务,我正在做像文档和源代码管理。但是,我不确定问题的部分。作为一名独立开发人员,我是否应该采用更灵活的方法(如果是这样,敏捷 - XP?Scrum?RAD的哪个“分支”)还是更传统的方法(瀑布或螺旋?)?

  0

感谢这个过程,您希望实现什么目标? 23 9月. 082008-09-23 21:01:42

  0

我想生产更好的产品(源代码和任何相关文档)。 23 9月. 082008-09-23 21:26:37

6

即使您不需要流程来促进团队成员之间的良好沟通,流程也可以帮助您弥补这一事实,即当您18岁时,您并不像您认为的那样超人。)类型和数量你决定做的'文书工作'取决于你自己的长处和短处。记性不好?每天写下你的设计和想法。很好看的树木,但不是森林?确保您对您的要求和设计格外小心。好看的森林,但不是树?详细的任务清单,时间估算和频繁交付物是你的朋友。

归结为:您可能会搞砸什么,以及哪些流程可以帮助您完成特定的工作方式。


0

追随你的心。


1

请记住,虽然你现在可能会独自一人,但这些项目可能会成功,其他人加入你。所以,虽然现在可能不需要所有额外的东西,但最终你可能希望你有一些设计文档和指令来构建东西,管理源代码库等。

还要记住那些“其他人”可能是你在几年之内,当你忘记了你现在知道的一切。 (你还年轻 - 你还不知道记忆消失的速度有多快。)所以想想你想为未来的自我的利益记录什么。


1

你肯定需要一个过程,有很多非代码数据用于管理和支持一个项目。没有一个过程,你会很快受到磨难,重新设计设计思路,因为你忘记了所有不做任何事情的好理由,或者重新学习如何分支svn b/c,你只能每月做一次。

有关设计,设计决策,操作等的文档对于任何重要项目都是至关重要的。

测试,源代码管理等都是很好的开发实践,应该完成,不管项目大小。


1

这是一个非常宽泛的问题,但也许我可以通过分享我的经验来帮助。我和一些朋友在一个爱好游戏编码项目上工作了近5年。作为一个非常紧密团结的开发人员,我们通常将我们的机器拖入一个单独的公寓,在周末开发项目。我的观点是,它可以与单人努力相比较,因为我们都在那里决定重要的设计决策,等等。 '处理?'不,我无法辨认,即使是在回想起。

控制源代码的一件事是遵循我们决定从一开始就实现的'敏捷开发'范例:无情地重构。我们做到了,神圣的地狱让它在整个游戏中一直处于分裂状态。但它确实保持源头干净,当我们决定每隔一段时间去发布“稳定版本”时,它似乎都变成了另一个。


1

引用你链接到的页面 - 我说遵循过程。我是独奏开发者,我遵循这些流程。不知道你的要求和先决条件,你就不能编写软件。正如其他人所说的,了解你的工作方式和你的长处的弱点。此外,有时你会卡住&获得一点外部帮助。没有人知道一切。

整个过程需要时间(通常永远不会结束),并且多年来我杀死了太多的脑细胞,以将每个细节存储在我的脑海中。思维导图,流程图和像OneNote这样的东西对于非编码的长期记忆非常有用。尽量将它的大部分保留在一个地方,或者至少将它们联系在一起,这样你就不必试图记住去哪里寻找它。