2010-05-20 2 views
11

우리는 초기 프로그래밍 시대의 언어로 작성된 구식 코드로 작업하는 팀입니다. 팀 구성원이 최신 기술에 익숙해지고 이제는 레거시 코드로 작업하기 때문에 행복하지 않습니다. 레거시 코드에서도 작동하도록 동기를 부여하는 방법은 무엇입니까?팀이 기존 제품을 사용하도록 동기 부여하는 방법

+7

레거시 코드는 얼마나 남았습니까? 예제, 언어 또는 라이브러리가 있습니까? –

+0

레거시 코드가 RPG II, Fortran, Cobol, BBx (Business Basic), dBase III 또는 유사점이이 시점에서 견고한 이력서 작성자가 아니기 때문에 불행을 이해하기 쉽습니다. 무슨 언어로 말하는거야? – kloucks

답변

6

현금만으로 개발자를 행복하게 만들 수는 없습니다. 그들의 일에 관심을 기울일 수 있도록 좋은 환경을 제공해야합니다.

또 다른 것은 기술이 없다는 것입니다. 귀하의 회사가 그것을 유지할 필요가 있다면 그 일을 계속해야합니다. 그러나 설계, 코딩, 테스트, 코드 검토, 대화식 세션 등에 대한 모든 표준을 유지하십시오.

더 나은 성능과 유지 관리를 위해 레거시 코드를 새로운 플랫폼으로 변환하도록 동기를 부여 할 수 있습니다. 모든 회사는 다른 시장 제품과 경쟁하기를 원하기 때문에 생각하기까지 한 번 생각합니다.

또한 회사에서 사용하는 다른 기술에 대해서는 멋진 세션을 제공하지만 모르거나 사용하지 않습니다. 학생들이 문제에 깊이 빠져들고 문제 해결을위한 적절한 시간과 지원을 제공하십시오. 주된 목표는 재 작업 및 버그를 줄여 정시에 제공하는 것입니다.

작업에 대한 보상을 제공하고 작업에 만족하게하십시오.

감사합니다.

+0

그러나이 경우 현금이 없으면 아무데도 가지 않을 것입니다. –

1

예를 들어 테스트 측에서 멋진 일을 시도 할 수 있습니다. 조롱 프레임 워크 등을 시험해보십시오.

모든 기술이 결국 레거시가되기 때문에 견고한 프로그래머가되기를 원한다면 레거시 코드를 처리하는 것이 좋은 경험이라는 점을 강조하십시오.

0

대금 상환은? :) 다른 것을 모르는 ...

비록 그것이 새로운 기술의 레거시 코드 일지라도, "초기 기술"에서 그런 코드를 작업하는 것이 항상 즐겁지는 않지만 ... 나는 동기 부여가되는 유일한 것이라고 생각합니다. 요즘 프로그래밍 방식을 발견하십시오 ...

1

가까운 미래에 기존 코드를 폐기 할 수있는 범위가 있습니까? 그렇다면 "우리는 이것을 계속 유지해야만 ..."이 약을 달랠 수 있습니다.

팀원은 레거시 코드가 작성된 언어/환경에서 경험이 있습니까? 그렇지 않은 경우 작동 방법을 모르는 무언가를하는 것이 단순한 주저 일 수 있습니다. 최소한 일정 시간 동안 친숙 함을 얻으려면 일정을 잡을 수 있습니다. 최신 기술의 패러다임 전환이 아니라면 모든 것이 그렇게 힘들지는 않습니까?

11

팀을 보내 사용자를 만나고 소프트웨어를 사용하는 것을 지켜보십시오. 사용자는 해당 소프트웨어로 가장 심각한 문제가 무엇인지 찾아야합니다.

사용자를 알게되면 새로운 기능을 추가하거나 버그를 제거하면 실제 사람을 도울 수 있습니다. 프로그래머들이 지루한 작업을 수행하도록 동기를 부여해야합니다.

1

팀 구성원은 레거시 코드 팀에서만 작업 할 수 있습니까? 아니면 다른 프로젝트간에 시간을 나눌 수 있습니까? 저는 FORTRAN 디버깅에 40 시간을 소비하는 것에 대해 행복하게 생각하는 사람은 없을 것이라고 생각합니다. 그러나 기존 코드에서 몇 시간을 보내야 만 하루 동안 휴식을 취해 실제로 즐기는 무언가를 해결할 수 있다는 사실을 알면 고통 스러울 것입니다.

