【初心者向け】「正常系」と「異常系」の違いとは?IT業務で必ず知っておきたい基本用語をわかりやすく解説
結論として、「正常系」は想定どおりにシステムが動作すること、「異常系」は想定外のエラーや障害が発生した場合の動作を指します。
この2つは、システム開発、運用保守、社内SE、ヘルプデスク、テスト業務など、あらゆるIT現場で頻繁に使われる言葉です。特に新人エンジニアは「正常系だけ確認すればよい」と考えがちですが、実際の業務では異常系の確認が非常に重要になります。
正常系と異常系とは?
正常系とは
正常系とは、システムが設計どおりに問題なく動作する状態や処理を指します。
ユーザーが正しい操作を行い、システムが期待した結果を返すケースです。
| 項目 | 内容 |
|---|---|
| 入力内容 | 正しい |
| システム動作 | 設計どおり |
| エラー | 発生しない |
| 例 | 正しいIDとパスワードでログインできる |
異常系とは
異常系とは、入力ミスや障害などにより、正常に処理できない場合の動作を指します。
エラーが発生した場合でも、システムが適切にエラーメッセージを表示したり、安全に処理を終了したりできるかを確認します。
| 項目 | 内容 |
|---|---|
| 入力内容 | 誤っている、または想定外 |
| システム動作 | エラー処理を実施 |
| エラー | 発生する |
| 例 | パスワード間違いでログインできない |
正常系と異常系の違い
| 比較項目 | 正常系 | 異常系 |
|---|---|---|
| 処理結果 | 成功する | 失敗する、または制御される |
| エラー表示 | 表示されない | 表示される場合がある |
| 目的 | 機能が正しく動くことを確認 | 安全にエラー処理できることを確認 |
| 利用場面 | 通常の業務 | 入力ミス・障害・通信断など |
身近な例で理解する
ATMの場合
正常系
- キャッシュカードを挿入する
- 暗証番号を正しく入力する
- 現金を引き出せる
異常系
- 暗証番号を間違える
- 残高不足
- カードの磁気不良
- 通信エラー
異常系でも「適切なエラーメッセージを表示し、安全に処理を終了する」ことが重要です。
IT業務でよくある正常系・異常系
ログイン機能
| 正常系 | 異常系 |
|---|---|
| 正しいID・パスワードでログイン成功 | パスワード間違い |
| ホーム画面が表示される | アカウントロック |
| メニューが利用できる | 権限不足 |
共有フォルダ
正常系
- フォルダを開ける
- ファイルを保存できる
- ファイルを削除できる
異常系
- アクセス拒否
- ネットワーク切断
- アクセス権不足
- サーバー停止
プリンター
正常系
- 印刷できる
- 印刷完了通知が表示される
異常系
- 用紙切れ
- オフライン
- 印刷キュー停止
- ドライバー異常
なぜ異常系が重要なのか
実際のIT現場では、正常系よりも異常系への対応が求められる場面が多くあります。
- ネットワーク障害
- サーバー停止
- アクセス権設定ミス
- 入力ミス
- ディスク容量不足
- Windows Update失敗
システムは正常時だけでなく、異常時にも安全に動作することが求められます。
新人が混乱しやすいポイント
| 誤解 | 実際は |
|---|---|
| 異常系は確認しなくてよい | 異常系の確認が重要 |
| エラーが出たら失敗 | 想定どおりのエラーなら正常な動作 |
| 正常系だけテストすれば十分 | 異常系もテスト対象 |
| 異常系は障害だけ | 入力ミスや権限不足も含まれる |
実際のIT現場での利用例
システム改修後の受入テストでは、まず正常系として「正しい操作で期待どおりに動くか」を確認します。
その後、異常系として「存在しないユーザーでログインする」「必須項目を未入力にする」「権限のないユーザーで操作する」など、さまざまなケースを試します。
以前、正常系だけを確認してリリースしたシステムで、未入力時にエラーメッセージではなくシステムエラー画面が表示される不具合が見つかりました。異常系テストを実施していれば防げた事例でした。
障害発生時の考え方
障害が発生した場合は、まず正常系なのか異常系なのかを整理すると原因を切り分けやすくなります。
- 正しい操作だったか
- 入力内容に誤りはないか
- ネットワークは正常か
- サーバーは稼働しているか
- 権限不足ではないか
- Windows側の問題か
- Active Directoryの認証エラーか
- DNSやネットワーク障害ではないか
確認する順番
- 正常な操作手順だったか確認する
- エラーメッセージを確認する
- 再現するか試す
- 他のユーザーでも発生するか確認する
- ネットワークを確認する
- サーバーの状態を確認する
- ログを確認する
イベントビューアーで確認する場合
Windowsでエラーが発生した場合は、イベントビューアーを確認すると原因の特定に役立ちます。
確認場所
- Windows ログ
- システム
- アプリケーション
- セキュリティ
エラーや警告が発生した時間と、ユーザーから報告を受けた時刻を照らし合わせると原因を絞り込みやすくなります。
コマンドで確認できる例
コマンドプロンプト
- ping(ネットワーク接続確認)
- ipconfig(IPアドレス確認)
- whoami(ログインユーザー確認)
PowerShell
- Test-Connection(通信確認)
- Get-Service(サービス状態確認)
- Get-EventLog(イベントログ確認)
初心者がやりがちなミス
- 正常系だけで動作確認を終える
- エラーメッセージを記録しない
- 再現手順を残さない
- 原因を調べる前に設定変更を行う
- ログを確認せずに再起動してしまう
上司へ報告するポイント
- 正常系・異常系のどちらで発生したか
- 実施した操作
- エラーメッセージ
- 発生時刻
- 影響範囲
- 他ユーザーでも発生するか
- 確認した内容
エスカレーションするタイミング
- 複数ユーザーで同じ現象が発生している
- サーバー障害が疑われる
- 業務が停止している
- ログを確認しても原因が分からない
- 権限変更やシステム設定変更が必要になる
新人が覚えておくべきポイント
- 正常系は「想定どおりに動くこと」の確認
- 異常系は「想定外でも安全に処理できること」の確認
- エラーが表示されても、想定どおりなら正常な動作
- 異常系テストは品質向上に欠かせない
- 障害対応では正常系と異常系を切り分けて考える習慣を付ける
関連するIT用語
- テストケース
- 単体テスト
- 結合テスト
- 受入テスト(UAT)
- 例外処理
- エラーハンドリング
- バグ
- 障害
- ログ
- イベントビューアー
よくある質問(FAQ)
正常系だけテストすれば十分ですか?
十分ではありません。実際の運用では入力ミスや通信障害などが発生するため、異常系の確認も必要です。
異常系はシステムの故障だけを指しますか?
いいえ。入力ミスや権限不足、通信エラーなど、正常に処理できないケース全般が異常系に含まれます。
エラーメッセージが表示されたら不具合ですか?
必ずしも不具合ではありません。想定どおりのエラーメッセージが表示され、安全に処理が終了していれば正常な異常系の動作です。
まとめ
正常系と異常系は、システムの品質を確認するうえで欠かせない考え方です。
- 正常系:想定どおりにシステムが動作することを確認する
- 異常系:エラーや想定外の状況でも安全に処理できることを確認する
IT業務では、正常系だけでなく異常系を意識して確認することで、障害の予防や迅速な原因切り分けにつながります。「エラーが出ないか」ではなく、「エラーが出ても適切に処理されるか」を確認する視点を持つことが、現場で信頼されるエンジニアへの第一歩です。
