Diterbitkan pada

80% yang tidak seharusnya dibangun dua kali oleh siapa pun

Penulis

Listen in English · 80% yang tidak seharusnya dibangun dua kali oleh siapa pun

0:00 / 0:00

Watch in English · 80% yang tidak seharusnya dibangun dua kali oleh siapa pun

Sebagian besar perangkat lunak bisnis bukanlah bisnis Anda. Login, peran, izin, jejak audit, endpoint REST, tugas latar belakang, format cetak, laporan, cadangan — setiap aplikasi membutuhkan semuanya, dan tidak ada satu pun yang membedakan Anda. Frappe menyediakannya. Itulah sebabnya pembangunan dengan Frappe menghabiskan anggarannya pada dua puluh persen yang benar-benar milik Anda.

Tanyakan kepada sebuah tim apa yang dilakukan sistem internal mereka, dan Anda akan mendengar tentang pekerjaannya: rantai persetujuan, aturan penetapan harga, cara sebuah pekerjaan dijadwalkan dan ditutup. Tanyakan berapa lama waktu yang dibutuhkan untuk membangunnya, dan sebagian besar waktu justru pergi ke hal yang sama sekali lain — masuk log, menentukan siapa yang boleh melihat apa, menghubungkan API, membuat PDF, menjalankan tugas malam, dan mencari cara memulihkan basis data setelah seseorang menghapus tabel.

Pekerjaan lain itu bukan opsional. Setiap aplikasi bisnis membutuhkannya. Hampir tidak ada dari itu yang menjadi urusan Anda.

Frappe adalah framework yang dibangun atas pengamatan bahwa delapan puluh persen ini sama di mana-mana, sehingga seharusnya ditulis sekali.

1
definisi per entitas — DocType — yang menghasilkan tabel, formulir, tampilan daftar, API, dan izin sekaligus
5
hal-hal yang Anda peroleh dari satu definisi itu sebelum menulis kode aplikasi apa pun
0
fork pada inti diperlukan: perilaku kustom berada di aplikasi Anda sendiri, sehingga upgrade tetap memungkinkan

Satu definisi, lima produk

Ide intinya kecil dan efeknya berlipat. Di Frappe, Anda mendeskripsikan sebuah entitas sekali — bidang-bidangnya, tipenya, tautannya ke entitas lain — dan framework menghasilkan sisanya: tabel basis data, formulir untuk mengeditnya, tampilan daftar untuk menemukannya, endpoint REST untuk membaca dan menulisnya, serta aturan izin yang menentukan siapa yang boleh melakukan tindakan mana dari hal-hal tersebut.

Tambahkan sebuah field dan field itu muncul di kelima tempat. Ubah sebuah validasi dan validasi itu berlaku untuk formulir, API, dan tugas latar belakang apa pun yang menyentuh rekaman tersebut, karena semuanya berjalan melalui lapisan yang sama.

  1. Deskripsikan

    Bidang, tipe, dan tautan, dalam satu definisi DocType — tidak ada file migrasi terpisah, tidak ada skema formulir duplikat.

  2. Dihasilkan

    Tabel, formulir, tampilan daftar, dan endpoint REST muncul bersamaan, konsisten sejak dibangun.

  3. Diatur

    Peran dan izin melekat pada definisi yang sama, sehingga API tidak dapat melewati apa yang ditegakkan formulir.

  4. Diperluas

    Logika khusus ditempatkan di aplikasi Anda sendiri dengan hook — inti tetap tidak tersentuh, sehingga peningkatan versi tetap menjadi satu perintah.

Pemadatan. Penghematannya bukan pada mengetik lebih sedikit; melainkan pada tidak pernah membiarkan lima tampilan dari satu entitas saling menyimpang.

Apa yang disertakan

Di sekitar inti itu, Frappe menyertakan mesin-mesin yang tidak glamor yang dibutuhkan setiap penerapan: pengguna dan peran, API REST dan RPC, antrean tugas latar belakang, pembaruan waktu nyata melalui websocket, email, penyimpanan file, format cetak dan pembuatan PDF, laporan terskrip, alur kerja, terjemahan, dan antarmuka baris perintah — bench — yang memasang, memperbarui, mencadangkan, dan memulihkan sebuah situs.

ERPNext, rangkaian akuntansi dan operasi, dibangun di atas framework yang sama, begitu pula produk CRM, Helpdesk, HRMS, dan LMS. Itu penting karena alasan sederhana: jika aplikasi Anda membutuhkan akuntansi, stok, proyek, atau dukungan, Anda tidak mengintegrasikan dengan sistem pihak ketiga melalui HTTP dan merekonsiliasi dua model data. Anda menambahkan DocType di samping yang sudah ada.

