패턴계에서는 절대적으로 내려오는 한가지 격언이 있습니다.

Pattern isn’t an island.  패턴은 섬이 아니다.  

패턴이라는 것은 크게는 Architecture을 결정하기도 하며, 그 밑에 Design을 결정하는 중요한 역할을 합니다. 즉 패턴간에 서로 깊은 연관성을 가진다는 것 입니다.

일전에 제가 다녀왔단 PLoP Bootcamp 포스트에서  Fault Tolerance 패턴의 저자인 Bob Hanmer가 Problem/Solution에서 언급한 패턴 언어를 참고하시기 바랍니다.

위 그림을 예로 들면 통신시 신뢰성을 확보하기 위해 IO GateKeeper라는 Monitor를 통해 데이터를 거쳐가게 만들었지만, Source/Destination/메세지의 순서등을 구분하기 위해 Token (Time + Mac Address + Handler 정보) 인 IO Triage 이용하게 되고, IO Triage를 구축하기 위해 내부적으로 Timestamp를 사용하는 모습이 보입니다.

즉  거대한 아키텍쳐적인 결정이든, 그 밑에 세분화된 설계에 대한 결정들이 개별적으로 결정되는 것이 아니라, 서로 간에 영향을 미치며 결정된다는 것입니다.

작년에 Kent Beck님은 세미나에서 이러한 말을 했습니다.

Design is an island‘  (설계는 섬이다.)

패턴을 몰랐다면 이러한 말이 별로 도발적으로 들리지 않았겠지만, 패턴계에서 늘 원칙처럼 언급하던 패턴이 가져오는 Side Effect를 중화시키기 위해 다른  해결책으로 또 다른 패턴들이 도입되는 그림을 늘 봐온 저로서는 도발적인 정의였습니다.

계속 읽기

두번째 고객 소통 패턴을  여러분과 공유합니다.다시 한번  손정민, 변현규, 문준석, 송은진 4 친구에게 정말 감사함을 표합니다!

소통은 사회적 관계를 형성하기 위한 핵심 매개체 중 하나다. 바쁜 현대사회에서 페이스북이나 트위터 등 소셜 네트워크 서비스(SNS)를 이용해 소통의 끈을 이어가는 사람들을 보면 소통이 인간의 기본욕구라는 것을 명확히 알 수 있다.

그렇다면 소통은 단지 사람과 사람사이에서만 성립되는 것일까? 필자는 기업과 고객의 관계에서도 소통이라는 명제가 성립할 수 있다고 생각한다. 이번 기고에서는 애자일과 패턴의 대가인 Linda Rising이 발표한 ‘고객과 소통하는 패턴’을 국내 실정에 맞게 의역했다.

이전 기고에서는 “고객 = 돈줄”이 아닌 “고객 = 사람”, 즉 “판매가 아니라 관계다(It’s a relationship., Not a Sale)”를 시작으로 고객을 파악하고(Know the Customer) 신뢰를 쌓으며(Build Trust) 고객의 말에 집중하는(Listen Listen Listen) 방법에 대해 알아 보았다.

이전 패턴이 고객과 관계를 형성하기 위한 패턴이였다면, 이번에 소개할 패턴은 형성된 관계를 발전시키는데 초점을 두고 있다.

반응하라(Be Responsive).

Aliases : 고객을 벽걸이처럼 내버려두지 말고 지속적인 관계를 유지한다.

Problem : 고객요구에 대한 적당한 반응시간은 언제일까?

Context : ‘판매가 아닌 관계다’와 ‘고객을 파악해라(Know the Customer)’를 이해한다. 신뢰 쌓기에 매진하라. 듣고 듣고 또 듣는 자세를 가져라.

Forces : 당신은 고객에게 주의를 기울이기 원하지만 항상 즉각적인 반응을 할 수는 없다. 사무실에 없거나 고객응대 시스템이 다운될 수도 있다.

계속 읽기

6월 19일  제 11회 JCO 발표는 저에게 많은 것을 깨닫게 해주었습니다.

청중 여러분들과 정말 기쁘고 재미난 세미나를 했던것 같습니다. 저 역시 정말 신나고 재미있게 발표한 자리여서 여러분들에게 매우 감사를 드립니다.

