工程管理出来做什么工作,游戏工程管理

张强律师 法律头条 2022-11-16 16:42:31

导读:工程管理出来做什么工作,游戏工程管理成为主要流程并能主导一款新游戏的技术,也会从具体的技术点着眼于项目的协调。技术是单一的具体方法,工程是综合的系统协调,不同于小游戏的

工程管理出来做什么工作,游戏工程管理

成为主要流程并能主导一款新游戏的技术,也会从具体的技术点着眼于项目的协调。技术是单一的具体方法,工程是综合的系统协调,不同于小游戏的单打独斗。中大型游戏的开发是一个系统工程。因此,除了高超的技术水平,还需要掌握项目实施的方法。

随着游戏项目规模的增长,模块之间相互关联,开发成本会成倍增长。工程管理方法就是约束成本增长曲线,让团队按时保质完成整个游戏项目的开发。

在工程管理领域,虽然有一些传统软件工程、敏捷开发、PMP(项目管理认证)的做法,但是更适合传统软件开发,游戏项目有非常独特的部分。如何管理版本分支,如何定义代码规范,如何让多人合作顺畅,如何保证开发质量,是游戏主流程必须面对的问题。但是市面上的相关资料并不多,缺乏系统的归纳,所以我决定抛砖引玉,尝试写Game 工程管理。

Game 工程管理是作者在2019年9月建立的文档,历经三年时间进行了修改和整理。也是作者亲身经历的总结。适合从事游戏开发的技术人员,想做主流程的开发者,想了解程序流程的项目经理工作。

罗,作者在广州4399公司技术研发中心工作。经过多年的实践,制作了加速技术经验值增长的道具,如Unity3D网游实战(第2版)和百万Online:大型游戏服务器开发。他的书被一些大学的软件工程专业选为教材。

历时三年完成的课程《Game 工程管理》在UWA学校首开先河,获得业界领袖推荐:

建议

你有没有发现,当我们害怕未知的时候,很多时候是因为我们对事物没有全面的认识。当你知道了事情的来龙去脉,你会发现你在面对它的时候变得冷静自如,可以有效的发挥你的潜力。Game 工程管理就是这样一门课程,可以帮助我们了解游戏项目从0到1的演进过程,包括技术架构的演进,产业化的规范,组织架构,项目规划,人力成本等等。可以帮助你从容面对游戏项目,更有效的利用自己目前的能力和资源。

Unity3D高级编程:主进程笔记作者-卢泽熙

这本书是罗老师三年的心血之作。对于从事游戏多年的人来说,基于以往的经验,你可能会有不同的看法和见解。我觉得这很正常。如果大家一起抛出自己的观点,交流思想,相信会比只看这本书更有价值。这也是罗老师所希望的“抛砖引玉”。对于有志于进入游戏行业的新人来说,这本书是不可多得的分享盛宴。罗老师像一个贴心的大哥哥一样,告诉你他多年来的经历和所思所想。希望这些内容能让你少一些迷茫,多一些确定。

-广州4399虚幻发动机组-卢俊战壕

本书根据作者的主要成长路径,全面阐述了从一个游戏项目的技术人员向技术管理的通才转变的思维模式和系统总结,提出了“游戏工程管理”的概念。整个系统分为软件工程和项目管理两个阶段。本书除了给出众多案例来阐述作者对游戏工程管理的方法和实践,还通过案例全面展示了游戏的业务研发和人员管理,总结了对游戏产品的深入思考。本书提出的一套方法和体系已经在多个项目中推广并付诸实践。

-广州4399客户端主路由-张永明

目录

开放的思路

以上技术是从现代工程管理的角度开发的施工流程。

步骤1:计划里程碑节点。

案例参考分解任务

第二步:建立协作环境。

版本分支管理资源同步测试服务器部署

步骤3:分离架构。

使用层次结构观察者模式控制外部接口。

第四步:团队建设和分工

技术层面团队构成与进化招聘与面试指导新人入门。

第五步:制定代码规范。

代码风格统一,含义明确,命名清晰,状态控制清晰

步骤6:绩效和资源规划

性能客户机资源规范资源路径和命名

第七步:攻克技术难题。

突破技术瓶颈,查棘手bug,优化重建。

第八步:小心项目失控

强化验收环节力挽狂澜

结论和参考文献。

本章是试读,仅供参考

开放的思路

步骤1:计划里程碑节点。

更多信息请关注UWA学院| Unity和Unreal游戏引擎从业者学习交流平台。

第一,开篇思路

有朋友升职加薪,成为高手,可以主导一款新游戏的技术。我们之间讨论的话题也从“如何做线程调度”“如何做渲染”变成了“如何管理版本分支”“如何定义代码规范”。如何让多人合作顺利?如何保证开发的质量?这是游戏主课必须面对的问题。但是市面上的相关资料并不多,缺乏系统的归纳,所以我决定抛砖引玉,尝试写Game 工程管理。

以上技术是工程。

技术是单一的具体方法,工程是综合的系统协调。不同于小游戏的单打独斗,中大型游戏的开发是一个系统工程。所以作为主要流程,除了高超的技术水平,还需要掌握项目实施的方法。

