Inventarisasi komputer secara berkala adalah bagian dari upaya untuk menjaga ketersediaan layanan yang diberikan komputer tersebut. Laporan inventarisasi dapat memberitahu perusahaan mengenai perubahan atau kehilangan aset yang terjadi sehingga dapat ditindak lanjuti secepat mungkin.
Mobile agent singkatnya adalah sebuah perangkat lunak yang bekerja secara otomatis dan dapat berpindah dari satu komputer ke komputer lain yang terhubung dalam jaringan. Pada praktiknya mobile agent berpindah dan menjalankan tugasnya pada komputer yang dikunjunginya dengan menggunakan fasilitas yang diberikan middleware sebagai execution atau running environment.
Konsep mobile agent yang dijalankan di atas middleware ini dapat dimanfaatkan untuk membangun sebuah perangkat lunak bantu inventarisasi dengan proses pengembangan yang lebih cepat dan lebih mudah dirawat karena fasilitas proses eksekusi dan pemindahan mobile agent sudah disediakan middleware dan transparan bagi pihak pengembang sedangkan untuk perawatan dan pengembangan pihak pengembang hanya perlu melakukan perubahan pada satu kode sumber mobile agent saja dan tidak menyentuh komputer-komputer lain dalam jaringan.
Design pattern itinerary dan branching merupakan dua pilihan di antara beberapa pola perpindahan mobile agent dalam jaringan. Design pattern itinerary menawarkan kebutuhan bandwidth jaringan yang relatif rendah dengan tradeoff kecepatan kerja dan cocok bagi jaringan dengan bandwidth rendah yang sibuk sedangkan design pattern branching menawarkan kecepatan kerja tinggi dengan kebutuhan bandwidth jaringan yang lebih tinggi dan dapat diterapkan untuk jaringan dengan traffict rendah atau dengan bandwidth tinggi. agent, mobile agent, middleware, dan deteksi perangkat keras.