NgabuburIT: Basic Principles Of Software Engineering

Minggu, 24 April 2022. Kegiatan NgabuburIT bersama Berugak IT Lombok dalam kesempatan sharing Basic Principle Of Software Engineering. Dalam memulai karir maupun hobby di bidang Software Engineering (Pengembangan Perangkat Lunak), maka memahami prinsip-prinsip dasar dalam Pengembangan Perangkat Lunak merupakan prioritas yang mendasar. Diantaranya pentingnya memahami Pengembangan Perangkat Lunak melalui pemahaman dasar dan fundamental pemrograman maka akan mempermudah kita dalam menguasai konsep Pengembangan Perangkat Lunak secara terstruktur dan teratur.

Maka, diantara beberapa model Pengembangan Perangkat Lunak, terdapat sebuah arsitektur (rangka kerja) dalam memahami Pengembangan Perangkat Lunak dengan baik. Berikut merupakan salah satunya yang disebut Software Architecture Patterns.

Alt Text

Gambar diatas mempresentasikan layer (lapisan) yang terdapat pada software secara umum. Setiap layer memiliki peran dan tanggung-jawab berkaitan dengan software. Secara ringkas, pembagiannya seperti berikut:

Presentation Layer

Bertanggung-jawab dengan user-interface dan komunikasi terhadap browser.

Business Layer

Bertanggung-jawab pada business-logic yang berkaitan dengan spesifik request.

Persistence Layer

Bertanggung-jawab pada proses pengelolaan data (kalkulasi data maupun melakukan aggregate)

Database Layer

Menyediakan dan bertanggung-jawab terhadap data yang disediakan untuk aplikasi yang terhubung kepada DBMS (Database Management System)

Alt Text

Dengan menerapkan prinsip Software Architecture Patterns akan membantu pengembangan aplikasi kita menjadi aman dan maintainable (mudah dikelola). Gambar diatas menunjukkan proses perpindahan request antar layer sesuai dengan tugasnya masing-masing. Request yang diterima oleh Presentation Layer tidak bisa langsung di teruskan ke Database Layer dengan alasan penerapan Layer Of Isolation. Layer Of Isolation akan membatasi peran dan akses layer sehingga tidak mengganggu aktivitas yang ada pada layer yang lain sehingga perubahan yang terjadi pada satu layer tidak akan mempengaruhi layer yang lainnya karena setiap layer sudah indenpen.

Alt Text

Namun, ada kemungkinan layer tertentu untuk melewati satu layer lainnya seperti gambar diatas bisa saja terjadi dengan memberikan izin kepada layer diatasnya dengan status open pada layer. Konsep closed dan open tersebut akan membantu teman-teman dalam mendefinisikan relasi antar arsitektur layer dan aliran request yang ada.

Sumber: https://www.oreilly.com/library/view/software-architecture-patterns/9781491971437/ch01.html

About Harrylicious

An IT Enthusiast. Founder Sanggar IT Lombok & Agromina.id. System Analyst. Android Programmer. IT Consultant. Writer on blog.lombokit.com

Leave a Reply

Your email address will not be published. Required fields are marked *