일정 객체와 자원 및 검증의 역할
일정 객체(Schedule object)는 시작과 종료 시각 또는 예상 기간을 가진 작업이나 활동입니다. 자원 객체(Resource object)는 그 작업을 배정할 사람, 장소나 프로젝트 등의 업무 대상입니다. 여기서 자원은 Foundry 파일이나 데이터셋을 통칭하는 플랫폼 리소스와 구분합니다.
일정 표시 위젯
Scheduling Gantt Chart에서 일정 객체는 일정 블록(Puck), 자원 객체는 행으로 표시합니다. 블록을 옮기면 시작과 종료 시각 또는 연결 자원을 바꿀 수 있습니다. 행에 마우스를 올리면 자원 제목, 구성한 속성과 객체 뷰 링크를 보여 줍니다.
배정 방식과 스냅 간격 및 색을 구성할 수 있으며, 달력 위젯은 일, 주와 월 또는 사용자 지정 시간 범위로 일정을 표시합니다. 프로젝트별 의존 관계에는 Program Scheduling을 사용할 수 있습니다.
시나리오
온톨로지 시나리오는 변경 제안을 기본 데이터와 분리하여 비교하는 맥락입니다. 시나리오가 활성화된 위젯의 편집은 먼저 해당 시나리오에 기록하고 검토 후 병합합니다. 시나리오를 끄면 직접 온톨로지에 기록할 수 있으므로 두 모드를 구분해야 합니다.
저장 처리 액션
일정 블록의 드래그와 크기 변경은 Save handler action으로 편집을 수행합니다. 일반적인 경우에는 일정 객체의 시작, 종료와 자원 외래 키를 바꾸는 수정 액션을 사용합니다. 더 복잡한 업무에는 함수 기반 액션을 연결할 수 있습니다.
함수 기반 저장 액션도 최소한 자원 ID, 시작 시각과 종료 시각의 선택 입력을 받아야 합니다. 위젯이 넘기는 일정 객체와 해당 값이 업무 로직의 입력 경계입니다.
제안, 검색과 검증
Suggestion Function은 특정 일정 블록을 배치할 위치의 적합도를 강조합니다. 허용 위치나 피해야 할 위치를 색으로 표현하고, Enforce Suggestions로 가까운 강조 영역에 배치를 맞출 수 있습니다. Shift로 재정의할 수 있으며 결과는 최초 로드 때 계산한 정적 값이라 이후 편집을 반영하지 않습니다.
Search Function은 오른쪽 클릭한 자원과 시각 또는 일정 객체를 기준으로 후보 객체, 시간 슬롯 또는 둘을 반환합니다. 실행 당시의 활성 시나리오 변경을 고려하는 추천 경로입니다.
Validation rule은 일정 객체의 현재 상태가 특정 조건을 만족하는지 함수로 판단합니다. 최초 로드뿐 아니라 편집 후에도 다시 검사합니다. 시각화, 정적인 제안과 현재 상태의 검증을 같은 기능으로 취급하지 않아야 합니다.