프로젝트 수행을 하다보면 많은 Know-How가 쌓이게 됩니다. 그래서인지 가끔 이런 이야기를 듣기도 합니다. 이 부분은 지난번에 만든 것과 비슷하잖아. 그대로 가져다가 사용하면 금방 하겠네!소프트웨어공학적으로는 분명히 맞는 이야기이지만 현실적으로는 쉽지 않은 것이 사실입니다. 바로 소프트웨어의 재사용성(Re-Use)에 대한 고려 없이 프로젝트를 진행하기 때문인데요. 프로젝트 수행 기간의 단축에 따른 충분한 설계 없이 개발에 들어가는 현실 때문인 것 같기도 합니다. 소프트웨어 3R의 정의 - 완성된 소프트웨어 프로그램을 기반으로 역공학(Reverse-Engineering), 재공학(Re-Engineering), 재사용(Re-Use)를 통해 소프트웨어의 생산성을 극대화 하는 기법 소프트웨어 3R의 필요성 ..
요즘~ 필요하다고 생각하는 소스는 공개되어 있는 것도 많고 또.. 컴포넌트 단위로 저렴하게 구입할 수 있는 것도 많습니다. 그러므로 모든 소스를 직접 구현하겠다는 생각은 굉장히 위험한 것이라고 생각합니다. 비록 프로그래밍 코딩에 자신도 있고, 알고리즘 구현도 잘 한다고 할지라도 이미 만들어진 것을 구현하는데 들어갈 노력을... 더 나은 사용자 환경 구축이나 최적화 등에 힘쓰는 것이 바람직 하다고 생각합니다. 더 나아가 본인 스스로나 팀 내부에서 작성한 소스들도 재사용이 가능하도록 정리하려는 노력이 필요합니다. 경우에 따라, 같은 프로젝트에 동일한 일을 하는 소스가 여러군데 존재하기도 하더라구요~ 그러한 경우를 막기 위해서 재사용하기 쉽게 만들어야 합니다. 팀 프로젝트에서 소스 코드의 중복이야말로 추후 문..