Strangler Fig Application Pattern - 교살자 무화과나무 패턴

     

    교살자 무화과나무 패턴 - Strangler Fig Application Pattern

    이름이 참 신기한 패턴이다. 무릇 패턴은, 사람들에게 구구절절하게 설명하지 않고, 그 이름만으로도 어떤 개념인지 알기 쉽도록 해줄 수 있어야 한다. 그런데, Strangler Fig Application Pattern 혹은 Strangler Pattern은 무엇이며, 그것을 그대로 번역해 놓은 교살자 무화과나무 패턴은 또 무슨 의도인가?

     

    이름부터 다시 살펴보자

    영어권 사람들은 strangler라고 하면 이미 쉽게 알아들었을 수도 있다. 교살자라는 한자도 마찬가지다. 일단 영어 이름과 번역본 이름을 매치해 본다.

    • strangler = 교살자
    • fig = 무화과나무

    보통 fig라는 글자는 figure의 줄임말로 '그림'을 뜻하지만, 이 맥락에서는 그림이 아니라 무화과나무를 뜻한다. strangler는 strangle을 하는 사람이라는 뜻이다. 그리고, strangle은 str(string=줄,끈) + angles(매달다)의 구성으로, 줄로 목을 맨다, 줄로 목을 매어 질식시킨다는 뜻이다. 즉, 교살이라는 뜻은 줄로 목을 매어 죽인다는 뜻이다. 아마, 교살이라는 말은 낯설어도 교수형이라는 말은 더 익숙하게 들었을 것이다.

     


     

    이미지로 연관짓기

    이름의 뜻은 대강 알아봤다. 그런데 왜 이렇게 무서운 이름이 붙은 것일까? 이미지로 매치해 보면 이해하거나, 오래 기억하는데 도움이 될 것 같다.

     

    나무가 엉켜있는 그림이다. 그러나, 단순히 엉켜있는 것은 아니고 자신이 성장하는데 도움을 준 숙주를 죽이면서 성장하는 나무라고 한다.

     

    삶에서의 Strangler 패턴 - 우리는 이미 익숙하다

    사실, 이름이 거창해 보여서 그렇지 우리는 이미 이 패턴에 익숙하다. 점진적인 세대교체를 생각하면 된다. 직장에서의 선배들의 업무와 자리는 어느 정도 시간이 지나면, 후배들로 대체된다. 후배들이 새로 투입되고 일을 인수인계 받고 오히려 정/부가 역전되고 원래 일을 정으로 하던 선배는 뒤로 밀려나게 된다. 업무인수인계도 마찬가지고, 축구와 같은 스포츠도 마찬가지이다. 유망주 선수는 아주 조금의 출전기회가 주어진다. 팀의 유망주는 베테랑으로부터 노하우를 전수 받으며 안착하고 성장한다. 그러다, 유망주가 점점 경험을 쌓게 되면 기존의 노장 선수는 점차 그 역할을 물려주게 되고 나중에는 유망주가 메인의 자리를 꿰차게 된다.

     

    반응형

     

    다시, IT로

    서비스를 이관할 때도 마찬가지다. 기존 기능을 하루 아침에 없애지는 못한다. 기존의 서비스를 유지한 채로 신규 서비스를 하나씩 옮겨간다. 신규 서비스가 제대로 동작하는 것이 검증되면 기존의 서비스를 순차적으로 걷어낸다.

    Strangler Pattern = 점진적인 세대교체, 인수인계라고 이해하면 좋을 것 같다.

    덧. 아래 링크중 MS 링크를 보면, 한글로 스트랭글러 그림 패턴이라고 번역되어 있는데, 위에서 언급한 바와 같이 fig = 그림이라고 오역된 케이스 같다. 사이트에 안내된 바로도 일부 콘텐츠는 기계번역이 되어 있다고 하니, 제목이 기계 번역이 된 것이 아닐까 의심된다.

     

    참고

     

    bliki: StranglerFigApplication

    Inspired by the strangler figs in Australia, a strangler fig application gradually draws behavior out of its host legacy application

    martinfowler.com

     

    Legacy Application Strangulation : Case Studies

    Strangler Applications Martin Fowler wrote an article titled “Strangler Application” in mid 2004 (and “Strangler Fig Application” from early 2019). Strangulation of a legacy or undesirable solution is a safe way to phase one thing out for something

    paulhammant.com

     

    스트랭글러 그림 패턴 - Cloud Design Patterns

    특정 기능을 새로운 애플리케이션 및 서비스로 점진적으로 교체하여 레거시 시스템을 단계적으로 마이그레이션합니다.

    docs.microsoft.com

     

    댓글

    Designed by JB FACTORY