统一进出口包装功能与项目管理研究-研发项目管理

>>统一进出口包装功能与项目管理研究-研发项目管理

统一进出口包装功能与项目管理研究-研发项目管理

引言:当今社会市场竞争激烈,软件开发企业想要占据前列需要在研发管理上下功夫,“向管理要效益”已经成为软件开发企业的共识,研发项目管理在软件企业中的普及也是大势所趋。国内做软件项目管理工具的开发商翼发云近几年发展十分迅速,越来越多的软件开发企业认识到研发项目管理的重要性,能切实有效降低成本,规范软件开发流程,提高软件产品质量。国内研发项目管理系统、敏捷开发管理工具的领导品牌翼发云敏捷项目管理系统采用可视化业务流程技术,支持瀑布模型等传统软件研发项目管理,同时也支持scrum等敏捷开发流程,是理想的敏捷开发管理工具,涵盖软件项目管理工作的整个生命周期。为提高国内软件开发企业的项目管理水平,分享一篇企业管理相关的知识文章。

本文摘要

本文首先描述了Unity3.0在支持大型游戏项目开发时的两个不足:即对模块化和svn协同缺乏支持。随后,分析了Unity自带的Export/Import Package 功能,并提出了使用此功能与svn配合实现多人项目协同的方法。有关Unity的其他话题也可以查阅我的其他文章。

统一项目协同的挑战

在使用Unity开发游戏项目时,一般都需要多人同时工作。例如每人负责不同的场景,或者一些人负责调试光照和渲染,另一些负责编写程序逻辑。总之一个人全包的情况对于稍大一点的项目而言少之又少。但遗憾的是Unity对协同项目工作和大型项目的支持可以用糟糕来形容。 scrum

首先,Unity没有模块化开发的概念。我们知道模块化是开发大型项目必须的一种实践方法。例如用VC开发大型程序时,我们可以把程序拆分成多个dll项目来开发,由此减少单个项目的复杂度和编译时间。另一个例子是flash程序的开发,同样可以把工作拆分成多个flash项目,最后将每个项目生成的swf或者swc合在一起工作。

然而到目前的3.0版本为止,Unity仍然不支持类似dll或者swc/swf这种模块化构建应用程序的方法。对Unity而言,一个游戏就是一个工程。如果游戏规模很大,包含很多资源,那么项目就不可避免地变得臃肿和难以维护。Unity在打开、刷新、编译这类工程时也会耗用更多的时间。以至于在Unity官方论坛上都能看到许多这方面的抱怨。例如这篇帖子http://answers.unity3d.com/questions/19688/splitting-complex-project-into-multiple-projects就详细地描述了一个770M左右大小的项目所面临的困境。 软件项目管理

其次,Unity会将项目信息以二进制格式保存在library目录中,其中被称为元数据(Meta Data)的信息更是记录了构成游戏的许多关键数据(例如模型导入所使用的各项设置、Asset之间的引用关系等)。但由于这些数据是二进制格式,并且存放方式很不清晰,因此在使用SVN等版本管理系统时,无法采取多人修改-合并的方式。只能一个人改完后,提交整个项目,然后下一个人再改。严重阻碍了项目协同。Unity官方提供了一个收费的Asset Server,我没有用过,不知能否解决这个问题。如果我们能通过一些手段让免费的svn发挥作用,何乐而不为呢?

对于Unity的第一个缺点,我们暂时没有好的办法来解决,只能希望Unity后续的版本能提供模块化的支持。(Unity和ExitGame近期宣布展开合作,推出一款针对MMOG开发的产品组合。Unity将推出一个叫Legion的版本,与ExitGame的Photon配合。我猜测Legion应该对大型游戏项目要支持得更好些吧。) 敏捷开发流程

至于第二个缺点,我们可以用Unity的输出/导入包(Export/Import Package)功能,配合svn在一定程度上加以解决。

与“输出/进口包项目合作实施(出口/进口包)”功能

Unity的Export/Import Package功能主要用途是在不同的项目之间实现asset复用。该功能的基本介绍和操作详见官方文档,本文将进一步描述该功能的具体表现,以及如何利用该功能实现多人项目的协作。 研发项目管理

导入导出包功能具有下列特性:

  • 在导出时,Unity记录项目中导出内容的完整路径,并在导入时重建相应的目录结构。所以我们可以在项目之间同步目录。
  • 在导出时,Unity将允许您选择是否导出依赖的内容。如果勾选将自动添加所依赖的内容,并将其显示在列表中。下图。
Unity——Export/Import Package功能和项目管理的研究 Unity——Export/Import Package功能和项目管理的研究
不要在

依赖出口

依赖出口的

  • 导入时,Unity将确定当前项目中是否有完全相同的名称和路径的文件。如果有,判断修改时间是否一致,如果协议被忽略,否则将提示是否覆盖。注意Unity,不管是新的还是旧的文件,只需询问用户在包中的文件是否包含项目中的同名文件。如下:

Unity——Export/Import Package功能和项目管理的研究

  • 最重要的是,Unity输出包还包含与资产相对应的元数据。打开。unitypackage文件导出用WinRAR或其他压缩软件的统一,你可以看到这些元数据文件,如下:

Unity——Export/Import Package功能和项目管理的研究

这是因为出口自动包含有相关的元数据信息,弥补了这些数据的缺陷不能由SVN,我们可以利用这两者的结合,许多人一起工作在一个项目中的作用。具体建议如下:首先,使用SVN建立项目文件夹管理

,包括资产和图书馆目录下面的文件;负责综合项目组成员管理和提交项目更新从SVN数据库svn数据库和其他合作者的加载项目文件的合作者最近自己负责的工作内容然后,输出结果。检查输出的unitypackage文件提交综合人才输出不(通过SVN或其他方式)的新unitypackage人员将被集成到项目,然后提交给svn数据库

如果人员分工,规范的方法和规划项目的目录,可以实现多人同时工作,提高项目开发和迭代的效率。如果有更好的朋友的建议,也要让我与大家分享。其他方面的其他主题也可在其他文章中查阅。至于这篇文章的内容,我可以进一步改进。

文章从互联网整理而来,旨在传播scrum、软件项目管理、研发项目管理、敏捷开发管理工具的知识与应用,帮助软件开发企业真正了解研发项目管理的价值和意义,如果本文侵犯了您的权益或者您需要具体了解更多国内做研发项目管理系统的公司翼发云敏捷项目管理系统的相关信息,欢迎和我们联络:

【网址】www.effapp.com

2018-02-15T18:25:10+08:002018-02-15 18:25:10|Categories: scrum项目管理|