回答:
プロセスに割り当てる状態は、プログラム(または単に状態を視覚化する場合はユーザー)がこの情報で何をするかを反映する必要があります。プロセスが実行され、エラーが表示されていない限り、プロセスの状態を評価/表示する必要がありますか?次に、ステータスから結果を分離します。プロセスが終了したときにステータスのみが必要な場合は、分離しないでください。
モデリングのためだけに何もモデリングしないでください。要件を確認してください。また、後で必要になる可能性のあるものが不明な場合は、確実にわかっている要件に対して最も小さく、最も単純なソリューションを選択してください。単に「推測」している場合、すべての場合の90%で間違っていると推測されるため、とにかく後でモデルを変更する必要があります。
しかし、結果をステータスから分離することの(概念的な)利点については疑問に思っていました(エラーやキャンセルも完了状態とは異なる状態であると主張するかもしれませんが)。
あなたの場合のように、進捗状況を詳細に説明し、(合理的な範囲内で)障害点を特定することには大きな利点があります。混乱は「ステータス」と「状態」という用語に起因すると思います。これらの用語を修飾する必要があります。そのため、たとえば「タスクステータス」はそれほど正確ではないので、「タスク実行ステータス」を使用することもできますが、すでに実行ステップがあるため、これは間違っています。「タスク処理ステータス」という名前と「開始-検証-実行-完了」の値を使用できます。実際、「キャンセル」をリストに追加できます。しかし、「エラーは」のような質問に答えていない:何であるタスクの処理状況は非常によく。「エラー」はCompletedのサブステータスのようです。どうしようか?Completedの名前を変更できます[OK]を完了すると、[エラーあり]をリストに追加できます。したがって、タスク処理ステータス値の最終リストは次のとおりです。
開始された、
検証済み、
実行中、
キャンセル、
完了しました、
エラーありで完了
編集:今、上記のリストはまだいくつかの作業が必要です。最初の4つのアイテムには、「OK」という単語はありません。したがって、「Completed OK」状態に一致する方が良い場合。もう1つは、最初の4つのアイテムに「with error」が含まれていないことです。これはどういう意味ですか?「Executing」が異常終了するとどうなりますか?それは「Executed with Error」の新しい状態を要求しますか?この時点で、さらに入力と分析が必要になる場合があります。