参考使用微软的Duwamish7.0的设计模式开发B/S的系统。。应该如何进行项目管理?谢谢
1。如何进行人员的分工
2。进行开发的顺序如何安排(表示层,业务层,数据访问层等等)
问题点数:100、回复次数:32Top
1 楼singlepine(小山)回复于 2005-12-01 20:47:54 得分 0
应该按功能模块来分,比如
a负责用户管理模块的表示层,业务层,数据访问层
b负责email模块的表示层,业务层,数据访问层
c负责论坛法帖模块的表示层,业务层,数据访问层
d负责公共模块,如分页控件、菜单、homepage等
dba负责所有数据库维护及存储过程撰写
因为这样分工,每个人对自己负责的模块熟悉,能很好的将表示层,业务层,数据访问层多层之间的交互完成,如果按层分工的话,比如a负责表示层,b负责业务层,c负责数据层,这样abc三人要对系统每个模块都要去做,也就相当于abc三人分别在做三套东西,而不是一套,而且会因为某个人的延误而导致整个系统开发被延误,如b的业务层没做完,那么a和c就不能联调,qa就不能正常测试,这样就导致时间被拖后,而如果按功能分,如果a的功能模块没有完成,并不会影响bc,因为只是用户管理模块没有做好,而其他功能可以正常run了,qa除了用户管理暂时不测外其他都可以测了,而且这时bc都可以过来帮a,如b帮忙做业务层,c帮忙做数据层。
当然这只是大方向,而且还可以分的更细一点,分解到每个页面,这样更能合理的掌控时间和进度,从而对进度和难度了如指掌,从而可以根据实际情况随时对人员和项目分工进行调配,从而减少资源浪费。
总之,要把计划写的很详细,才能清楚而全面的了解系统,才能按计划按时间合理正常的进行下去。Top
2 楼jxufewbt(我的目标是5星)回复于 2005-12-01 20:54:09 得分 0
用VSS,可以很方便的进行团队开发,项目管理,版本控制;开发小组各个成员之间互不干扰:
Visual Studio .Net团队开发
目录:
〇、 摘要一、 开发前的准备
二、 创建空的SourceSafe数据库
三、 新建项目并加入版本控制
四、 获取SourceSafe中的项目
五、 版本控制的几个概念
六、 版本控制项目的管理
七、 总结
〇、摘要
在企业开发环境中,源代码管理占据着重要的一环。本文将通过一个实例,创建一个源代码管理的项目SourceManager,来讲述如何使用Visual Studio.Net开发环境,配合Visual Source Safe 6c和IIS,创建企业团队开发环境。
------------------------------------------------------------------------------
一、 开发前的准备
1、 在装有Windows 2000或者Windows XP Professional的机器上安装.Net Framework SDK、Visual Studio.Net、Visual Source Safe 6C。(如果用户操作系统是Windows .Net Server,则无须安装.Net Framework SDK,.Net Server自带的IIS 6已经完全包含了对.Net的支持)这些工具在Visual Studio.Net的安装盘上都可以找到。
2、 一台专门用于存放版本控制中心数据库的服务器。该服务器不需要安装.NET Framework SDK和VS.Net,但是必须安装VSS 6C。我们称这台服务器为开发服务器DataCenter。
3、 一个主域控制器,将DataCenter服务器加入这个域,为每一个开发用户分配域帐号。这样所有小组成员可以通过登录到Window NT域来访问版本控制信息。
注意:Visual Studio 6所带的Visual Source Safe 6不支持.Net的一些文件格式。如果你安装了VSS 6,也需要再安装一次VSS 6C,否则在VS.Net环境中将源代码加入到VSS数据库中将会出现错误。
--------------------------------------------------------------------------------
二、 创建空的SourceSafe数据库
在开始工作之前,需要建立一个空的SourceSafe数据库,来存放源代码控制数据,并为小组开发人员分配访问帐号。在DataCenter服务器上新建Source Safe数据库。步骤如下:
1、 启动"开始"——"程序"——"Microsoft Visual SourceSafe"菜单下的SourceSafe 6.0 Admin。如果你是第一次安装VSS 6C,Common数据库的Admin帐号为空。如图一所示:
图一 VSS登录窗口
2、 在Visual SourceSafe Administrator窗口中,你可以看到Source Safe默认的两个用户Admin和Guest。如果你不打算使用默认的Common数据库,而要建立一个属于自己的项目数据库。选择菜单"Tools"——"Create Database",如图二所示:
图二 VSS管理窗口
3、 在弹出的对话框中选择新数据库存放的位置。这里我们选择:C:\SourceManager\。点击OK后,提示你已经创建了数据库。
4、 选择"Users"——"Open SourceSafe Database…",使用Browser按钮,选择刚才所创建的SourceManager数据库C:\SourceManager\srcsafe.ini。
5、 使用"Users"——"Change Password"命令更改Admin帐号的密码。使用"Users"——"Add User"命令为项目小组成员创建SourceSafe帐号。
6、 将C:\SourceManager目录设置为共享。共享权限默认是Everyone完全控制。如果希望只对项目小组成员开放,不希望其他人操作数据库文件(注意:没有SourceManager帐号的人不能访问SourceSafe中的内容,但如果他有权限的话,可以删除或修改数据库中的数据),请将Everyone组从权限组中删除,并从域目录中选择可以访问该目录的域帐号或计算机。
7、 到此,一个空的项目数据库建立完毕。
--------------------------------------------------------------------------------
三、 新建项目并加入版本控制
下面将演示在一个装有VS.Net的计算机上创建一个Windows应用程序和一个Web项目,并把它加入到上面所建的SouceManager数据库中。
1、 启动VS.NET。
2、 使用"文件"——"新建"——"空白解决方案"命令,在D:\下新建解决方案SourceManager。VS.Net会在D:\下自动创建一个SourceManager目录,该目录中有一个解决方案文件SourceManager.sln文件。
3、 使用"文件"——"新建"——"项目"命令,在项目类型中选择"Visual C#项目",在"模板"中选择"Window应用程序"。项目名称MyWindowApp。并选择"添入解决方案"选项。确定。
图三 新建Windows应用程序项目窗口
4、 使用"文件"——"新建"——"项目"命令,在项目类型中选择"Visual C#项目",在"模板"中选择"ASP.NET Web应用程序"。在"位置"栏中填写http://localhost/MyWebApp。并选择"添入解决方案"选项。确定。
图四 新建Web应用程序窗口
这样就在解决方案中建立了一个Window应用程序和一个Web应用程序。下面讲述如何将整个解决方案加入到源代码版本控制。
5、 在WebFrom1和Form1的设计器中各自加入一个Label控件,保持它的属性不变。我们将看到从另一个主机上获取的程序用户界面中也会有这一个控件。
6、 使用"文件"——"源代码管理"——"将解决方案加到源代码管理"命令。
图五 源代码管理菜单
7、 在弹出的Visual SourceSafe Login登录窗口点击"Browser"按钮,弹出打开数据库对话框,点击该对话框的"Browser"按钮,弹出如下对话框,在"文件名"中输入\\DataCenter\SourceManager\srcsafe.ini。确定后输入上面所分配的SourceSafe帐号和密码。
图六 打开VSS数据库对话框
8、 首先会弹出一个保存解决方案的提示窗口,让你选择将要保存到SourceSafe中的项目名称,默认与解决方案的名称相同。点击OK,会得到项目在数据库中不存在的提示,点击"Yes"创建该项目。
图七 在VSS中创建项目对话框
9、 接下来会让你选择Web应用程序的保存位置。如下图所示。由于Web应用程序通常保存在本地的IIS根目录下。与解决方案中的其它项目不在同一个目录中,所以需要为Web应用程序在SourceSafe中单独建立一个项目。在该窗口点击"OK"按钮接受SourceSafe的默认项目名称MyWebApp。
图八 在VSS中创建Web项目对话框
10、 到此,我们已经在SourceSafe中添加了整个解决方案,包括一个Windows应用程序和一个Web应用程序。在"解决方案资源管理器"视图中,加入源代码控制的程序旁边有一把锁(如图九所示),表示文档已签入,不可编辑。
图九 解决方案资源管理器
11、 通过菜单"文件"——"源代码管理"——"Microsoft Visual SourceSafe",打开SourceSafe,可以看到,在SourceSafe中已经加入了两个项目。如图十所示:
图十 VSS浏览器
四、 获取SourceSafe中的项目
下面的步骤中将讲述如何在另一台主机上从SourceSafe获取源代码。
1、 在另一台主机上打开Visual Studio.Net开发环境。使用菜单命令"文件"——"源代码管理"——"从源代码管理打开"。重复第三步中的第7个操作,选择SourceSafe数据库的位置。
2、 弹出"Create local poject from SourceSafe"窗口,在"Create a new project in the"输入框中填写你要保存项目的本地路径,这里我们选择"C:\MyProject"。在"SourceSafe project to"中选择SourceManager项目,单击OK按钮。如果目录C:\MyProject不存在,会询问是否创建,选择"Yes All"。
图十一 从SourceSafe获取项目对话框
3、 接下来会弹出保存Web应用程序工作副本的对话框,在工作副本位置输入框中输入你想要保存Web应用的Web文件夹,也可以接受默认设置。点击"确定"按钮接受默认设置。
图十二 从SourceSafe获取Web项目对话框
4、 通过上述步骤,我们已经成功地在另一个开发主机上获得保存在SourceSafe的工程。将来如果有新的开发人员加入,只需重复这四个步骤即可。
五、 版本控制的几个概念
在Visual Studio.Net开发环境"解决方案资源管理器"的上下文菜单或者"文件"——中有如下与文件操作有关的命令,如图十三所示:
1、 文件的"签出"(Check Out):当需要编辑一个文件时,必须将该文件"签出",SourceSafe会标志该文件已经被某个用户迁出,并确保其他用户不可编辑同一个文件。对于文件,仅当文件被签入后才有这个选项。
2、 文件的"签入"(Check In):当完成文件的编辑后,最好将文件"签入",以让其他用户可以签出或者获取最新版本。对于文件,仅当文件被签出后才有这个选项。
3、 "获取最新版本":从SourceSafe数据库中获取指定文件或项目的最新版本,而又不必签出文件。
4、 "取消签出":不在SourceSafe数据库中保存签出后所做的修改,使本地文件恢复到修改之前的状态,并且将文件签入。只有文件或项目中有文件被签出后才有这个选项。
5、 "历史记录":查看文件修改的历史记录。SourceSafe数据库会自动保存每次"签入"前后的文件内容。如果需要查看历史记录。
6、 "版本比较":可以比较当前版本与历史版本之间的差异,SourceSafe将以对照的形式将两个版本的不同之处显示出来。如图十四所示:
图十四 版本比较
7、 "Roll Back":在历史版本显示对话框中有一个Roll Back命令,即将文件恢复到历史版本。当文件编辑错误时,想让文件回到历史的某个点时,使用该命令。历史版本显示对话框中还有其它命令,这里不一一详述,请读者慢慢研究。
8、 Visual Studio.Net中关于版本控制的选项:在"工具"——"选项"命令对话框中,选择左边的"源代码管理",显示如下对话框。读者可以根据项目的情况对SourceSafe选项进行设置。
图十五 Visual Studio.Net中与版本控制相关的选项
9、 其它SourceSafe操作:读者可以从"文件"——"源代码管理"——"Microsoft Visual SourceSafe"菜单,进入"Visual SourceSafe Explorer",其中大多数主要命令基本与Visual Studio.Net相同,这里就不再累赘。
Top
3 楼clxxj(查无此人)回复于 2005-12-04 01:45:38 得分 0
人员分工开采用singlepine(小山) 建议,但
"dba负责所有数据库维护及存储过程撰写"这个就要考虑你公司的实际情况.
这东西的配合实际执行起来有点困难.
也可以考虑在一个规范下由程序员分担起各自编写存储过程的任务.
至于版本的管理可以用VSSTop
4 楼cnjack(龙飞九天)回复于 2005-12-04 08:32:10 得分 0
學習...
收藏...Top
5 楼danielliu1211(执着地画着鸡蛋~~)回复于 2006-05-27 18:31:24 得分 0
看了singlepine(小山)的回答,感觉有了一些启发,但有些细节的问题还需要请教大家
模拟环境:A是架构师、B是程序员、C是程序员
按照singlepine(小山)对于团队分工方式的思路,我的问题如下:
1、若此三人都使用VS进行开发(架构师也需要进行编码工作),则应该如何创建整个solution??如果还是只创建一个solution,那3个人在编码的时候能否同时操作这个solution??以什么方法去操作呢?是放在共享服务器上让3人各自去打开么?
2、按照singlepine(小山)的说法,A、B、C三人分别编写各自负责的功能模块的表示层、业务逻辑层和数据访问层,那么A(架构师)在正式编码开始之前,是否应该定义好这三大功能模块之间的接口?具体应该如何定义呢?
3、A(架构师)需要给B和C两人提供哪些指导性的文档,B和C才能按照要求将代码编写好呢?
4、在表示层(界面)设计方面,A、B、C三人应该如何保持界面的统一?界面是否需要在正式编码开始之前先设计好呢?还是有其他的方式?
由于我没有团队开发的经验,所以急切地想了解这方面的知识,还有大家在团队开发过程中的宝贵经验
万分感谢大家!
Top
6 楼fattycat(最爱胖猫)回复于 2006-05-27 18:39:33 得分 0
mark!
也想听各位对于开发流程细节的见解Top
7 楼danielliu1211(执着地画着鸡蛋~~)回复于 2006-05-28 09:14:06 得分 0
没人想了解么?顶一下Top
8 楼chengbo1983(chengbo.net)回复于 2006-05-28 10:31:06 得分 0
强贴,顶一下Top
9 楼artak(甜葡萄)回复于 2006-05-28 11:37:53 得分 0
作个记号Top
10 楼fattycat(最爱胖猫)回复于 2006-05-28 16:19:00 得分 0
hoho
我再顶一下Top
11 楼fattycat(最爱胖猫)回复于 2006-05-29 08:47:46 得分 0
upupTop
12 楼fattycat(最爱胖猫)回复于 2006-05-30 10:44:06 得分 0
pupuTop
13 楼ilovejolly(有些伤感)回复于 2006-05-30 11:13:54 得分 0
jfTop
14 楼hanchi2002()回复于 2006-05-30 11:45:19 得分 0
学习呀!!!Top
15 楼fattycat(最爱胖猫)回复于 2006-05-30 16:12:42 得分 0
upup
期待精彩回答~~
^o^Top
16 楼xiaogaohui(陈胜吴广你们在哪里~~)回复于 2006-05-30 16:52:29 得分 0
灌水的太多了.听听大家的见解Top
17 楼veryhappy(wx.net)回复于 2006-05-30 17:18:51 得分 0
我们单位就是小山所说的方式进行开发的Top
18 楼danielliu1211(执着地画着鸡蛋~~)回复于 2006-05-30 19:26:35 得分 0
大家帮我看看我的问题好吗?
真的很想知道,具体工作是怎么进行的,细致一些的
请教Top
19 楼danielliu1211(执着地画着鸡蛋~~)回复于 2006-05-31 08:08:36 得分 0
upupTop
20 楼fattycat(最爱胖猫)回复于 2006-06-05 09:21:33 得分 0
还没有人回复啊Top
21 楼ld_thinking(懒得想)回复于 2006-06-05 09:24:57 得分 0
留座学习Top
22 楼RayLynn(福建风帆人才网 (www.ffrcw.com) IT)回复于 2006-06-05 09:55:00 得分 0
先mark ,等待回复`Top
23 楼fattycat(最爱胖猫)回复于 2006-06-06 09:10:33 得分 0
顶一下,大家都看看先,呵呵Top
24 楼fattycat(最爱胖猫)回复于 2006-06-07 22:08:33 得分 0
哎,高手呢?Top
25 楼lym1314(一枝梅)回复于 2006-06-10 00:18:06 得分 0
期待高手
我还会回来的Top
26 楼Marguess(留候)回复于 2006-06-10 11:51:01 得分 0
1.创建一个solution,每一层是一个project.
2.按照singlepine(小山)的说法,A、B、C三人分别编写各自负责的功能模块的表示层、业务逻辑层和数据访问层,这种方法是错误的,如果有公共的数据访问方法,是否三个人每个人写一个呢?
那分层开发有什么用?代码的复用体现在哪呢?三个人各写各的,模块间没有关系,最后开发完是一个什么系统?
实际情况应该是架构师写好所有的方法(当然不是一个个的写,这个可以用Rose XDE设计好UML就可以自动生成),调用的层次关系,架构师一定要先部署好.这样开发才不会乱.
3.在表示层(界面)设计方面,要实现界面的统一,最好用css,这样修改起来也方便,当然还有,有做将公共的页面做成UserControl,这样就可以实现统一了
Top
27 楼shixin1198(好好学习 天天上上)回复于 2006-06-10 12:57:13 得分 0
Marguess(Marquis) 兄说的对 按照(小山)的做法 违背 多层开发的原则
不关公司 大小 项目大小 人员多少 采取正确的 架构方法 是明确的 也是提高 效率的Top
28 楼feiren1421(Slash:弦断谁听,我醉谁知?)回复于 2006-06-10 13:51:12 得分 0
收藏Top
29 楼fattycat(最爱胖猫)回复于 2006-06-12 08:53:05 得分 0
哦?那Marguess(Marquis)的意思是,架构师将所有的层次划分好、类模型建立好,然后程序员每人负责一层的编写?Top
30 楼Marguess(留候)回复于 2006-06-12 19:39:23 得分 0
不仅仅是类模型,甚至方法名字都可以定义好,方法的功能说也可以说明一下.
我的经验是每个程序员负责一个功能模块的来写.根据具体项目分功能模块,效率高些,可以让程序员写多个层,但是相同功能模块最好一个人来写.Top
31 楼amendajing(学习,是个漫长的旅途!)回复于 2006-06-12 20:38:59 得分 0
vss管理,分模块开发Top
32 楼fattycat(最爱胖猫)回复于 2006-06-18 11:03:27 得分 0
对于一个复杂的系统来讲,架构师怎么可能把每个类以及其中的方法都写出来呢?评经验么?
即使都写出来了,如何进行测试呢?怎么保证写出来的东西是正确的呢?
可能是我对OO的思想还只是一知半解吧
希望大家能把整个建模——分工开发的过程,以及过程中涉及到的问题帮我捋一遍
不胜感激了~
谢谢Top




