Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
domain_driven_design:01_crunching_knowledge [2023/08/02 12:58] – [지식 탐구] ledyxdomain_driven_design:01_crunching_knowledge [2023/08/08 13:11] (current) – removed ledyx
Line 1: Line 1:
-= 01 지식 탐구 = 
- 
-{{tag>Domain_Driven_Design  Modeling Design}} 
- 
-브레인 스토밍 → 공통 용어 사용 → 모델 정제 → 코드도 함께 발전 
- 
-== 효과적인 모델링의 요소 == 
- 
-  - 모델과 구현의 연계 
-  - 모델을 기반으로 하는 언어 정제 
-  - 풍부한 지식이 담긴 모델 개발 
-  - 모델의 정제 
-  - 브레인스토밍과 경험 
- 
-    풍부한 지식이 담긴 모델을 발견하고 
-    그러한 모델의 정제를 가능케 하는 것은 
-    바로 브레인스토밍과 수차례에 걸친 실험으로 얻는 창의성이다 
- 
-== 지식 탐구 == 
- 
-    도메인 모델링의 주된 목적 : 전체를 이해할 수 있는 간결한 관점 찾기 
-    ... 
-    이렇게 뽑아낸 정수는 가장 적절한 것으로 밝혀진 특정 지식을 엄밀하게 표현하는 것이다. 
- 
-    지식 탐구는 혼자서 하는 활동이 아니다. 
-    개발자와 도메인 전문가로 구성된 팀은 대체로 개발자가 이끄는 가운데 협업한다. 
- 
-    폭포수 개발 방식에는 모델을 만들어 내는 데 따른 모든 책임이 분석가에게 있으며, 
-    이러한 모델은 오로지 업무 전문가가 알려주는 사항에만 근거한다. 
- 
-    프로그래머가 도메인에 관심이 없다면 
-    그 이면에 숨겨진 원리는 알지 못한 채 애플리케이션이 수행해야 할 사항만 습득한다. 
-    그러한 과정을 거치지 않아도 유용한 소프트웨어를 만들어 낼 수는 있겠지만 
-    프로젝트는 기존 기능의 자연스러운 결과로 새로운 강력한 기능이 나타나는 정도의 수준에는 결코 이르지 못한다 
-     
-    훌륭한 프로그래머라면 애초부터 추상화를 시작해서 더욱 많은 일을 해낼 수 있는 모델로 발전시킬 것이다. 
-    하지만 이 같은 과정이 도메인 전문가와의 협업 없이 기술적인 측면에서만 일어난다면 개념은 초보적인 수준에 머무를 것이다. 
-    이러한 피상적인 지식은 소프트웨어를 만들어 낼 뿐 
-    도메인 전문가의 사고방식과 긴밀하게 연결되지는 않는다 
- 
-  * 모든 (프로젝트) 구성원이 함께 모델을 만들면 팀 구성원간의 **상호작용** 향상. 이러한 모든 가정을 거쳐 모두가 유능한 지식 탐구자가 된다. 또한 모두가 모델을 만들어 나가므로 모델은 **명료하게 조직화되고 추상화**될 수 있으며, **구현**을 더 용이하게 만들어준다. 
-    * 개발자 : 업무의 중요 원칙들을 배운다. 기능만을 기계적으로 만드는 데 머무르지 않는다. 
-    * 도메인 전문가 : 프로젝트에서 요구하는 개념적 엄밀함(conceptural rigor)을 이해하게 된다.  자신이 알고 있는 지식의 정수만을 추출해야 하므로 스스로 이해하는 바를 자주 정제하기 때문. 
- 
- 
-== 지속적인 학습 == 
- 
- 
-== 풍부한 지식이 담긴 설계 == 
- 
- 
-== 심층 모델 == 
- 
  
domain_driven_design/01_crunching_knowledge.1690981116.txt.gz · Last modified: by ledyx