그리고 팀원들이 이전 기술을 익히고 경험을 쌓을 수있는 시간을 갖기 전에 이전에 말한 내용을 반복해서 알려 드리겠습니다. 훈련을 즐겁게 만들어보십시오. 우리의 레거시 코드 교육은 우리가 작업 할 코드를 독점적으로 살펴 보는 것보다 흥미로운 문제에 대한 가장 빠르거나 가장 짧은/가장 완벽한/etc 솔루션을 제시 할 수있는 경쟁자로 설정되었습니다. 실제로 훈련을 위해 시간을 마련하지 않아도 팀 계획에 적용될 수 있습니다. 당면한 과제에 약간의 경쟁을가하거나 도전적이고 경쟁력있는 측면 프로젝트에 약간의 시간을 할애하십시오.

1

이 레거시 제품을 사용하여 보상을받는 방법은 무엇입니까? 그들에게 동기를 부여하는 것이 무엇인지 알고 있습니까? 어떤 사람들은 적기에 인정과 칭찬을 선호 할 수도 있고, 다른 사람들은 현금을 기대할 수도 있고 이것이 처음에 일을했을 때 반드시 서명 한 것이 아닐 수도 있다는 것을 이해할 수도 있습니다. 나는 1 : 1 회의를 갖는 것이 그들이 무엇을 좋아하는지 알게되어 유혹을받을 것입니다. 더 많은 돈인가? 시간 단축의 유연성 향상? 레거시 기술 교육 초기 프로그래밍 일이 끝나고 나면이 고대 시스템에 대한 훌륭한 작업을하고 있다고 확인하면서 메인 프레임과 다른 오래된 툴에 대해 "얼마나 더 오래 지속될 것인가?"라고 생각하게합니다.

1

현금은 답변이 아닙니다. 무료 음식, 청량 음료, 무엇이든, 지금까지는 레거시 코드 작업의 고역을 완화하는 데에만 사용됩니다. 그들의 관점을 바꾸려고하는 것은 어떻습니까?

"리팩토링 기능이 내장 된 멋진 IDE가있는 사람이라면 누구나 Google 검색에서 단 하나의 리소스 만 사용할 수 있습니다.하지만 우리는 자랑 스럽지만 형제는 많습니다. 우리는 코드의 끔찍한 혼란을 길들이고 우리의 등 뒤로 한 손으로 그것을 할 것이고, 다음 가난한 놈들이 그렇게 나쁜 것을 가지지 않도록 프로세스와 도구를 만들 것입니다. "

+0

하하, 재밌 네요. 나는 COBOL을해야하고 그런 생각은 대개 내 머리를 통과하는 타입이 아닙니다. – jaywon

1

가장 좋은 감정을 개발자로부터 기존 코딩으로 끌어 들이기위한 가장 간단한 방법은 구식을 어떤 방식 으로든 새 것으로 만드는 것입니다.

레거시 코드가 무엇인지 식별하고 두 번째 세션을 만들어 새로운 아키텍처에서 다시 수행하는 데 필요한 것이 무엇인지 생각해보십시오. 9/10 번이므로 "새로운 아키텍처"부분이 중요합니다. 이는 스파게티 코드, 사전 표준 규칙 등을 두려워하는 아키텍처입니다.

재 작성 견적을 승인 할 수없는 경우 최소한 기존 코드를 리팩터링하여 일일 유지 관리 계획을 세우는 계획을 세우십시오. 개발자는 아무도 기억하지 않으려는 오래된 쇠락을 원숭이처럼 꾸며 대는 대신에, 뭔가를 향해 일하는 것처럼 느껴질 것입니다.

그냥 2 ¢.

3

정말 많은 사용자가 행복 내가 어떻게 내 팀에 동기를 부여해야하는 경우, 정말 사용을 방문하여 찾아 내 개발자를 요청합니다

"사용자를 충족하고 소프트웨어를 사용하여 볼 팀 보내기"와 같은 제품과 함께.

나는 우리가 그것을 더 잘 만들 수있는 방법에 대해 도전하고 싶습니다.

0

팀에 동기를 부여하고 레거시 코드를 학습하고 반감을 고치는 데 필요한 시간은 리소스, IDE, 전문 기술, 프레임 워크 등을 사용할 수 있다면 새로운 플랫폼에서 동일한 것을 구축하는 데 쉽게 사용할 수 있습니다 무료로, 좋은 소식은 시스템을 가지고 있고 새로운 플랫폼에서 똑같은 행동을 취할 필요가 있습니다. 우리가 알지 못하는 행동과 사용자 경험을 가진 새로운 제품을 만들기 위해서입니다.

관련 문제