이 서비스의 용도
- 기존 자산을 유지할지, 감쌀지, 교체할지 결정
- UI, 통신, 백그라운드 처리, 로그 간 책임 분리
- COM / ActiveX / C++/CLI / .NET 사이의 경계 설계
- 32비트 / 64비트 제약을 어디에서 흡수할지 계획
- 어려운 결함 조사 전에 무엇을 관측해야 할지 결정
이 서비스가 잘 맞는 프로젝트 단계
- 구현 개시 전
- 리스크가 큰 업그레이드나 유지 보수 프로젝트 시작 전
- 현재 구조가 괴롭지만 전면 재작성은 여전히 부담이 큰 단계
- 반복적인 결함 대응이 아키텍처 자체를 정리해야 함을 시사할 때
자주 다루는 테마
- Windows 애플리케이션 아키텍처
- COM / ActiveX / OCX의 처리 방식
- 32비트 / 64비트 상호 운용
- 스레드 모델과 수명 설계
- 로그 설계, 예외 설계, 이상 케이스 테스트
진행 방식
- 먼저 현재의 구조, 제약, 구체적인 고통 지점을 명확히 합니다.
- 다음으로 유지, 감쌀, 교체할 부분을 분리합니다.
- 필요하다면 구현 중심의 리뷰나 서면 형태의 현대화 계획으로 이어갑니다.
특히 효과가 큰 프로젝트
합동회사 코무라소프트는 조금 오래되고 조금 복잡한 Windows 프로젝트와 궁합이 좋습니다.
- 가치 있는 기존 자산이 남아 있다
- 현재 구조는 유지 보수하기 어렵다
- 하지만 전면 재작성은 아직 현실적이지 않다
이런 경우에는 코딩보다 먼저 아키텍처를 명확히 하는 편이 결과적으로 이득이 됩니다.