2013.04.30

칼럼 | 고참은 죽지 않는다, 다만···

정철환 | CIO KR
최근 스마트폰과 태블릿의 급속한 확산에는 수 많은 앱 개발자들과 개발한 뛰어난 앱들의 등장이 주요한 역할을 했다. 필자가 초기 윈도우 모바일 기반의 스마트폰을 사용했던 시기만 해도 별로 쓸만한 앱이 없었다. 단말기 제작사나 이통사에서 배포하는 앱 이외에는 인터넷의 커뮤니티 등을 통해 앱을 공유하긴 했으나 그리 많지 않았다. 하지만 아이폰이 등장하면서 상황은 크게 바뀌었고 경쟁자인 안드로이드까지 더해지면서 오늘날의 모바일 앱 생태계까지 발전해 왔다. 하지만 앱 개발에 있어 현재는 안드로이드에서는 자바, 아이폰에서는 오브젝티브C를 이용한 프로그램 개발이 주류를 이루고 있다. 하지만 모바일 개발자들은 수요에 비해 공급이 많이 부족한 형편이어서 기업에서 모바일 앱을 업무용으로 개발하고자 할 때 개발자를 구하기가 쉽지 않다.

그런데 이러한 오늘날의 모바일 앱 개발 여건이 필자에게는 전혀 낯설지가 않다. 젊은 개발자들은 모르겠지만 1990년대 초반, 그러니까 약 20년전, 국내 기업의 IT환경은 메인프레임에 더미터미널이라는 텍스트 기반의 단말기 또는 도스 운영체제의 PC로 운영되던 환경에서 마이크로소프트에서 개발한 윈도우가 기업 업무용 시스템의 개발 환경으로 채택되기 시작하던 시기가 있었다. 필자에겐 지금의 상황이 마치 그때 상황의 데자뷰 같은 느낌이다.

당시 국내 기업 정보시스템 개발의 주요 언어는 코볼(COBOL)이었다. 일부 사용되고 있던 유닉스 시스템에서는 C 언어가 프로그램에 쓰이긴 했지만 기업 내에서는 절대적으로 코볼이 우세했다. 그런데 컴퓨팅 환경이 바뀌고 개인 사용자를 우선으로 MS 윈도우가 보급되기 시작하면서 기업 업무환경에서 윈도우 PC의 도입이 시작되던 시기였던 것이다. 이른바 클라이언트/서버 환경의 등장이다. 그런데 개발 수요는 늘고 있는데 윈도우 기반에서 C와 윈도우의 API를 이용해 그래픽 사용자 인터페이스 개발 능력을 보유한 개발자는 그야말로 구하기가 하늘의 별따기였다. 더구나 실력까지 어느 정도 갖춘 개발자를 구하는 것은 더더욱 어려웠다.

이 때 등장한 것이 파워빌더와 비주얼베이직 같은 개발환경이었다. 윈도우 개발에 필요한 C와 윈도우 API를 직접 사용하지 않고 별도로 구성된 개발환경에서 보다 쉽게 화면 설계와 업무 로직의 구현을 할 수 있었으며 이를 컴파일하면 윈도우에서 별도의 실행 환경만 설치하면 일반 윈도우용으로 개발된 프로그램과 같이 실행될 수 있었다. 그리고 당시 또 한가지 난제였던 소켓 통신 기반의 서버와의 통신과 관계형데이터베이스를 연계하여 데이터베이스를 퀴리하는 부문까지도 쉽게 처리할 수 있었다. 이러한 개발 환경의 등장은 기업용 업무 시스템을 윈도우 기반으로 개발하는데 많은 호응을 얻어 수 많은 시스템들이 이러한 환경에서 개발되었다.

하지만 이러한 개발환경에도 문제는 있었다. 기본적으로 2-티어 클라이언트 서버 환경으로 인해 PC의 부하가 컸으며 프로그램에 조그만 변경만 있어도 PC에 설치된 모듈을 수시로 업데이트 해 주어야 했다. 따라서 아침에 직원들이 출근하여 로그인을 하면 업데이트 모듈을 설치하게 했는데 이것이 일시에 많은 부하를 네트워크에 주게 되어 문제가 생기기도 했다. 그 이후에 3-티어 클라이언트 서버 구조의 등장으로 업무 로직의 대부분을 서버에서 구현하게 되었고 이를 효과적으로 관리하고 운영하기 위한 환경으로 미들웨서 제품들이 시장에 등장했다. 미들웨어의 등장으로 클라이언트 서버 아키텍처는 성숙기에 이르렀다고 할 수 있다. 하지만 1990년대 중반 이후 등장한 웹브라우저는 또 한번의 혁신적인 변화를 기업 정보시스템 환경에 가져오게 된다. 웹브라우저 역시 처음부터 기업의 정보시스템 환경을 위해 개발된 것은 아니었으나 클라이언트 서버 구조가 가지지 못한 여러 장점들로 인해 점차 기업 정보시스템을 위한 개발 환경으로 채택되기 시작하여 오늘날 여러분들이 아시는 것과 같이 핵심 개발환경으로 자리잡게 되었다.

