パナットニコムの歴史はクメール王朝時代までさかのぼることができる。考古学者はこの郡内でクメール時代の遺構を発見している。時代は下りラーマ3世（ナンクラオ）の時代、1828年、町（ムアン）が建立された。その後、1904年にラーマ5世（チュラーロンコーン）によってチョンブリー県に編入された。
マルコフ連鎖はモデルベーステストの効率的方法となる。マルコフ連鎖を実装したテストモデルは使い方のモデルとみることができる。使い方のあらゆるシナリオを表現した有限オートマトンと、そのシステムがどのように使われるかを統計的に表した運用プロファイルとで構成される。有限オートマトンは何ができるかを表現しており、テスト対象となる。運用プロファイルは運用テストケースの生成を助ける。この技法は、システムを網羅的にテストするのが困難で、そもそも問題（バグ）がほとんどないようなシステムのテストケースを生成するために生まれた。そのため、テスト対象システムの信頼性向上を目的として統計的なテストケースを生成するのに適している。近年、組み込みシステムにも適用できるよう拡張されている。
本来、モデル検査はモデルが仕様を満足するかを検証する技法として開発された。モデルベーステストに応用する場合、テスト対象システムのモデルとテストしたい属性をモデル検査機に与える。モデル検査機はその属性がモデル上で正しいかどうかを証明する過程で証拠と反例を検出する。証拠となる経路はその属性を満足する。一方、反例となる経路を実行すると、その属性に反した状態となる。これらの経路がテストケースとして使用できる。
制約論理プログラミングでは、変数群の制約条件を満足する解を求めることによって特定の制約を満たすテストケースを選択することができる。システムは制約によって記述される。制約条件群は充足可能性問題を解くことで解が得られたり、ガウスの消去法のような数値解析によって解が得られる。制約条件式群を解くことで得られたものを対象システムのテストケースとして使用することができる。制約プログラミングは記号的実行 (Symbolic Execution) と組み合わせることもできる。その場合、システムモデルを記号的に実行する。すなわち、異なる制御経路群についてデータ制約を集め、制約プログラミングの手法を使って制約を解き、テストケースを生成する。
自動定理証明は本来、論理式の自動的な証明に使われるものであった。モデルベーステストでは、システムを一群の論理式でモデル化してシステムの振る舞いを記述する。テストケースを選択するには、テスト対象システムを記述した論理式群を翻訳したものを同値なクラスで分類する。各クラスは特定のシステムの振る舞いを表現しており、テストケースと対応させることができる。簡単な分類法として加法標準形を使った手法がある。システムの振る舞いを表す論理式を加法標準形に変換するのである。木構造を使った分類で、さらに洗練された階層的な分類が可能となる。分類のアルゴリズムをサポートするヒューリスティックも利用できる。例えば限界値分析に基づいたヒューリスティックなどがある。
一般にモデルは有限オートマトンや状態遷移系に変換（翻訳）される。このオートマトンはテスト対象システムのとりうる構成を表現している。テストケースを探すには、このオートマトン上で実行可能経路を探す。1つの実行可能経路が1つのテストケースに対応することになる。この手法はモデルが決定的であるか、決定的な形式に変換可能である場合にうまく機能する。テスト対象システムが非常に複雑であった場合、システムのとりうる状態数が膨大となり、実行可能経路数も膨大となる可能性がある。適切なテストケースを見つけ出すには、例えば特定の証明すべき状況を指定して経路探索の補助とする。テストケースの選択には様々な手法が適用される。
全6ステージ構成。2人同時プレイ可能。プレイヤーは、8方向レバー+2ボタンで殺人マシーンのKUNOICHI (1P)と、NINJA (2P)を操作し、2種類の武器“苦無”と“手裏剣”を駆使して、画面左右から立ちはだかる敵を倒しながら右方向に進む。プレイヤーはライフ制となっており、敵から攻撃を受けるとライフゲージが減少し、ライフゲージが尽きる、またはタイムが0になるとゲームオーバーとなる。また、2人同時プレイ時は全ステージにおいて、忍者系の敵が“ソロプレイ時より多く出現する”、“（一部ステージでの）シャドーマンの耐久力がUPする”、“最終面で（ソロプレイ時より）出現するタイミングが早い”など若干の難易度の上昇がある。なお、KUNOICHIよりも、NINJAのほうが若干耐久力が高く設定されている。苦無は接近戦用の主な武器で、近接した敵を斬り倒す。飛び道具の手裏剣は苦無の1/2の威力だが、連発可能で遠距離の敵にヒットさせることが出来るものの、投擲できる数に制限がある。なお、忍者系の敵（土蜘蛛、くノ一、火炎忍者、ムササビ、シャドーマン、アイアンアーム）を倒すと、1体につき、5発分が補充される。また、各ステージクリア毎に30発分が自動的に補充される仕様となっている。 苦無ボタンを押したままにすると、苦無を交差させて“防御”の構えとなり、敵のナイフ、銃弾、手裏剣などを無傷でガードすることが出来る。ただし、火炎、砲弾の爆発などはガード出来ない。また、一定時間、防御したままの姿勢でいると、ペナルティエネミー（アーミーライフル、忍犬、ムササビのいずれか）がランダムで出現する。（※ステージ5のみムササビは出現しない）また、例外としてステージ6では先述の条件を満たしても、ペナルティエネミーは一切出現しない。 苦無を構えながら斜めジャンプをすると、通常のジャンプより滞空時間が長い“回転ジャンプ”を繰り出すことができ、ジャンプ中は“着地するまで完全無敵”となる。各種敵の攻撃を回避するほか、“間合いを詰める”、“敵の背後に回り込む”など、様々な用途がある。また、このゲームの特徴として、 敵の銃弾や手裏剣、爆発などの攻撃を受けて被弾すると、攻撃を受けた部位は忍者服の布地が剥がれて内部のメカが露出してしまい、以後、露出した部位に攻撃を受けると2倍のダメージを受けてしまう。ライフは各ステージクリア時に完全回復するが、露出した部位の布地は修復されないため、出来るだけ破損を避けて進む必要がある。