游戏邦在:
杂志专栏:
gamerboom.com订阅到鲜果订阅到抓虾google reader订阅到有道订阅到QQ邮箱订阅到帮看

如何远程管理独立游戏开发团队

发布时间:2013-12-04 15:12:39 Tags:,,,,

作者:Robert DellaFave

呆在你舒适的家里远程管理你的独立游戏开发团队?听起来简直像是做梦。但在你习惯穿着“马里奥兄弟”睡衣工作以前,你必须意识到在电脑屏幕前面管理一支团队会遇到许多传统的办公室环境不会遇到的困难。在本文,我将告诉大家这些挑战是什么,并以我个人的项目(游戏邦注:《Hiro Fodder》和《Echoes of Eternea》)管理经验为基础,提供一些关于如何高效地远程管理独立团队的实用建议。

本文写给谁?

首先,以下内容适用于没有钱租用办公室的中小型独立游戏开发团队。如果你的团队目前只有4-12个成员,并且散布在各地,那么本文就是写给你的!

两三人给成的团队管理起来显然比七人团队要容易得多。相反地,我鼓励预算充足且成员超过15人的团队租用集中办公室,即使其成员并不一定要全天在那里工作。也就是说,他们应该有一位全职的项目经理。

(注:对于新成员,协调日程、开会和管理期望值的困难都是非线性的。)

一般说来,本文对那些具有多个部门依赖性的远程独立团队也是有用的。开发任何大型游戏必定需要经常交流和沟通。你可能会认为美术和程序彼此之间没有什么关系——这不是程序员美工告诉我们的吗?但当程序员必须知道精灵图的尺寸时,或者当关卡设计师需要新的地图编辑器来制作游戏世界时,会发生什么事?交流沟通是关键。

最后,相比于开发小游戏、益智游戏或简单的教育游戏的团队,下文提出的建议可能更适用于制作RPG、冒险游戏或其他具有关卡类玩法的游戏的团队。

好了,我们进入正文吧。

indie-game-developer(from game.dapps)

indie-game-developer(from game.dapps)

准备是关键

项目经理(PM)负责制定截止日期、促进交流、解决问题和保持文件的组织性和更新。这是脏活,但必须得有人干。坏消息是,大多数小独立开发团队都没有条件或预算请一位专门的PM,而依靠团队领袖—-通常是某位设计师或程序员充当这个管理角色。好消息是,提前准备的话,你可以大大减少管理团队会遇到的困难。

在我写的大部分文章里,游戏设计文件(GDD)是反复出现的关键词,这里我还是要重申它的重要性:GDD就是救命符。

你的团队成员记住关于游戏的方方面面以及他们各自的职责的概率是0。并且,因为你是远程工作,你不可能随叫随到地回答他们的问题。但如果他们有一份GDD在手边,那么他们就可以仔细搜索内容,通常就能找到自己想要的信息—-只要这份GDD本身编写得没什么问题的话。GDD还可以帮助新成员更快地融入游戏开发过程。

除了GDD,与对集中办公的团队相比,有效的文件排列通常对远程独立开发团队更有价值,只不过是因为远程团队不一定能在一起工作。永远不要让成员找借口不使用资产清单、优先任务列表和其他能促进生产的文件。

GDD(from gamedevelopment.tutsplus)

GDD(from gamedevelopment.tutsplus)

有人曾经问我,这种文件是不是太多了,我的回答是肯定的。敌人的数据库、关卡概述、玩家技能列表:这些都是好东西。但当PM记录每一场会议的详情供成员回顾时,那就要命了。

另外,尽量让你的文件排版显得直观。就像浏览网站的人偏好阅读被插图分成块的文章一样,如果使用截图、流程图和概念图,你的团队会更好地理解你的意思。

了解你的成员

作为PM,你的职责要求你必须非常了解你的团队成员的工作和时间管理偏好。这样你才能知道他们在什么情况下能达到最高的工作效率,以及他们是否适合你的团队。

1、在你决定雇用某些新人以前,问他们几个关于他们的工作安排偏好和空闲时间的基本问题。如果他们的时间安排有限或本职工作不稳定,那还是算了吧。独立游戏开发不是朝九晚五的工作,但雇用至少能腾出一些与你的其他成员相同的时间段工作的人总是好的。