Satu definisi, lima produk

Ke mana uang sebenarnya pergi

Pembangunan di atas stack serba guna menghabiskan minggu-minggu pertamanya untuk scaffolding: autentikasi, penanganan sesi, ORM, antarmuka admin, model izin, alat migrasi, lapisan API, job runner, pustaka PDF, dan skrip deploy yang menyatukan semuanya. Masing-masing adalah tempat untuk memunculkan bug keamanan, dan masing-masing harus dipelihara selama aplikasi hidup.

Di Frappe, daftar itu adalah konfigurasi. Anggaran berpindah ke bagian yang benar-benar dipedulikan bisnis — aturan penetapan harga, rantai persetujuan, logika penjadwalan — yang juga merupakan bagian yang paling sulit dialihdayakan dan satu-satunya bagian yang tidak dapat ditiru pesaing.

Pekerjaan yang tidak terdiferensiasi80%

auth, permissions, API, jobs, reports, deploy, backups

Logika bisnis Anda yang sebenarnya20%

aturan yang tidak dimiliki orang lain

Aturan praktis ABN Asia dari proyek-proyek Frappe, bukan pengukuran. Intinya adalah separuh mana yang Anda bayar.

Apa artinya ini bagi tim kecil

Keberatan yang biasa muncul adalah bahwa framework adalah sebuah komitmen. Memang — dan komitmen itu lebih kecil daripada alternatifnya, karena alternatifnya adalah berkomitmen pada stack yang dibuat khusus yang hanya dipahami oleh orang yang membangunnya.

Dengan Frappe, tim kecil dapat menjalankan sistem yang biasanya membutuhkan tim jauh lebih besar: satu server, satu basis data, satu perintah deploy, satu cadangan, dan jalur upgrade yang tidak mengharuskan pengujian ulang layar login. Ketika aplikasi melampaui kapasitas server, kode yang sama dapat dipindahkan; ketika kebutuhan berubah, perubahan cukup dilakukan di DocType, bukan di lima tempat.

Di sinilah ABN Asia berperan

Kami membangun dan memelihara aplikasi Frappe: aplikasi baru untuk proses yang sudah melampaui kemampuan spreadsheet, ekstensi ERPNext yang sesuai dengan cara bisnis benar-benar beroperasi, migrasi dari alat lama, dan bagian yang tidak menarik — hosting, peningkatan versi, pencadangan, pemantauan, dan perubahan kecil yang datang setiap bulan.

Pekerjaan yang tidak kami lakukan adalah membangun ulang delapan puluh persennya. Bagian itu sudah ada, telah diuji oleh komunitas besar, dan lebih baik daripada yang ditulis sebagian besar tim pada bulan pertama mereka saat dikejar tenggat.

Jika Anda memiliki proses yang berjalan di spreadsheet dan email, percakapan pertama yang berguna bukanlah tentang teknologi. Percakapan itu tentang aturan mana di antaranya yang benar-benar aturan, dan mana yang merupakan kebiasaan yang belum pernah dipertanyakan siapa pun.

Sumber: keterlibatan Frappe milik ABN Asia sendiri, 2026. Pembagian upaya di atas adalah patokan praktis dari pekerjaan tersebut, bukan statistik yang diukur.

Kontak: [email protected]

Harap dicatat bahwa versi bahasa Indonesia didukung oleh AI dan karena itu mungkin terjadi kesalahan kecil.

Penulis

Ai-Banking-NetworkSecurity (ABN), ABN ASIA didirikan oleh orang-orang dengan akar yang kuat di dunia akademis, dengan pengalaman kerja di Amerika Serikat, Belanda, Hungaria, Jepang, Korea Selatan, Singapura, dan Vietnam. ABN Asia adalah tempat di mana akademik dan teknologi bertemu dengan peluang. Dengan solusi terdepan kami dan layanan pengembangan perangkat lunak yang kompeten, kami membantu bisnis untuk meningkatkan level dan bersaing di panggung global. Komitmen kami: Lebih Cepat. Lebih Baik. Lebih handal. Dalam kebanyakan kasus: Lebih murah juga.

Jangan ragu untuk menghubungi kami jika Anda membutuhkan layanan IT, konsultasi digital, solusi perangkat lunak siap pakai, atau jika Anda ingin mengirimkan permintaan proposal (RFP). Anda dapat menghubungi kami di [email protected]. Kami siap membantu Anda dengan semua kebutuhan teknologi Anda.

ABNAsia.org

© ABN ASIA