필자와 비슷한 시기에 IT 업계에 몸담았던 분들이라면 다 아실만한 이야기를 꺼내는 이유가 위의 흐름이 오늘날의 화두인 모바일 환경에서의 업무용 정보시스템 개발에도 그대로 적용되는 것은 아닐까 하는 생각 때문이다. 필자가 바로 얼마 전에 회사 업무를 지원하기 위한 모바일 업무 지원 시스템을 개발, 오픈하였다. 이를 위해 작년부터 회사의 모바일 업무시스템 개발을 위한 표준 환경으로 어떤 것을 채택해야 할 것인지에 대해 꽤 오랜동안 고민을 했었다. 가장 일반적인 네이티브 앱 개발방식은 안드로이드와 아이폰을 모두 지원하기 위해서는 2개의 개발 버전을 유지해야 하며 시스템 오픈 이후 지속적으로 있을 수정 및 추가 개발요청사항에 대응하기 위한 운영부서에서의 모바일 개발자 확보 및 개발 공수 등의 측면에서 1990년대 초반 윈도우를 업무 시스템에 도입하여 했을 때와 너무나도 동일한 고민을 하게 되었다.

다른 대안을 찾아보던 중 모 기업에서 마치 파워빌더와 아주 유사한 개발환경을 모바일 환경에 적용할 수 있도록 개발한 독자적인 개발솔루션을 알게 되었다. 처음엔 예전 파워빌더를 발견하고 이를 적용하여 큰 성과를 거두었던 기억이 있었기에 아주 긍정적으로 검토를 했었으나 지난 세월을 통해 이미 경험한 것 때문에 채택하지 않게 되었다. 바로 웹 환경이다. 이미 1990년대의 클라이언트 서버 격동기를 통해 웹 환경이 가지는 여러 장점이 클라이언트 서버 환경을 능가한다는 것이 증명되었기에 개발 환경 표준 측면에서 채택할 수 없었던 것이다. 그리고 결론적으로는 하이브리드 웹 방식을 필자가 속한 회사의 모바일 업무시스템 개발을 위한 표준 방식으로 채택하게 되었다. 아마도 HTML5 표준의 발전에 따라 웹 기반 개발환경의 능력은 지속적으로 확대될 것으로 생각된다.

IT 환경은 기술의 발전이 빠르고 이를 따라가기가 쉽지 않은 분야다. 필자 역시 프로그램 코딩을 마지막으로 했던 것이 10년도 더 전에 일이라 이미 개발자로서의 역량이나 기술은 형편없다고 해도 과언이 아니다. 하지만 지난 PC 기반의 정보시스템 개발 경험이 최신 기술인 모바일 환경의 업무시스템 개발에도 쓸모가 있듯이 IT 분야에도 때론 필자같이 나이 많은 고참도 역할이 있다는 것에 위안을 받는다. 아마 최근 개발환경은 많은 부분이 프레임워크 속에 묻혀있고 시스템에서 객체화되어 있겠지만 아주 오래 전 윈도우 이벤트 처리 루틴을 개발하고 소켓 통신 프로토콜을 구상하고 관계형데이터베이스에 TCP/IP 기반의 모듈을 통한 쿼리 실행부분을 개발하면서 많은 고민을 했던 필자의 개발자 본능이 최근 모바일 기반의 업무시스템 개발 표준에 대한 검토 과정에서 쌓인 불쑥 고개를 내밀게 된 것이 참 즐거웠었나 보다. 맥아더 장군이 했다는 유명한 말이 떠오른다. ‘노병은 죽지 않는다. 다만 사라질 뿐이다’

*정철환 팀장은 삼성SDS, 한양대학교 겸임교수를 거쳐 현재 동부제철 IT기획팀장이다. 저서로는 ‘SI 프로젝트 전문가로 가는 길’이 있으며 삼성SDS 사보에 1년 동안 원고를 쓴 경력이 있다. 한국IDG가 주관하는 CIO 어워드 2012에서 올해의 CIO로 선정됐다. ciokr@idg.co.kr