2、有些成员处于最佳工作状态时,不喜欢登录通讯工具。礼貌地要求这些人每天至少查看一两次邮箱,尽量达成一致,他们至少应该出席会议和知道紧急的更新。

3、如果你的雇员不想被那么多问题拖累,但仍然想在情况紧急的时候被联系,那就鼓励他们使用Skype的“请勿打扰”设置。

4、每天留出一段时间,最好是绝大部分雇员都在工作的时间,用于解答每个雇员和小组会议。游戏开发的过程中,每天都会出现问题,越早解决早好,以免恶化。

记住,并非所有人都适合远程工作。喜欢办公室环境的雇员在没有人监督的情况下往往会松懈偷懒。有些人偏好直接交流而不是使用邮件或即时通讯工具。在雇用成员时应该时时考虑到这些倾向。

确定依赖性

正如前面所提到的,你的项目越大,你的成员之间的依赖性就越大。但并非所有依赖性一开始就是平等的。我通常把依赖性分成如下两类:

1、高依赖性:这些依赖性通常存在于部门内部。例如,如果两名程序员做的是相同工具的不同方面,高依赖性就产生了。高依赖性也可能存在于美工之间,特别当一名美工负责创作概念而其他人负责游戏内材料时。有些高依赖性只存在于部分开发周期内。例如,游戏设计师和编剧在策划和预生产阶段往往合作非常多,但一旦路线确定下来了,二者可能就只需要偶尔咨询对方了。

2、低依赖性:这种依赖性更加普遍。事实上,团队中的所有人之间在某些时候都会存在依赖性。在绝大多数开发过程中,程序员通常能够对付得了程序员美术,但总有需要美工提供材料的时候,特别是在重要的润饰阶段。场景美工和角色美工有时候要找对方商量,以便确定他们的进度是否相同。底依赖性到处存在。

潜在依赖性的绝对量甚至在小团队中也是很惊人的。如果说对于五人团队,潜在依赖性是10,那么对于八人团队,这个数字就上升到28了。

为了计算你的团队的依赖性数量,我们使用以下公式:

D=(n?1)+(n?2)+(n?3)+…+1(其中n表示团队成员的总数)

Fire-Temple(from gamedevelopment.tutsplus)

Fire-Temple(from gamedevelopment.tutsplus)

那么这意味着什么?作为PM和游戏设计师,正是由你决定了谁依赖谁,哪些人始终合作,谁和谁可以每天用邮件交流,谁只需要开会时出现在虚拟房间里就行。

尽管你的角色美工是否喜欢早上工作、编曲是否喜欢晚上加班可能并不重要,如果你的两名引擎程序员永远不在相同的时间段工作,你可能会遇上麻烦。在雇用成员时应该提前考虑到这些因素。

截止日期

在游戏开发领域,截止日期就是为了被破坏而出现的,这就是为什么你执行它们甚至更重要。这个看似违反我们的直觉,但没有截止日期,你的成员就会太过松懈。虽然让员工偶尔放松也很重要,但太放松会导致自满自足。如果一个成员的工作并不依赖另一个成员,那么情况就不会太糟,但游戏开发团队的运作就像一台机器:如果一部分崩坏了,那么整个运作都会失败。

EoeSpreadsheet(from gamedevelopment.tutsplus)

EoeSpreadsheet(from gamedevelopment.tutsplus)

所以说,一开始就强制执行截止日期也许是最好的做法。独立游戏开发团队永远不要运作得像政治制作——那太打击团队的士气了。相反地,让你的成员在截止日以前告诉你是否有什么事来不及做了。确定新的截止日期,在心态上重新调整你对成员的期望,并相应在修改以后的截止日期。独立游戏开发是一个不断学习的过程。一开始看似可行的截止日期可能被证明完全是不切实际的。下次不要忘了这点。

如果有人不断地错过你认为合理的截止日期,那么有可能是因为他们不太适应远程工作。最好尽快发现这个问题。

保持士气

远程管理游戏开发团队的最大问题之一就是,保持成员的士气。孤独感可以轻轻松松地瓦解成员的工作积极性,特别是当没有人监督他们工作时(你自己也是)。