여러분에게 자료를 공개해 드립니다. (아래 링크로 들어가시면 pptx를 다운 받으실수 있습니다.)   JCO 발표용으로 업데이트한 자료들을 최종 반영했습니다.

Framework engineering JCO 2011

View more presentations from YoungSu Son

이번 행사를 통해 몇몇 느낀 점을 공유할까 합니다. 들은 분의 후기는 많지만, 발표자의 후기는 좀 독특하잖아아요.

계속 읽기

마소 5월호에 뜻깊은 일을 하나 했습니다.

저희 스터디 팀원의 손정민군과, 소마에 장선진님의 소개로 알게된  변현규, 문준석, 송은진 이 3명의 친구들이 고생해줘서, Pattern과 Agile에 유명한 대가이신, Linda Rising님의 “Customer Interaction Pattern”  (이 패턴은 InfoQ에서 interview할 정도로 인기가 있는 패턴입니다. ) 을 여러분과 공유할수 있게 되었습니다.

이 네 친구들의 지식 나눔에 정말 감사드리며, 몇번의 피드백으로 정말 좋은 산출물이 나와 만족합니다.  이번 기회를 통해 누군가를 성장시킬때 얻는 기쁨을 맛 보았습니다.   정말 지식은 나눌 때, 기쁨이 큰 것 같습니다.

PLoP 2010 Conference에서 Linda Rising과 같이 찍은 사진입니다.  따뜻함이 느껴지는 사진이죠. 정말 컨설턴트로 가야 될길을 피부적으로 알게 해주신 분입니다.     다음엔 남편분인 Karl 선물도 준비해야 겠더라구요.  Karl 님도 아주 따뜻한 분이세요. 한 분만 드리기 미안해서..  🙂

고객과 소통하는 패턴

소통은 사회적 관계를 형성하기 위한 핵심 매개체 중 하나다. 바쁜 현대사회에서 페이스북이나 트위터 등 소셜 네트워크 서비스(SNS)를 이용해 소통의 끈을 이어가는 사람들을 보면 소통이 인간의 기본욕구라는 것을 명확히 알 수 있다. 그렇다면 소통은 단지 사람과 사람사이에서만 성립되는 것일까? 필자는 기업과 고객의 관계에서도 소통이라는 명제가 성립할 수 있다고 생각한다. 이번 기고에서는 애자일과 패턴의 대가인 Linda Rising이 발표한 ‘고객과 소통하는 패턴’을 국내 실정에 맞게 의역했다. 과거의 기업은 고객에게 좋은 품질과 경쟁력 있는 가격만을 제공하면 성공한다고 믿었다. 그래서 고객과의 소통에는 소홀했다.

하지만 고객들이 인프라를 통해 다양한 정보를 갖게 되면서 좋은 품질과 경쟁력 있는 가격만으로 기업을 선택하지 않게 됐다. 결국 기업과 고객이 교감하는 소통이 화두로 자리잡았고, 기업은 고객과 교감하기 위한 다양하고 새로운 방식과 메커니즘을 찾았다. 이 때 기업은 ‘고객=돈줄’이 아니라 ‘고객=사람’으로 봐야한다는 것을 잊지 말아야 한다. 즉 고객과 기업을 사람 간의 관계로 바라봐야 비로소 효과적인 소통이 이뤄진다는 것이다.

위 그림은 앞으로 설명할 패턴들의 지도 (Pattern Map) 이며, 이번 포스트에서는  다음과 같은 패턴을 다룹니다 .

  • 판매가 아니라 관계다
  • 고객을 파악해라.
  • 신뢰를 쌓아라.
  • 고객의 말에 집중해라.

계속 읽기

지난 Rebecca Wirfs-Brock의 Nature of Order I를 이어 그 다음 이야기를 진행하고자 합니다.  혹시 이전 내용을 못 읽으신 분은 링크를 따라  한번 읽어보시길 권해드립니다.

워낙 방대한 내용이라, 섣불리 글이 써지지 않더군요. 철학과 생명체, 사물 (Thing)의 구성 원칙들을 기술하는 것이다 보니, 농업 / 생명 / 건축등 다양한 것을 예로 들어 설명하고 있습니다.  게다가 너무 철학적이어서, 개발자가 읽기에는 지루할수도 있죠. 아직 책을 다 읽지 못했지만, PLoP에서 정리한 노트내용과 NOO를 SW 설계에 빚대어 설명한 논문들 그리고 저의 부족한 경험을 합쳐서 용기를 내어 써 봅니다.