2013.04.30

칼럼 | 고참은 죽지 않는다, 다만···

정철환 | CIO KR
최근 스마트폰과 태블릿의 급속한 확산에는 수 많은 앱 개발자들과 개발한 뛰어난 앱들의 등장이 주요한 역할을 했다. 필자가 초기 윈도우 모바일 기반의 스마트폰을 사용했던 시기만 해도 별로 쓸만한 앱이 없었다. 단말기 제작사나 이통사에서 배포하는 앱 이외에는 인터넷의 커뮤니티 등을 통해 앱을 공유하긴 했으나 그리 많지 않았다. 하지만 아이폰이 등장하면서 상황은 크게 바뀌었고 경쟁자인 안드로이드까지 더해지면서 오늘날의 모바일 앱 생태계까지 발전해 왔다. 하지만 앱 개발에 있어 현재는 안드로이드에서는 자바, 아이폰에서는 오브젝티브C를 이용한 프로그램 개발이 주류를 이루고 있다. 하지만 모바일 개발자들은 수요에 비해 공급이 많이 부족한 형편이어서 기업에서 모바일 앱을 업무용으로 개발하고자 할 때 개발자를 구하기가 쉽지 않다.

그런데 이러한 오늘날의 모바일 앱 개발 여건이 필자에게는 전혀 낯설지가 않다. 젊은 개발자들은 모르겠지만 1990년대 초반, 그러니까 약 20년전, 국내 기업의 IT환경은 메인프레임에 더미터미널이라는 텍스트 기반의 단말기 또는 도스 운영체제의 PC로 운영되던 환경에서 마이크로소프트에서 개발한 윈도우가 기업 업무용 시스템의 개발 환경으로 채택되기 시작하던 시기가 있었다. 필자에겐 지금의 상황이 마치 그때 상황의 데자뷰 같은 느낌이다.

당시 국내 기업 정보시스템 개발의 주요 언어는 코볼(COBOL)이었다. 일부 사용되고 있던 유닉스 시스템에서는 C 언어가 프로그램에 쓰이긴 했지만 기업 내에서는 절대적으로 코볼이 우세했다. 그런데 컴퓨팅 환경이 바뀌고 개인 사용자를 우선으로 MS 윈도우가 보급되기 시작하면서 기업 업무환경에서 윈도우 PC의 도입이 시작되던 시기였던 것이다. 이른바 클라이언트/서버 환경의 등장이다. 그런데 개발 수요는 늘고 있는데 윈도우 기반에서 C와 윈도우의 API를 이용해 그래픽 사용자 인터페이스 개발 능력을 보유한 개발자는 그야말로 구하기가 하늘의 별따기였다. 더구나 실력까지 어느 정도 갖춘 개발자를 구하는 것은 더더욱 어려웠다.

이 때 등장한 것이 파워빌더와 비주얼베이직 같은 개발환경이었다. 윈도우 개발에 필요한 C와 윈도우 API를 직접 사용하지 않고 별도로 구성된 개발환경에서 보다 쉽게 화면 설계와 업무 로직의 구현을 할 수 있었으며 이를 컴파일하면 윈도우에서 별도의 실행 환경만 설치하면 일반 윈도우용으로 개발된 프로그램과 같이 실행될 수 있었다. 그리고 당시 또 한가지 난제였던 소켓 통신 기반의 서버와의 통신과 관계형데이터베이스를 연계하여 데이터베이스를 퀴리하는 부문까지도 쉽게 처리할 수 있었다. 이러한 개발 환경의 등장은 기업용 업무 시스템을 윈도우 기반으로 개발하는데 많은 호응을 얻어 수 많은 시스템들이 이러한 환경에서 개발되었다.

하지만 이러한 개발환경에도 문제는 있었다. 기본적으로 2-티어 클라이언트 서버 환경으로 인해 PC의 부하가 컸으며 프로그램에 조그만 변경만 있어도 PC에 설치된 모듈을 수시로 업데이트 해 주어야 했다. 따라서 아침에 직원들이 출근하여 로그인을 하면 업데이트 모듈을 설치하게 했는데 이것이 일시에 많은 부하를 네트워크에 주게 되어 문제가 생기기도 했다. 그 이후에 3-티어 클라이언트 서버 구조의 등장으로 업무 로직의 대부분을 서버에서 구현하게 되었고 이를 효과적으로 관리하고 운영하기 위한 환경으로 미들웨서 제품들이 시장에 등장했다. 미들웨어의 등장으로 클라이언트 서버 아키텍처는 성숙기에 이르렀다고 할 수 있다. 하지만 1990년대 중반 이후 등장한 웹브라우저는 또 한번의 혁신적인 변화를 기업 정보시스템 환경에 가져오게 된다. 웹브라우저 역시 처음부터 기업의 정보시스템 환경을 위해 개발된 것은 아니었으나 클라이언트 서버 구조가 가지지 못한 여러 장점들로 인해 점차 기업 정보시스템을 위한 개발 환경으로 채택되기 시작하여 오늘날 여러분들이 아시는 것과 같이 핵심 개발환경으로 자리잡게 되었다.

