'결과'와 '상태'를 분리하면 어떤 이점이 있습니까?


11

일반적으로 다음과 같은 상태를 거치는 자동화 된 프로세스가 있다고 가정합니다. 예약-시작-확인-실행-완료

또한 이러한 프로세스는 오류 또는 명시적인 사용자 취소로 인해 조기에 종료 될 수 있습니다.

내 첫 번째 충동은 단순히 오류 를 추가 하고 가능한 상태 값 목록에 취소 하는 것입니다. 그러나 결과상태 에서 분리하는 (개념적) 장점에 대해 궁금했습니다 ( 오류 및 취소가 있다고 주장 할 수도 있음에도 불구하고) 완료된 상태 와 다른 상태).

답변:


12

프로세스에 할당 한 상태는 프로그램 (또는 상태를 시각화하는 경우 사용자)이이 정보로 수행 할 작업을 반영해야합니다. 따라서 프로세스가 실행 중이고 오류가없는 한 프로세스 상태를 평가 / 표시해야하는 요구 사항이 있습니까? 그런 다음 결과status 와 분리하십시오 . 프로세스가 종료되었을 때 상태 만 필요하면 분리하지 마십시오.

모델링을 위해서만 모델링해서는 안됩니다. 요구 사항을보다 잘 점검하십시오. 나중에 필요한 것이 확실하지 않은 경우 확실하게 알고있는 요구 사항에 대해 가장 작고 간단한 솔루션을 선택하십시오. 당신이 단지 "추측"한다면, 모든 경우의 90 %에서 당신은 잘못 추측 할 것이므로, 나중에 모델을 변경해야 할 것입니다.


1

그러나 결과와 상태를 분리하는 (개념적) 장점에 대해 궁금합니다 (오류와 취소가 완료 상태와 단순히 다른 상태라고 주장 할 수도 있습니다).

귀하의 경우와 같이 진행 상황을 상세하게 설명하고 (실제 한 한계 내에서) 실패 지점을 식별하는 데 큰 이점이 있습니다. 혼란은 '상태'와 '상태'라는 용어에서 비롯된 것으로 생각합니다. 해당 조건을 충족해야합니다. 예를 들어, "작업 상태"는 매우 정확하지 않으므로 "작업 실행 상태"를 사용하고 싶을 수도 있지만 이미 실행 단계가 있기 때문에 잘못된 것입니다. "작업 처리 상태"라는 이름과 "시작됨-유효성 검사-실행-완료 됨"이라는 값을 사용할 수 있습니다. 실제로 '취소됨'을 목록에 추가 할 수 있습니다. 무엇 그러나, '오류'와 같은 질문에 대답하지 않는 작업 처리 상태 아주 잘합니다. 'Error'는 Completed 의 하위 상태 인 것 같습니다 . 그래서 우리는 무엇을합니까? 이름을 Completed 로 바꿀 수 있습니다OK를 완료하면 Completed With Error 를 목록에 추가 할 수 있습니다 . 따라서 작업 처리 상태 값 의 최종 목록은 다음 과 같습니다.

  • 등장 인물,

  • 검증 된,

  • 일러스트레이션,

  • 취소 된,

  • 확인 완료

  • 오류와 함께 완료

편집 : 이제 위의 목록에는 여전히 약간의 작업이 필요합니다. 처음 4 개 항목에는 'OK'라는 단어가 없습니다. 따라서 "완료 OK"상태와 일치하는 것이 더 좋습니다. 또 다른 것은 처음 4 개 항목에 "오류가있는"항목이 없다는 것입니다. 무슨 의미입니까? "Executing"이 비정상적으로 종료되면 어떻게됩니까-새로운 상태 "Executed with Error"가 필요합니까? 이 시점에서 더 많은 입력 및 분석이 필요할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.