Definisi Arsitektur Perangkat Lunak


Beberapa definisi terkait Arsitektur Perangkat Lunak menurut beberapa ahli:

IEEE

“Arsitektur adalah organisasi mendasar pada sebuah system yang mewujudkan komponen – komponen, hubungan antara satu dengan yang lainnya, dan dengan lingkungan, dan prinsip yang mengarahkan rancangan dan evolusi”

Grady Booch, Philip Krutchen, Kurt Bittner, and Rich Reitman

Arsitektur perangkat lunak mencakup serangkaian keputusan-keputusan penting tentang organisasi sistem perangkat lunak:

  • Pemilihan elemen struktural dan interface, yang menyusun sistem
  • Perilaku seperti spesifikasi dalam kolaborasi antara unsur-unsur
  • Komposisi struktural dan perilaku elemen – elemen dalam membentuk subsistem yang lebih besar
  • Gaya arsitektur yang memandu organisasi
  1. Booch, P. Krutchen, K. Bittner and R. Reitman. The Rational Unified Process — AnIntroduction. 1999. Definition derived from Mary Shaw’s definition presented in 1995 at theFirst International Workshop on Architectures for Software Systems.

Len Bass (SEI)

“Arsitektur perangkat lunak dari sebuah program atau sistem komputasi adalah struktur atau struktur dari sistem, yang terdiri dari unsur-unsur perangkat lunak, sifat-sifat yang terlihat secara eksternal dari elemen-elemen, dan hubungan di antara mereka.”

Bass, Len; Clements, Paul; & Kazman, Rick. Software Architecture in Practice, Second Edition. Boston, MA: Addison-Wesley, 2003.

UML 1.5

“[Arsitektur adalah] struktur organisasi dan perilaku yang terkait sistem. Suatu arsitektur dapat secara rekursif didekomposisi menjadi bagian-bagian yang berinteraksi melalui antarmuka, hubungan yang menghubungkan bagian-bagian, dan batasan untuk perakitan bagian. Bagian yang berinteraksi melalui antarmuka termasuk kelas-kelas, komponen dan subsistem .

McGovern

“Arsitektur perangkat lunak sistem atau koleksi sistem terdiri dari semua keputusan desain penting tentang struktur perangkat lunak dan interaksi antara struktur-struktur yang membentuk sistem. Yang mendukung kualitas keputusan desain yang diinginkan seperangkat sistem yang harus didukung untuk menjadi sukses. Desain memberikan dasar konseptual untuk pengembangan sistem, dukungan, dan pemeliharaan. ”

Eeles

  • Pertama semua arsitektur harus berasal dari beberapa alasan “Satu aspek penting dalam arsitektur bukan hanya hasil akhirnya, arsitektur itu sendiri, tetapi alasan mengapa cara itu digunakan. Jadi, suatu pertimbangan penting adalah untuk memastikan bahwa Anda mendokumentasikan keputusan yang telah mengarah ke arsitektur dan alasan bagi keputusan itu. “
  • Arsitektur memiliki pengalaman dan unsur-unsur gaya “Sebagian besar berasal dari arsitektur sistem yang berbagi serangkaian perhatian Kesamaan ini dapat digambarkan sebagai sebuah gaya arsitektur, yang dapat dianggap semacam pola tertentu, meskipun yang sering kompleks dan pola komposit (sejumlah pola diterapkan bersama-sama). Seperti sebuah pola, gaya arsitektur merupakan kodifikasi pengalaman “
  • Arsitektur mempengaruhi tim pengembangan “Sebuah arsitektur mempengaruhi struktur team” dan sebaliknya “struktur tim saat ini dan keterampilan yang tersedia merupakan kendala yang sangat nyata pada apa yang mungkin”. Walaupun tidak disebutkan pengaruh lain dari sumber-sumber lain : waktu dan uang
  • Arsitektur menunjukkan asumsi yang sangat penting yang sudah kita buat “Sebuah arsitektur memiliki ruang lingkup tertentu” yaitu : ada arsitektur perangkat lunak, arsitektur bisnis, arsitektur informasi, arsitektur perangkat keras dan lain-lain yang juga akan kembali ke titik tentang pandangan tapi di sini tidak perlu untuk kepentingan stakeholder – tingkat deskripsi yang berbeda.

Grady Booch

“Pada tingkat tertinggi abstraksi, setiap sistem mempunyai arsitektur, meliputi kunci abstraksi dan mekanisme yang mendefinisikan struktur sistem dan perilaku seperti yang terlihat dari sudut pandang para pemangku kepentingan yang berbeda, masing-masing dengan serangkaian kebutuhan yang berbeda”


Leave a Reply