필자와 비슷한 시기에 IT 업계에 몸담았던 분들이라면 다 아실만한 이야기를 꺼내는 이유가 위의 흐름이 오늘날의 화두인 모바일 환경에서의 업무용 정보시스템 개발에도 그대로 적용되는 것은 아닐까 하는 생각 때문이다. 필자가 바로 얼마 전에 회사 업무를 지원하기 위한 모바일 업무 지원 시스템을 개발, 오픈하였다. 이를 위해 작년부터 회사의 모바일 업무시스템 개발을 위한 표준 환경으로 어떤 것을 채택해야 할 것인지에 대해 꽤 오랜동안 고민을 했었다. 가장 일반적인 네이티브 앱 개발방식은 안드로이드와 아이폰을 모두 지원하기 위해서는 2개의 개발 버전을 유지해야 하며 시스템 오픈 이후 지속적으로 있을 수정 및 추가 개발요청사항에 대응하기 위한 운영부서에서의 모바일 개발자 확보 및 개발 공수 등의 측면에서 1990년대 초반 윈도우를 업무 시스템에 도입하여 했을 때와 너무나도 동일한 고민을 하게 되었다.

다른 대안을 찾아보던 중 모 기업에서 마치 파워빌더와 아주 유사한 개발환경을 모바일 환경에 적용할 수 있도록 개발한 독자적인 개발솔루션을 알게 되었다. 처음엔 예전 파워빌더를 발견하고 이를 적용하여 큰 성과를 거두었던 기억이 있었기에 아주 긍정적으로 검토를 했었으나 지난 세월을 통해 이미 경험한 것 때문에 채택하지 않게 되었다. 바로 웹 환경이다. 이미 1990년대의 클라이언트 서버 격동기를 통해 웹 환경이 가지는 여러 장점이 클라이언트 서버 환경을 능가한다는 것이 증명되었기에 개발 환경 표준 측면에서 채택할 수 없었던 것이다. 그리고 결론적으로는 하이브리드 웹 방식을 필자가 속한 회사의 모바일 업무시스템 개발을 위한 표준 방식으로 채택하게 되었다. 아마도 HTML5 표준의 발전에 따라 웹 기반 개발환경의 능력은 지속적으로 확대될 것으로 생각된다.

IT 환경은 기술의 발전이 빠르고 이를 따라가기가 쉽지 않은 분야다. 필자 역시 프로그램 코딩을 마지막으로 했던 것이 10년도 더 전에 일이라 이미 개발자로서의 역량이나 기술은 형편없다고 해도 과언이 아니다. 하지만 지난 PC 기반의 정보시스템 개발 경험이 최신 기술인 모바일 환경의 업무시스템 개발에도 쓸모가 있듯이 IT 분야에도 때론 필자같이 나이 많은 고참도 역할이 있다는 것에 위안을 받는다. 아마 최근 개발환경은 많은 부분이 프레임워크 속에 묻혀있고 시스템에서 객체화되어 있겠지만 아주 오래 전 윈도우 이벤트 처리 루틴을 개발하고 소켓 통신 프로토콜을 구상하고 관계형데이터베이스에 TCP/IP 기반의 모듈을 통한 쿼리 실행부분을 개발하면서 많은 고민을 했던 필자의 개발자 본능이 최근 모바일 기반의 업무시스템 개발 표준에 대한 검토 과정에서 쌓인 불쑥 고개를 내밀게 된 것이 참 즐거웠었나 보다. 맥아더 장군이 했다는 유명한 말이 떠오른다. ‘노병은 죽지 않는다. 다만 사라질 뿐이다’

*정철환 팀장은 삼성SDS, 한양대학교 겸임교수를 거쳐 현재 동부제철 IT기획팀장이다. 저서로는 ‘SI 프로젝트 전문가로 가는 길’이 있으며 삼성SDS 사보에 1년 동안 원고를 쓴 경력이 있다. 한국IDG가 주관하는 CIO 어워드 2012에서 올해의 CIO로 선정됐다. ciokr@idg.co.kr

X