<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>SE Lab Blog — JTI Polinema</title>
    <link>https://se.polinema.ac.id/</link>
    <description>Software Engineering Laboratory at Politeknik Negeri Malang — announcements, news, and tutorials.</description>
    <language>en</language>
    <lastBuildDate>Mon, 03 Aug 2026 06:30:42 GMT</lastBuildDate>
    <atom:link href="https://se.polinema.ac.id/rss.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>Software Engineering for Startup Tools: Building an MVP Dashboard with PHP</title>
      <link>https://se.polinema.ac.id/blog/se-engineering-for-startup-tools-mvp-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/se-engineering-for-startup-tools-mvp-php</guid>
      <pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how software engineering fundamentals adapt to startup environments where speed, validated learning, and lean MVPs matter more than perfect architecture. This tutorial walks through building a startup idea validation dashboard with PHP, covering wait-list management, analytics hooks, rapid validation techniques, and practical deployment strategies.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Rekayasa Perangkat Lunak untuk Startup Tools: Membangun Dashboard MVP dengan PHP&lt;/em&gt; — Pelajari bagaimana dasar-dasar rekayasa perangkat lunak beradaptasi dengan lingkungan startup di mana kecepatan, pembelajaran tervalidasi, dan MVP yang ramping lebih penting daripada arsitektur sempurna. Tutorial ini membahas pembangunan dashboard validasi ide startup dengan PHP, mencakup manajemen wait-list, hook analitik, teknik validasi cepat, dan strategi deployment praktis.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Event-Driven Architecture Fundamentals with PHP</title>
      <link>https://se.polinema.ac.id/blog/event-driven-architecture-fundamentals-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/event-driven-architecture-fundamentals-php</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Arsitektur Event-Driven dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>RESTful API Design Fundamentals with PHP</title>
      <link>https://se.polinema.ac.id/blog/restful-api-design-fundamentals-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/restful-api-design-fundamentals-php</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Perancangan RESTful API dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 1: Introduction (Pendahuluan)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-1-pendahuluan</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-1-pendahuluan</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 1: Pendahuluan&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 2: Literature Review (Landasan Teori)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-2-landasan-teori</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-2-landasan-teori</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 2: Landasan Teori&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 3: Development Methodology (Metodologi Pengembangan)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-3-metodologi-pengembangan</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-3-metodologi-pengembangan</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 3: Metodologi Pengembangan&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 4: System Analysis and Design (Analisis dan Perancangan Sistem)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-4-analisis-dan-perancangan</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-4-analisis-dan-perancangan</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 4: Analisis dan Perancangan Sistem&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 5: Implementation and Testing (Implementasi dan Pengujian)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-5-implementasi-dan-pengujian</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-5-implementasi-dan-pengujian</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 5: Implementasi dan Pengujian&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 6: Results and Discussion (Hasil dan Pembahasan)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-6-hasil-dan-pembahasan</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-6-hasil-dan-pembahasan</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 6: Hasil dan Pembahasan&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Skripsi Mini Series Part 7: Conclusion and Recommendations (Kesimpulan dan Saran)</title>
      <link>https://se.polinema.ac.id/blog/skripsi-series-part-7-kesimpulan-dan-saran</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/skripsi-series-part-7-kesimpulan-dan-saran</guid>
      <pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini Skripsi Bagian 7: Kesimpulan dan Saran&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Docker &amp; Containerization Fundamentals with PHP</title>
      <link>https://se.polinema.ac.id/blog/docker-containerization-fundamentals-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/docker-containerization-fundamentals-php</guid>
      <pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Docker &amp;amp; Kontainerisasi dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CI/CD with GitHub Actions for PHP Projects</title>
      <link>https://se.polinema.ac.id/blog/ci-cd-github-actions-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/ci-cd-github-actions-php</guid>
      <pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;CI/CD dengan GitHub Actions untuk Proyek PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM-Assisted Coding with PHP: From Prompts to Production</title>
      <link>https://se.polinema.ac.id/blog/llm-assisted-coding-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/llm-assisted-coding-php</guid>
      <pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how to use LLMs like Claude, Gemini, and local models to generate, explain, refactor, and extend PHP code. Covers three real-world coding workflows, prompting patterns, responsible-use guardrails (hallucination checks, security review, licensing), and a hands-on exercise with runnable PHP code.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Coding Berbantuan LLM dengan PHP: Dari Prompt ke Produksi&lt;/em&gt; — Pelajari cara menggunakan LLM seperti Claude, Gemini, dan model lokal untuk menghasilkan, menjelaskan, merefaktor, dan memperluas kode PHP. Mencakup tiga alur kerja coding dunia nyata, pola prompting, pagar pengaman penggunaan yang bertanggung jawab (pemeriksaan halusinasi, tinjauan keamanan, lisensi), dan latihan langsung dengan kode PHP yang dapat dijalankan.&lt;/p&gt;</description>
    </item>
    <item>
      <title>MVC/MVVM Architecture Fundamentals with PHP</title>
      <link>https://se.polinema.ac.id/blog/mvc-mvvm-architecture-fundamentals-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/mvc-mvvm-architecture-fundamentals-php</guid>
      <pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Arsitektur MVC/MVVM dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Secure Coding Fundamentals with PHP: OWASP Top 10</title>
      <link>https://se.polinema.ac.id/blog/secure-coding-fundamentals-owasp-top-10-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/secure-coding-fundamentals-owasp-top-10-php</guid>
      <pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Secure Coding dengan PHP: OWASP Top 10&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Code Quality Analysis with PHP</title>
      <link>https://se.polinema.ac.id/blog/code-quality-analysis-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/code-quality-analysis-php</guid>
      <pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how to automate code quality checks with PHPStan, PHP_CodeSniffer, and PHPMD. Covers static analysis, PSR-12 style linting, code metrics, and a GitHub Actions CI/CD pipeline that blocks poor-quality code from reaching production.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Analisis Kualitas Kode dengan PHP&lt;/em&gt; — Pelajari cara mengotomatiskan pemeriksaan kualitas kode dengan PHPStan, PHP_CodeSniffer, dan PHPMD. Mencakup static analysis, linting gaya PSR-12, metrik kode, dan pipeline CI/CD GitHub Actions yang memblokir kode berkualitas buruk mencapai production.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Software Engineering for Industrial Automation: IoT Dashboard with PHP</title>
      <link>https://se.polinema.ac.id/blog/se-engineering-for-industrial-automation-iot-dashboard-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/se-engineering-for-industrial-automation-iot-dashboard-php</guid>
      <pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how software engineering principles apply to industrial IoT systems. This tutorial walks through building a sensor-data dashboard in PHP with MQTT ingestion, InfluxDB time-series storage, threshold-based alerts, and a RESTful dashboard API.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Rekayasa Perangkat Lunak untuk Otomasi Industri: Dasbor IoT dengan PHP&lt;/em&gt; — Pelajari bagaimana prinsip-prinsip rekayasa perangkat lunak diterapkan pada sistem IoT industri. Tutorial ini membahas pembangunan dasbor data sensor dalam PHP dengan ingesti MQTT, penyimpanan time-series InfluxDB, peringatan berbasis ambang, dan API dasbor RESTful.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Software Engineering for Healthcare: Patient Registration System with PHP</title>
      <link>https://se.polinema.ac.id/blog/se-engineering-for-healthcare-patient-registration-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/se-engineering-for-healthcare-patient-registration-php</guid>
      <pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how software engineering principles adapt to healthcare. This tutorial walks through building a patient registration system in PHP with DDD-style value objects, invariant guards, duplicate detection, privacy-aware design, and PHPUnit tests.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Rekayasa Perangkat Lunak untuk Kesehatan: Sistem Pendaftaran Pasien dengan PHP&lt;/em&gt; — Pelajari bagaimana prinsip-prinsip rekayasa perangkat lunak beradaptasi dengan domain kesehatan. Tutorial ini membahas pembangunan sistem pendaftaran pasien dalam PHP dengan value object ala DDD, penjaga invarian, deteksi duplikat, desain sadar privasi, dan pengujian PHPUnit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Software Engineering for Fintech: Secure Payment Flow with PHP</title>
      <link>https://se.polinema.ac.id/blog/software-engineering-for-fintech-payment-flow-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/software-engineering-for-fintech-payment-flow-php</guid>
      <pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how software engineering principles apply to financial technology. This tutorial covers building a secure payment flow in PHP with input validation, idempotency keys, append-only audit logs, and basic fraud detection guards.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Rekayasa Perangkat Lunak untuk Fintech: Alur Pembayaran Aman dengan PHP&lt;/em&gt; — Pelajari bagaimana prinsip-prinsip rekayasa perangkat lunak diterapkan pada teknologi keuangan. Tutorial ini membahas pembangunan alur pembayaran aman dalam PHP dengan validasi input, kunci idempotensi, log audit append-only, dan penjaga deteksi penipuan dasar.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI-Powered Requirements Automation with PHP</title>
      <link>https://se.polinema.ac.id/blog/ai-powered-requirements-automation-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/ai-powered-requirements-automation-php</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how to use LLMs and AI-assisted workflows to turn vague stakeholder requests into structured user stories, SRS snippets, and acceptance criteria. Covers prompt engineering for requirements, a complete PHP helper to call LLM APIs, traceability mapping, and the limitations of AI-generated requirements — including hallucinations and bias.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Otomatisasi Kebutuhan Perangkat Lunak Berbasis AI dengan PHP&lt;/em&gt; — Pelajari cara menggunakan LLM dan alur kerja berbantuan AI untuk mengubah permintaan pemangku kepentingan yang samar menjadi user story terstruktur, potongan SRS, dan kriteria penerimaan. Mencakup prompt engineering untuk kebutuhan, helper PHP lengkap untuk memanggil LLM API, pemetaan ketertelusuran, dan keterbatasan kebutuhan yang dihasilkan AI, termasuk halusinasi dan bias.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Bug Prediction with PHP: From Metrics to Models</title>
      <link>https://se.polinema.ac.id/blog/bug-prediction-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/bug-prediction-php</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how to build a bug prediction classifier using PHP—from extracting code metrics (LOC, cyclomatic complexity, change churn) to training and evaluating a Naive Bayes model that identifies high-risk modules before they break.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Prediksi Bug dengan PHP: Dari Metrik ke Model&lt;/em&gt; — Pelajari cara membangun classifier prediksi bug menggunakan PHP, mulai dari mengekstrak metrik kode (LOC, cyclomatic complexity, change churn) hingga melatih dan mengevaluasi model Naive Bayes yang mengidentifikasi modul berisiko tinggi sebelum rusak.&lt;/p&gt;</description>
    </item>
    <item>
      <title>LLM-Assisted Documentation Automation for PHP Projects</title>
      <link>https://se.polinema.ac.id/blog/llm-assisted-documentation-automation-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/llm-assisted-documentation-automation-php</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how to use LLMs to generate, maintain, and validate API documentation, README files, inline comments, and changelogs for PHP/Laravel projects. Covers Scribe, PHPDoc, MkDocs, and custom LLM pipelines with a human-in-the-loop review workflow — and shows where LLMs fail and hallucinate.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Otomatisasi Dokumentasi Berbantuan LLM untuk Proyek PHP&lt;/em&gt; — Pelajari cara menggunakan LLM untuk menghasilkan, memelihara, dan memvalidasi dokumentasi API, file README, komentar inline, dan changelog untuk proyek PHP/Laravel. Mencakup Scribe, PHPDoc, MkDocs, dan pipeline LLM kustom dengan alur kerja tinjauan human-in-the-loop, serta menunjukkan di mana LLM gagal dan berhalusinasi.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Domain-Driven Design Fundamentals with PHP</title>
      <link>https://se.polinema.ac.id/blog/domain-driven-design-fundamentals-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/domain-driven-design-fundamentals-php</guid>
      <pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Domain-Driven Design dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Software Engineering for EdTech: Building an LMS with PHP</title>
      <link>https://se.polinema.ac.id/blog/se-engineering-for-edtech-lms-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/se-engineering-for-edtech-lms-php</guid>
      <pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how software engineering principles adapt to the education domain. This tutorial walks through LMS architecture, data modeling, and a hands-on PHP course enrollment service with validation rules, capacity limits, prerequisite checks, and PHPUnit tests.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Rekayasa Perangkat Lunak untuk EdTech: Membangun LMS dengan PHP&lt;/em&gt; — Pelajari bagaimana prinsip-prinsip rekayasa perangkat lunak beradaptasi dengan domain pendidikan. Tutorial ini membahas arsitektur LMS, pemodelan data, dan layanan pendaftaran mata kuliah PHP dengan aturan validasi, batas kapasitas, pengecekan prasyarat, dan pengujian PHPUnit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI-Assisted Software Testing: From Research to Practice</title>
      <link>https://se.polinema.ac.id/blog/ai-assisted-testing-seminar</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/ai-assisted-testing-seminar</guid>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>event</category>
      <description>&lt;p&gt;A seminar exploring how AI tools are transforming software testing workflows. Learn about automated test generation, bug prediction, and quality analysis from SE Lab researchers.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Pengujian Perangkat Lunak Berbantuan AI: Dari Riset ke Praktik&lt;/em&gt; — Seminar yang mengeksplorasi bagaimana alat AI mentransformasikan alur kerja pengujian perangkat lunak. Pelajari tentang pembuatan tes otomatis, prediksi bug, dan analisis kualitas dari peneliti SE Lab.&lt;/p&gt;</description>
    </item>
    <item>
      <title>UML Mini Series Part 1: Introduction to UML &amp; Use Case Diagram</title>
      <link>https://se.polinema.ac.id/blog/uml-series-part-1-introduction-use-case</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/uml-series-part-1-introduction-use-case</guid>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini UML Bagian 1: Pengenalan UML &amp;amp; Use Case Diagram&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>UML Mini Series Part 2: Use Case Scenario</title>
      <link>https://se.polinema.ac.id/blog/uml-series-part-2-use-case-scenario</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/uml-series-part-2-use-case-scenario</guid>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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 &amp;apos;Enrol in Course&amp;apos; use case: with structured table, main success flow, and alternative flows.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini UML Bagian 2: Use Case Scenario&lt;/em&gt; — 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 &amp;apos;Daftar Mata Kuliah&amp;apos;: dengan tabel terstruktur, alur sukses utama, dan alur alternatif.&lt;/p&gt;</description>
    </item>
    <item>
      <title>UML Mini Series Part 3: Activity Diagram</title>
      <link>https://se.polinema.ac.id/blog/uml-series-part-3-activity-diagram</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/uml-series-part-3-activity-diagram</guid>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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 &amp;apos;Enrol in Course&amp;apos; workflow: with swimlanes, decisions, and merge nodes in PlantUML.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini UML Bagian 3: Activity Diagram&lt;/em&gt; — Bagian 3 dari Seri Mini UML. Pelajari apa itu Activity Diagram, mengapa penting untuk pemodelan proses bisnis, dan cara menggambarnya untuk alur kerja &amp;apos;Daftar Mata Kuliah&amp;apos;: dengan swimlanes, decision, dan merge node dalam PlantUML.&lt;/p&gt;</description>
    </item>
    <item>
      <title>UML Mini Series Part 4: Sequence Diagram</title>
      <link>https://se.polinema.ac.id/blog/uml-series-part-4-sequence-diagram</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/uml-series-part-4-sequence-diagram</guid>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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 &amp;apos;Enrol in Course&amp;apos; payment and enrolment flow: with lifelines, messages, and activation boxes in PlantUML.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini UML Bagian 4: Sequence Diagram&lt;/em&gt; — 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 &amp;apos;Daftar Mata Kuliah&amp;apos;: dengan lifelines, messages, dan activation box dalam PlantUML.&lt;/p&gt;</description>
    </item>
    <item>
      <title>UML Mini Series Part 5: Class Diagram &amp; Laravel Realization</title>
      <link>https://se.polinema.ac.id/blog/uml-series-part-5-class-diagram-laravel</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/uml-series-part-5-class-diagram-laravel</guid>
      <pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Seri Mini UML Bagian 5: Class Diagram &amp;amp; Realisasi Laravel&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Design Patterns with PHP</title>
      <link>https://se.polinema.ac.id/blog/design-patterns-with-php</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/design-patterns-with-php</guid>
      <pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Design Patterns dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>AI-Assisted Unit Test Generation with PHP</title>
      <link>https://se.polinema.ac.id/blog/ai-assisted-unit-test-generation</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/ai-assisted-unit-test-generation</guid>
      <pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;Learn how to use AI coding assistants to generate, review, and refine PHPUnit tests. Covers practical workflows with PHP examples, common AI pitfalls (hallucinations, brittle tests, missing edge cases), and when AI-assisted test generation helps — and when it fails.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Pembuatan Unit Test Berbantuan AI dengan PHP&lt;/em&gt; — Pelajari cara menggunakan asisten coding AI untuk menghasilkan, meninjau, dan menyempurnakan pengujian PHPUnit. Mencakup alur kerja praktis dengan contoh PHP, jebakan umum AI (halusinasi, pengujian rapuh, kasus tepi yang hilang), serta kapan pembuatan pengujian berbantuan AI membantu, dan kapan ia gagal.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Clean Code Principles with PHP</title>
      <link>https://se.polinema.ac.id/blog/clean-code-principles</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/clean-code-principles</guid>
      <pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Prinsip Clean Code dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Microservices Architecture Fundamentals with PHP</title>
      <link>https://se.polinema.ac.id/blog/microservices-architecture-fundamentals</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/microservices-architecture-fundamentals</guid>
      <pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Dasar-Dasar Arsitektur Microservices dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Test-Driven Development (TDD) with PHP</title>
      <link>https://se.polinema.ac.id/blog/test-driven-development</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/test-driven-development</guid>
      <pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate>
      <author>Dian Hanifudin Subhi</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Test-Driven Development (TDD) dengan PHP&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blackbox and Whitebox Test in Simple Way</title>
      <link>https://se.polinema.ac.id/blog/blackbox-and-whitebox-test</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/blackbox-and-whitebox-test</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <author>Dian Hanifudin Subhi</author>
      <category>tutorial</category>
      <description>&lt;p&gt;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.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Cara Sederhana Melakukan Pengujian Blackbox dan Whitebox&lt;/em&gt; — 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Managing This Website with IssueOps</title>
      <link>https://se.polinema.ac.id/blog/issueops</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/issueops</guid>
      <pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>news</category>
      <description>&lt;p&gt;Learn how the SE Laboratory uses IssueOps — a workflow where GitHub issues trigger AI-assisted planning and automated building — to manage this website without leaving GitHub.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Mengelola Situs Ini dengan IssueOps&lt;/em&gt; — Pelajari bagaimana SE Laboratory menggunakan IssueOps, yaitu alur kerja di mana GitHub issue memicu perencanaan berbantuan AI dan pembangunan otomatis, untuk mengelola situs web ini tanpa meninggalkan GitHub.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Welcome to Software Engineering Laboratory</title>
      <link>https://se.polinema.ac.id/blog/welcome</link>
      <guid isPermaLink="true">https://se.polinema.ac.id/blog/welcome</guid>
      <pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate>
      <author>SE Lab</author>
      <category>announcement</category>
      <description>&lt;p&gt;The Software Engineering Laboratory at Politeknik Negeri Malang is now operational. Learn about our mission, research focus areas, and team.&lt;/p&gt;&lt;p lang=&quot;id&quot;&gt;&lt;em&gt;Selamat Datang di Software Engineering Laboratory&lt;/em&gt; — Laboratorium Rekayasa Perangkat Lunak di Politeknik Negeri Malang kini telah beroperasi. Pelajari misi, bidang fokus riset, dan tim kami.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>