알라딘

헤더배너
상품평점 help

분류

이름:박현철

최근작
2019년 8월 <Head First Agile>

도메인 주도 설계 핵심

세상에는 다양한 가치가 있다. 가라앉은 해적선 속의 숨겨진 보물처럼 신비함을 간직한 유형의 가치도 있겠지만, 사람들의 경험 속에 녹아 있는 지식과 통찰처럼, 보이지는 않아도 인간의 삶을 개선하고 좀 더 바람직한 미래를 만드는 데 필요한 가치도 있다. 언제부터인가 '세상은 나에게 어떤 의미이고, 나는 세상에 어떤 의미일까?'를 생각하기 시작 했고, 이 세상에 자그마한 가치라도 남기고 싶었다. 그 이후 다른 사람들과 아는 지식을 공유한다는 것은 나에게 매우 중요한 일이 되었고, 글을 쓰고 강의를 하고 번역을 하는 일은 자그마한 가치를 세상에 내놓는 소중한 과정이자 삶의 일부가 됐다. 한 권의 번역서를 내면서 다시 한 번 삶을 살아온 보람을 느껴본다. 자바(Java)를 포함한 다양한 언어들을 사용한 경험이 쌓일수록, 모델링이라는 행위를 통해 프로그래밍 언어가 가진 힘을 최대한 이끌어낼 수 있을 뿐만 아니라 시장, 고객, 환경에 최적화된 결과를 만들어낼 수 있다는 것을 다양한 프로젝트를 통해 배웠다. 에릭 에반스의 『도메인 주도 설계』를 처음 읽었을 때, 그동안 저자가 고민해온 여러 주제들을 일관성 있는 맥락으로 풀어낸 것이 보였지만, 너무 많은 개념들이 혼재돼 있어 읽는 사람들이 충분히 이해하기는 어렵겠다는 생각을 한 적이 있다. 이번에 출간하게 된 『도메인 주도 설계 핵심』은 기존의 내용에서 많은 부분을 덜어내 핸드북처럼 작고 간결하게 만들었다. 마치 대기업이 주도하는 큰 규모의 프로젝트를 린 스타트업 관점에서 핵심만 간추린 것처럼 보인다. 우리나라처럼 '빨리빨리' 문화가 내재된 사회일수록 좀 더 간결하고 정제된 지식과 가이드가 필요하다. 특히 많은 기업들은 프로젝트라는 형태로 투자를 하고, IT 기술을 활용한 혁신적인 또는 개선된 서비스 및 플랫폼을 구축하고 있다. 이런 상황에서 작은 조직들 간의 협업을 통해 의사소통 비용을 줄이면서도 빠른 피드백을 통해 품질을 개선하는 일은 반드시 필요한 일이며, 경쟁력이 된다. 이 책은 비즈니스 모델링을 개발 조직과 밀착시키면서, 애자일 사상까지 책 안의 모델에 포함시켰다. 점차 세상의 많은 것들이 소스코드 안에 담겨 활용되고 있다. 로봇과 드론을 통해 세상을 활보하고, 가상 현실을 통해 상상의 세계에 한발 더 다가서고 있으며, 빅데이터 및 인공지능 기반 서비스로 예측을 포함해 좀 더 개선된 삶의 질을 만들어내고 있다. 모델링은 다양한 세상과 조직, 그리고 IT를 포용하면서 가장 효과적인 소스코드를 만들기 위해 필요한 과정이다. 소스코드와 조금이라도 관련 있는 직업을 가진 사람이라면, 이 책을 통해 모델링에 대해 한 번쯤 돌이켜보면서 자신의 가치를 좀 더 개선하는 계기를 만들어갈 수 있지 않을까 희망해본다.

애자일 소프트웨어 개발

