Skip to content

Latest commit

 

History

History

chapter11

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

11. 분석 패턴의 적용

분석 패턴은 업무 모델링 과정에서 발견되는 공통적인 구조를 표현하는 개념의 집합이다.

분석 패턴은 단 하나의 도메인에 대해서만 적절할 수도 있고 여러 도메인에 걸쳐 적용이 가능할 수도 있다.

  • 분석 패턴은 파악하기 힘든 도메인을 다뤄야 하는 사람들에게 반복적인 개발 과정으로 소프트웨어를 설장시킬 수 있는 가치 있는 출발점에 해당한다.

  • 분석 패턴이라는 이름은 분석 패턴이 지닌 개념적인 본질을 강조한다.

  • 분석 패턴은 기술적인 해법이 아니다.

  • 분석 패턴은 특정 도메인의 모델을 작성할 때 따를 수 있는 유용한 지침서에 해당한다.

  • 분석 패턴이라는 이름은 이러한 패턴에 코드를 포함해서 중요 구현 쟁점과 관련돼 있다는 사실을 효과적으로 전달하지 못한다.

최상의 분석 패턴은 과거의 프로젝트에서 유용한 경험을 전달하고 모델에 대한 통찰력을 광범위한 설계 방침과 구현 결과에 결합시킨다.

문맥을 고려하지 않고 모델과 관련된 아이디어를 논한다면 아이디어를 적용하기가 어려워지고 model-driven design의 개념에 상반되는 분석과 설계의 치명적인 분할이 발생할 위험을 무릅써야 한다.

분석 패턴은 참고할 수 있는 지식이다

분석 패턴이 현재의 특정 요구사항에 딱 들어맞는 경우는 거의 없다.

그럼에도 분석 패턴은 도메인을 파악하는 과정에서 훌륭한 길잡이 역할을 하며 깔끔하게 추상화된 어휘집을 제공한다.

한 가지 변경하지 말아야 할 것

  • 널리 알려진 분석 패턴을 적용할 때는 패턴의 외견상의 형태는 변경해도 무방하지만 패턴이 의미하는 기본적인 개념만큼은 손대지 말아야 한다.
    • 패턴에는 문제의 발생을 미연에 방지할 수 있는 지식이 포함돼 있다.
    • 널리 이해되거나 적어도 잘 설명된 용어를 포함시킴으로써 UBIQUITOUS LANGUAGE의 품질을 높일 수 있다.

일반화된 프레임워크를 포함해 모델은 전체적으로 동작하는 하나의 완전한 기능 단위인 데 비해 분석 패턴은 모델의 일부를 구성하는 부속품에 불과하다.

분석 패턴은 가장 중요하고 어려운 결정 사항에 집중하고 어떤 것을 선택해야 하는지와 그 외의 대안으로는 어떤 것이 있는지 명확하게 제시한다.

또한 분석 패턴은 그것이 없다면 알아내는 데 큰 비용이 드는 하부 활동에 대한 영향력을 예측할 수 있게 만들어준다.