开发不是各种功能模块的简单叠加。这就好比一个新人可以开发100个“乒乓球”“俄罗斯方块”的小游戏,却很难完成一个策略游戏。

由于模块之间是相互关联的,开发成本会随着项目规模的增大而呈指数级增长(左下),而工程管理方法就是约束成本增长曲线(右下),让团队按时保质的完成整个游戏项目的开发。

然而,实际项目面临着不同的情况。他们有的不知道自己想要什么,有的不切实际想投入两三个人竞标王者荣耀。有的项目缺技术,有的缺人力,有的缺时间。管理项目的方法自然不一样,没有放之四海而皆准的方法。因此,我们做了一些简化,将游戏工程管理的类别限制为:

给定一定的时间,稳定的项目成员,稳定的项目需求,美术同事之间顺畅的合作,按时保质完成整个游戏开发工作的方法。

这是一个理想的情况,但只有处理好理想的情况,才能推进到面对更复杂的现实情况。即使不能保证项目成功,至少技术团队不会拖后腿。

现代管理视角

在工程管理领域,虽然有一些软件工程和PMP(项目管理认证)的理论,但是游戏项目有一个非常独特的部分。每一个游戏都有它的创意部分和严谨部分。相对于其他项目(比如开发一个APP或者搭建一座桥梁),游戏的创意部分占据了更高的比重,工程开发需要适应更多的变化。

传统管理无法应用于游戏项目。传统管理诞生于机械时代,适合工厂化生产。通过规范制作流程,有什么样的投入就会有什么样的产出,而游戏开发则有更多的不确定性。

比如各个模块的开发时间是正态分布的(左下),而传统管理往往采用严格的进度计划(右下)。这两者是有矛盾的。如果时间太紧,如右图所示,登录系统的截止时间定在周二,意味着有一半以上的可能性无法按时完成,导致开发人员为了赶进度,不得不加班加点来弥补或者牺牲质量;如果时间表比较宽松,开发者可能会比较清闲。

敏捷开发在游戏项目中也经常被滥用。敏捷开发的主要推动者大多有外包或技术咨询公司的经验,他们的想法必然与他们的经验有关。如果把视角定位在技术团队,把规划当成客户,传统的敏捷思维可能更合适。如果把视角定位在整个开发团队,把玩家当成客户,就要做一些适应性的调整。我们不能把混乱的需求等同于敏捷开发。

在软件工程中,建筑施工被用来比喻软件开发。他们确实相似,但也有所不同。建设成本高,拆迁重建不可接受,设计成本可以忽略不计。网上资料显示,设计费一般占项目合同总金额的2%左右,所以施工会倾向于做完美的设计。但是游戏设计的成本比较高,反复修改方案的成本也不容忽视。比如一个游戏团队,策划、程序、美工的成员比例是1: 1: 2,设计(策划)的成本占25%。有时候详细写计划比写代码要花更多的时间,这就不可避免的导致了开发过程中的口头需求和不明确的需求。

有人认为,既然开发商为了赶进度会牺牲质量,那么只要制定详细的验收标准,质量就能得到保证吗?答案是不可行的。由于成本的限制,很难对规划案例进行详细描述(或者说如果非常详细,开发商的理解成本也是不可忽视的),所以必然存在歧义。很多细节需要依靠开发者自己的经验,标准无从谈起。

比如“两军相遇,兵力多的军队形成围攻”(如下图)就有很多不同的解释。虽然这是一个糟糕的规划描述,但它在一个商业项目中是真实的。我也看过一个SLG项目的策划案例,说的是“两军相遇,兵散如花”,这个短短的要求就花了节目两周时间。

总之,传统的管理理论可以借鉴,但不能照搬。

在互联网时代,我们需要从概率的角度来看待管理问题。如下图所示,一个同学能否按时保质完成开发任务,会呈现一定的概率分布。新手经验不足,很大概率完成不了。老兵经验丰富,大概率能让人安心。

开发过程的构建

开发过程的实施(人们常说建设现代化的开发流水线)就是调整概率分布的过程。如下图所示,某项目组采用“方案开发→计划验收→测试”的开发流程。经历了每一个环节,开发质量达到预期的概率越来越高。

天下没有免费的午餐,过程中的每一个环节都增加了保障,也意味着成本。根据人月神话,完善产品的成本是程序开发的9倍。

有些团队为了严谨会设置更多的环节。如下图所示,先召开“需求沟通会”,明确需要做什么;思考完方案创意后,与技术专家召开“评审会议”,验证创意是否可行;开发完成后,由同事进行代码评审。

经过这么多流程,这么多成本,开发质量才能得到保证。

随着游戏市场竞争的激烈,玩家对游戏品质的要求越来越高。与高风险的短平快模式不同,大型游戏公司越来越愿意付出成本来保证质量。就像能量守恒定律一样,稳定的质量不可能凭空出现。在不增加成本的情况下(项目组成员的开发水平不变),我们需要在效率和保障之间做一个权衡。

在开发过程的设计中,可以按照概率分布的思想来评估各个环节的成本和价值。对于新手来说,多安排一些流程来获得保障;对于退伍军人,减少流程降低成本;整个设计过程就像拼图一样。

