6

由于最后一个问题我写得不好,而且大部分答案都很好,但根本不是我打算提出问题的方向,所以我将其删除并重新制作为这个问题。

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

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

如果我什至需要一个正式的流程,那么对于独立开发者来说,存在哪些流程或者可以采用哪些流程?


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

4

6 回答 6

6

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

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

于 2008-09-23T21:06:16.087 回答
1

请记住,虽然您现在可能独自一人,但这些项目可能会变得足够成功,以至于其他人也加入了您的行列。因此,虽然您现在可能不需要所有额外的东西,但最终您可能希望您有一些设计文档和说明,用于构建事物、管理源代码存储库等。

还要记住,那些“其他人”可能是几年后的你,那时你已经忘记了你现在所知道的一切。(你还年轻——你还不知道记忆消失的速度有多快。)所以想想你想为未来的自己记录什么。

于 2008-09-23T21:14:02.200 回答
1

你肯定需要一个流程,有很多非代码数据用于管理和支持项目。如果没有流程,您将很快受苦,因为您忘记了不做某事或重新学习如何分支 svn b/c 的所有充分理由,您每月只做一次。

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

测试、源代码控制等都是良好的开发实践,无论项目规模如何,都应该进行。

于 2008-09-23T21:17:17.090 回答
1

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

保持源代码控制的一件事是遵循我们决定从一开始就实施的“敏捷开发”范式:无情地重构。我们做到了,而且天哪,它一直把整场比赛都打破了。但它确实保持了源代码的清洁,当我们决定时不时地进行“稳定版本”时,这一切似乎都走到了一起。

于 2008-09-23T21:19:49.753 回答
1

参考您链接到的页面 - 我说遵循流程。我是一个单独的开发者,我遵循这些过程。如果不了解您的要求和先决条件,您就无法编写软件。正如其他人所说,了解您的工作方式以及您的优势和劣势。此外,有时您会遇到困难并寻求一些外部帮助。没有人知道一切。

The whole process takes time (often never ends) and I have killed far too many brain cells over the years to store every detail in my head. Mind maps, flow charts and things like OneNote are good for non-coding long-term memory. Try to keep the bulk of it in one place or at least linked together so you don't have to try to remember where to look for it.

于 2008-09-23T21:48:04.443 回答
0

跟随你的心。

于 2008-09-23T21:10:03.253 回答