올해로 3번째인 한국 소프트웨어 아키텍트 대회를 다녀왔다.
금요일 오전 8시 30분부터 시작해서 6시까지 끝나는 장기간의 발표대회이기도 했고, 40개의 주제를 가지고 4개의 트랙에서 동시에 진행되는 큰 규모로서, 주제는
- Track 1 : 비즈니스와 SW(SW Architecture in Business)
- Track 2 : 아키텍처와 오픈소스 활용
- Track 3 : 엔터프라이즈 모바일 아키텍처 & 클라우드 컴퓨팅
- Track 4 : 엔터프라이즈 SW 아키텍처
의 큰분류를 바탕으로 해서 각 발표자가 40분의 발표시간을 가지고 발표하는 형식으로 진행이 되었다. 대부분의 발표자들의 40분의 시간보다 많은 발표자료를 준비해오는 덕분에 대부분이 40분을 넘기는 경우가 많았다. 40분을 넘기는 경우가 자주 있어서 원하는 트랙을 찾아 이동하다보면, 이미 발표를 시작하고 있는 경우도 심심찮게 목격할 수 있었다. 발표와 발표사이에 5분 정도의 시간적인 여유를 두어서 참관자들이 이동할 수 있고, 발표자들이 발표를 준비할 수 있는 시간적인 여유를 주었으면 어땠을까 하는 아쉬운 생각도 든다.
대회가 진행된 곳은 삼성동 Coex Conference Room 307A, B, 308A, 308B 지역이었다. 각 방에서 Track 1, Track 2, Track 3, Track4 가 진행이 되는 방식이었다. 대회는 15일 시작되어 있었지만, 내가 듣고 싶은 주제들이 16일에 발표되었기 때문에 16일 9시 30분에 맞추어 현장에 도착했다.
우리나라의 '코리아 타임' 때문인지 30분이 되었는데도 발표는 시작되지 않았다. 10여분의 시간이 흐른뒤에서야 발표가 시작되었다. 처음 발표하는 발표자의 시간이 10분 지체되는 상황이 벌어졌다.
첫번째 발표는'Agile 개발실 - 자부심, 행복감 그리고 놀라운 결과'라는 주제로 넥스트리소프트의 김동열 팀장님이 발표했다. 약간 시간에 좇길 수밖에 없는 상황이어서 발표는 조금 빠르게 진행되었다. 그래도 처음 발표자로서 처음 스타트는 잘 끊어주신 편이었다. 우리나라에서 애자일과 XP 등의 개발방법론에 대한 관심이 조금씩 일어나고 있는 상황 속에서, 아키텍트들은 이런 새로운 개발방법론을 아키텍쳐에 어떻게 적용할지를 고민하는 이들이 많은 것이 사실이다. XP 그룹이나 KSUG 등에서도 많은 개발자들 사이에서 오고가는 이야기들이 대부분 그런 이야기들이기도 하다.
두번째 발표는 '전자정부 2.0을 위한 아키텍쳐(공공 정보자원 공유 인프라 구축을 위한 아키텍처"라는 주제로 기술문화연구소의 류한석 소장님이 발표를 하셨다. 지난 안드로이드와 관련된 세미나에서 뵈었던 친숙한 얼굴이기도 하다. ^^; 하지만 그 분은 나를 잘 모를테지만, 발표를 들은 후 날린 트윗에 '피드백 고맙다'는 답을 주시는 것을 잊지 않으신다. 우리나라 정부는 전자정부 프레임워크를 발표하기도 했으며, 전자정부2.0 이라 하여 '공개할 수 있는 정보는 공개한다'는 주제 아래 정부가 가지고 있는 정보들을 API 형태로 개발자들에게 제공할 준비를 하고 있다. 정부가 API를 제공하면 Volunteer(봉사자) 개발자들이 나서서 그 API를 이용하여 여러가지 웹서비스를 제공하는 것이 정착된 미국과 호주와는 달리, 우리나라는 지난 참여정부 시대 이후, 사라진 정보통신부와 IT에 대한 무관심 속에서 개발자들은 정부에 대한 불신을 품고 있다. 인터넷과 연결된 많은 개발자들이 Anti MB 정신을 내걸고 있다고 봐도 될 것이다.
'4대강 사업 집중'에 따른 국가예산이 대부분이 국토해양부와 한국수자원공사로 편중되는 현상이 발생하면서, 전 정부에서 주도하던 다양한 정보화 사업이 도중하차하는 상황이 벌어졌다. 우리나라는 정부에서 주도적으로 IT 사업을 육성하기 위하여 정부에서 주도적으로, 행정정보화를 추진하여왔다. 그 덕분에 우리나라는 행정 전산화에 있어서 국제적으로 상위권을 유지하고 있지만, 그것은 어디까지나 전 정부에서 집중투자한 덕분이지, 현재 정부에서는 현재 진행되는 행정정보화 사업을 유지하는 것도 벅차보이는 것이 현실이다.
류한석 소장은 전자정부 2.0이 성공하기 위해서는 '신뢰'가 구축되어야 한다고 이야기 했다. 문득....
라는 책이 생각났다. 현 정부에 들어, 국민들은 정부를 불신하기 시작했다. 너무나 많은 사건들이 터졌고, 그 사건들을 수습하는 과정에서 전혀 수긍할 수 없는 헷소리를 지껄이는 정부를 누가 믿을 수 있겠는가... 국가와 국민이 신뢰를 쌓을 수 있는 시기는 다음 정부때로 넘어가야할 것으로 보인다. 이렇게 글을 쓰면서... ㅡ_-);; 이 글이 감시받고 있을지도 모르겠다는 생각... 들지만, 정부의 인력으로는 나같은 변두리 개발자까지 신경쓸 여력은 없다는 것이 개인적인 판단이다.
소통은 서로의 '신뢰'를 쌓는 방법 중 하나다. 하지만, 그 소통이 꽈악 막힌 현 상황에서 정부와 국민들의 소통과 이를 통한 '신뢰 구축'은 요원해보인다.
세번째 발표는, '아키텍트, 오픈소스 Spring Framework에 길을 묻다"라는 주제로 아이티와이즈 컨설팅의 조만희 컨설턴트가 발표했다. 최근 Java 6 EE가 발표되었다(라지만 몇개월 된 것으로 기억한다. ^^;;). Enterprise 환경을 위한(나는 기업 업무와 관련된 전반적인 비즈니스 로직 처리 환경이라고 정의했음...) 각 벤더사들의 요구사항을 집어넣다 보니 EJB의 스펙은 너무 광대해졌다. 그 안에 담겨있는 스펙들에 아키텍트를 비롯한 컨설턴트들은 거대한 파도에 집어 삼켜졌다. 그렇게 파도에 삼켜진 표류자들을 구한 구원의 손길이 있었으니, 그것이 'Spring Framework'라는 식의 결론이랄까? ^^;
확실히 이번 발표대회에서는 Spring Framework 와 오픈소스에 대한 관심이 높아진 것으로 보인다. 이와 관련해서 신경써야할 것은 License이다. 대부분의 오픈소스들은 License를 강력하게 따르기를 원한다. 특히나 오픈소스가 그렇다. 지난번 한국 오픈소스 소프트웨어 개발대회 기술세미나에서도이 점에 대해서 귀에 딱지가 들어앉을 만큼 반복적으로 말했다. 이는 앞으로 더욱 중대한 문제가 될 것으로 보인다.
현재 많은 기업들이 스프링 프레임워크 등의 오픈소스를 바탕으로 해서 자사의 프레임워크를 개발해낸다. 그러면서 자사만의 고유한 프레임워크라고 선전하면서 계약비를 높이는 용도로 사용한다. 하지만, 살짝만 파고들어보아도 오픈소스 라이센스를 위반한 경우가 많아서 나중에 큰 문제로 부각될 수 있다는 것은 쉬쉬하고 있다. ㅡ_-);; 묻어둬서 누군가 밟으면... Orz... 요즘 나도 모르게 묻어둔다는 표현을 참 많이 사용하네.
네번째 발표는, '오픈소스 기반의 RIA에 대한 Enterprise 활용방안' 이라는 주제로 SK C&C의 홍도석 과장이 발표했다. 흠... ㅡ_-);;; 이 때는 딱히 뭔가 느껴지는 부분이 없었... Orz... 아는만큼 보이고, 모르는 만큼 이해하지 못한다...!!
점심을 먹고!!
마침 삼성동 코엑스 쇼핑몰 한켠에 갤럭시S 현장 전시회장이 있어서 잠시 구경 좀 했다. ㅡ_-);; 아이폰이랑 디자이어 꺼내놓고 갤럭시를 만지고 있으니... 안내원이 다가오다가 다른 사람에게로 다가간다.
화면이 쪼금 작기는 하지만, 내 디자이어가 훨씬 아기자기하면서 반응성은 좋다. 물론, 이것은, 루팅하지 않은 갤럭시S와 비교했을 때의 이야기다. 루팅한 갤럭시S에게는 제법 후달린다.
다섯번째 발표는, '모바일 웹 플랫폼 SW 표준화'라는 주제로 한국전자통신연구원의 이승윤 님이 발표하셨다. 가트너가 발표한 2010년 부터 2011년 까지 이끌 모바일기술에 대해서 (http://www.gartner.com/it/page.jsp?id=1328113) 이야기하면서, 앞으로 스마트폰과 타블릿 등의 모바일기기 환경에서 앱보다는 모바일웹을 바탕으로 많은 것들이 이루어질 것이라는 이야기를 한다. 이부분에 대해서는 상당히 많은 공감을 하고 있다. 최근 많은 개발자들과 개발사들이 모바일앱 개발에 뛰어들고 있다. 그래서 가격도 천차만별이고 정말 다양한 형태로 난립하고 있다. 지금의 시기는(앞으로 2012년 정도까지는) 모바일앱 개발과 관련한 사업은 서부개척기 때의 '골드러쉬'와 같은 모습을 할 것으로 보인다. 많은 이들이 앱개발을 통한 '성공'을 찾아 모바일 시장으로 뛰어들 것으로 보인다. 아이폰과 안드로이드폰 앱 개발로 유명세를 떨친 많은 이들이 여러 곳을 다니며 '모바일 앱'은 기회의 땅이며 많은 '기회'가 있다고 말하고 있다.
얼핏보면 모바일앱 개발은 손쉬워보인다. 개그맨의 유행어 마냥 '그까이꺼 대충~ 3.7인치 화면에 맞춰서 버튼 넣고, 데이터 몇개 넣으면 되잖아.'라는 생각으로 달려드는 많은 이들은... 얼마 못가서 이 모바일 세계에서 떨어져나갈 것이다. 이미 그런 이들이 많지 않을까...라는 것이 개인적인 생각이다. ^^;
아이폰의 앱스토어에서 성공한 이야기를 보고서, 많은 개발자들이 맥북과 아이폰을 구매했다. 그들은 자신이 만든 어플을 앱스토어에 올린다. 그리고 몇몇 사용자들이 그들의 앱을 다운받아 사용한다. 그들은 불편한 사항에 대한 개선을 요구(피드백)한다. 개발자들은 것을 개선한다. 그리고 더 많은 이들이 쓰기 시작한다. 그리고 더 많은 피드백이 들어온다. 이 피드백을 수용하고 개선하기 위해서 이전보다 많은 노력이 들어가게 된다. 이 때, 일반 회사에 소속되어 개인적으로 개발하던 개발자들은 떨어져나갈 수밖에 없다.
그들은 처음에는, '단순히' 앱을 앱스토어에 올리면 '돈'을 벌 수 있을거라 생각했다. 하지만, 막상 뚜껑을 열어 보니, 그 안 담긴 장에 '구더기'들이 득시글하다. ㅡ_-);; 구더기 무서워서 장 못 담그는 경우가 바로 이런 경우가 아닐까?
그래서 이제 많은 이들이 이야기한다. '팀'을 이루라고. 기획, 분석, 설계, 구현, 유지보수에 이르는 과정의 업무를 분담하여 처리할 수 있는 '팀'을 이루라고... 그런데, 또 그게 쉽지 않다. 우리나라 개발자들은 대부분이 '독고다이'다. ㅡ_-);; 협업에 대한 개념이 제대로 서있지 않다. 그게 현실이다. 그래서 많은 이들이 꺼려하다가... 어느샌가 미묘하게 급변하는 모바일앱의 시장에서 떨어져 나간다. 흠... ㅡ_-);; 이 바닥이 원래 그렇다....
우리의 관심은, 현재 모바일, 정확하게는 '스마트폰'에 꽂혀 있다. ㅡ_-);; 워낙 신문, 방송, 매체들에서 '스마트폰, 스마트폰' 떠들어대니까 일반대중들마저 '스마트폰'이 대단하구나 하면서, 다른 변화의 흐름에 대해서는 신경쓰지 못하고 있다. 그러는 사이, 구글과 애플은 iAD와 adMob이라고 하는 모바일 광고관려 사업을 시작했다. 우리나라는 아직 모바일 광고와 관련된 어떤 사업도 진행되지 않고 있다. ㅡ_-);; 기껏해야 모바일 포탈페이지 내에 몇 개의 광고를 띄우는 정도랄까? 구글과 애플은 스마트폰과 모바일 기기 내에서도 적극적인 광고사업을 벌이고 있다. IT 업종에서는 다른 어떤 사업보다도 '선점'을 하는 것이 유리한 입지를 차지할 수 있다. 그런 면에서, 선진국에 비해 4년 정도 뒤쳐졌다고 판단되는 우리나라의 모바일 환경은 아쉬운 점이 많다.
그는 말한다. 스마트폰만 보지 말고, '모바일 기기'를 보라고. 애플의 '아이패드', 아마존의 '킨들' 등의 타블릿을 포함한 다양한 모바일환경 속에서 '범용적인 서비스와 프로그램'을 개발할 수 있는 환경을 구축할 수 있다면, 정말 기회를 잡을 수 있을 것이다. 그런 의미에서 본다면, 구글의 안드로이드 OS 환경은 꽤나 매력적으로 변모할 것으로 보인다. 이 OS를 바탕으로 구글TV가 나오게 된다면... 어떻게 될까? 한번 상상해보자. +_+)
미래 사회는 , 모바일 기기 - (정보처리/전달 서버) - 일반가정기기 를 하나로 이어주는 환경이 구축될 것이다. '홈오토' 시스템이라고 해야할까?
모바일 앱에서, 모바일웹 환경으로 변해갈 것이다. 모바일 앱은, 업그레이드를 하기 위해서 수시로 모바일 기기에 다운로드를 해야한다. ㅡ_-); 아직까지는 모바일기기에 있는 다양하고 효율적인 시스템을 쓰기 위해서는 앱(App)이 더 효율적이다. 하지만, 웹(Web)이 더 발전하게 된다면, 웹쪽이 더 매력적인 개발환경을 제공하게 될 것이다. 이 부분에 대해서도 나중에 한번 이야기 해보자. ㅎㅎ
여섯번째 발표는, 'SW 아키텍처 기반의 프로젝트 Risk Management"라는 주제로 삼성 SDS의 장세영 책임이 발표를 했다. 불확실성이 높아지면 RISK가 높아지게 된다...가 주제라고나 할까? ^^; 아키텍트들은 이 불확실성을 낮추기 위해서 노력을 해야한다.
4가지 핵심 요소가 있다.
- Scope (요구사항의 증가와 결과물 제출 후 요구사항의 변화 등에 의한 불확실성 증가)
- Schedule (Phase가 명확하지 않음, 기획, 분석/설계, 구현 등의 각 과정별 결과가 명확하게 파악되지 않은 채로 진행됨)
- Budget (인권비, 개발자원비의 변화)
- Quality (고객'갑', PM, 영업자, 개발자가 생각하는 품질에 대한 정의가 다르다)
그리고 소프트웨어 아키텍쳐는 두가지 측면에서 접근해야 한다고 한다. Risk(사전적 예방), Disater(재해복구)를 고려해야한다고 이야기 했다.
나머지 발표는 'Framework'와 관련한 내용들을 들었다. 최근에 Framework에 대해 관심이 많은 덕분이기도 하다.
두 개를 봐도... 사실 이해는 잘 안된다...? ㅎㅎ.
프레임워크는 자주 사용되는 코드들을 잘 정리한 코드들의 집합이며, 사용자가 간단한 환경설정 작업을 통해 제품화할 수 있는 반제품(Half-Product)이라고 할 수 있겠다. ^^; 생산성을 높이기 위한 '코드 재사용'이 중심이라고 할 수 있을 듯 하다. 이제 프레임워크에서는 정말 다양한 기능들을 제공하고 있다. 우리나라에서 많은 관심을 받고 있는 것은 Spring Framework(http://www.springsource.org/)이다. 나도 이 녀석에 대해서는 공부를 하고 있는 중이다. ㅡ0-);;
마지막 발표자는 아이티와이즈컨설턴트의 안영회님. ^^; '프레임워크의 지속 개선(Evolving) 전략'이라는 주제로 발표를 하셨습니다. ^^ 블로그(http://younghoe.info)
에 종종 방문해서 스프링과 아키텍쳐에 대한 이런저런 이야기를 종종 읽고 있습니다. 여전히 제가 프레임워크에한 이해도가 낮은 편이라서
글이 조금 길어지는 것 같아 이 정도에서 마무리를 지어볼까 한다.
아키텍트는 말그대로 '건축가'라고 생각한다. 소프트웨어 아키텍트는 거대한 IT 시스템을 아름답고 효율적으로 사용할 수 있게 설계하고 건축하는 '건축가'다. 자신의 이름을 담은 작품을 만들어내는 직업이라고 생각하기에 나는 이 직업을 멋지게 생각한다. 추후 경험을 쌓으면서 한단게씩 위로위로 올라가며 '아키텍트'에 도달하는 것을 목표로 하고 있다. 아직 갈길이 멀지만 한걸음 한걸음 차근차근 나아가다보면 도달할 수 있지 않을까? ^^;;