Industrial Touch Kit (ITK)
ITK 소개
산업용 터치스크린 어플리케이션의 필요성
현대 산업 현장은 급속한 변화를 겪고 있습니다.

기존 방식: 많은 산업 현장의 컨트롤룸(모니터링실)은 수많은 설비를 중앙에서 집중 모니터링하고 제어합니다. 책상에 모니터, 키보드, 마우스를 배치하고 그곳에서만 작업이 가능한 구조였습니다.
변화하는 요구사항: 스마트팩토리, 협업 로봇, 자동화 설비가 도입되면서 현장 곳곳에서 실시간 제어와 모니터링이 필요하게 되었습니다. 이제는 컨트롤룸을 벗어나 현장에서 직접 설비를 관리해야 합니다.
문제점: 그렇다고 해서 현장 여러 곳에 책상, 모니터, 키보드, 마우스를 배치하는 것은 비효율적입니다. 공간 낭비, 위생 문제(오염된 환경), 케이블 관리, 접근성 제한 등 여러 이유로 산업 환경에 적합하지 않습니다.
해결책: 벽에 고정된 대형 터치스크린을 배치하면 어떨까요?
- 책상, 키보드, 마우스가 모두 필요 없습니다.
- 터치로 직관적으로 조작 가능합니다.
- 공간을 효율적으로 활용할 수 있습니다.
- 현장의 오염이나 습도 같은 환경 요인에 강하게 설계할 수 있습니다.
- 여러 명이 함께 한 화면을 보고 작업할 수 있습니다.
- 실시간 정보를 한눈에 파악하고 빠르게 대응할 수 있습니다.
ITK가 해결하는 과제
ITK는 이러한 산업용 대형 터치스크린 기반 어플리케이션을 빠르고 효율적으로 개발하기 위해 만들어졌습니다.
ITK는 산업용 터치 기반 어플리케이션 개발을 위한 VM-first 툴킷입니다. 개발자는 XAML 화면을 먼저 작성하기보다 ViewModel을 조합해 화면 구조와 동작을 설계하고, 플랫폼별 View는 ITK가 연결합니다.
지원 플랫폼: WPF (Windows), Avalonia UI (Cross-platform)
ITK 주요 기능 및 특징
ITK의 대표적인 특징은 MVVM 아키텍처를 라이브러리 설계의 중심에 둔다는 점입니다.
공통 비즈니스 로직과 상태 관리는 XamlDS.Itk에서 처리하고, 플랫폼별 View 구현은 XamlDS.Itk.Wpf(WPF), XamlDS.Itk.Aui(Avalonia UI)에서 독립적으로 구성합니다.
- ViewModel 중심 설계: 화면 상태, 상호작용, 검증 로직을 ViewModel 계층에서 일관되게 관리합니다.
- Framework-agnostic 로직: ViewModel은 UI 프레임워크 타입을 직접 참조하지 않아 재사용성과 테스트성이 높습니다.
- View-Adapter 구조: 동일한 ViewModel을 WPF/Avalonia View에 매핑해 플랫폼 전환 비용을 낮춥니다.
- Boilerplate 감소: 반복적인 설정/바인딩 코드보다 비즈니스 로직 구현에 집중할 수 있습니다.
Xaml Design Studio가 ITK를 서비스로 제공하는 방식
Xaml Design Studio는 ITK를 라이브러리만 전달하는 방식으로 보지 않고, 실행 가능한 어플리케이션 구성과 레이아웃 코드까지 함께 제공하는 방식으로 다룹니다.

- 기획 협업: Xaml Design Studio와 고객사 개발자가 함께 어플리케이션의 화면 구성, 사용 시나리오, UI 요구사항을 기획합니다.
- View 제공: Xaml Design Studio가 완성된 화면 레이아웃, 바인딩 구조, 컴포넌트 구성을 작성해 고객사에 전달합니다.
- 비즈니스 로직 구현: 고객사의 개발자는
ViewModel,Model,Service(Network)같은 비즈니스 로직 코드 작성에만 집중합니다. - 즉시 실행 검증:
XAML/AXAML경험이 많지 않아도 구현 직후 바로 실행해 화면 배치와 동작을 함께 확인할 수 있습니다.
Xaml Design Studio는 View 계층 중심의 작업 범위를 유지하는 것을 원칙으로 하며, 고객사의 보안에 민감한 비즈니스 코드에는 접근하지 않도록 역할을 분리합니다.
유지보수와 코드 관리 방식
Xaml Design Studio는 어플리케이션 생명 주기와 끝까지 함께 가는 것을 목표로 합니다.
- 고객사와 최소 1년, 기본 3년 단위의 유지보수 계약을 전제로 ITK 관련 코드와 화면 구성을 함께 관리합니다.
- 어플리케이션 개발 완료 후 3개월 또는 6개월 단위의 사용자 피드백을 반영해 후속 업데이트를 제공합니다.
- ITK 라이브러리에 업데이트가 발생하면 고객사 코드도 함께 갱신해 장기적인 호환성을 유지합니다.
- 어플리케이션의 생명주기 전반에서 코드 품질과 유지보수성을 함께 관리하는 것을 목표로 합니다.
대표 특징: MVVM-First 개발 경험
ITK는 "Control만 제공"하는 방식보다, ViewModel 조합 중심으로 화면을 구성하는 흐름에 맞춰 있습니다.
- ViewModel에서 상태/명령/의존성을 설계
- ViewLocator가 ViewModel 타입과 slot/variant에 맞는 View 선택
- View는 렌더링과 플랫폼 표현에 집중
이 구조를 통해 앱 로직을 유지한 채 View 레이어만 교체하거나 확장할 수 있습니다.
MVVM 흐름과 샘플 코드는 MVVM Architecture 문서에서 자세히 확인할 수 있습니다.
ITK 라이브러리
ITK 라이브러리 구성
XamlDS.Itk: 플랫폼 독립 ViewModel, 공통 유틸리티, 핵심 서비스XamlDS.Itk.Wpf: WPF View 레이어 및 플랫폼 통합XamlDS.Itk.Aui: Avalonia View 레이어 및 플랫폼 통합
ITK 라이브러리 라이선스
ITK 라이브러리는 비공개 상업용 라이선스를 적용합니다.
- 라이선스 사용 권한은 ITK 라이브러리 사용 계약을 체결한 고객사에 한해 부여됩니다.
- 고객사는 계약서에 명시된 제품, 프로젝트, 배포 범위 내에서만 ITK 라이브러리를 사용할 수 있습니다.
- 계약 범위를 벗어난 재배포, 2차 제공, 무단 공유는 허용되지 않습니다.
라이선스 상세 조건(허용 범위, 제한 사항, 지원 정책 등)은 별도의 ITK 라이브러리 라이선스 문서로 고객사에 제공합니다.