Tugas 9 APSI

Design Architecture

   Architectural design digunakan untuk menggambarkan hubungan antar elemen struktural utama dari perangkat lunak, gaya arsitektur dan pola desain yang membantu mencapai tujuan dibuatnya suatu sistem. Menurut Mathiassen (2000, p197), Architectural design memiliki tujuan untuk menstrukturkan suatu sistem yang menggunakan komputerisasi. Desain ini sangat mempengaruhi dalam seberapa baik suatu sistem, seperti dalam kecepatan, keamanan, dan kemudahan dalam dimodifikasi.

   Prinsip dari software design juga disebut sebagai teknik penyediaan, adalah ide utama berdasarkan pada berbagai pendekatan dan konsep yang berbeda dari software  design. Macam enabling techniques sebagai berikut:

          Abstraction

         Coupling and cohesion

         Decomposition and modularization

         Encapsulation / information hiding

         Separation of interface and implementation

Kenapa software architecture penting?

        1. Arsitektur menjadi kerangka sebuah sistem

Setiap sistem memiliki sebuah arsitektur, secara sadar atau pun tidak sadar pengembang memilihnya. Setiap arsitektur memiliki keunggulannya masing-masing. Oleh karena itu kita harus memilih kerangka yang sesuai.

        2. Arsitektur mempengaruhi quality attributes

Quality attributes adalah properti yang terlihat secara eksternal, berupa security, usability, latency atau modifiability. Kerangka yang berbeda dapat mempermudah ataupun mempersulit dalam menangani suatu permasalahan. Dengan demikian memiliki arsitektur yang tepat dapat mempermudah kita dalam mencapai kualitas yang diinginkan

        3. Sebagian arsitektur adalah ortogonal terhadap fungsionalitas.

Hal ini mungkin untuk membuat sistem yang sama dengan arsitektur yang berbeda. Jika arsitektur yang digunakan tidak cocok dengan fungsionalitas, developer akan kesulitan dalam mengembangkannya

        4. Arsitektur membatasi sistem

Arsitektur adalah seni dalam menentukan batasan yang cukup sehingga sistem memiliki quality attributes yang diinginkan. Contohnya, sebuah desain yang menjamin scalability memerlukan beberapa komponen harus stateless agar scalability dapat didapat.

    Desain arsitektur perangkat lunak biasanya melibatkan penggunaan alat bantu seperti diagram UML (Unified Modeling Language), diagram aliran data, dan perangkat lunak desain arsitektur yang spesifik. Tujuan utama dari desain arsitektur perangkat lunak adalah menciptakan sistem yang mudah dipahami, dikelola, dan diperbarui, serta dapat memenuhi kebutuhan bisnis dan teknis yang diinginkan.


