'''''Agent-oriented Software Engineering (AOSE)''''' adalah paradigma [[rekayasa perangkat lunak]] baru yang berfokus pada penerapan praktik terbaik untuk [[Multi-agent_systemagent system|''Multi-Agent Systems'' (MAS)]] dengan berfokus pada penggunaan agen-agen sebagai abstraksi utama. Agen dan ''Multi-Agent Systems'' baru-baru ini muncul sebagai teknologi yang kuat untuk menghadapi kompleksitas berbagai skenario [[Teknologi informasi komunikasi|TIK]] saat ini.<ref name=":0">{{Cite journal|last=Zambonelli|first=Franco|last2=Omicini|first2=Andrea|date=2004-11|title=Challenges and Research Directions in Agent-Oriented Software Engineering|url=http://dx.doi.org/10.1023/b:agnt.0000038028.66672.1e|journal=Autonomous Agents and Multi-Agent Systems|volume=9|issue=3|pages=253–283|doi=10.1023/b:agnt.0000038028.66672.1e|issn=1387-2532}}</ref> Pemahaman umum yang muncul ialah bahwa ''Multi-Agent Systems'' lebih dari [[teknologi]] yang efektif, mewakili paradigma tujuan umum baru untuk pengembangan [[perangkat lunak]].<ref>{{Cite journal|last=ZAMBONELLI|first=FRANCO|last2=VAN DYKE PARUNAK|first2=H.|date=2003-12|title=Towards a paradigm change in computer science and software engineering: a synthesis|url=http://dx.doi.org/10.1017/s0269888904000104|journal=The Knowledge Engineering Review|volume=18|issue=4|pages=329–342|doi=10.1017/s0269888904000104|issn=0269-8889}}</ref><ref name=":1">{{Cite journal|last=Jennings|first=Nicholas R.|date=2001-04-01|title=An agent-based approach for building complex software systems|url=http://dx.doi.org/10.1145/367211.367250|journal=Communications of the ACM|volume=44|issue=4|pages=35–41|doi=10.1145/367211.367250|issn=0001-0782}}</ref> Komputasi berbasis agen (''Agent-based computing'') mempromosikan desain dan pengembangan aplikasi dalam hal entitas perangkat lunak otonom (agen), yang terletak pada lingkungan tertentu, dan yang dapat secara fleksibel mencapai tujuan mereka dengan berinteraksi satu sama lain dalam hal protokol dan bahasa tingkat tinggi.<ref name=":0" /> Ada lebih dari dua lusin metodologi yang berorientasi pada agen,<ref name=":2">Michael Wooldridge, Paolo Ciancarini. "Agent-oriented software engineering: The state of the ''art".In:Proc ofAOSE' 2001,'' LNAI 1957 Berlin: Springer, 2001. </ref><ref>Michael Luck, R.Ashri, M.D'Inverno. "Agent-Based Software Development", ''Artech House,'' London, 2004. </ref> di antaranya adalah MaSE,<ref name=":3">{{Cite journal|last=DeLoach|first=Scott A.|date=2001-04-01|title=Analysis and Design using MaSE and agentTool|url=http://dx.doi.org/10.21236/ada448191|location=Fort Belvoir, VA}}</ref><ref name=":4">Mao Xinjun. ''Agent-Oriented Software Development.'' Tsinghua University Press, Beijing, 2005. </ref> Gaia,<ref name=":2" /><ref name=":4" /><ref name=":5">Michael Wooldridge, N.R.Jennings, and D.Kinny. "The Gaia methodology for agent-oriented analysis and design". ''Autonomous Agents and Multi-Agent Systems,'' 3(3), pp.285- 312,2000. </ref><ref name=":6">Michael Wooldridge, N.R.Jennings, and D.Kinny. "A methodology for agent-oriented analysis and design". ''In Proceedings of the third international conference on Autonomous Agents,'' Seattle, WA, 1999. </ref> dan Tropos.<ref name=":4" /><ref name=":7">{{Cite book|title=Agent-Oriented Methodologies|url=http://dx.doi.org/10.4018/9781591405818.ch002|publisher=IGI Global|isbn=9781591405818|first=Paolo|last=Giorgini|first2=Manuel|last2=Kolp|first3=John|last3=Mylopoulos|first4=Jaelson|last4=Castro}}</ref> Metodologi berorientasi agen dapat diklasifikasikan ke dalam dua kelas utama: metodologi dengan tujuan umum dan metodologi dengan domain spesifik.<ref name=":8">Amon Sturm and Onn Schehorn, "A. Framework of Evaluating Agent-oriented Methodologies", ''Proc.Of AOIS,'' 2003. </ref> Untuk klasifikasi lainnya, metodologi saat ini dapat dibagi menjadi tiga kategori:<ref name=":4" /><ref>{{Cite book|title=Agent-Oriented Information Systems|url=http://dx.doi.org/10.1007/978-3-540-25943-5_6|publisher=Springer Berlin Heidelberg|date=2004|location=Berlin, Heidelberg|isbn=9783540221272|pages=78–93|first=Khanh Hoa|last=Dam|first2=Michael|last2=Winikoff}}</ref> metodologi berorientasi agen, metodologi yang secara langsung memperluas atau mengadaptasi metodologi berorientasi objek, dan metodologi yang mengadaptasi model rekayasa pengetahuan atau teknik lainnya.<ref name=":9">{{Cite journal|last=Yubo Jia|last2=Chengwei Huang|last3=Hao Cai|date=2009-09|title=A comparison of three agent-oriented software development methodologies: MaSE, Gaia, and Tropos|url=http://dx.doi.org/10.1109/ycict.2009.5382417|journal=2009 IEEE Youth Conference on Information, Computing and Telecommunication|publisher=IEEE|doi=10.1109/ycict.2009.5382417|isbn=9781424450749}}</ref>
Ketika mempertimbangkan perspektif berorientasi objek yang tradisional (historis),<ref>{{Cite book|title=Object-oriented Analysis and Design (2nd edition)|last=Booch|first=G|publisher=Reading (MA)|year=1994|isbn=|location=Addison-Wesley|page=}}</ref> perbedaan antara perspektif berorientasi objek dan perspektif berorientasi agen pada pemodelan dan [[Pengembangan perangkat lunak|pengembangan sistem perangkat lunak]] sangatlah tajam. Objek, tidak seperti agen, pada prinsipnya tidak otonom atau proaktif, dalam hal aktivitas internalnya hanya dapat diminta oleh permintaan layanan yang berasal dari untaian kontrol eksternal. Dalam aplikasi objek tradisional, tidak ada pemodelan eksplisit dari sebuah "lingkungan (''environment'')" eksternal: semuanya dimodelkan dalam hal objek, dan objek membungkus sumber daya lingkungan dalam hal atribut internal atau memandang dunia hanya dalam hal nama/ referensi objek lain. Selain itu, komputasi tradisional berbasis objek mempromosikan perspektif pada sistem perangkat lunak di mana komponen adalah "fungsional" atau [[entitas]] "berorientasi layanan".<ref name=":0" />
== Esensi Komputasi Berbasis Agen ==
Agen adalah sistem komputer terenkapsulasi yang berada dalam beberapa lingkungan, dan yang mampu bertindak fleksibel dan otonom dalam lingkungan tersebut untuk memenuhi tujuan desainnya.<ref>M. Wooldridge (1997) “Agent-based software engineering” IEE Proc Software Engineering 144 26-37. </ref> Ada beberapa poin tentang definisi ini yang memerlukan penjelasan lebih lanjut.<ref name=":10">Jennings, Nicholas, “Agent-Oriented Software Engineering”, Springer-Verlag Berlin Heidelberg, 1999</ref>
* Agen adalah entitas pemecah masalah yang dapat diidentifikasi dengan jelas dengan batasan dan antarmuka yang jelas<ref name=":10" />
* Dirancang untuk memenuhi tujuan tertentu: agen memiliki tujuan (sasaran) tertentu untuk dicapai<ref name=":10" />
* Otonom: agen memiliki kontrol atas keadaan internalnya dan atas perilakunya sendiri<ref name=":10" />
* Mampu menunjukkan perilaku penyelesaian masalah yang fleksibel dalam mengejar tujuan desainnya: agen harus reaktif (mampu merespons secara tepat waktu terhadap perubahan yang terjadi di lingkungannya) dan proaktif (mampu secara oportunistik mengadopsi tujuan baru)<ref>M. Wooldridge and N. R. Jennings (1995) “Intelligent agents: theory and practice” The Knowledge Engineering Review 10 (2) 115-152. </ref>
Secara umum, agen dapat dilihat sebagai entitas perangkat lunak dengan karakteristik berikut:<ref name=":1" /><ref>Lind, J.:2001, ‘Issues in Agent-Oriented Software Engineering’. In: Proceedings of the 1st International Workshop on Agent-Oriented Software Engineering, Vol. 1957 of LNCS. Springer Verlag.</ref>
* Sosialitas (''sociality''): Dalam sebagian besar kasus, agen mengeksekusi di lingkungan operasional terbuka yang menyelenggarakan eksekusi berbagai agen, yang mungkin milik para [[pemangku kepentingan]] yang berbeda. Dalam ''Multi-Agent Systems'' (MAS), perilaku global berasal dari interaksi antara agen-agen penyusunnya. Bahkan, agen dapat berkomunikasi atau berkoordinasi satu sama lain baik untuk mencapai tujuan bersama atau karena ini diperlukan bagi mereka untuk mencapai tujuan mereka sendiri<ref name=":0" />
Ada dua poin yang secara kualitatif membedakan interaksi agen dari yang terjadi dalam paradigma rekayasa perangkat lunak lainnya. Pertama, interaksi yang berorientasi agen terjadi melalui bahasa berkomunikasi agen tingkat tinggi (deklaratif). Akibatnya, interaksi dilakukan pada tingkat pengetahuan:<ref>A. Newell, (1982) “The Knowledge Level” Artificial Intelligence 18 87-127. </ref> dalam hal tujuan ''(goal)'' mana yang harus diikuti, pada saat apa, dan oleh siapa. Kedua, karena agen adalah pemecah masalah yang fleksibel, yang beroperasi dalam lingkungan di mana mereka hanya memiliki kontrol parsial dan dapat diamati, interaksi perlu ditangani dengan cara yang sama fleksibelnya. Dengan demikian, agen membutuhkan alat [[komputasi]] untuk membuat keputusan yang bergantung pada konteks tentang sifat dan ruang lingkup interaksi mereka dan untuk memulai (dan menanggapi) interaksi yang tidak diramalkan pada waktu desain. Dalam kebanyakan kasus, agen bertindak untuk mencapai tujuan baik atas nama individu / perusahaan atau sebagai bagian dari inisiatif pemecahan masalah yang lebih luas. Jadi, ketika agen berinteraksi biasanya ada beberapa konteks organisasi yang mendasari. Konteks ini mendefinisikan sifat hubungan antara agen.<ref name=":10" />
== Konsep dan Properti AOSE ==
== Referensi ==
<br />
{{Uncategorized|date=Januari 2023}}
|