整个游戏的质量受到各个模块质量的限制。俗话说,水清则无鱼。有时,我们不得不妥协勉强合格的内容,以确保进度。如果我们能保持60%的模块符合预期,20%超出预期,20%勉强通过,项目就能达到更高的整体水平。

二。步骤1:计划里程碑节点

开发一个完整的游戏,首先要做好规划,把它分成几个开发阶段。每个阶段都有重点,这样整个游戏才能有序。

但是,“学会如何规划”是一个悖论,因为规划要靠实践经验,纯理论只能知道一些肤浅的知识。如果没有实际参与很多项目的开发,很难做出切实可行的方案;如果你有经验,你不需要学习。看了很多策划资料,但总觉得要么是大而空的讲一些原理,要么是介绍如何制作甘特图等细节。如果没有经历过很多项目,或者只能通过大量阅读来借鉴别人的项目开发流程,从而进行总结。

一些合适的素材如下:《天涯岳明刀的幕后》(谷雨)、《剑侠情缘网络版发展回顾》(赵青)、《荒野行动Plus的幕后》(周峰)

2.1案例参考

我们以一个SLG手游项目的节点规划为例,来说明其里程碑式的节点设计。计划首先要了解所面临的外部环境。在这家公司,项目立项后,需要在两个月内提交Demo给专家组审核,评估是否继续开发。但市场竞争激烈,游戏需要在8个月后推出,以免错失良机。好在项目组有一定的积累,原来的MMORPG项目底层框架是可以修改的。

整个项目的开发过程分为六个阶段,每个阶段作为一个里程碑节点,如下图所示。

下表显示了每个阶段的内容。

团队在“核心模块可行性探索”和“Demo实现”阶段解决了大部分技术难题;“功能点开发前30分钟”阶段,制定开发标准,然后按照标准完成大部分功能开发。后两个阶段是完美阶段和预留时间。这个计划下的开发节奏很紧,但是每个阶段的时间比例可能有参考价值。(PS:以上内容主要参考@jiacat大神的经验总结)。

在赵青对剑侠情缘网络版发展的回顾中,也总结了游戏发展的四个里程碑阶段,如下表所示。剑侠情缘网络版从2000年9月开始筹备,2003年9月发布公测,历时三年。虽然是很久以前的事了,但还是有参考价值的,整体思路和上面提到的8个月SLG游戏里程碑式的规划很像。

游戏整体开发节奏:先解决关键技术难点,再验证玩法可行性,最后铺开周边功能模块。

2.2任务分解

说到规划,必须提到SMART原则,也就是说大目标要分解成具体的、可量化的、有时效性的小任务。所以规划游戏项目,需要把项目拆解成小任务,评估每个任务的开发时间。但笔者认为这种思路过于机械,因为它要求规划者要有全局视野,否则无法做合理的量化和分解。

然而,随着快速的技术变化和激烈的市场变化,我们不得不适应“只有少量信息”来进行规划。比如周峰的《荒野行动Plus的幕后》一文中提到,网易开发荒野行动Plus时,团队面临很多技术问题,前期的“计划”直接被“启动”代替。从规划的角度来说,有时候只有开始才能获得更多的信息。

如下图所示,一个团队的能力和经验总是有限的,能完全掌握的东西只有少数,大量的东西都是模糊的,未知的。比如一个已经成功开发了很多MMORPG游戏的团队做另一个MMORPG,他们可以在一开始就规划好各种开发事宜,这是完全掌握的;对于这个团队开发SLG游戏,他们含糊其辞,有未知的技术问题需要解决,比如“无缝大图”、“海量实体渲染”等。如果允许他们制造火箭,那将是未知领域。

传统的规划原则限制了我们能做的范围。当你没有经验的时候,是不可能做到严谨的任务分解的。这就像要求这个MMORPG团队开发SLG游戏来对抗具有强大标准的竞争产品。如果你想遵循聪明理论,你只需要认输。

“只掌握少量信息做策划”符合当前激烈的竞争形势,也是常态。里程碑的设置符合信息熵逐渐减小,优先解决不确定性高的问题,使项目越来越稳定的特点。如下图所示,随着项目的进展,项目的不确定性逐渐消除。

周密的计划有更多的“沟通问题”,可以让团队成员步调一致,但不是“计划问题”。顶层策划往往是艺术化的,靠的是灵感和积累。

顺带一提,笔者认为职业发展规划理论也有同样的问题。所谓根据客观条件设定人生目标,其实大多数人并不具备优越的条件,所能规划的目标也只是平庸而已。这真的是他们想要的吗?最好是平躺。关于目标规划,笔者曾经写过一篇文章《从旅行指南到目标规划》。欢迎大家一起探讨。

本文的审理到此结束。课程详情可盖章>:& gtUWA学院| Unity和Unreal游戏引擎从业者学习交流平台。

总结:以上内容是对工程管理出柜做什么工作,以及游戏工程管理的详细介绍。文章内容部分转载自网络,希望对知道工程管理出柜做什么的你有帮助和参考。

版权声明

本站搜集来源于网络,如侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。