新手请教一下大家远程协作项目开发(也是多人协作)的经验。。

2015-01-16 17:13:36 +08:00
 Comdex

rt.本人新手和几个队友(分隔各地)准备开发一个中小网站用的是java的SSH,我们这几个队友多人合作开发项目经验不足(以前都是单枪匹马干的,最多也两三个人的样子),现在我们决定了用git版本控制系统作为项目远程协作开发的基础,用哪些在线团队协作工具沟通交流(就比如tower,风车之类的),但我们项目经验不足,也没尝试过远程协作,最主要的是多人协作要怎么搞啊,来取取经,希望能得到系统的回答,我们都太菜了请轻喷。。。。那么问题来了,需求分析文档之类的东西有必要用Git管理么?用office的word还是纯文本文档记录?一个项目大家一般怎么分工的?(感觉很难分工的样子,有些东西有依赖的,数据库弄好了,有数据库操作接口才能搞神马注册登录吧?),项目开发过程中一般需要神马文档方便大家理解和分工的?(不用很正规的,毕竟也不是什么工作的项目,合作人数也不多就4,5个人吧)还有的是为了方便分工有必要先搞个文档定义好方法接口之类的然后大家根据这文档实现各个方法和进行调用?(神马生命周期法和快速原型法之类的?)字数有点多了,请大家不要介意。。。。说说你的分工开发项目的过程也可以,谢谢。。。

5650 次点击
所在节点    问与答
28 条回复
tabris17
2015-01-16 17:16:32 +08:00
文档可以使用Confluence或者开源的wiki系统

项目管理可以用JIRA或者Redmine
Comdex
2015-01-16 17:30:47 +08:00
@tabris17 十分感谢你的回答,我们做的项目不大,这些系统都没了解过会不会上手比较慢?其实就想知道多人合作开发中小项目的过程这些。。。。。还有一般怎样确定分工之类的
Keinez
2015-01-16 19:34:01 +08:00
Slack(异步交流 + 连接协作工具) + 任意项目管理app + Google Docs + Skype + Teamviewer + Dropbox
frozenshadow
2015-01-16 20:51:37 +08:00
啊,虽然我们也没试过。但是推荐一本书。 http://book.douban.com/subject/21362627/ remote
Comdex
2015-01-16 21:32:42 +08:00
@Keinez
@frozenshadow 其实重点不是远程而是多人如何分工,项目如何安排的事。。。。。
Keinez
2015-01-16 21:36:10 +08:00
补充工作习惯:

如果你们时差一致,建议每天一次半小时 meeting,使用 Skype 总结昨天的工作和分配今天需要的工作。

如果时差不一致,需要你们有强大的自觉性,主要关注 Slack 和项目管理工具。

Slack 会提醒你所连接的 app 有什么更新,而项目管理工具能让你清楚大家在搞定什么,目前有哪些事项,优先级如何,进度如何,deadline 如何……等等。
Keinez
2015-01-16 21:37:50 +08:00
@frozenshadow v2ex 有 Remote 的译文,详情请自己搜索。

@Comdex 如何安排,依照你们每个人擅长的事情而定。我比较喜欢扔一堆 task 到项目管理工具里面去,排好优先级,大家自己领。

到时候每个人领了多少,完成率如何,完成质量怎样,一目了然。
Comdex
2015-01-16 21:57:36 +08:00
@Keinez 主要是如何根据项目划分任务的问题,比如说如何分模块开发之类的,是根据详细定义了方法接口的文档划分任务开发呢还是各自做自己的那一块,就比如说一个人负责用户系统注册登录之类的开发,另一个人负责数据库操作之类这样的如何安排的,因为注册登录这些也会依赖数据库的操作大家又如何合作呢
Keinez
2015-01-16 22:06:13 +08:00
@Comdex 嗯……我不是很懂程序开发的部分,但建议是按照功能/特性/bug分任务,然后分配一个人去领或者谁有空/有能力就去领。

出了新需求或者新bug照做。
zhouquanbest
2015-01-16 22:17:13 +08:00
公司分广州和北京两地 合作了这么久
我觉得其他的东西都是浮云
最刚需的工具
返璞归真

YY语音

谁用谁知道
魔兽世界40人开团都用 为啥写代码十几个不用
交流起来最舒爽的才是最值的
wenbinwu
2015-01-16 22:20:11 +08:00
Slack + JIRA + BOX + Google Hangout
我们至少在用这些,还有jabber,yammer等等
Comdex
2015-01-16 22:22:10 +08:00
@Keinez 目前就是这个问题,就我刚才举得例子嘛,一个成员要做用户注册登录功能,那也要涉及数据库,那他是包揽所有么?这样他写的数据库操作可能和其他人重复呢?在一个项目里如何避免重复劳动?又要做什么准备才会让一个人的开发不会依赖另一个人做好才能做?
@zhouquanbest 能说说具体的程序分工方面的经验么
Comdex
2015-01-16 22:23:30 +08:00
@wenbinwu 工具之类已经很多选择了,现在我们的问题是程序设计中如何分工,需要产生什么文档才更方便分工协作的问题。。。。
wenbinwu
2015-01-16 22:29:25 +08:00
分工不需要工具
把结果记录在公共文档
然后用jira之类的分配具体任务就行了
Comdex
2015-01-16 22:32:16 +08:00
@wenbinwu 嗯嗯,问题就在于如何分工。。。。主要是关于程序设计方面的
Keinez
2015-01-16 22:33:38 +08:00
@Comdex ……为什么会涉及数据库,用接口啊。
Comdex
2015-01-16 22:36:11 +08:00
@Keinez 说到点上了,我是说我们是要写一份文档设计好各种可能用到的接口,列好功能特性,然后根据功能模块分工,各成员依赖于文档开发这样?这样前期做文档时会费时么?在设计接口时也不可能面面俱到。。。。
wenbinwu
2015-01-16 22:36:45 +08:00
@Comdex 大伙儿先坐在一起商量吧, 把大问题分出来,依赖都写好
然后自己挑着领任务
Comdex
2015-01-16 22:43:48 +08:00
@wenbinwu 这个依赖是指一些公共的接口设计到数据库操作之类的接口么?主要产生这些文档?
Keinez
2015-01-16 22:47:27 +08:00
@Comdex 你总不会连文档都不改吧……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/162770

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX