Ditinjau dari sistem keselamatan, maka memiliki lebih dari satu komputer menjadi keharusan, karena setiap hasil kerja yang telah dicapai dan dianggap sebagai kilometer (milestone) kemajuan, harus disimpan ke dalam komputer khusus. Dianjurkan untuk tidak hanya dibackup pada komputer kerja.
Ditinjau dari sistem pengujian, maka pengembang harus memiliki komputer yang khusus untuk melakukan pengujian. Mengapa? Karena komputer pengujian harus sama dengan komputer produksi, komputer yang digunakan oleh pengguna untuk memasang dan menjalankan aplikasi. Komputer kerja atau komputer pengembangan yang kita miliki belum tentu sama kondisinya dengan komputer produksi. Aplikasi yang telah diuji di komputer pengembangan, belum tentu dapat dijalankan di komputer produksi, karena bisa jadi tidak bisa dijalankan, karena setting lingkungannya berbeda.
Berdasarkan kebutuhan yang dijelaskan di atas, maka setiap pengembang setidaknya memiliki mesin atau komputer untuk pengembangan terdiri atas:
komputer pengembangan
komputer backup
komputer pengujian
komputer produksi
Komputer pengembangan
Komputer pengembangan adalah komputer yang biasa digunakan oleh pemrogram, komputer ini bisa komputer desktop biasa, bisa juga komputer server. Komputer pengembangan bisa merupakan server, apabila aplikasi yang dikembangkan merupakan aplikasi yang berbasis server.
Server pengembangan bisa lebih dari satu, disesuaikan dengan kebutuhan, setidaknya akan memiliki server pengembangan sebagai berikut:
server database
server web
server aplikasi
Komputer Backup
Komputer backup adalah komputer yang digunakan untuk menyimpan file program atau data, untuk berjaga-jaga jangan sampai file program atau data hilang, pada saat pengembangan atau produksi.
File program atau data yang disimpan adalah file program dan data pada tahap pengembangan dan yang telah selesai, dalam masa produksi.
Untuk kemudahan manajemen, komputer backup dapat menggunakan aplikasi yang disebut dengan sistem kontrol version (Version Control System), untuk lebih mengefisienkan penggunaan space dalam komputer backup, selain itu juga untuk memudahkan pengelolaan dan pengambilan kembali file program atau data. Karena pada saat backup kita dapat menyelipkan suatu tag sebagai kata kunci untuk mengidentifikasi file program atau data yang akan disimpan komputer backup.
Komputer Pengujian
Komputer pengujian adalah komputer yang digunakan untuk melakukan pengujian aplikasi yang telah dikembangkan.
Komputer pengujian memiliki macam yang sama seperti pada komputer produksi/operasional. Kesamaan ini dimaksudkan untuk menjamin bahwa apa yang diuji akan sama hasilnya dengan pada komputer produksi.
Komputer Produksi
Komputer produksi adalah komputer yang digunakan untuk menjalankan aplikasi secara operasional oleh pengguna.
Komputer produksi bisa terdiri atas lebih dari satu komputer, disesuaikan dengan keadaan dari pengguna aplikasi, yang akan terdiri atas:
server database
server web
server aplikasi
komputer pengguna
Ketersediaan komputer yang banyak, sesuai dengan peruntukannya, dari pengembangan sampai dengan produksi, tentu saja akan sulit dipenuhi oleh banyak pengembang aplikasi. Apalagi jika pengembang aplikasi perorangan.
Penyiasatan kebutuhan komputer ini dapat dilakukan dengan bermodal sebuah komputer yang cukup besar spesifikasinya, seperti prosesor, memori, dan harddisk; akan dapat sangat membantu. Pengembang dapat memanfaatkan software virtualisasi untuk membuat banyak image sistem operasi dan lingkungannya yang siap dijalankan sebagai sebuah komputer sendiri.