개념적 모델 드라이브 개발

개념적 모델 드라이브 개발을 나타내는 프로토콜은 DCMP(Design Contract Management Protocol)의 가장 엄격한 디자인 제어를 제공합니다. 아키텍처 변경사항은 개념적 모델에서 구현된 후 코드 구현으로 변환됩니다. 여기에서는 설계자가 높은 수준의 제어를 유지하고 시스템 개발자 역할이 응용프로그램 개발자에서 도구 개발자로 변경되는 엄격한 제어 및 관리를 제공합니다.

이 기술은 응용프로그램의 개발을 도출하기 위해 지속적으로 사용되는 개념적 모델의 사용과 관련되고 라운드트립 엔지니어링의 개념을 지원합니다. 설계자가 UML을 사용하여 자세한 클래스 레벨 모델을 작성하고 나면 이 모델이 3GL 코드 모델의 시드가 됩니다. 설계자는 변환을 모델에 직접 적용하여 응용프로그램에 대한 구조(대부분의 경우에는 실제 컴파일 코드)를 생성합니다.

설계자가 상위 레벨 UML 모델을 디자인하는 사이 개발자는 자유롭게 코드 모델을 개발할 수 있습니다. 이러한 병렬 워크플로우로 인해 UML 모델 및 코드 모델은 서로 분화되어 협업하기 어려워지지만 초기 변환 구성에서는 정방향 및 역방향 변환과 더불어 모델 조정을 지원합니다.

모델의 분화에 따라 증가되는 위험성을 최소화하기 위해 설계자는 코드 모델에 대한 역방향 변환을 수행하여 조정 오퍼레이션에서 변경사항을 개념적 모델에 선택적으로 병합하는 데 사용하는 임시 스냅샷을 작성합니다. 모델이 병합된 후에는 변환이 적용되어 구현 레벨 코드를 갱신할 수 있고 설계자의 개념적 모델 변경사항을 다시 코드 모델로 되돌려 보냅니다. 이 프로세스는 개발 프로세스 전체에서 필요한 만큼 반복하여 사용될 수 있습니다. 두 모델 모두 병렬로 계속 전개되어 미리 정의된 체크포인트에서 조정됩니다.

응용프로그램

개념적 모델 드라이브 개발의 프로토콜은 다음 경우에 최적으로 활용됩니다.

  • 응용프로그램 코드가 유사한 응용프로그램에서 여러 번 사용되는 경우
  • 디자인 계약 준수에 대해 아주 강력한 제어가 필요한 경우
  • 개발자가 완료할 비즈니스 로직만 남겨두는 프레임워크를 제공하는 반복 코드의 경우
  • 빠른 개발 프로세스가 사용되는 경우. 개념적 모델 드라이브 개발에서는 프로젝트 개발 초기 단계에서 값을 제공합니다.
주: 개념적 모델 드라이브 개발은 빠른 개발 접근법과 반복 개발 접근법 둘 다에 적합합니다.

이 메소드는 설계자에서 개발자에 이르기까지 전체 팀이 사용할 수 있습니다.

장점

개념적 모델 드라이브 개발 접근법은 엄격한 관리를 제공합니다. 코드 구현에서는 항상 아키텍처 스펙을 반영합니다. 또한 이러한 접근법을 사용하면 수작업 코딩이 줄어들고 반복 가능하게 되고 품질이 높아지고 결함이 적어지며 개발의 모든 단계에서 디자인에 대한 변경사항을 작성할 수 있게 되어 이 접근법을 아주 빠른 접근법으로 만듭니다.

고려사항

개념적 모델 드라이브 개발 접근법은 엄격한 관리와 수정사항을 작성할 능력을 제공하여 응용프로그램 전체에서 정정되도록 합니다. 거의 모든 변경사항을 구현할 수 있으며 변환 과정에 영향을 주지 않습니다.


피드백