Software Architecture with Business Layer

Imam Maulana Rachbini
Sulang
Published in
2 min readMay 17, 2018

Pada tulisan sebelumnya, saya membuat diagram software architecture yang mengacu pada layer ini,

Maka sekarang, saya menambahkan business layer pada software architecture suling. Berikut adalah diagramnya,

Alur dari diagram di atas bisa dijelaskan secara singkat sebagai berikut., misalnya client browser akan mengakses domain suling misalnya staging.suling.tk, dan ketika request diterima, NGINX akan mengatur alur request tersebut. Request tersebut diarahkan ke frontend suling dengan stack ReactJS, dan client browser akan mendapatkan kembalian berupa tampilan halaman depan suling.

Misalnya client browser akan melakukan signup melalui SSO atau LinkedIn, maka setelah client mengirim request ke frontend, lalu frontend melakukan request ke backend Django REST yang terlebih dahulu melalui NGINX untuk mengatur alur requestnya, lalu backend akan mengatur logic dari proses sign up tersebut. Setelah itu, backend akan melakukan API Call ke API CS atau LinkedIn API, dan backend akan mendapatkan kembalian berupa data-data user.

Setelah itu, data-data user akan disimpan ke PostgreSQL melalui backend. PostgreSQL akan menghandle proses Create, Read, Update, Delete (CRUD). Setelah sukses, backend akan mengirimkan response ke frontend, dan frontend akan memberikan pesan berhasil sign up ke client browser.

Nah, penjelasan contoh use case sign-up di atas adalah salah satu contoh interaksi dalam Business Layer. Business Layer adalah layer yang menjelaskan Business Workflow antara tiap-tiap Business Entities. Pada aplikasi suling, Business Entitiesnya adalah Admin/Fakultas, Mahasiswa/Alumni, dan Perusahaan. Selain use case sign-up yang telah dijelaskan di atas, terdapat juga use case atau Business Workflow lainnya seperti perusahaan membuka lowongan, lalu mahasiswa mendaftar pada lowongan tersebut.

Reference: https://msdn.microsoft.com/en-us/library/ee658098.aspx

--

--