Kita perlu memanfaatkan fleksibilitas dan pengelolaan yang ditawarkan perangkat lunak versus perangkat keras (membandingkan jaringan-jaringan yang didefinisikan perangkat lunak) untuk mengadaptasi sistem IoT ke konteks operasi yang berbeda.
Pada akhirnya, itu adalah perangkat lunak yang mengontrol sistem-sistem tertanam (embedded systems) dalam Benda-benda, dan karena itu, swa-organisasi selalu berasal dari dunia virtual.
Sistem-sistem tertanam hanyalah antarmuka-antarmuka ke realitas fisik, karena menyediakan mekanisme untuk menyusun /memunculkan perilaku-perilaku komputasi yang kompleks dengan cepat tanpa entitas adaptasi tersentralisasi apa pun. Model-model perangkat lunak swa-organisasi adlaah sebuah kontribusi penting untuk bidang komputasi autonomik.
Tantangan dan Arah Potensial Penelitian
Karena sifatnya yang nondeterministik, tantangan utama swa-organisasi adalah memunculkan fungsionalitas yang bermakna dari interaksi-interaksi yang terdesentralisasi.
Karena konsep yang bermakna bervariasi dari satu domain ke domain lainnya, model-model tujuan (misalnya, RELAX dan KAOS) bisa digunakan untuk menspesifikasi perilaku-perilaku seluruh sistem yang diharapkan dalam bentuk requirements@run.time (yang harus dipenuhi tanpa pembuat alasan sentral).
Selain model-model tujuan, teknik-teknik verifikasi/pengujian runtime bisa diintegrasikan untuk membuktikan kebenaran perilaku-perilaku komputasi yang muncul,semua ini tanpa mengorbankan operasi sistem.
Selain berurusan dengan nondeterminisme dan kebenaran, tantangan lain adalah sebagai berikut:
1. Ketidaklengkapan
Karena sifat yang terdesentralisasi, komponen-komponen perangkat lunak tidak selalu bisa memiliki pandangan yang lengkap dan konsisten tentang lingkungan operasinya (misalnya, pengetahuan tentang komponen-komponen lain yang tersedia atau menjalankan struktur-struktur komposisi).
Ini terutama benar dalam ekosistem-ekosistem IoT dengan sejumlah besar komponen perangkat lunak IoT. Bagaimana pengetahuan bisa disebarluaskan secara efisien untuk mempertahankan representasi akurat dari dunia di bawah lingkungan-lingkungan yang sangat dinamis?
2. Swa-Eksplanasi
Transparansi pengambilan keputusan adalah sebuah keharusan dalam pendekatan tanpa campur tangan manusia karena pengguna mungkin memerlukan penjelasan tentang munculnya perilaku komputasi tertentu. Bagaimana swa-eksplanasi (penjelasan mandiri) bisa disediakan dalam model-model perangkat lunak swa-organisasi, terutama ketika komponen-komponen peserta sepenuhnya autonom dan beroperasi dalam domain-domain administratif yang berbeda?
3. Pengukuran
Sampai saat ini, ada banyak penelitian tentang sistem swa-organisasi di mana banyak metrik evaluasi yang berbeda telah diusulkan, misalnya entropi, kerapuhan (fragility), dan stabilitas. Apakah metrik-metrik ini cocok untuk mengevaluasi kemunculan komputasi dalam model-model perangkat lunak swa-organisasi? Jika tidak, metrik-metrik apa yang paling cocok untuk domain enjiniring perangkat lunak itu?
4. Kuantifikasi Ketidakpastian
Karena sistem-sistem IoT beroperasi dalam lingkungan yang penuh dengan ketidakpastian aleatorik dan epistemik, tidak mungkin untuk memprediksi ruang program-program kompleks yang muncul dari komponen-komponen perangkat lunak yang muncul dan menghilang secara dinamis.