Perangkat lunak memiliki sistem-sistem
besar dan diuraikan menjadi subsistem-subsistem untuk memberikan sekumpulan
layanan yang berhubungan. Perancangan arsitektur adalah proses perancangan awal
untuk mengidentifikasi subsistem tersebut dan menetapkan kerangka kerja untuk
kontrol dan komunikasinya. Output proses perancangan ini disebut arsitektur
perangkat lunak.
Perancangan arsitektur meliputi
tahap penyusunan pemrograman dan perancangan. Penyusunan program adalah
penyelusuran masalah (problem seeking), perancangan adalah pemecahan masalah
(problem solving).
Proses perancangan meliputi dua
tahap analisis dan sintesis. Penyusunan program adalah analisis, perancangan
adalah sintesis.
Perancangan arsitektur adalah
penggabungan berbagai unsur ruang untuk menampung suatu proses kegiatan
sehingga menghasilkan suatu keseluruhan yang lebih kaya dan bermakna.
Proses perancangan arsitektur
dimulai dari mengetahui jenis bangunan yang akan dirancang, pemakainya dan
bagaimana keinginan pemakainya, kegiatannya, ruang-ruang yang dibutuhkan,
bagaimana tapak dimana bangunan tersebut akan dibangun, bagaimana jenis
konstruksi dan bahan yang akan digunakan, dilanjutkan dengan melakukan analisa
mengenai sifat dan syarat setiap kebutuhan lalu dikelompokkan, dihubungkan,
digabungan sehingga menghasilkan suatu rancangan arsitektur.
Proses perancangan arsitektur:
- Penstrukturan Sistem yaitu saat sistem didekomposisi ke dalam beberapa sub-sistem dan komunikasi diantara subsistem yang harus dapat diidentifikasi.
- Pemodelan Kontrol yaitu model umum hubungan kontrol antara bagian-bagian sistem yang ditetapkan.
- Dekomposisi Modular yaitu setiap sub-sistem yang teridentifikasi diuraikan menjadi modulmodul
Model arsitektur:
- Model struktur statis menunjukkan subsistem-subsistem atau komponen-komponen yang akan dikembangkan sebagai unit-unit yang terpisah.
- Model dinamis menunjukkan struktur proses dari sistem.
- Model interface mendefinisikan layanan yang disediakan oleh setiap subsistem melalui interface umum perangkat tersebut.
- Model hubungan menunjukkan hubungan seperti aliran data di antara subsistem-subsistem.
Keuntungan dari perancangan arsitektur:
- Dapat digunakan sebagai fokus pembahasan oleh berbagai stakeholder.
- Dapat menggabungkan kebutuhan fungsi dan non fungsi.
- Mendukung pemakaian ulang berskala besar.
Perancangan arsitektur dapat
didasarkan pada model atau gaya arsitektur tertentu. Pengetahuan akan gaya
arsitektur ini akan menyederhanakan masalah-masalah yang berkaitan dengan pendefinisian
arsitektur sistem tersebut. Oleh karena itu sistem yang besar dan heterogen
tentu tidak dapat diselesaikan dengan gaya arsitektur tunggal.
Atribut arsitektur:
- Kinerja
Arsitektur harus
dirancang untuk melokalisasi operas-operasi kritis dalam sejumlah kecil
subsistem dengan komunikasi sesedikit mungkin antara subsistem-subsistem.
- Keamanan
Gunakan struktur
berlapis untuk arsitekturnya, dengan aset yang paling penting terlindung pada
bagian dalam.
- Keselamatan
Operasi-operasi
yang berhubungan dengan keselamatan sebaiknya berada dalam sejumlah kecil
subsistem.
- Ketersediaan
Sediakan
komponen redundan dalam perancangan arsitektur.
- Kemampuan Dipelihara
Arsitektur sistem
harus dirancang dengan menggunakan komponen kecil dan berdiri sendiri, yang
dapat diganti segera