如何解决士气低的问题?我提供了几条有效的方法:

1、小组会议:每周开一次会,所有人都要参加,讨论游戏、各自的进度或者只是聊聊生活。我觉得最好是每周一开小组会议,因为我可以借此机会提醒成员们截止日期。

2、定期发邮件:一般来说,一周发一次就够了,但如果已经到了比较重要的关头,那你就要经常发邮件提醒团队。

3、表扬:如果你的成员做了什么好事,那就表扬他们。对某些员工来说,受到他人认可就是最好的激励方式。

4、新游戏版本:给团队的每个成员最新的游戏版本,即使这个成员完全不懂技术。这一来帮助他们了解项目进展,二来有形的进度往往能激发士气。

5、度假:每年至少一次,全体成员一起到哪里去度假——当然,预算允许的范围内。但是,最至少你自己要计划一次盛大的发布派对。这会给所有人一个盼头。

如何处理表现不佳的成员

有时候,无论你如何保持士气,你的员工的生产效率还是逐渐下降了。这种现象最经常出现在开发中期。

当处理不随和、效率低下的员工时,以下技巧可能有帮助:

1、不要在群发邮件中指名道姓:在群发邮件中点名表扬某人是可以的,但无论如何也不要在大家都在场的情况下点名表现不佳的人。这是非常 让人难堪和少兴的。永远把这种事放在私下解决。

2、避免威胁:尽量用温和的方式解决问题。你的成员通常劳累过度和收入不高,他们之所以帮你做事是因为他们相信你的眼光。如果他们这个月表现不好,你应该理解他们的难处,永远不要威胁他们你可以随时让他们走人。当然,如果情况确实太糟糕,你必须写一个警告或解雇通知,那只有到绝对必要的关头,尽管如此,仍然要避免威胁。

项目管理资源

保持条理性是必须的。考虑到网上有大量免费的项目管理资源,你就更没有借口不做了。即使如此,我个人并不建议使用非常复杂的时间跟踪软件。相反地,容易共享文件、管理任务和发送通知的简单工具就好了。

以下有几个推荐:

Teambox:具有共享文件、分配任务和发送信息的功能。它还能通过邮件提醒你项目更新情况。但Teambox最出色的地方是,允许你把文件或附加说明关联到单个任务。另外,这个工具非常容易学习,它的教程只有3分钟。

TeamLab:适合小公司,采用了非常便于交流的项目管理方法。它具有社交网络的功能,允许你发布消息、评论和投票。它的阶段和任务追踪系统非常适合监督每日活动,使你能更专注于工作而不必时时联系每个成员。

Dropbox:简单而有效,除非你的成员都是做事有条理的人,否则我就不推荐使用它。Dropbox允许你建设你自己的云文件夹结构,如果所有上传的文件都已清楚命名且存档,那么这个功能就太好了;否则就……

Google Docs:这绝对是简单化是福音的典型。Google Docs是一个强大的工具,具有Microsoft Office的大部分功能。它最精华的地方在于它的云技术。它不仅便于成员浏览文件,还能够添加评论和修改(如果获得许可的话)。还是那句话,为了充分利用这个强大的工具,你要保持文件的条理性。

资源库:使用资源库的好处在于,任何人都可以一键上传新脚本、资产和代码。你的团队会收到你做的修改,你也会收到他们的,这就大大减少了版本管理的工作量。随便什么资源库都行,我个人偏爱XP-dev.com。

Teambox(from gamedevelopment.tutsplus)

Teambox(from gamedevelopment.tutsplus)

总结

独立游戏开发者通常忽视PM的重要性,但没有PM,远程管理一支团队可能变成极其艰难的任务。而有了PM,团队会更有纪律、有组织,更容易应对眼前的挑战。好消息是,即使你没有五年担任PM的经验,你还是可以管理好一支中小型的团队。

回顾一下本文,我们探讨了远程管理一支团队的框架。但是即使你们能够在同一个办公室工作,按照上述框架管理团队,你的团队仍然可以得到如下好处:

1、明确他们的主要任务和次要任务。

2、理解游戏设计师的视野。

3、有更宽松的截止日期。

4、知道必须经常与谁合作,应该把资产提交给哪些人。

5、士气大涨。