Study Case

    Dalam perkembangan dunia digital terutama bidang teknologi dan informasi maka banyak sekali kampus – kampus yang menciptakan portal website untuk memudahkan pengaksesan data,pembelajaran,interaksi dosen dengan mahasiswa. Salah satu yang ingin kita bahas di sini yaitu mengenai design arsitektur portal kampus its.




    MyITS Portal sendiri menggunakan desain arsitektur Client-Server. Dalam desain ini, pengguna atau klien, seperti mahasiswa, dosen, dan anggota civitas akademik lainnya, berinteraksi dengan server yang menjalankan berbagai aplikasi dan sistem informasi yang berbeda. Desain ini memberikan pengalaman pengguna yang responsif dan efisien.

    Salah satu alasan utama MyITS Portal mengadopsi desain arsitektur Client-Server adalah untuk mencapai efisiensi dalam pengelolaan pusat data. Dengan menggunakan pendekatan yang terpusat, semua data dan aplikasi yang terkait dengan MyITS Portal dapat disimpan dan dikelola dengan efektif. Server berfungsi sebagai "pusat kendali" yang mengatur akses, otentikasi, dan otorisasi pengguna. Melalui pendekatan ini, pengelolaan data menjadi lebih efisien dan pemeliharaan sistem menjadi lebih terstruktur.

    Dalam hal skalabilitas MyITS Portal tidak dapat diragukan hal ini di sebabkan design Client-Server dapat meningkatkan server ke dalam perangkat keras yang lebih kuat untuk menangani lonjakan lalu lintas atau meningkatkanya penggunaan website oleh user. Dimana user dari MyITS Portal sendiri memiliki puluhan ribu pengguna yang mana terdiri dari mahasiswwa,dosen,dan civitas akademik lainnya. Design Client-Server memastikan bahwa server dapat di tingkatkan dan di konfigurasikan tanpas mengganggu pengguna atau user.

    Segi keamanan,MyITS Portal juga memiliki keamanan yang cukup tinggi. Dengan design Client-Server server bertindak sebagai entitas yang bertanggung jawab atas otentikasi, otorisasi, dan manajemen akses. Ini memungkinkan pemisahan tugas yang jelas antara klien dan server, sehingga pengaturan keamanan dapat dilakukan secara terpusat dan dikelola dengan lebih efisien.selain itu juga data juga di simpan dengana man di dalam server dimana server juga dapat menerapkan keamanan tambahan , seperti enkripsi data, untuk melindungi kerahasiaan dan integritas informasi. Dalam hal ini, MyITS Portal harus memastikan bahwa data pribadi mahasiswa dan informasi akademik tetap aman dan terlindungi dari ancaman keamanan.
    Selain design Client-Server, MyITS Portal juga memanfaatkan Cloud Computing. Dimana Cloud Computing memiliki beberapa kelebihan sebagai berikut :
        1. Skalabilitas:
 Layanan cloud computing memungkinkan pengguna untuk dengan mudah menyesuaikan kapasitas sumber daya yang mereka gunakan, seperti penyimpanan data dan daya komputasi, sesuai dengan kebutuhan mereka. Pengguna dapat meningkatkan atau mengurangi sumber daya secara fleksibel, memberikan skalabilitas yang lebih baik daripada infrastruktur tradisional.
        2. Aksesibilitas: 
Cloud computing memungkinkan akses yang mudah dan fleksibel ke data dan aplikasi melalui internet. Pengguna dapat mengakses sumber daya cloud dari mana saja dan kapan saja, asalkan terhubung ke jaringan internet. Ini memberikan fleksibilitas dan mobilitas yang tinggi bagi pengguna.
        3. Efisiensi Biaya:
Pengguna cloud computing hanya membayar untuk sumber daya yang mereka gunakan, tanpa perlu menginvestasikan secara besar-besaran dalam infrastruktur fisik sendiri. Ini mengurangi biaya awal yang tinggi dan mengubah biaya operasional menjadi model berlangganan atau penggunaan yang lebih terukur.
        4. Pemeliharaan dan Pembaruan Otomatis: 
Layanan cloud computing mengelola pemeliharaan dan pembaruan infrastruktur secara otomatis. Pengguna tidak perlu khawatir tentang pemeliharaan perangkat keras, perangkat lunak, atau patch keamanan, karena semua itu ditangani oleh penyedia layanan cloud. Ini menghemat waktu dan upaya dalam mengelola dan memelihara infrastruktur IT.
        5. Keamanan: 
Penyedia layanan cloud umumnya memiliki langkah-langkah keamanan yang kuat untuk melindungi data pengguna. Mereka menerapkan enkripsi data, firewall, pengamanan fisik, dan sistem keamanan lainnya untuk melindungi informasi sensitif dari akses yang tidak sah atau kehilangan data.

Kesimpulan 

Dengan menerapkan dua design di atas, maka MyITS Portal dapat memberikan akses terpadu,responsif,dan aman ke berbagai layanan dan pusat informasi ITS. Design ini juga melakukan pemisahan tugas yang jelas antara klien dan server, sehingga pengaturan keamanan dapat dilakukan secara terpusat dan dikelola dengan lebih efisien. Selain itu, pengguna juga dapat mengakses layanan dengan mudah dan hemat biaya melalui model penggunaan berbasis cloud.

Referensi 

 

Komentar

Postingan populer dari blog ini

Tugas 1 PBKK

EAS

Tugas ke 9