반응형

안녕하세요~

오랜만에 SI 프로젝트에 투입되면서

그동안 몇 번의 SI 프로젝트 관련된 기억들을 정리해서 

SI 프로젝트에 투입되기 전 미리 확인하면 좋을 정보를 공유해봅니다.

항상 겪게 되는 문제이긴 하지만

막상 닥치면 순간 알고도 속을 수밖에 없는 상황이 있습니다.

바로 영업, PM 등 관리자들이 투입 전 하는 거짓말 1순위라고 할 수 있는데.

- "기존 시스템 그대로 옮기는 거니까 별거 없어~."

- "금방 해."

- "머리 쓸 것도 없어. 그냥 기존 로직 그대로 보고 그대로 옮기면 되니까 야근도 없을걸~"

- "새로 하는 것이 아니니 엄청 쉽지."

이 말이 사실인 경우는 거의 없다고 보면 됩니다.

가끔 맞는 경우도 있지만..

우선 정말 기존 시스템을 기대로 옮기는 경우는 거의 없습니다.

기존 시스템이 정말 완벽에 가깝게 잘 구성되어 있고

사용자 입장에서도 큰 불만도 개선 사항도 없으면

그대로 옮기기가 맞습니다.

그냥 사용하면 되는 것을 왜 옮기냐고요?

기존 장비의 노후, 기존 개발 환경이 더 이상 지원되지 않거나

새로 유행하는 언어 또는 환경이 필요해서입니다.

개발자의 유행도 한몫합니다.

지금 델파이, 파워빌더 개발자를 찾는 건 힘들거든요.

 

하지만 보통 사용자는 현재 시스템에 불만이 있는 경우가 많습니다.

느리거나,

기능이 부족해서 일부 수작업을 해야 하거나,

더 편한 화면이 필요하거나,

새로운 업무가 추가되었지만 시스템에 미반영되었거나 혹은

기존 시스템에 넣기엔 전반적 개선이 필요해 불가능하다는 통보를 받았다거나.

그래서 기존 시스템의 약점, 부족한 점, 그리고 더 필요한 점을 요건 정의해서

새로 구축을 하기 원합니다.

그러면 차세대로 새로 구축하면 되는데 

왜? 기존 시스템을 보완한다는 표현을 사용할까요?

당연 비용 때문입니다.

새로 차세대를 진행하려면 기간도 그에 맞게 필요하고

그만큼 인력과 비용이 필요하게 됩니다.

하지만 간단하게 기존 시스템 기반을 바탕으로

조금만 개선(? 뻥임)하는 목적으로 하자고 하면

굳이 긴 기간도 필요치 않고 적은 비용으로 진행할 수 있는 명분이 생기기 때문입니다.

하지만 실상은 거의 차세대 수준이 되고 맙니다.

결국 개발자는 빙산의 일각만 보고 투입되었다가

그 아래 거대한 얼음 덩어리를 보고 기겁하게 됩니다.

예전 같으면 야근에 주말 근무를 밥 먹듯 하면서 

불쌍한 개발자들만 고생했지만

이제는 어찌 되었건 주 52시간이라는 법의 테두리에

어느 정도 보호를 받을 수 있게 되었으니까요.

 

그래도 프로젝트 팀원이 되었다면

어려운 환경이라도 최대한 효율적으로 개발을 해야 합니다.

기본적인 업무 분석은 시간이 걸리더라도 해야 합니다.

업무의 바탕 없이 개발을, 옮기는 작업이라도, 한다면 내가 큰 버그가 될 수 있습니다.

개발자 간의 소통도 중요합니다.

지금 프로젝트도 서로 의사소통이 거의 없는데 (이런 곳은 처음이네요)

그러다 보니 중복 개발이 발생하고

그로 인해 시간이 비효율적으로 사용되고 있습니다.

다른 개발자가 먼저 만든 부분이

나와 같거나 비슷하면 활용해서 1시간 이내로 처리할 수 있는 것을

새로 만들면 1~2일이 걸릴 수 있기 때문이거든요.

 

혹시 데이터베이스의 칼럼을 그대로 사용하는지

명칭을 변경하는지도 확인해야 합니다.

그게 은근 시간이 많이 걸린답니다.

간단하게 프로그램을 만들어 사용해도 됩니다.

 

개인적으로 기존 시스템을 그대로 옮기는 프로젝트를 좋아하지 않습니다.

개발이라기 보단 그냥 노동? 같이 느껴지거든요.

기존 시스템을 기반으로

업무, 시스템을 분석하고

새로운 시스템을 구축한다면 재미있습니다.

하지만 업무도 모르고 내가 분석하고 설계하는 것이 아니라면

과연 개발이라 부를 수 있을까?라는 생각이 자주 드네요.

 

관리자의 마인드도 중요합니다.

정말 이 프로젝트를 성공적으로 운영하려는 것인지..

단순히 꼰데? 인지

 

관리자라면 개발자들이 일정에 맞게 프로젝트를 진행할 수 있도록

정말 하인처럼 일을 해야 합니다.

당장 필요 없는 작업을 지시해서 개발자의 업무 흐름을 깨고

일정을 방해하는 어리석은 관리자가 되면 안 됩니다.

 

우선순위를 잘 정해서

가장 우선해야 하는 작업에 집중할 수 있도록 하고

그다음 순위별로 작업을 할 수 있게 일정을 잘 잡아야 합니다.

복잡한 자동차 엔진을 완성하기 위해 집중하는 엔지니어에게

창문이 작다, 휠 디자인이 촌스럽다는 요구를 해서

엔진 제작의 집중도를 떨어트린다면..

 

어려운 환경이라면 더 효율적으로 프로젝트가 진행될 수 있도록

모두가 잘 협조해야 하겠습니다.

 

 

반응형