Software Engineering Methodologies & Architecture
Metodologi dan Arsitektur Rekayasa Perangkat Lunak
Methods and patterns for building efficient, scalable, and maintainable software systems.
Metode dan pola untuk membangun sistem perangkat lunak yang efisien, skalabel, dan mudah dipelihara.
Topics
Topik
Researchers
Peneliti
Projects
Proyek
Tutorials & Resources
Tutorial & Sumber Daya
Event-Driven Architecture Fundamentals with PHP Dasar-Dasar Arsitektur Event-Driven dengan PHP
A comprehensive guide to Event-Driven Architecture (EDA) for PHP developers. Learn why synchronous call chains break at scale, how events decouple services, the core patterns (Pub/Sub, Event Sourcing, Saga), and runnable PHP implementations using Laravel events, RabbitMQ, and Redis Streams — with idempotency, retries, and dead-letter queue strategies throughout.
Panduan komprehensif Arsitektur Event-Driven (EDA) untuk pengembang PHP. Pelajari mengapa rantai panggilan sinkron gagal pada skala besar, bagaimana event mendecouple layanan, pola inti (Pub/Sub, Event Sourcing, Saga), dan implementasi PHP yang dapat dijalankan menggunakan Laravel event, RabbitMQ, dan Redis Streams, dengan strategi idempotensi, retry, dan dead-letter queue di seluruh tutorial.
RESTful API Design Fundamentals with PHP Dasar-Dasar Perancangan RESTful API dengan PHP
A comprehensive guide to designing RESTful APIs with PHP. Learn REST constraints, resource modelling, HTTP verbs, status codes, pagination, authentication, and versioning — then build a complete course-registration API with Laravel that you can run and test today.
Panduan komprehensif merancang RESTful API dengan PHP. Pelajari constraint REST, pemodelan resource, HTTP verb, status code, pagination, authentication, dan versioning — lalu bangun API registrasi mata kuliah lengkap dengan Laravel yang dapat Anda jalankan dan uji hari ini.
Skripsi Mini Series Part 1: Introduction (Pendahuluan) Seri Mini Skripsi Bagian 1: Pendahuluan
Part 1 of the Skripsi Mini Series. Learn how to write Chapter 1: Introduction (BAB I: Pendahuluan) of a Polinema thesis (skripsi), covering Background, Research Questions, Scope and Limitations, Objectives, and Significance, using a simple Laravel Todo app that evaluates the Action Pattern as the running example.
Bagian 1 dari Seri Mini Skripsi. Pelajari cara menulis BAB I (Pendahuluan) skripsi Polinema (Latar Belakang, Rumusan Masalah, Batasan Masalah, Tujuan, dan Manfaat) menggunakan aplikasi Todo Laravel sederhana yang mengevaluasi Action Pattern sebagai contoh berkelanjutan.
Skripsi Mini Series Part 2: Literature Review (Landasan Teori) Seri Mini Skripsi Bagian 2: Landasan Teori
Part 2 of the Skripsi Mini Series. Learn how to write Chapter 2: Literature Review (BAB II: Landasan Teori): running a real Literature Study (Studi Literatur), avoiding plagiarism, and building the Theoretical Basis (Dasar Teori) that grounds our Laravel Action Pattern comparison in existing knowledge.
Bagian 2 dari Seri Mini Skripsi. Pelajari cara menulis BAB II (Landasan Teori): menjalankan Studi Literatur yang sesungguhnya, menghindari plagiarisme, dan menyusun Dasar Teori yang mendasarkan perbandingan Action Pattern Laravel dalam penelitian ini pada pengetahuan yang sudah ada.
Skripsi Mini Series Part 3: Development Methodology (Metodologi Pengembangan) Seri Mini Skripsi Bagian 3: Metodologi Pengembangan
Part 3 of the Skripsi Mini Series. Learn how to write Chapter 3: Development Methodology (BAB III: Metodologi Pengembangan): choosing a development method, drawing the Research Flow (Alur Penelitian), and precisely defining metrics and instruments, with a week-by-week timeline to finish on time.
Bagian 3 dari Seri Mini Skripsi. Pelajari cara menulis BAB III (Metodologi Pengembangan): memilih metode pengembangan, menggambar Alur Penelitian, dan mendefinisikan metrik serta instrumen secara presisi, dengan linimasa mingguan agar selesai tepat waktu.
Skripsi Mini Series Part 4: System Analysis and Design (Analisis dan Perancangan Sistem) Seri Mini Skripsi Bagian 4: Analisis dan Perancangan Sistem
Part 4 of the Skripsi Mini Series. Learn how to write Chapter 4: System Analysis and Design (BAB IV: Analisis dan Perancangan Sistem): requirements analysis, UI wireframes, and a full UML design for our Action Pattern implementation, with the Fat Controller alternative shown as a clearly labelled conceptual contrast.
Bagian 4 dari Seri Mini Skripsi. Pelajari cara menulis BAB IV (Analisis dan Perancangan Sistem): analisis kebutuhan, wireframe UI, dan desain UML lengkap untuk implementasi Action Pattern dalam penelitian ini, dengan alternatif Fat Controller ditampilkan sebagai kontras konseptual yang diberi label jelas.
Skripsi Mini Series Part 5: Implementation and Testing (Implementasi dan Pengujian) Seri Mini Skripsi Bagian 5: Implementasi dan Pengujian
Part 5 of the Skripsi Mini Series. Learn how to write Chapter 5: Implementation and Testing: setting up the environment, implementing the database, writing the PHP code for the Action Pattern implementation, documenting prototype iterations, and running Black Box and unit tests.
Bagian 5 dari Seri Mini Skripsi. Pelajari cara menulis BAB V (Implementasi dan Pengujian): menyiapkan environment, mengimplementasikan database, menulis kode PHP untuk implementasi Action Pattern, mendokumentasikan iterasi prototipe, serta menjalankan pengujian Black Box dan unit test.
Skripsi Mini Series Part 6: Results and Discussion (Hasil dan Pembahasan) Seri Mini Skripsi Bagian 6: Hasil dan Pembahasan
Part 6 of the Skripsi Mini Series. Learn how to write Chapter 6: Results and Discussion (BAB VI: Hasil dan Pembahasan): presenting measured results against literature thresholds, interpreting maintainability and testability metrics, and tying every result back to the Research Questions (Rumusan Masalah), including a threats-to-validity discussion.
Bagian 6 dari Seri Mini Skripsi. Pelajari cara menulis BAB VI (Hasil dan Pembahasan): menyajikan hasil terukur terhadap ambang batas literatur, menginterpretasikan metrik maintainability dan testability, dan mengaitkan setiap hasil kembali ke Rumusan Masalah, termasuk pembahasan ancaman validitas.
Skripsi Mini Series Part 7: Conclusion and Recommendations (Kesimpulan dan Saran) Seri Mini Skripsi Bagian 7: Kesimpulan dan Saran
Part 7 (final) of the Skripsi Mini Series. Learn how to write Chapter 7: Conclusion and Recommendations (BAB VII: Kesimpulan dan Saran) so it traces directly back to Chapter 1: Introduction (BAB I), prepare for your thesis defense (sidang) with common examiner (penguji) questions, and package your project for a professional handover.
Bagian 7 (terakhir) dari Seri Mini Skripsi. Pelajari cara menulis BAB VII (Kesimpulan dan Saran) yang tertelusur langsung ke BAB I, mempersiapkan sidang dengan pertanyaan penguji yang umum, dan mengemas proyek Anda untuk handover yang profesional.
Docker & Containerization Fundamentals with PHP Dasar-Dasar Docker & Kontainerisasi dengan PHP
A hands-on introduction to Docker and containerization for PHP developers. Learn images, containers, Dockerfiles, and docker-compose by building a multi-service PHP + Nginx + MySQL stack from scratch.
Pengenalan langsung Docker dan kontainerisasi untuk pengembang PHP. Pelajari image, container, Dockerfile, dan docker-compose dengan membangun stack multi-layanan PHP + Nginx + MySQL dari awal.
CI/CD with GitHub Actions for PHP Projects CI/CD dengan GitHub Actions untuk Proyek PHP
Learn how to automate the build-test-deploy pipeline for PHP projects using GitHub Actions. Covers workflow syntax, Composer caching, PHPUnit matrix testing across multiple PHP versions, deployment to VPS via SSH, and managing secrets and environment variables securely.
Pelajari cara mengotomatiskan pipeline build-test-deploy untuk proyek PHP menggunakan GitHub Actions. Mencakup sintaks workflow, caching Composer, matrix testing PHPUnit di berbagai versi PHP, deployment ke VPS via SSH, dan mengelola secrets dan environment variables dengan aman.
MVC/MVVM Architecture Fundamentals with PHP Dasar-Dasar Arsitektur MVC/MVVM dengan PHP
A hands-on introduction to Model-View-Controller (MVC) and Model-View-ViewModel (MVVM) separation patterns for PHP developers. Learn how each pattern works using a student-course enrolment domain, compare Laravel MVC with a Vue.js-backed MVVM client, understand trade-offs, avoid fat controllers and leaky ViewModels, and refactor spaghetti PHP into clean architecture — with runnable code samples throughout.
Pengenalan praktis pola pemisahan Model-View-Controller (MVC) dan Model-View-ViewModel (MVVM) untuk pengembang PHP. Pelajari cara kerja setiap pola menggunakan domain pendaftaran mata kuliah, bandingkan Laravel MVC dengan klien MVVM berbasis Vue.js, pahami trade-off, hindari fat controller dan ViewModel yang bocor, dan refactor spaghetti PHP menjadi arsitektur yang bersih, dengan contoh kode yang dapat dijalankan di seluruh tutorial.
Secure Coding Fundamentals with PHP: OWASP Top 10 Dasar-Dasar Secure Coding dengan PHP: OWASP Top 10
Master the OWASP Top 10 (2021 edition) through practical PHP and Laravel examples. Learn how to prevent broken access control, injection attacks, cryptographic failures, insecure design, and security misconfiguration in real-world applications.
Kuasai OWASP Top 10 (edisi 2021) melalui contoh PHP dan Laravel praktis. Pelajari cara mencegah broken access control, serangan injeksi, kegagalan kriptografi, desain tidak aman, dan miskonfigurasi keamanan dalam aplikasi dunia nyata.
Domain-Driven Design Fundamentals with PHP Dasar-Dasar Domain-Driven Design dengan PHP
A hands-on guide to Domain-Driven Design (DDD) for PHP developers. Learn ubiquitous language, bounded contexts, entities, value objects, aggregates, repositories, and layered architecture — then refactor an anemic CRUD course registration model into a rich DDD-style domain model with runnable before-and-after code.
Panduan praktis Domain-Driven Design (DDD) untuk pengembang PHP. Pelajari ubiquitous language, bounded context, entity, value object, aggregate, repository, dan arsitektur berlapis, lalu refactor model registrasi mata kuliah CRUD yang anemic menjadi domain model gaya DDD dengan kode before-and-after yang dapat dijalankan.
UML Mini Series Part 1: Introduction to UML & Use Case Diagram Seri Mini UML Bagian 1: Pengenalan UML & Use Case Diagram
Part 1 of the UML Mini Series. Learn what UML is, why it matters, when and where to use it, and how to create a Use Case Diagram: with a complete PlantUML example for a Campus Course Registration System.
Bagian 1 dari Seri Mini UML. Pelajari apa itu UML, mengapa penting, kapan dan di mana menggunakannya, serta cara membuat Use Case Diagram: dengan contoh PlantUML lengkap untuk Sistem Pendaftaran Mata Kuliah Kampus.
UML Mini Series Part 2: Use Case Scenario Seri Mini UML Bagian 2: Use Case Scenario
Part 2 of the UML Mini Series. Learn what a Use Case Scenario is, why it bridges requirements and design, and how to write a full scenario for the 'Enrol in Course' use case: with structured table, main success flow, and alternative flows.
Bagian 2 dari Seri Mini UML. Pelajari apa itu Use Case Scenario, mengapa ia menjembatani persyaratan dan desain, dan cara menulis skenario lengkap untuk use case 'Daftar Mata Kuliah': dengan tabel terstruktur, alur sukses utama, dan alur alternatif.
UML Mini Series Part 3: Activity Diagram Seri Mini UML Bagian 3: Activity Diagram
Part 3 of the UML Mini Series. Learn what an Activity Diagram is, why it is essential for business process modelling, and how to draw one for the 'Enrol in Course' workflow: with swimlanes, decisions, and merge nodes in PlantUML.
Bagian 3 dari Seri Mini UML. Pelajari apa itu Activity Diagram, mengapa penting untuk pemodelan proses bisnis, dan cara menggambarnya untuk alur kerja 'Daftar Mata Kuliah': dengan swimlanes, decision, dan merge node dalam PlantUML.
UML Mini Series Part 4: Sequence Diagram Seri Mini UML Bagian 4: Sequence Diagram
Part 4 of the UML Mini Series. Learn what a Sequence Diagram is, why it reveals object interactions, and how to draw one for the 'Enrol in Course' payment and enrolment flow: with lifelines, messages, and activation boxes in PlantUML.
Bagian 4 dari Seri Mini UML. Pelajari apa itu Sequence Diagram, mengapa diagram ini mengungkap interaksi objek, dan cara menggambarnya untuk alur pembayaran dan pendaftaran 'Daftar Mata Kuliah': dengan lifelines, messages, dan activation box dalam PlantUML.
UML Mini Series Part 5: Class Diagram & Laravel Realization Seri Mini UML Bagian 5: Class Diagram & Realisasi Laravel
The final part of the UML Mini Series. Learn what a Class Diagram is, draw the complete domain model for the Campus Course Registration System, and implement it as Laravel Eloquent models, migrations, services, and a controller: with complete runnable code.
Bagian terakhir dari Seri Mini UML. Pelajari apa itu Class Diagram, gambar domain model lengkap untuk Sistem Pendaftaran Mata Kuliah Kampus, dan implementasikan sebagai Laravel Eloquent models, migrations, services, dan controller: dengan kode lengkap yang dapat dijalankan.
Design Patterns with PHP Design Patterns dengan PHP
A hands-on introduction to reusable object-oriented design patterns with PHP. Learn Strategy, Observer, and Factory Method with before-and-after code examples, understand when to apply each pattern, and refactor a messy notification service using what you have learned.
Pengenalan praktis pola desain berorientasi objek yang dapat digunakan kembali dengan PHP. Pelajari Strategy, Observer, dan Factory Method dengan contoh kode before-and-after, pahami kapan menerapkan setiap pola, dan refactor layanan notifikasi yang berantakan menggunakan apa yang telah Anda pelajari.
Clean Code Principles with PHP Prinsip Clean Code dengan PHP
A beginner-friendly guide to writing readable, maintainable PHP code. Learn meaningful naming, small functions, single responsibility, self-documenting code, and how to avoid magic numbers — with concrete before-and-after examples.
Panduan ramah pemula untuk menulis kode PHP yang mudah dibaca dan dipelihara. Pelajari penamaan yang bermakna, fungsi kecil, tanggung jawab tunggal, kode yang mendokumentasikan diri sendiri, dan cara menghindari magic number, dengan contoh before-and-after yang konkret.
Microservices Architecture Fundamentals with PHP Dasar-Dasar Arsitektur Microservices dengan PHP
A foundational guide to microservices architecture for PHP developers. Learn why and when to decompose a monolith, how to design service boundaries using domain-driven design, synchronous vs asynchronous communication patterns, database-per-service, and runnable PHP examples with Lumen/Slim — complete with contract tests.
Panduan dasar arsitektur microservices untuk pengembang PHP. Pelajari mengapa dan kapan mendekomposisi monolit, cara merancang batas layanan menggunakan domain-driven design, pola komunikasi sinkron vs asinkron, database-per-service, dan contoh PHP yang dapat dijalankan dengan Lumen/Slim, lengkap dengan contract test.
Test-Driven Development (TDD) with PHP Test-Driven Development (TDD) dengan PHP
A step-by-step introduction to Test-Driven Development using PHP and PHPUnit. Learn the Red → Green → Refactor cycle, build a real-world validator, and understand when (and when not) to apply TDD in your projects.
Pengenalan langkah demi langkah Test-Driven Development menggunakan PHP dan PHPUnit. Pelajari siklus Red → Green → Refactor, bangun validator dunia nyata, dan pahami kapan (dan kapan tidak) menerapkan TDD di proyek Anda.
Blackbox and Whitebox Test in Simple Way Cara Sederhana Melakukan Pengujian Blackbox dan Whitebox
A beginner-friendly guide to software testing using Blackbox and Whitebox approaches. Learn how to design effective test cases, write test scenarios, and implement both testing methods with practical PHP examples.
Panduan ramah pemula untuk pengujian perangkat lunak menggunakan pendekatan Blackbox dan Whitebox. Pelajari cara merancang test case yang efektif, menulis skenario pengujian, dan mengimplementasikan kedua metode pengujian dengan contoh praktis PHP.
The SE Lab Book Collection Koleksi Buku SE Lab
Browse books authored and co-authored by SE Lab researchers covering software engineering, programming, and academic topics.
Jelajahi buku yang ditulis dan ditulis bersama oleh peneliti SE Lab yang mencakup rekayasa perangkat lunak, pemrograman, dan topik akademik.
Presentation Decks Archive Arsip Dek Presentasi
Access slide decks and presentation materials created by SE Lab researchers for seminars, workshops, and teaching.
Akses slide dan materi presentasi yang dibuat oleh peneliti SE Lab untuk seminar, lokakarya, dan pengajaran.
Publications
Publikasi
Pelatihan dan Pembuatan Brosur untuk Meningkatkan Penjualan Produk UMKM Desa Wringinsongo Kecamatan Tumpang Kabupaten Malang
Semantic Automated Assessment Of Student Flowcharts Via Graph Neural Networks And Symbolic Execution
Evaluasi Penilaian Otomatis Pemrograman Web Laravel pada Platform LAIBA
Implementasi Clean Architecture pada Sistem Manajemen Tiket Penanganan Insiden
Inovasi Pengelolaan Lomba Pramuka Berbasis Website dalam Rangka Penerapan Konsep Smart School
Penerapan Metode WASPAS pada Sistem Pendukung Keputusan Pemilihan Perusahaan Sekuritas
SISTEM PENENTU PENERIMAAN BANTUAN SOSIAL (BLT-DD) UNTUK KELUARGA KURANG MAMPU
Usability Evaluation of Railway Component Supply Chain Management Information System Using System Usability Scale
A Scalable Simulation Testbed for O-RAN
Pelatihan Kemasan Produk Anyaman Bambu Untuk Pengaruh Display Produk Dalam Promosi Terhadap Pembelian Konsumen Di Desa Duwet Kecamatan Tumpang Kabupaten Malang
Pengelolaan Arsip Digital Di Bumdes Desa Duwet Kecamatan Tumpang Kabupaten Malang Menggunakan Teknologi Informasi
Sistem Kontrol dan Pemberitahuan Status Peladen Jarak Jauh Berbasis Chatbot
Pengembangan Analisis Sentimen Pada Twitter Untuk Layanan Ojek Online Menggunakan Rule Based
Implementasi Metode Fuzzy Multiple Attribute Decision Making–Weighted Product Untuk Penentuan Bonus Karyawan
Implementasi Sentimen Analisis Komentar Channel Video Pelayanan Pemerintah Di Youtube Menggunakan Algoritma Naïve Bayes
Implementasi Sentimen Analisis Komentar Channel Video Pelayanan Pemerintah di Youtube Menggunakan Algoritma Naive Bayes
PENDISTRIBUSIAN ELPIJI MENGGUNAKAN METODE FLOYD WARSHALL (Studi Kasus: PT Sulusindo Innovative)
Simulasi Pembelajaran Berternak Burung Puyuh Menggunakan Metode Finite State Machine Berbasis Android
Sistem Analisis Jumlah Kunjungan Wisatawan pada Hawai Waterpark Malang Menggunakan Metode Least Square & Weighted Moving Average
IMPLEMENTASI SEMANTIC WEB PADA PENCARIAN MAKALAH SKRIPSI DI JTI POLINEMA
Showing 20 of 22 publications. Menampilkan 20 dari 22 publikasi.