항상 경청하는 자세로 여러분의 피드백을 받겠습니다. 부족한 부분은 말씀해주시고, 더  좋은 의견을 주시면 관련 자료를 더 찾고 공부해서 NOO 데이터를 계속 업데이트할 욕심은 있습니다.

계속 읽기

안녕하세요. 많은 분이 기다리고 기다리셨던 “아키텍트가 알아야할 97가지” 가 드디어 나왔습니다. 아직 정식 출간은 아니지만, 예판으로 판매중입니다.

노란북( 책 비교 사이트)에 올라온 “아키텍트가 알아야할 97가지”

이번 “97 아키텍트”는 혼자 어떠한 성과물을 만드는 것보다,  EVA 라는 팀의 이름으로 만든 성과물이라는데 깊은 의미를 두고 싶습니다. 누군가 한 말이 생각나네요 ” 빨리가면 대의가 아니다.  대의이기 때문에 느리고, 오래걸린다…”   굳이 대의까지는 아니지만, 느리지만, 더 정교하고, 다양한 시선을 합하느라 더 오래 시간이 걸렸습니다. 베타리더 분들의 도움과 많은 분의 지원과 격려로 만들어진 작품입니다.  많이 홍보해주시고, 널리 퍼뜨려 주시길 부탁드립니다.

계속 읽기

EVA 식구들의 신년회가 1월 22일 있었습니다 .

포스팅하기에 좀 늦은 감이 있지만, 공유하는 차원에 올립니다.  PLoP Bootcamp 09년도에 발표된 자료를 사용했습니다.

계속 읽기

SE업계의 장로이신 CMU의  Mary Shaw교수님의 Talk가 한국에서 진행되네요.   Mary Shaw 교수님은 David Garlan 교수님과 같이  SE 쪽에서 오랫동안 헌신하신 분입니다.

유명한 서적인 Software Architecture: Perspectives on an Emerging Discipline 저자이시기도 하구요.

이번 세미나는 아쉽게도 그의 연구인 Value-Based Software Engineering 쪽은 아니지만,  SE 쪽에서 워낙 입지가 탄탄한 분이라 한번 만나 보시면 좋을거 같습니다.

좋은 SE 논문을 쓰는 방법입니다.  SE 관련 학생들/부서에 있으신 분들에게 좋을거 같네요. 개발자 분들중에 어떻게 학습을 하고 글을 쓰는지, 자신의 지식을 표현하느지 관심있는 분도 좋을거 같습니다.

계속 읽기

오랜만에 다시 PLoP에 대한 정보를 보내드립니다. 제가 개인적로 바빠 아직도 PLoP 정보를 다 못올렸는데. 또 PLoP이 열리네요 🙂

제 2회 AsianPLoP이 Tokyo에서 열립니다.  작년에 다녀와서 PLoP에서 배우지 못한 새로운 것들을 많이 배워왔습니다.  아직 구체적인 프로그램은 조율중이라. 말씀 드릴수 없지만, 위 링크를 보시면 대충 분위기를 아실 수 있을거 같습니다.

계속 읽기

이름하여 “7인의 베타리더!! “ (7인의 사무라이를 살짝 바꾸었습니다.)를 다시 모집합니다.

출간을 앞두고 있는 모든 소프트웨어 아키텍트가 알아야할 97가지 에 이어 그 시리즈인 “모든 프로그래머가 알아야할97가지”의 베타리더분을 모집합니다.   저의 지인들로 구성된 Project 입니다.

대략적인 내용은 바로 직전 포스트인 “12인의 아키텍트가 말하는 아키텍트의 소양과 자세”와 거의 유사합니다. 다만 이게 프로그래머 버젼이라고 생각하시면 됩니다.

다른 출판사보다 훨씬 더,  베타리더 분을 극진히 모실것을 약속드립니다. 맛있는 식사를 대접하는 것은 물론이고, 베타리더분의 성함과 사진을 실어 드리겠습니다. (물론 본인이 희망하실 경우구요). 그리고 지앤선에서 출판된 책도 한권 무료로 드립니다. 🙂

그럼 신청포멧은 다음과 같습니다.

계속 읽기