2010-05-20 66 views
11

我们是一个团队,致力于遗留代码,这些代码非常古老,并以初始编程日的语言编写。由于团队成员接受了最新技术的培训,现在开始使用遗留代码,他们并不开心。如何激励他们在遗留代码中工作?如何激励团队在传统产品上工作

+7

这是传统代码的遗产吗?有任何例子,语言或图书馆? – 2010-05-20 12:03:42

+0

那么如果遗留代码是RPG II,Fortran,Cobol,BBx(商业基础),dBase III或类似的东西,那么它很容易理解他们的不快乐,因为在这一点上这些并不是真正的恢复建设者。你在说什么语言? – kloucks 2010-05-20 12:13:33

回答

6

只有现金不能让开发商高兴。你应该为他们提供良好的环境,以便他们能够关注他们的工作。

另一件事是没有技术是坏的或旧的或旧的。事情是,如果你的公司需要维护它,那么你必须保持它。但是,让所有标准的设计,编码,测试,代码审查,互动环节等。

您也可以激励他们遗留代码转换成一些新的平台,为更好的性能和可维护性。即使有一次我想,每家公司都会这样做,因为他们想与其他市场产品竞争。

还为他们提供其在贵公司使用的其他技术有些凉,但会话他们不知道或使用。让他们深入了解事情,给他们适当的时间和支持解决问题。主要目标是按时交付,减少返工和错误。

为他们的工作提供一些奖励,让他们高兴工作。

谢谢。

+0

但是,在这种情况下没有现金,你将无法获得任何地方。 – 2010-06-17 13:13:30

1

你可以尝试在测试方面做一些奇特的事情。试用嘲讽框架等

尝试还强调,处理遗留代码是一个很好的经验,如果你想成为一个坚实的程序员,因为每一项技术最终成为遗产。

0

额外的现金? :)不知道别的...

即使它是新技术的遗留代码,它并不总是很高兴在这样的代码工作,等等。“最初的技术” ......我想唯一的激励就是要发现编程是如何这些天...

1

你有在可预见的未来退休的遗留代码的某些范围是什么?如果是这样,“我们只需要保持这种状态直到......”可能会使药丸变甜。

团队成员是否使用过遗留代码编写的语言/环境?如果不是这样,那可能很简单,不愿意做一些他们不知道如何操作的东西。可能在一段时间内安排他们至少获得一次通过的熟悉度,假如它不是从最新的技术转变过来的模式,它不应该是那么难吗?

11

发送您的团队与用户见面并观看他们使用软件。他们应该了解用户使用该软件时最关键的问题。

了解用户使工作更加真实 - 您的团队将知道添加新功能或消除一些错误将有助于某个真实的人。这应该激励程序员完成无聊的工作。

1

是团队成员只允许对遗留代码的团队工作,或者可以将他们的时间不同的项目之间的分裂?我不认为任何人都会为FORTRAN调试花费40个小时的时间而感到高兴。但是如果你必须花上几个小时的时间才知道你可以在白天休息一下,去实际操作一些你喜欢的东西,那么这个代码就不那么痛苦了。

我会重申之前所说的关于确保团队成员有时间学习并获得旧技术的经验,然后再将它们投入到那里。尽量让训练愉快。我们的遗留代码培训是为了看看谁能够针对有趣的问题提出最快/最短/最完整的/ etc解决方案,而不是专注于我们正在开发的代码,从而建立起来的代码培训。实际上,即使你没有时间留在训练中,也可以应用于球队的计划。为手头的任务添加一些小小的竞争,或者让一点时间用于具有挑战性和竞争力的副项目。

1

他们如何从这些传统产品中获得回报?你知道是什么激励他们吗?有些人可能更喜欢及时的认可和表扬,而其他人可能会期望获得现金或理解,这并不一定是他们最初接受工作时签署的。我会试着建议1:1会议,看看他们喜欢什么会让他们更快乐。是更多钱吗?休假时间更灵活?传统技术培训?肯定他们在这些古老的系统上做的很好,因为最初的编程时间让我想起了大型机和其他真正旧的工具,人们可能会想:“这真的会运行多久?

1

现金不是答案。免费食品,软饮料,无论如何,这只是为了减轻遗留代码工作的苦差。试图改变他们的观点是什么?

“任何人都可以做的是有一个很好的IDE与重构建成,一吨资源只一个谷歌搜索离开现代码良好的工作,但我们自豪的少数,我们兄弟的乐队,我们有足够的好做到这一点使用古老的程序语言,我们会驯服这些糟糕的代码,并用一只手做背后的事情,并创建流程和工具,以确保下一批可怜的混蛋不会那么糟糕。“

+0

哈哈,这很有趣。我不得不做COBOL,这样的想法不是那种通常会经历我的头脑的类型 – jaywon 2010-05-21 09:26:44

1

我会说最简单的方法来吸引开发者对传统编码的最积极的情绪是以某种方式使旧的新的。

有一个或两个会话来识别遗留代码的功能,然后了解在新架构上重新执行该操作需要做什么。 “新架构”部分是关键,因为9/10次,这是可怕的体系结构(意大利面代码,预标准惯例等)。

如果你不能让你的重写估计得到批准,那么至少要制定一个计划,让你的遗留代码重构到日常维护中。至少你的开发人员会觉得他们正在努力寻找某种东西,而且还有一些新的东西,而不仅仅是让人想起甚至不记得的旧衰变。

只是我2¢。

3

我真的很喜欢“送你的团队,以满足用户和使用软件看着他们”

如果我激励我的团队,我真的会问我的开发人员访问使用,并找出多少用户是如何幸福与产品。

我真的很想挑战我们如何使它更好,然后存在。

0

考虑到大量的资源,IDE,专业知识,框架等等,花费激励团队和学习遗留代码并修复遗留代码所需的时间可以轻松用于在新平台中构建相同的东西免费的,好消息,你有这个系统,你只需要在新的平台上满足相同的行为,而不像我们必须为某些产品的行为和用户体验我们不知道的那样构建新的东西。