내가 처음 애자일을 접한 것은 1999년이다. 개발자, 설계자, 프로젝트 관리자 등으로 활동했던 나는 당시 수백억 원을 들여 많은 외국인들과 함께 웹 기반 투자 시스템을 만드는 회사에 신용분석(CreditAnalytics) 팀장으로 합류했었고, 쉽지 않은프로젝트 상황을 잘 이끌어가려고 고군분투하고 있었다. 여러 명의 인도 출신 개발자들이 풀(Pool) 형태로 존재했고, 새로운 일이 내게 주어질 때마다 개발자 풀에서 협업을 해본 경험이 없는 사람을 데려와서 매우 생소한 개발 업무를 맡겨야만 했다. 업무를 가르쳐주기도 어려웠고, 전체 아키텍처 및 관련 모델, 개발 환경 등을 짧은 시간 내에 전달하는 것도 쉽지 않았으며, 이전 프로젝트 결과들과 지속적인 통합을 하면서 일관성을 유지하는 것도 쉽지 않았다. 이때 XP를 알게 되었다. 풀로부터 데려온 개발자에게, 비즈니스 전문가들과 논의해 만들었던 스펙 내용을 보면서 코딩하는 것을 한 시간쯤 시범적으로 보여주었고, 한 시간은 직접 코딩하도록 시키면서 업무, 공통 모듈, 프로그래밍 스타일 등에 대한 개발 관련 코칭을 수행했다. 그렇게 P C 한 대로 일주일쯤 함께 짝 프로그래밍(Pair Programming)을 진행하면, 이후에 필요한 일은 스펙을 통해 적절하게 협업할 수 있는 상황이 되었다. 이전 프로그램이나 다른 사람들이 작성한 프로그램들을 개발자가 직접 개선하기 위해 코드 소유권을 공유할 수밖에 없었고, 프로그램 대부분이 기업 회계를 위한 계산과 각종 금융 상품 처리 등에 관한 것이다 보니 계속 회귀 테스트를 할 수밖에 없는 상황이어서, 항상 테스트를 염두에 두고 개발해야만 했다. 회사 전체의 개발/관리 프로세스를 따르면서 우리 팀은 UP(Unified Process) 방법론을 관리의 틀로 활용하며 로즈(Rose)라는 모델링 도구로 UML 모델을 만들고, 로직이 없는 스켈레톤 코드(Skeleton Code)를 생성해 개발자에게 배포했으며, XP를 통해 개발자들과 의사소통했다. 그 당시 빌드를 전담하는 전문 빌드 마스터가 있어서, 지속적 통합 빌드 체계도 유지할 수 있었다. 프로젝트 관리자는 미국인 여성으로 MBA 출신이었고, 소프트웨어 아키텍트는 중국계 캐나다 사람이었으며, 영국이나 홍콩 등 다양한 출신의 영업 및 국제법 전문가 등도 있었다. 그리고 투자사들은 항상 우리들의 성과에 대해 관심을 표명하고 있었다. 우리는 급변하는 금융 상황에 대처할 수 있는 빠른 피드백이 필요했고, 내게 XP는 그 당시의 어려운 상황을 타개할 수 있는 유일한 탈출구였다. 모델링 및 프로그래밍 관련 저서를 출간했던 나는 저술 경험을 살려 XP에 대한 좋은 경험을 공유하고자 번역서인 『XP 도입을 위한 실전 입문: Extreme Programming Installed』를 2002년 출간했다. 이후 삼성생명 비전속 등 다양한 프로젝트들을 수행하면서 팀 활동에 XP를 적용해 빠른 피드백을 만들어낼 수 있었고, 2007년에는 증권사의 차세대 프로젝트에 스크럼(Scrum)을 적용해서 프로젝트 성공에 크게 기여할 수 있었다. 2007년 7월부터 2009년 5월까지 증권사 차세대 프로젝트에서 내가 맡았던 역할은 소프트웨어 아키텍트(Software Architect)이자 변화관리자(Change Agent)였다. 프로젝트 진행 중에 증권사 CIO 및 현업과 전산 리더들, 수행사였던 삼성SDS의 PM, PL, QA 등 주요 리더들, PMO를 모두 포함한 스크럼 조직을 구성했고, 나는 스크럼마스터(ScrumMaster)가 되어 매일 스크럼 미팅(Daily Scrum Meeting)을 진행했다. 또한, 매일 진행된 미팅을 뉴스페이퍼(Daily News Paper)로 만들고 인쇄해서 프로젝트 관련 전체 인원(250여명)에게 배포했다. 20년이 넘는 나의 IT 경력에서 가장 값진 경험을 바로 이때 얻었다. 스크럼마스터로서 전사 프로젝트의 의사소통 메커니즘을 이끌어냈고, 날마다의 대면 이슈 관리를 통해 빠른 상황 대처를 할 수 있었다. 그리고 필요한 정보 공유를 통해 전체 프로젝트의 이해 공유(Shared Understanding)를 향상시킬 수 있었다. 비록 전체 프로젝트의 공식 방법론이 정보공학 방법론이었고 C 언어가 주 언어였지만, 스크럼과 같은 애자일 방식이 전사 차원의 프로젝트 성공에도 일조할 수 있다는 확신을 갖게 해주는 사례를 만들 수 있었다. 크고 작은 프로젝트 수행이 끝날 때마다 프로젝트 경험을 정리하면서 모델링이나 프로젝트 관리 관련 책과 애자일 관련 책의 번역 작업을 꾸준히 해올 수 있었고, 덕분에 내 통산 열 번째 책인 『애자일 소프트웨어 개발』을 IT 전문가와 함께 출간하는 기쁨을 얻을 수 있었다. 이 모든 것에 대해 하느님께 감사드리며, 어려운 IT 환경에 조금이라도 도움이 되기를 희망한다.

가나다별 l l l l l l l l l l l l l l 기타
국내문학상수상자
국내어린이문학상수상자
해외문학상수상자
해외어린이문학상수상자