6、使用高效的工具。

良好的工作流程可以提高一半的工作效率。我应该知道:开发的第一年,我的团队不稳定且无组织,害我经常遭受“发布前压抑”之痛。但是,从那以后,我们的工作效率大大提高了,如果说只能用两条理由作解释,那么我认为应该是任务管理改进了和交流沟通增强了。(本文为游戏邦/gamerboom.com编译,拒绝任何不保留版权的转载,如需转载请联系:游戏邦

Working Remotely: Managing an Independent Game Development Team

By Robert DellaFave

It sounds like the stuff dreams are made of: managing your very own independent development team from the comfort of your home office. But before you get too comfortable in your Mario and Luigi PJs, realize that managing a team from behind a computer screen comes with a lot of extra hurdles not present in a traditional office environment. In this article, I’ll examine some of those challenges, using my personal project management experience on Hiro Fodder and Echoes of Eternea as a guide, and offer practical advice as to how to handle them in a way that promotes both efficiency and, just as importantly, morale.

Preview image: Team designed by Bj?rn Andersson from The Noun Project.

Who Is This Article For?

First and foremost, the contents below are targeted towards smaller to mid-sized indie game development teams that don’t necessarily have the budget to relocate their employees to a central office. If your team currently consists of four to twelve members spread throughout the world, this article is for you.

Two- or three-man teams present significantly fewer management difficulties than, say, a team of seven. Conversely, I encourage teams with a sizable budget and more than 15 members to rent a central meeting location, even if their members aren’t required to work there all the time. That, and they should have a dedicated Project Manager.

(Note: For each new member, the difficulty of coordinating schedules, setting up meetings and managing expectations grows non-linearly.)

More generally, this piece will also prove beneficial to any remote indie team with multiple departmental dependencies. Developing any game of significant scope is going to require a ton of communication and asset sharing. You may think that art and programming have little to do with one another—after all, isn’t that what programmer art shows us?—but what happens when a programmer needs to know the dimensions of a sprite sheet, or what about the case where the level designer needs an updated map editor to build game worlds? Communication is key.

Finally, the advice presented below will likely prove more beneficial to teams creating RPGs (like yours truly), adventure games, or other games with level-driven gameplay, than to teams creating a trivia, puzzler, or simple educational title.

Now, let’s get started!

Preparation Is Key

Project Managers set deadlines, facilitate communication, put out fires and are in charge of keeping documents organized and up to date. It’s a dirty job, but someone has to do it. Unfortunately, most smaller indie teams do not have the resources or budget for a dedicated PM, and rely on the project lead—in most cases the designer or programmer—to fulfill a managerial role. The good news is that, by preparing ahead of time, you can significantly reduce the difficulties associated with managing a team.

A recurring theme in most of my articles is the importance of a Game Design Document, and I will reiterate its importance here: Game Design Documents are life-savers.

The odds that your co-workers are going to remember everything about your game and their responsibilities are zero. And, because you’re working remotely, you won’t always be on call to answer their questions. But if they have their handy GDD by their side, they can scour its contents and usually find the information they are looking for—as long as it’s well documented. GDDs also help new team members integrate themselves more rapidly into the development process.

Going beyond the GDD, strong documentation in general is more valuable for a remote indie team than for an in-house development crew, if only because the remote team won’t necessarily be working together. Never give employees an excuse not to work by providing them with asset lists, priority lists, and other documents that facilitate production.

I’ve been asked whether there is such a thing as too much documentation, and the answer is “Yes.” Enemy databases, level overviews, player ability lists: these are all good things. But when a PM documents the minutes of every meeting for team review, that’s overkill.

Also, try to keep your documentation at least somewhat visual. Just like web surfers prefer to read articles broken up by visuals, your team will better grasp your vision via screenshots, flowcharts and concept art.

Getting to Know Your Employees

As a Project Manager, it’s your responsibility to readily gauge your employees’ work and time management preferences. By doing so, you’ll come to understand the conditions in which they work most effectively, and, ultimately, whether they’re a good fit for your team.

Before you hire new employees, ask them a few basic questions about their preferred work schedule and general availability. If their schedule is limited or their core working hours are erratic, consider looking elsewhere. Indie game development is not a nine-to-five job, but it’s helpful to hire employees that are comfortable working at least some of the same hours as your other team members.

Some employees work in grooves and prefer not to be logged into an instant messenger when they’re “locked in.” (The portrayal of Mark Zuckerberg in The Social Network comes to mind.) Kindly ask these employees to check their email at least once or twice a day, and try to work out an agreement where, at the very least, they sign on for team meetings and to deliver time-sensitive updates.
If your employees don’t want to be encumbered with questions, but still want to be available in an emergency, encourage them to use Skype’s “Do Not Disturb” setting.

Set aside time each working day, preferably when the majority of your employees are working, where you make yourself available for individual and small group meetings. Game development issues are going to arise on a near-daily basis, and the sooner they’re addressed, the sooner they’ll go away.

Remember, not everyone is cut out for working remotely. Employees that perform wonderfully in office settings can be prone to slacking off when no-one is looking. Others communicate better through direct interaction than email or instant messenger. Keep this in mind throughout the hiring process.

Related Posts

For more info on hiring remote workers, check out the first part of this series.

Determining Dependencies

As mentioned previously, the larger your project, the more your teammates will rely on one another. But not all dependencies are created equal. I tend to classify dependencies into two categories:

High-level dependencies: These dependencies usually exist within departments. For instance, if two programmers are working on different aspects of the same tool, a high level of interdependence exists. High-level dependencies can also exist among artists, particularly in the case where one artist is responsible for creating concept art and another for producing in-game assets. Some high-level dependencies only exist for a portion of the developmental life-cycle. Case in point: game designers and story writers should be practically living together during planning and pre-production phases, but might only need to consult with one another occasionally once a clear path has been determined.

Low-level dependencies: Lesser dependencies are far more common. In fact, just about everyone on your team will rely on every other member at some point. Programmers will likely be able to get by with programmer art for the majority of the development process, but there will come a time when they’ll need assets from your artist, especially during the critical polish phase.  The environmental artist and character artist will need to consult with one another on occasion, if only to make sure they’re on the same page. Low-level dependencies exist everywhere.

The sheer amount of potential dependencies on even a small team is astounding. For a five-member team, ten potential dependencies exist. On an eight-member team, that number shoots up to 28. Yikes!

To determine the number of dependencies on your team, use the following equation:

D=(n?1)+(n?2)+(n?3)+…+1

…where n is the total number of team members.

So what does this all mean? As a Project Manager and Game Designer, it’s partially up to you to determine who relies on whom, which team members need to work together constantly, which ones can get by emailing each other once a day, and which ones only need to be in same virtual room during meetings.

Although it might not matter if your character artist favors working in the morning and your composer at night, you could run into problems if your two engine programmers are never on at the same time. Take these factors into account as early as the hiring process.

Deadlines

In the game development world, deadlines are made to be broken, which is why it’s even more important that you implement them. That may seem like a counterintuitive statement, but without deadlines your employees will begin to feel overly comfortable. And while it’s important that workers feel somewhat at ease, too much comfort can lead to complacency. That wouldn’t be so bad if the other members of your team didn’t rely on one another to get things done (see Determining Dependencies), but game development teams function much like a machine: if one part breaks, the whole operation falls apart.

With that said, enforcing deadlines with an iron first is probably not the best idea either. An indie game development team should never be run like a regime—it’s terrible for morale. Instead, ask your employees to inform you prior to the due date if something is going to be late. Work out a new deadline date, mentally readjust your own expectations of your employee, and alter future deadlines accordingly. Indie game development is a constant learning process. What might seem like a feasible deadline at first may prove completely unrealistic. Remember this for next time.

In the case that an employee is constantly missing what you deem as fair deadlines, it may be because they cannot function well in a remote environment. It’s better to learn this sooner rather than later.

Keeping Morale High

One of the single biggest difficulties in managing a work-from-home game development team is keeping morale high. Feelings of isolation can easily descend into a lack of motivation and even existentialism, especially where there is no one physically watching over your employees’ shoulders (and your own, for that matter).

There are a few effective ways to combat low morale, as listed below:

Group meetings: Make time once a week for everyone to get together and talk about the game, their progress, or just life in general. I find the best time to have a group meeting is at the beginning of the week, as I can use the opportunity to gently remind my team of their deadlines.

Constant email updates: Again, once a week is generally good enough, but if you’ve reached a major developmental milestone, tell your team about it.

Praise: Along the same lines, if your employees are doing an excellent job, tell them. Nothing inspires some workers more than acknowledgement.

New game builds: Give every member of your team, even the less tech-savvy ones, access to the latest build of the game. Not only will it help them see the big picture more clearly, concrete progress is wonderful for morale.

Retreats: Attempt to get together, in person, at least once a year, either at a gaming convention like PAX or elsewhere—budget permitting, of course. But, at the very least, do yourself a favor and plan a huge release party. If nothing else, it will give everyone something to look forward to.

How to Handle a Poorly-Performing Employee

Sometimes, no matter what you do to keep morale up, your employees’ production levels will taper off. This tends to occur most commonly during the middle stages of development.

When dealing with difficult, non-productive employees, the following tips may help:

Don’t single anyone out in a group email: Praising individual efforts in group emails is fine, but never, under any circumstances, single out an underperforming employee in a group setting. It’s embarrassing and demoralizing. Always address the issue individually.

Avoid threats: Try to work through issues in a non-threatening manner. Your employees are generally going to be overworked and underpaid, and are only doing what they do because they believe in your vision. If they’re having a bad month, try to understand why, but never hold it over their head that you have the power to let them go. Unfortunately, if things get really bad, you will have to issue a written warning or dismissal notice, but until that is absolutely necessary, avoid threats.
Project Management Resources

It’s essential to stay organized. And, given the wealth of Project Management resources available on the Web (many of them free), you’ll have no excuse not to. With that said, I don’t personally advocate the use of super sophisticated time tracking software. Instead, seek simple tools that allow for easy file sharing, task management and alerts.

Here are a few recommendations:

Teambox: This allows you to share files, assign tasks to team members and send direct messages. It also alerts you via email whenever the status of a project is updated. But what’s really nice about Teambox is that you can attach files or append notes to individual tasks. That, and it’s extremely easy to learn, as evident by its three-minute tutorial.

TeamLab: Ideal for smaller companies, TeamLab takes a very communicative approach to project management. It’s loaded with social networking features and allows you to post blogs, make announcements and take polls. Its milestone and task tracking systems are perfect for monitoring day-to-day activities, allowing you to focus more on working and less on keeping in constant contact with all of your team members.

Dropbox: Simple and effective, I only recommend using Dropbox if your team members are naturally organized. Dropbox allows you to create your own cloud-based folder structure, which is great if all uploaded files are clearly labeled and archived, and terrible if they’re not.

Google Docs: A quintessential example of how simplicity is bliss, Google Docs is a powerful tool that possesses most of the functionality of Microsoft Office. But the real beauty of Google Docs is that its cloud-based. Not only does it allow your team members to easily view your documents, but, with the proper permissions, they’ll be able to comment on and change them. Again, in order to fully take advantage of this powerful tool, it’s important to keep your documents organized.

A Repository: The beauty of a repository is that anyone with access can upload new scripts, assets and code with the press of a button. Your team will receive the changes you made, and you’ll receive theirs, cutting down on versioning issues considerably. Any repository will do, but personally I prefer XP-dev.com.

Conclusion

Indie game developers often overlook the importance of Project Managers but, without them, running a successful remote team can be an elaborate chore. With them, teams become more disciplined, organized and prepared for the challenges ahead. The good news is you don’t necessarily need five years working as a PM to manage the development of a small-to-mid sized game.

In this article we’ve covered the framework for running a successful remote team. But even if you’re all working in the same place your team will benefit from:

Knowing what their primary and secondary tasks are.

Understanding the game designers vision.

Having loose deadlines.

Knowing who they have to work with on a regular basis and who they should be delivering assets to.

Morale boosts.

The use of effective tools.

A good workflow can increase production by as much as 50%. I should know: for the first year of development my team was erratic and disorganized, and suffered from frequent bouts of “pre-release depression.” But, since then, we’ve stepped up our game, and if I have to cite the number two reasons for our enhanced productivity they would be better task management and stronger communication.

Happy remote game development!(source:gamedevelopment.tutsplus)


上一篇:

下一篇: